]> git.draconx.ca Git - cdecl99.git/blobdiff - tests/internal.at
libcdecl: Use an explicit name for T_LEX_ERROR.
[cdecl99.git] / tests / internal.at
index 1ae6f994a78829ae287639325b1eecdade3a0cf5..5fef623833bc672682ee9273603d8861c350ada2 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2021, 2023 Nick Bowler
+# Copyright © 2021, 2023-2024 Nick Bowler
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -74,7 +74,11 @@ AT_CLEANUP
 TEST_TAP_SIMPLE([cdecl__err sanity], [cdeclerr],
   [TEST_NEED_PROGRAM([cdeclerr])], [libcdecl internal])
 
+TEST_TAP_SIMPLE([cdecl__err thread safety], [errthread],
+  [TEST_NEED_PROGRAM([errthread])], [libcdecl internal threads])
+
 AT_SETUP([cdecl_declare truncation])
+AT_KEYWORDS([libcdecl internal])
 
 AT_DATA([input],
 [[int hello_world
@@ -82,8 +86,8 @@ int x[1234567890]
 ]])
 
 AT_CHECK([rendertest -n 0 <input], [0],
-[[15 @&t@
-17 @&t@
+[[15
+17
 ]])
 
 AT_CHECK([rendertest -n 10 <input], [0],
@@ -94,6 +98,7 @@ AT_CHECK([rendertest -n 10 <input], [0],
 AT_CLEANUP
 
 AT_SETUP([cdecl_explain truncation])
+AT_KEYWORDS([libcdecl internal])
 
 AT_DATA([input],
 [[declare x as int
@@ -101,8 +106,8 @@ type array 123456789 of int
 ]])
 
 AT_CHECK([rendertest --english -n 0 <input], [0],
-[[16 @&t@
-27 @&t@
+[[16
+27
 ]])
 
 AT_CHECK([rendertest --english -n 15 <input], [0],
@@ -111,3 +116,37 @@ AT_CHECK([rendertest --english -n 15 <input], [0],
 ]])
 
 AT_CLEANUP
+
+AT_SETUP([cdecl__yylex integer constants])
+
+AT_CHECK([scantest \
+  '0 000 0x00 0X00' \
+  '1234 01234 0x1234 0X1234' \
+  '4294967295 037777777777 0xffffffff 0XFFFFFFFF' \
+  09 012345678 0x 0X], [0],
+[[integer constant 0
+integer constant 0
+integer constant 0
+integer constant 0
+eof
+integer constant 1234
+integer constant 668
+integer constant 4660
+integer constant 4660
+eof
+integer constant 4294967295
+integer constant 4294967295
+integer constant 4294967295
+integer constant 4294967295
+eof
+@@@
+eof
+@@@
+eof
+@@@
+eof
+@@@
+eof
+]])
+
+AT_CLEANUP