[Mono-bugs] [Bug 58943][Wis] Changed - ILASM parse error while looking for a HEXBYTE token
bugzilla-daemon@bugzilla.ximian.com
bugzilla-daemon@bugzilla.ximian.com
Mon, 24 May 2004 11:40:02 -0400 (EDT)
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by kjambunathan@novell.com.
http://bugzilla.ximian.com/show_bug.cgi?id=58943
--- shadow/58943 2004-05-24 11:31:56.000000000 -0400
+++ shadow/58943.tmp.6854 2004-05-24 11:40:02.000000000 -0400
@@ -1,14 +1,14 @@
Bug#: 58943
Product: Mono: Compilers
Version: unspecified
-OS:
+OS: unknown
OS Details:
Status: NEW
Resolution:
-Severity:
+Severity: Unknown
Priority: Wishlist
Component: IL assembler
AssignedTo: mono-bugs@ximian.com
ReportedBy: kjambunathan@novell.com
QAContact: mono-bugs@ximian.com
TargetMilestone: ---
@@ -19,6 +19,43 @@
------- Additional Comments From kjambunathan@novell.com 2004-05-24 11:31 -------
Created an attachment (id=7805)
TestApp for reproducing the issue
+
+------- Additional Comments From kjambunathan@novell.com 2004-05-24 11:40 -------
+Steps for reproduction:
+ilasm abcd.il
+
+Actual Results:
+
+Assembling 'abcd.il' , no listing file, to exe --> 'abcd.exe'
+Error at: line (37) column (29)
+System.Exception: Invalid hex value. ' '.
+in <0x00171> Mono.ILASM.ILTokenizer:GetNextToken ()
+in <0x00011> Mono.ILASM.ILTokenizer:get_NextToken ()
+in <0x00017> Mono.ILASM.ScannerAdapter:advance ()
+in <0x0078f> Mono.ILASM.ILParser:yyparse (Mono.ILASM.yyParser.yyInput)
+in <0x000cd> Mono.ILASM.ILParser:yyparse
+(Mono.ILASM.yyParser.yyInput,object)
+in <0x00248> DriverMain:ProcessFile (string)
+
+Error while compiling.
+
+Expected Results:
+A proper abcd.exe file
+
+
+Analysis:
+
+The problem happens while parsing for the following production:
+
+bytes_list ->( bytes )
+bytes -> <empty> | hexbytes
+hexbytes -> hexbyte | hexbytes hexbyte
+hexbyte -> HEXBYTE
+
+If a whitespace character precedes the first byte in the list, then
+ilasm spits out a parse error, when it shouldn't.
+
+