This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Why gcc 3.0.1 fails for sh target (coff,hms)
- From: "GNUTeam" <gnuteam at kpit dot com>
- To: "'GNUTeam'" <gnuteam at kpit dot com>,<binutils at sources dot redhat dot com>,<crossgcc at sources dot redhat dot com>,<gcc at gcc dot gnu dot org>,<libstdc++ at gcc dot gnu dot org>
- Date: Wed, 21 Nov 2001 10:23:30 +0530
- Subject: Why gcc 3.0.1 fails for sh target (coff,hms)
- Reply-to: <gnuteam at kpit dot com>
Hi!
The built for GCC 3.0.1 fails for targets sh-hms and sh-coff with the
Error : Rest of line ignored. First character ignored is '<' while
compiling basic_file.cc file present under directory /libstdc++-v3/src/.
The source code I am using is binutils 2.11.2, gcc 3.0.1 and newlib 1.9.0.
The build with same source code for sh-elf target has been successful.
I tried to troubleshoot the problem for coff and hms targets and following
are my observations. It will be very useful if somebody comments on my
observations.
I compared the /libstdc++-v3/src build directories for sh-elf and sh-coff
and I observed that the sh-coff's 'src' directory only configures this
directory to have two files basic_file.cc and c++locale.cc. Whereas, the
sh-elf is configured for all the 20 .cc files.
Q: Why all the src .cc files are not taken for built in case of target
coff?
The basic_file.cc has a template class, which, when compiled with -g
option fails to compile on sh-coff (It is successful on sh-elf). When
compiled
without -g option or with -gstabs option the program compiles properly.
For -gdwarf it displays unsupported -g option.
Q: Why the -gdwarf is not supported for coff-gcc? Are -gcoff and -gstabs
debug format only supported for coff target?
Another observation was that in the symbol name formation (read.c and
read.h in gas) the value for character '<' and '>' is 0 in lex_type array.
and so I think the assembler is unable to recognize the '<' character in
symbol name. The stabs and dwarf debug format information for a template
class
can be recognized by the assembler but not coff debug format for the same
template class.
Q: If this is the case should it mean that the coff debug format is not
recommended for C++-template programs?
When removed the -g from the compilation I have a successful build on GCC
3.0.1 for sh-coff and sh-hms targets.
Q: But if I want to successfully build the tool chain with '-g' what
should I do?
Please guide me on this.
Thanks & regards
Rekha