mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-16 01:43:35 +00:00
compiler/type_util.m:
Treat complete switches on 8- and 16-bit fixed sized integers as det.
(We don't do the same for the other fixed size integer types, since having
a complete switch on them is not practical anyway.)
tests/valid/Mmakefile:
tests/valid/compare_{int8,uint8}_switch.m:
Add a test for complete switches on the 8-bit integer types.
264 lines
4.7 KiB
Mathematica
264 lines
4.7 KiB
Mathematica
:- module complete_int8_switch.
|
|
:- interface.
|
|
|
|
:- pred foo(int8::in, string::out) is det.
|
|
|
|
:- implementation.
|
|
|
|
foo(-128i8, "-128").
|
|
foo(-127i8, "-127").
|
|
foo(-126i8, "-126").
|
|
foo(-125i8, "-125").
|
|
foo(-124i8, "-124").
|
|
foo(-123i8, "-123").
|
|
foo(-122i8, "-122").
|
|
foo(-121i8, "-121").
|
|
foo(-120i8, "-120").
|
|
foo(-119i8, "-119").
|
|
foo(-118i8, "-118").
|
|
foo(-117i8, "-117").
|
|
foo(-116i8, "-116").
|
|
foo(-115i8, "-115").
|
|
foo(-114i8, "-114").
|
|
foo(-113i8, "-113").
|
|
foo(-112i8, "-112").
|
|
foo(-111i8, "-111").
|
|
foo(-110i8, "-110").
|
|
foo(-109i8, "-109").
|
|
foo(-108i8, "-108").
|
|
foo(-107i8, "-107").
|
|
foo(-106i8, "-106").
|
|
foo(-105i8, "-105").
|
|
foo(-104i8, "-104").
|
|
foo(-103i8, "-103").
|
|
foo(-102i8, "-102").
|
|
foo(-101i8, "-101").
|
|
foo(-100i8, "-100").
|
|
foo(-99i8, "-99").
|
|
foo(-98i8, "-98").
|
|
foo(-97i8, "-97").
|
|
foo(-96i8, "-96").
|
|
foo(-95i8, "-95").
|
|
foo(-94i8, "-94").
|
|
foo(-93i8, "-93").
|
|
foo(-92i8, "-92").
|
|
foo(-91i8, "-91").
|
|
foo(-90i8, "-90").
|
|
foo(-89i8, "-89").
|
|
foo(-88i8, "-88").
|
|
foo(-87i8, "-87").
|
|
foo(-86i8, "-86").
|
|
foo(-85i8, "-85").
|
|
foo(-84i8, "-84").
|
|
foo(-83i8, "-83").
|
|
foo(-82i8, "-82").
|
|
foo(-81i8, "-81").
|
|
foo(-80i8, "-80").
|
|
foo(-79i8, "-79").
|
|
foo(-78i8, "-78").
|
|
foo(-77i8, "-77").
|
|
foo(-76i8, "-76").
|
|
foo(-75i8, "-75").
|
|
foo(-74i8, "-74").
|
|
foo(-73i8, "-73").
|
|
foo(-72i8, "-72").
|
|
foo(-71i8, "-71").
|
|
foo(-70i8, "-70").
|
|
foo(-69i8, "-69").
|
|
foo(-68i8, "-68").
|
|
foo(-67i8, "-67").
|
|
foo(-66i8, "-66").
|
|
foo(-65i8, "-65").
|
|
foo(-64i8, "-64").
|
|
foo(-63i8, "-63").
|
|
foo(-62i8, "-62").
|
|
foo(-61i8, "-61").
|
|
foo(-60i8, "-60").
|
|
foo(-59i8, "-59").
|
|
foo(-58i8, "-58").
|
|
foo(-57i8, "-57").
|
|
foo(-56i8, "-56").
|
|
foo(-55i8, "-55").
|
|
foo(-54i8, "-54").
|
|
foo(-53i8, "-53").
|
|
foo(-52i8, "-52").
|
|
foo(-51i8, "-51").
|
|
foo(-50i8, "-50").
|
|
foo(-49i8, "-49").
|
|
foo(-48i8, "-48").
|
|
foo(-47i8, "-47").
|
|
foo(-46i8, "-46").
|
|
foo(-45i8, "-45").
|
|
foo(-44i8, "-44").
|
|
foo(-43i8, "-43").
|
|
foo(-42i8, "-42").
|
|
foo(-41i8, "-41").
|
|
foo(-40i8, "-40").
|
|
foo(-39i8, "-39").
|
|
foo(-38i8, "-38").
|
|
foo(-37i8, "-37").
|
|
foo(-36i8, "-36").
|
|
foo(-35i8, "-35").
|
|
foo(-34i8, "-34").
|
|
foo(-33i8, "-33").
|
|
foo(-32i8, "-32").
|
|
foo(-31i8, "-31").
|
|
foo(-30i8, "-30").
|
|
foo(-29i8, "-29").
|
|
foo(-28i8, "-28").
|
|
foo(-27i8, "-27").
|
|
foo(-26i8, "-26").
|
|
foo(-25i8, "-25").
|
|
foo(-24i8, "-24").
|
|
foo(-23i8, "-23").
|
|
foo(-22i8, "-22").
|
|
foo(-21i8, "-21").
|
|
foo(-20i8, "-20").
|
|
foo(-19i8, "-19").
|
|
foo(-18i8, "-18").
|
|
foo(-17i8, "-17").
|
|
foo(-16i8, "-16").
|
|
foo(-15i8, "-15").
|
|
foo(-14i8, "-14").
|
|
foo(-13i8, "-13").
|
|
foo(-12i8, "-12").
|
|
foo(-11i8, "-11").
|
|
foo(-10i8, "-10").
|
|
foo(-9i8, "-9").
|
|
foo(-8i8, "-8").
|
|
foo(-7i8, "-7").
|
|
foo(-6i8, "-6").
|
|
foo(-5i8, "-5").
|
|
foo(-4i8, "-4").
|
|
foo(-3i8, "-3").
|
|
foo(-2i8, "-2").
|
|
foo(-1i8, "-1").
|
|
foo(0i8, "0").
|
|
foo(1i8, "1").
|
|
foo(2i8, "2").
|
|
foo(3i8, "3").
|
|
foo(4i8, "4").
|
|
foo(5i8, "5").
|
|
foo(6i8, "6").
|
|
foo(7i8, "7").
|
|
foo(8i8, "8").
|
|
foo(9i8, "9").
|
|
foo(10i8, "10").
|
|
foo(11i8, "11").
|
|
foo(12i8, "12").
|
|
foo(13i8, "13").
|
|
foo(14i8, "14").
|
|
foo(15i8, "15").
|
|
foo(16i8, "16").
|
|
foo(17i8, "17").
|
|
foo(18i8, "18").
|
|
foo(19i8, "19").
|
|
foo(20i8, "20").
|
|
foo(21i8, "21").
|
|
foo(22i8, "22").
|
|
foo(23i8, "23").
|
|
foo(24i8, "24").
|
|
foo(25i8, "25").
|
|
foo(26i8, "26").
|
|
foo(27i8, "27").
|
|
foo(28i8, "28").
|
|
foo(29i8, "29").
|
|
foo(30i8, "30").
|
|
foo(31i8, "31").
|
|
foo(32i8, "32").
|
|
foo(33i8, "33").
|
|
foo(34i8, "34").
|
|
foo(35i8, "35").
|
|
foo(36i8, "36").
|
|
foo(37i8, "37").
|
|
foo(38i8, "38").
|
|
foo(39i8, "39").
|
|
foo(40i8, "40").
|
|
foo(41i8, "41").
|
|
foo(42i8, "42").
|
|
foo(43i8, "43").
|
|
foo(44i8, "44").
|
|
foo(45i8, "45").
|
|
foo(46i8, "46").
|
|
foo(47i8, "47").
|
|
foo(48i8, "48").
|
|
foo(49i8, "49").
|
|
foo(50i8, "50").
|
|
foo(51i8, "51").
|
|
foo(52i8, "52").
|
|
foo(53i8, "53").
|
|
foo(54i8, "54").
|
|
foo(55i8, "55").
|
|
foo(56i8, "56").
|
|
foo(57i8, "57").
|
|
foo(58i8, "58").
|
|
foo(59i8, "59").
|
|
foo(60i8, "60").
|
|
foo(61i8, "61").
|
|
foo(62i8, "62").
|
|
foo(63i8, "63").
|
|
foo(64i8, "64").
|
|
foo(65i8, "65").
|
|
foo(66i8, "66").
|
|
foo(67i8, "67").
|
|
foo(68i8, "68").
|
|
foo(69i8, "69").
|
|
foo(70i8, "70").
|
|
foo(71i8, "71").
|
|
foo(72i8, "72").
|
|
foo(73i8, "73").
|
|
foo(74i8, "74").
|
|
foo(75i8, "75").
|
|
foo(76i8, "76").
|
|
foo(77i8, "77").
|
|
foo(78i8, "78").
|
|
foo(79i8, "79").
|
|
foo(80i8, "80").
|
|
foo(81i8, "81").
|
|
foo(82i8, "82").
|
|
foo(83i8, "83").
|
|
foo(84i8, "84").
|
|
foo(85i8, "85").
|
|
foo(86i8, "86").
|
|
foo(87i8, "87").
|
|
foo(88i8, "88").
|
|
foo(89i8, "89").
|
|
foo(90i8, "90").
|
|
foo(91i8, "91").
|
|
foo(92i8, "92").
|
|
foo(93i8, "93").
|
|
foo(94i8, "94").
|
|
foo(95i8, "95").
|
|
foo(96i8, "96").
|
|
foo(97i8, "97").
|
|
foo(98i8, "98").
|
|
foo(99i8, "99").
|
|
foo(100i8, "100").
|
|
foo(101i8, "101").
|
|
foo(102i8, "102").
|
|
foo(103i8, "103").
|
|
foo(104i8, "104").
|
|
foo(105i8, "105").
|
|
foo(106i8, "106").
|
|
foo(107i8, "107").
|
|
foo(108i8, "108").
|
|
foo(109i8, "109").
|
|
foo(110i8, "110").
|
|
foo(111i8, "111").
|
|
foo(112i8, "112").
|
|
foo(113i8, "113").
|
|
foo(114i8, "114").
|
|
foo(115i8, "115").
|
|
foo(116i8, "116").
|
|
foo(117i8, "117").
|
|
foo(118i8, "118").
|
|
foo(119i8, "119").
|
|
foo(120i8, "120").
|
|
foo(121i8, "121").
|
|
foo(122i8, "122").
|
|
foo(123i8, "123").
|
|
foo(124i8, "124").
|
|
foo(125i8, "125").
|
|
foo(126i8, "126").
|
|
foo(127i8, "127").
|