g++, PROBLEMS WITH STANDARD ASSEMBLER

Jason Patterson s000623 at kowande.bu.oz.au
Wed May 29 11:40:34 AEST 1991


After installing g++ (and making a lot of small changes
by following the changes needed for gcc) I have discovered a
small but VERY ANOYING problem...

  THE STANDARD ASSEMBLER HATES $ SIGNS IN LABELS

This is a problem because all constructors have $ signs put
into their 'mangled' names. So at the moment I can't
compile code that uses constructors (not entirely true, I just
have to compile to assembly code, replace all $ in the assembly
code with something else (like an 'X'), and assemble that)


How can this be corrected?  4 Possible solutions follow...

	1  fix the standard assembler to accept $ in labels
		(this is the best option, especially since
		 it seems that most other assemblers DO
		 ALLOW $ IN LABLELS)

	2  use gas (GNU assembler) - has anyone installed
		this yet??? What about creating a tm-amix_gas.h
		and xm-amix_gas.h???

	3  add a phase to the compiler to do a search and
		replace!!! (not a good idea)

	4  change A LOT of the compiler code so that it uses
		something other than $ (what does standard as
		accept in labels anyway?) (not a good idea)


Please help me on this one, because I am NOT very experienced
in porting/hacking compilers/assemblers...


MANY THANKS FOR ANY IDEAS, AND ESPECIALLY FOR SOLUTIONS...


Jason Patterson

"To iterate is human, to recurse devine"


************************************************************
Internet: s000623 at kowande.bu.oz.au

Information & Computing Sciences      
Bond University, AUSTRALIA, 4229

"These views are not necessarily those of Bond University"
************************************************************



More information about the Comp.unix.amiga mailing list