bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] tests: check token numbers.


From: Akim Demaille
Subject: [PATCH] tests: check token numbers.
Date: Tue, 5 May 2009 09:35:34 +0200

        * tests/input.at (Numbered tokens): New.
---
 ChangeLog      |    5 +++++
 tests/input.at |   37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 42 insertions(+), 0 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index db56d97..ba901d6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-05-05  Akim Demaille  <address@hidden>
+
+       tests: check token numbers.
+       * tests/input.at (Numbered tokens): New.
+
 2009-05-04  Akim Demaille  <address@hidden>
 
        bison: catch bad symbol names.
diff --git a/tests/input.at b/tests/input.at
index 4345edd..1eaf482 100644
--- a/tests/input.at
+++ b/tests/input.at
@@ -674,6 +674,43 @@ AT_BISON_CHECK([-o input.c input.y], [1], [],
 AT_CLEANUP
 
 
+## ----------------- ##
+## Numbered tokens.  ##
+## ----------------- ##
+
+AT_SETUP([Numbered tokens])
+
+AT_DATA_GRAMMAR([input.y],
+[[%token HEXADECIMAL_1 0xabcdef
+           DECIMAL_1 11259375
+%token HEXADECIMAL_2 0XFEDCBA
+           DECIMAL_2 16702650
+%%
+start: HEXADECIMAL_1 HEXADECIMAL_2
+%%
+]])
+
+AT_BISON_CHECK([input.y], [1], [],
+[[input.y:12.12-20: tokens HEXADECIMAL_2 and DECIMAL_2 both assigned number 
16702650
+input.y:9.8-20: tokens DECIMAL_1 and HEXADECIMAL_1 both assigned number 
11259375
+]])
+
+AT_DATA_GRAMMAR([input.y],
+[[%token TOO_LARGE_DEC 999999999999999999999
+         TOO_LARGE_HEX 0xFFFFFFFFFFFFFFFFFFF
+%%
+start: TOO_LARGE_DEC TOO_LARGE_HEX
+%%
+]])
+
+AT_BISON_CHECK([input.y], [1], [],
+[[input.y:9.22-42: integer out of range: `999999999999999999999'
+input.y:10.24-44: integer out of range: `0xFFFFFFFFFFFFFFFFFFF'
+]])
+
+AT_CLEANUP
+
+
 ## --------------------- ##
 ## Unclosed constructs.  ##
 ## --------------------- ##
-- 
1.6.2.2





reply via email to

[Prev in Thread] Current Thread [Next in Thread]