From: SourceForge.net <no...@so...> - 2009-06-12 15:56:14
|
Bugs item #2805536, was opened at 2009-06-12 11:55 Message generated for change (Tracker Item Submitted) made by dfulab You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: z80 port Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: dfulab (dfulab) Assigned to: Nobody/Anonymous (nobody) Summary: Assembly code comment cause Internal Error Initial Comment: Version: SDCC 2.9.0 #5416 (Mar 22 2009) (MINGW32) for Z80 Source: fail.c (also attached) -------------------------------------------------------------------------------------------------------------------------- void fail(void) { _asm ld a,b ; != <-- this causes a compiler internal error _endasm; } -------------------------------------------------------------------------------------------------------------------------- Compile with the following command line option will cause an internal error: -------------------------------------------------------------------------------------------------------------------------- "C:\Program Files\SDCC\bin\sdcc" -mz80 -c fail.c Cant find token "" fail.c:5: error 9: FATAL Compiler Internal Error in file '/home/sdcc-builder/bui ld/sdcc-build/orig/sdcc/src/SDCCasm.c' line number '110' : code generator intern al error Contact Author with source code -------------------------------------------------------------------------------------------------------------------------- Comment: In theory, everything between _asm and _endasm should pass into the assembler as is. Seems like the compiler get confused with the C statement != in the Z80 assembler comments field. I think I have seen other C statements causes same problem. I found this out when I try to comment my inline assembly code with C code. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 |
From: SourceForge.net <no...@so...> - 2009-06-13 09:46:10
|
Bugs item #2805536, was opened at 2009-06-12 17:55 Message generated for change (Settings changed) made by borutr You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: C-Front End Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: dfulab (dfulab) >Assigned to: Borut Ražem (borutr) Summary: Assembly code comment cause Internal Error Initial Comment: Version: SDCC 2.9.0 #5416 (Mar 22 2009) (MINGW32) for Z80 Source: fail.c (also attached) -------------------------------------------------------------------------------------------------------------------------- void fail(void) { _asm ld a,b ; != <-- this causes a compiler internal error _endasm; } -------------------------------------------------------------------------------------------------------------------------- Compile with the following command line option will cause an internal error: -------------------------------------------------------------------------------------------------------------------------- "C:\Program Files\SDCC\bin\sdcc" -mz80 -c fail.c Cant find token "" fail.c:5: error 9: FATAL Compiler Internal Error in file '/home/sdcc-builder/bui ld/sdcc-build/orig/sdcc/src/SDCCasm.c' line number '110' : code generator intern al error Contact Author with source code -------------------------------------------------------------------------------------------------------------------------- Comment: In theory, everything between _asm and _endasm should pass into the assembler as is. Seems like the compiler get confused with the C statement != in the Z80 assembler comments field. I think I have seen other C statements causes same problem. I found this out when I try to comment my inline assembly code with C code. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 |
From: SourceForge.net <no...@so...> - 2009-06-13 10:20:41
|
Bugs item #2805536, was opened at 2009-06-12 17:55 Message generated for change (Comment added) made by borutr You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: C-Front End >Group: fixed >Status: Closed >Resolution: Fixed Priority: 5 Private: No Submitted By: dfulab (dfulab) Assigned to: Borut Ražem (borutr) Summary: Assembly code comment cause Internal Error Initial Comment: Version: SDCC 2.9.0 #5416 (Mar 22 2009) (MINGW32) for Z80 Source: fail.c (also attached) -------------------------------------------------------------------------------------------------------------------------- void fail(void) { _asm ld a,b ; != <-- this causes a compiler internal error _endasm; } -------------------------------------------------------------------------------------------------------------------------- Compile with the following command line option will cause an internal error: -------------------------------------------------------------------------------------------------------------------------- "C:\Program Files\SDCC\bin\sdcc" -mz80 -c fail.c Cant find token "" fail.c:5: error 9: FATAL Compiler Internal Error in file '/home/sdcc-builder/bui ld/sdcc-build/orig/sdcc/src/SDCCasm.c' line number '110' : code generator intern al error Contact Author with source code -------------------------------------------------------------------------------------------------------------------------- Comment: In theory, everything between _asm and _endasm should pass into the assembler as is. Seems like the compiler get confused with the C statement != in the Z80 assembler comments field. I think I have seen other C statements causes same problem. I found this out when I try to comment my inline assembly code with C code. ---------------------------------------------------------------------- >Comment By: Borut Ražem (borutr) Date: 2009-06-13 12:20 Message: Fixed in svn revision #5468: unrecognized macros are simply not expanded without throwing an error. See also: https://sourceforge.net/mailarchive/forum.php?thread_name=4A09B4BD.3080107%40spth.de&forum_name=sdcc-devel Borut ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 |
From: Jan W. <we...@ef...> - 2009-06-13 09:14:59
|
This is exactly what Philipp already warned against: https://sourceforge.net/mailarchive/forum.php?thread_name=4A09B4BD.3080107%40spth.de&forum_name=sdcc-devel IMHO: 1. any !xxx which is not recognized as a valid macro should be simply emitted to the asm output unchanged 2. this whole macro stuff should be properly documented (or am I missing an existing documentation)? Jan Waclawek ----- Original Message --------------- Subject: [sdcc-devel] [ sdcc-Bugs-2805536 ] Assembly code comment causeInternal Error From: "SourceForge.net" <no...@so...> Date: Fri, 12 Jun 2009 15:55:08 +0000 To: no...@so... >Bugs item #2805536, was opened at 2009-06-12 11:55 >Message generated for change (Tracker Item Submitted) made by dfulab >You can respond by visiting: >https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 > >Please note that this message will contain a full copy of the comment thread, >including the initial issue submission, for this request, >not just the latest update. >Category: z80 port >Group: None >Status: Open >Resolution: None >Priority: 5 >Private: No >Submitted By: dfulab (dfulab) >Assigned to: Nobody/Anonymous (nobody) >Summary: Assembly code comment cause Internal Error > >Initial Comment: >Version: SDCC 2.9.0 #5416 (Mar 22 2009) (MINGW32) for Z80 > >Source: fail.c (also attached) >-------------------------------------------------------------------------------------------------------------------------- >void fail(void) >{ >_asm > ld a,b ; != <-- this causes a compiler internal error >_endasm; >} >-------------------------------------------------------------------------------------------------------------------------- > >Compile with the following command line option will cause an internal error: >-------------------------------------------------------------------------------------------------------------------------- >"C:\Program Files\SDCC\bin\sdcc" -mz80 -c fail.c >Cant find token "" >fail.c:5: error 9: FATAL Compiler Internal Error in file '/home/sdcc-builder/bui >ld/sdcc-build/orig/sdcc/src/SDCCasm.c' line number '110' : code generator intern >al error >Contact Author with source code >-------------------------------------------------------------------------------------------------------------------------- > >Comment: >In theory, everything between _asm and _endasm should pass into the assembler as is. > >Seems like the compiler get confused with the C statement != in the Z80 assembler comments field. >I think I have seen other C statements causes same problem. I found this out when I try to comment my inline assembly code with C code. > > >---------------------------------------------------------------------- > >You can respond by visiting: >https://sourceforge.net/tracker/?func=detail&atid=100599&aid=2805536&group_id=599 > |