// %CopyrightBegin% // // Copyright Ericsson AB 1997-2010. All Rights Reserved. // // The contents of this file are subject to the Erlang Public License, // Version 1.1, (the "License"); you may not use this file except in // compliance with the License. You should have received a copy of the // Erlang Public License along with this software. If not, it can be // retrieved online at http://www.erlang.org/. // // Software distributed under the License is distributed on an "AS IS" // basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See // the License for the specific language governing rights and limitations // under the License. // // %CopyrightEnd% // // This file forces the bad_tk_match. This triggers when the type of // the expression does not match the declared type of the constant // const long c1 = TRUE; const unsigned short c1b= TRUE; const boolean c2 = +5; const long c3 = 'c'; const float c5 = 3; const unsigned long c6 = -2; // Maybe not checked in compiler or suite const boolean c4 = 1 | 2; // Now define some correct constants for use in reference checking const long longC = -9; const short shortC = -9; const unsigned long ulongC = 1; const unsigned short ushortC = 0; const float floatC = 5.1; const double doubleC = -2.111; const boolean boolC = TRUE; const char charC = 'f'; const string stringC = "hej"; const string<9> stringCb = "hejdu"; // Check the reference errors const long c19 = floatC; const short c20 = doubleC; const unsigned long c21 = charC; const unsigned short c22 = stringC; const float c23 = stringCb; const double c24 = boolC; const boolean c25 = longC; const char c26 = shortC; const string c27 = ushortC; const string<9> c28 = ulongC; const long c29 = 3+floatC;