1*b1cdbd2cSJim Jagielski#************************************************************** 2*b1cdbd2cSJim Jagielski# 3*b1cdbd2cSJim Jagielski# Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski# or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski# distributed with this work for additional information 6*b1cdbd2cSJim Jagielski# regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski# to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski# "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski# with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski# 11*b1cdbd2cSJim Jagielski# http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski# 13*b1cdbd2cSJim Jagielski# Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski# software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski# KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski# specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski# under the License. 19*b1cdbd2cSJim Jagielski# 20*b1cdbd2cSJim Jagielski#************************************************************** 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim JagielskiEXPECT SUCCESS "constant.tests 1": 23*b1cdbd2cSJim Jagielskiconstants C { 24*b1cdbd2cSJim Jagielski const boolean C1 = FALSE; 25*b1cdbd2cSJim Jagielski const byte C2 = 0; 26*b1cdbd2cSJim Jagielski const short C3 = 0; 27*b1cdbd2cSJim Jagielski const unsigned short C4 = 0; 28*b1cdbd2cSJim Jagielski const long C5 = 0; 29*b1cdbd2cSJim Jagielski const unsigned long C6 = 0; 30*b1cdbd2cSJim Jagielski const hyper C7 = 0; 31*b1cdbd2cSJim Jagielski const unsigned hyper C8 = 0; 32*b1cdbd2cSJim Jagielski const float C9 = 0.0; 33*b1cdbd2cSJim Jagielski const double C10 = 0.0; 34*b1cdbd2cSJim Jagielski}; 35*b1cdbd2cSJim Jagielski 36*b1cdbd2cSJim Jagielski 37*b1cdbd2cSJim JagielskiEXPECT SUCCESS "constant.tests 2": 38*b1cdbd2cSJim Jagielskimodule m { 39*b1cdbd2cSJim Jagielski const boolean C1 = FALSE; 40*b1cdbd2cSJim Jagielski const byte C2 = 0; 41*b1cdbd2cSJim Jagielski const short C3 = 0; 42*b1cdbd2cSJim Jagielski const unsigned short C4 = 0; 43*b1cdbd2cSJim Jagielski const long C5 = 0; 44*b1cdbd2cSJim Jagielski const unsigned long C6 = 0; 45*b1cdbd2cSJim Jagielski const hyper C7 = 0; 46*b1cdbd2cSJim Jagielski const unsigned hyper C8 = 0; 47*b1cdbd2cSJim Jagielski const float C9 = 0.0; 48*b1cdbd2cSJim Jagielski const double C10 = 0.0; 49*b1cdbd2cSJim Jagielski}; 50*b1cdbd2cSJim Jagielski 51*b1cdbd2cSJim Jagielski 52*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 3": 53*b1cdbd2cSJim Jagielskiconstants C { 54*b1cdbd2cSJim Jagielski const char C1 = 'A'; 55*b1cdbd2cSJim Jagielski}; 56*b1cdbd2cSJim Jagielski 57*b1cdbd2cSJim Jagielski 58*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 4": 59*b1cdbd2cSJim Jagielskimodule m { 60*b1cdbd2cSJim Jagielski const char C1 = 'A'; 61*b1cdbd2cSJim Jagielski}; 62*b1cdbd2cSJim Jagielski 63*b1cdbd2cSJim Jagielski 64*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 5": 65*b1cdbd2cSJim Jagielskiconstants C { 66*b1cdbd2cSJim Jagielski const string C1 = ""; 67*b1cdbd2cSJim Jagielski}; 68*b1cdbd2cSJim Jagielski 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 6": 71*b1cdbd2cSJim Jagielskimodule m { 72*b1cdbd2cSJim Jagielski const string C1 = ""; 73*b1cdbd2cSJim Jagielski}; 74*b1cdbd2cSJim Jagielski 75*b1cdbd2cSJim Jagielski 76*b1cdbd2cSJim JagielskiEXPECT SUCCESS "constant.tests 7": 77*b1cdbd2cSJim Jagielskiconstants C {}; 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim Jagielski 80*b1cdbd2cSJim JagielskiEXPECT SUCCESS "constant.tests 8": 81*b1cdbd2cSJim Jagielskimodule m { 82*b1cdbd2cSJim Jagielski const byte C1 = -128; 83*b1cdbd2cSJim Jagielski const byte C2 = -0200; 84*b1cdbd2cSJim Jagielski const byte C3 = -0x80; 85*b1cdbd2cSJim Jagielski const byte C4 = 255; 86*b1cdbd2cSJim Jagielski const byte C5 = 0377; 87*b1cdbd2cSJim Jagielski const byte C6 = 0xFF; 88*b1cdbd2cSJim Jagielski const short C7 = -32768; 89*b1cdbd2cSJim Jagielski const short C8 = -0100000; 90*b1cdbd2cSJim Jagielski const short C9 = -0x8000; 91*b1cdbd2cSJim Jagielski const short C10 = 32767; 92*b1cdbd2cSJim Jagielski const short C11 = 077777; 93*b1cdbd2cSJim Jagielski const short C12 = 0x7FFF; 94*b1cdbd2cSJim Jagielski const unsigned short C13 = 0; 95*b1cdbd2cSJim Jagielski const unsigned short C14 = 0x0; 96*b1cdbd2cSJim Jagielski const unsigned short C15 = 65535; 97*b1cdbd2cSJim Jagielski const unsigned short C16 = 0177777; 98*b1cdbd2cSJim Jagielski const unsigned short C17 = 0xFFFF; 99*b1cdbd2cSJim Jagielski const long C18 = -2147483648; 100*b1cdbd2cSJim Jagielski const long C19 = -020000000000; 101*b1cdbd2cSJim Jagielski const long C20 = -0x80000000; 102*b1cdbd2cSJim Jagielski const long C21 = 2147483647; 103*b1cdbd2cSJim Jagielski const long C22 = 017777777777; 104*b1cdbd2cSJim Jagielski const long C23 = 0x7FFFFFFF; 105*b1cdbd2cSJim Jagielski const unsigned long C24 = 0; 106*b1cdbd2cSJim Jagielski const unsigned long C25 = 0x0; 107*b1cdbd2cSJim Jagielski const unsigned long C26 = 4294967295; 108*b1cdbd2cSJim Jagielski const unsigned long C27 = 037777777777; 109*b1cdbd2cSJim Jagielski const unsigned long C28 = 0xFFFFFFFF; 110*b1cdbd2cSJim Jagielski const hyper C29 = -9223372036854775808; 111*b1cdbd2cSJim Jagielski const hyper C30 = -01000000000000000000000; 112*b1cdbd2cSJim Jagielski const hyper C31 = -0x8000000000000000; 113*b1cdbd2cSJim Jagielski const hyper C32 = 9223372036854775807; 114*b1cdbd2cSJim Jagielski const hyper C33 = 0777777777777777777777; 115*b1cdbd2cSJim Jagielski const hyper C34 = 0x7FFFFFFFFFFFFFFF; 116*b1cdbd2cSJim Jagielski const unsigned hyper C35 = 0; 117*b1cdbd2cSJim Jagielski const unsigned hyper C36 = 0x0; 118*b1cdbd2cSJim Jagielski const unsigned hyper C37 = 18446744073709551615; 119*b1cdbd2cSJim Jagielski const unsigned hyper C38 = 01777777777777777777777; 120*b1cdbd2cSJim Jagielski const unsigned hyper C39 = 0xFFFFFFFFFFFFFFFF; 121*b1cdbd2cSJim Jagielski}; 122*b1cdbd2cSJim Jagielski 123*b1cdbd2cSJim Jagielski 124*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 9": 125*b1cdbd2cSJim Jagielskimodule m { const byte C = -129; }; 126*b1cdbd2cSJim Jagielski 127*b1cdbd2cSJim Jagielski 128*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 10": 129*b1cdbd2cSJim Jagielskimodule m { const byte C = -0201; }; 130*b1cdbd2cSJim Jagielski 131*b1cdbd2cSJim Jagielski 132*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 11": 133*b1cdbd2cSJim Jagielskimodule m { const byte C = -0x81; }; 134*b1cdbd2cSJim Jagielski 135*b1cdbd2cSJim Jagielski 136*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 12": 137*b1cdbd2cSJim Jagielskimodule m { const byte C = 256; }; 138*b1cdbd2cSJim Jagielski 139*b1cdbd2cSJim Jagielski 140*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 13": 141*b1cdbd2cSJim Jagielskimodule m { const byte C = 0400; }; 142*b1cdbd2cSJim Jagielski 143*b1cdbd2cSJim Jagielski 144*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 14": 145*b1cdbd2cSJim Jagielskimodule m { const byte C = 0x100; }; 146*b1cdbd2cSJim Jagielski 147*b1cdbd2cSJim Jagielski 148*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 15": 149*b1cdbd2cSJim Jagielskimodule m { const short C = -32769; }; 150*b1cdbd2cSJim Jagielski 151*b1cdbd2cSJim Jagielski 152*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 16": 153*b1cdbd2cSJim Jagielskimodule m { const short C = -0100001; }; 154*b1cdbd2cSJim Jagielski 155*b1cdbd2cSJim Jagielski 156*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 17": 157*b1cdbd2cSJim Jagielskimodule m { const short C = -0x8001; }; 158*b1cdbd2cSJim Jagielski 159*b1cdbd2cSJim Jagielski 160*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 18": 161*b1cdbd2cSJim Jagielskimodule m { const short C = 32768; }; 162*b1cdbd2cSJim Jagielski 163*b1cdbd2cSJim Jagielski 164*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 19": 165*b1cdbd2cSJim Jagielskimodule m { const short C = 0100000; }; 166*b1cdbd2cSJim Jagielski 167*b1cdbd2cSJim Jagielski 168*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 20": 169*b1cdbd2cSJim Jagielskimodule m { const short C = 0x8000; }; 170*b1cdbd2cSJim Jagielski 171*b1cdbd2cSJim Jagielski 172*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 21": 173*b1cdbd2cSJim Jagielskimodule m { const unsigned short C = -1; }; 174*b1cdbd2cSJim Jagielski 175*b1cdbd2cSJim Jagielski 176*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 22": 177*b1cdbd2cSJim Jagielskimodule m { const unsigned short C = -01; }; 178*b1cdbd2cSJim Jagielski 179*b1cdbd2cSJim Jagielski 180*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 23": 181*b1cdbd2cSJim Jagielskimodule m { const unsigned short C = -0x1; }; 182*b1cdbd2cSJim Jagielski 183*b1cdbd2cSJim Jagielski 184*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 24": 185*b1cdbd2cSJim Jagielskimodule m { const unsigned short C = 65536; }; 186*b1cdbd2cSJim Jagielski 187*b1cdbd2cSJim Jagielski 188*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 25": 189*b1cdbd2cSJim Jagielskimodule m { const unsigned short C = 0200000; }; 190*b1cdbd2cSJim Jagielski 191*b1cdbd2cSJim Jagielski 192*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 26": 193*b1cdbd2cSJim Jagielskimodule m { const unsigned short C = 0x10000; }; 194*b1cdbd2cSJim Jagielski 195*b1cdbd2cSJim Jagielski 196*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 27": 197*b1cdbd2cSJim Jagielskimodule m { const long C = -2147483649; }; 198*b1cdbd2cSJim Jagielski 199*b1cdbd2cSJim Jagielski 200*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 28": 201*b1cdbd2cSJim Jagielskimodule m { const long C = -020000000001; }; 202*b1cdbd2cSJim Jagielski 203*b1cdbd2cSJim Jagielski 204*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 29": 205*b1cdbd2cSJim Jagielskimodule m { const long C = -0x80000001; }; 206*b1cdbd2cSJim Jagielski 207*b1cdbd2cSJim Jagielski 208*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 30": 209*b1cdbd2cSJim Jagielskimodule m { const long C = 2147483648; }; 210*b1cdbd2cSJim Jagielski 211*b1cdbd2cSJim Jagielski 212*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 31": 213*b1cdbd2cSJim Jagielskimodule m { const long C = 020000000000; }; 214*b1cdbd2cSJim Jagielski 215*b1cdbd2cSJim Jagielski 216*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 32": 217*b1cdbd2cSJim Jagielskimodule m { const long C = 0x80000000; }; 218*b1cdbd2cSJim Jagielski 219*b1cdbd2cSJim Jagielski 220*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 33": 221*b1cdbd2cSJim Jagielskimodule m { const unsigned long C = -1; }; 222*b1cdbd2cSJim Jagielski 223*b1cdbd2cSJim Jagielski 224*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 34": 225*b1cdbd2cSJim Jagielskimodule m { const unsigned long C = -01; }; 226*b1cdbd2cSJim Jagielski 227*b1cdbd2cSJim Jagielski 228*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 35": 229*b1cdbd2cSJim Jagielskimodule m { const unsigned long C = -0x1; }; 230*b1cdbd2cSJim Jagielski 231*b1cdbd2cSJim Jagielski 232*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 36": 233*b1cdbd2cSJim Jagielskimodule m { const unsigned long C = 4294967296; }; 234*b1cdbd2cSJim Jagielski 235*b1cdbd2cSJim Jagielski 236*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 37": 237*b1cdbd2cSJim Jagielskimodule m { const unsigned long C = 040000000000; }; 238*b1cdbd2cSJim Jagielski 239*b1cdbd2cSJim Jagielski 240*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 38": 241*b1cdbd2cSJim Jagielskimodule m { const unsigned long C = 0x100000000; }; 242*b1cdbd2cSJim Jagielski 243*b1cdbd2cSJim Jagielski 244*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 39": 245*b1cdbd2cSJim Jagielskimodule m { const hyper C = -9223372036854775809; }; 246*b1cdbd2cSJim Jagielski 247*b1cdbd2cSJim Jagielski 248*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 40": 249*b1cdbd2cSJim Jagielskimodule m { const hyper C = -01000000000000000000001; }; 250*b1cdbd2cSJim Jagielski 251*b1cdbd2cSJim Jagielski 252*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 41": 253*b1cdbd2cSJim Jagielskimodule m { const hyper C = -0x8000000000000001; }; 254*b1cdbd2cSJim Jagielski 255*b1cdbd2cSJim Jagielski 256*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 42": 257*b1cdbd2cSJim Jagielskimodule m { const hyper C = 9223372036854775808; }; 258*b1cdbd2cSJim Jagielski 259*b1cdbd2cSJim Jagielski 260*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 43": 261*b1cdbd2cSJim Jagielskimodule m { const hyper C = 01000000000000000000000; }; 262*b1cdbd2cSJim Jagielski 263*b1cdbd2cSJim Jagielski 264*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 44": 265*b1cdbd2cSJim Jagielskimodule m { const hyper C = 0x8000000000000000; }; 266*b1cdbd2cSJim Jagielski 267*b1cdbd2cSJim Jagielski 268*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 45": 269*b1cdbd2cSJim Jagielskimodule m { const unsigned hyper C = -1; }; 270*b1cdbd2cSJim Jagielski 271*b1cdbd2cSJim Jagielski 272*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 46": 273*b1cdbd2cSJim Jagielskimodule m { const unsigned hyper C = -01; }; 274*b1cdbd2cSJim Jagielski 275*b1cdbd2cSJim Jagielski 276*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 47": 277*b1cdbd2cSJim Jagielskimodule m { const unsigned hyper C = -0x1; }; 278*b1cdbd2cSJim Jagielski 279*b1cdbd2cSJim Jagielski 280*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 48": 281*b1cdbd2cSJim Jagielskimodule m { const unsigned hyper C = 18446744073709551616; }; 282*b1cdbd2cSJim Jagielski 283*b1cdbd2cSJim Jagielski 284*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 49": 285*b1cdbd2cSJim Jagielskimodule m { const unsigned hyper C = 02000000000000000000000; }; 286*b1cdbd2cSJim Jagielski 287*b1cdbd2cSJim Jagielski 288*b1cdbd2cSJim JagielskiEXPECT FAILURE "constant.tests 50": 289*b1cdbd2cSJim Jagielskimodule m { const unsigned hyper C = 0x10000000000000000; }; 290