PR 2503: AIX 3.2.5: gcc-2.95.3: `as' Seg fault

rbrown64@csc.com.au rbrown64@csc.com.au
Mon May 7 22:45:00 GMT 2001


Number:             2503
Category:           c++
Synopsis:           Fatal signal comiling map template using -g on AIX
Severity:           non-critical
Responsible:        unassigned
State:              open
Class:              ice-on-legal-code
Arrival-Date:       Fri Apr 06 11:06:01 PDT 2001
Originator:         Mark Glemboski
Release:            powerpc-ibm-aix3.2.5/2.95.3 gcc version 2.95.3 20010315
                    (release)
Environment:        OS: AIX 2 3 000040754900
                    Hardware: powerpc-ibm-aix3.2.5
Description:        Compiling a map template that has a string as a key
                    with the -g option causes the error:

                    g++: Internal compiler error: program as got fatal
                    signal 11
How-To-Repeat:      Compile this source file 'tm.C':
                    #include <string>
                    #include <map>
                    map <string, int> badMap;

                    Using the command:
                    g++ -g -c tm.C -o tm.o
Fix:                Work arounds:
                    Compile without using '-g'.
                    -or-
                    Use const char * instead of string


On rs6000-ibm-aix4.2.0.0 the test file tm.i compiles ok with 2.95.2.
Since the failure in the vendor assembler `as' and AIX 3.2.5 is (I believe)
unsupported you may not have many options.
binutils-2.11 builds on AIX 4.2.0.0 (not ld) so it is conceivable that you
may be able to build and use GNU as on AIX 3.2.5.
< http://gcc.gnu.org/install/specific.html#*-ibm-aix* > doesn't mention
AIX versions prior to 4 and nor did I see anything on
< http://service.boulder.ibm.com/ > which it references for patches.

If AIX 3.2.5 uses the same package management commands as 4.2, you can check
the version and may be able to find later releases of the package containing
the assembler somewhere.

FWIW I remember upgrading from 3.2.x to 4 as not being a free upgrade and
requiring recompilation of everything. 4.2.0 is the minimum that IBM
certified as Y2k compliant.

$ uname -a
AIX rocky 2 4 000053533000
$ type as
as is /usr/bin/as
$ lslpp -w /usr/bin/as
  File                        Fileset         Type
  ----------------------------------------------------------------------------
  /usr/bin/as                  bos.adt.base     Symlink
$ lslpp -La bos.adt.base
  Fileset            Level  State  Description
  ----------------------------------------------------------------------------
  bos.adt.base      4.2.0.0   C    Base Application Development
                              Toolkit
                    4.2.0.2   C    Base Application Development
                              Toolkit
                    4.2.1.0   C    Base Application Development
                              Toolkit
                    4.2.1.4   C    Base Application Development
                              Toolkit

State Codes:
 C -- Committed.



More information about the Gcc-bugs mailing list