[svn] r7392: nemerle/trunk/ncc: parsing/Lexer.n testsuite/negative/lexer.n

nazgul svnadmin at nemerle.org
Tue Feb 6 23:38:38 CET 2007


Log:
Check for letters in hex and octal literals

Author: nazgul
Date: Tue Feb  6 23:38:36 2007
New Revision: 7392

Modified:
   nemerle/trunk/ncc/parsing/Lexer.n
   nemerle/trunk/ncc/testsuite/negative/lexer.n

Modified: nemerle/trunk/ncc/parsing/Lexer.n
==============================================================================
--- nemerle/trunk/ncc/parsing/Lexer.n	(original)
+++ nemerle/trunk/ncc/parsing/Lexer.n	Tue Feb  6 23:38:36 2007
@@ -541,6 +541,9 @@
     };
     loop ();
     
+    when ((mode == NumberMode.Hex || mode == NumberMode.Octal) && id_buffer.Length <= 1)
+      Message.Error (this.Location, "expected value letters in numeric literal");
+    
     def exponent_part (only_realsuf) {
       when (!only_realsuf) {
         match (peek_or_white ()) {

Modified: nemerle/trunk/ncc/testsuite/negative/lexer.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/negative/lexer.n	(original)
+++ nemerle/trunk/ncc/testsuite/negative/lexer.n	Tue Feb  6 23:38:36 2007
@@ -9,6 +9,9 @@
      printf ("foo \g"); // E: bad escape character
      def x = 4444444444444444444444444444444444444; // E: number literal
   }
+  foo () : void {
+    _ = 0x   // E: expected value letters in numeric literal
+  }
 }
 
 }  // E: unexpected closing bracket



More information about the svn mailing list