This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: decunix egcs bug for STL?


John R Cary <cary@txcorp.com> writes:

> I have been trying to get egcs working on decunix.

> /usr/local/egcs/bin/g++ -g -Wall -Woverloaded-virtual -I.    -c PropertyData.C
> mips-tfile, /tmp/ccaaatya.s:304 String too big (4304 bytes)

Please read the new FAQ entry below.

Ok to install?

Index: faq.html
===================================================================
RCS file: /egcs/carton/cvsfiles/wwwdocs/htdocs/faq.html,v
retrieving revision 1.57
diff -u -c -r1.57 faq.html
diff: conflicting specifications of output style
*** faq.html	1998/09/24 14:39:39	1.57
--- faq.html	1998/09/27 22:47:17
***************
*** 52,57 ****
--- 52,59 ----
    <li><a href="#o32abi">Does EGCS support the O32 ABI on Irix?</a>
    <li><a href="#aix43">Unable to bootstrap egcs-1.1 on AIX 4.3</a>
    <li><a href="#irixlinks">Links to other FAQs for GCC on Irix platforms?</a>
+   <li><a href="#squangle">How to work around too long C++ symbol names? 
+ 	 (<tt>-fsquangle</tt>)</a>
  </ol>
  
  <hr>
***************
*** 834,839 ****
--- 836,866 ----
  <h2><a name="irixlinks">Links to other FAQs for GCC on Irix platforms </a></h2>
  <p><a href="http://reality.sgi.com/ariel/freeware/"> 
  http://reality.sgi.com/ariel/freeware</a>
+ 
+ <hr>
+ <h2><a name="squangle">How to work around too long C++ symbol names? 
+ (<tt>-fsquangle</tt>)</a></h2>
+ 
+ <p>If the standard assembler of your platform can't cope with the
+ large symbol names that the default g++ name mangling mechanism
+ produces, your best bet is to use GNU as, from the GNU binutils
+ package.
+ 
+ <p>Unfortunately, GNU as does not support all platforms supported by
+ egcs, so you may have to use an experimental work-around: the
+ <tt>-fsquangle</tt> option, that enables compression of symbol names.
+ 
+ <p>Note that this option is still under development, and subject to
+ change.  Since it modifies the name mangling mechanism, you'll need to
+ build libstdc++ and any other C++ libraries with this option enabled.
+ Furthermore, if this option changes its behavior in the future, you'll
+ have to rebuild them all again. :-(
+ 
+ <p>This option can be enabled by default by initializing
+ `flag_do_squangling' with `1' in `gcc/cp/decl2.c', then rebuilding
+ egcs and any C++ libraries.
+ 
+ <hr>
  
  <p><a href="index.html">Return to the EGCS home page</a>
  <p><i>Last modified:  September 18, 1998</i>

-- 
Alexandre Oliva
mailto:oliva@dcc.unicamp.br mailto:aoliva@acm.org
http://www.dcc.unicamp.br/~oliva
Universidade Estadual de Campinas, SP, Brasil



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]