This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Problems with gcc on Darwin/Mac OS X
- From: Adriaan van Os <gcc at microbizz dot nl>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sat, 29 Mar 2003 02:52:12 +0100
- Subject: Problems with gcc on Darwin/Mac OS X
Does anyone know what the status is of the following problems,
encountered with gcc-3.2.1/3.2.2 on Darwin/Mac OS X ?
(1) trampolines crash (I have a patch to fix it)
(2) longjumps crash (I have a patch to fix it also)
(3) non-local goto's don't work, e.g.
extern int puts (const char *);
extern void abort (void);
int main (void)
{
__label__ l1;
void foo (void)
{
void bar (void)
{
puts ("goto l1");
goto l1;
}
bar ();
}
foo ();
abort ();
l1:
puts ("label l1");
return 0;
}
(4) compiling any .c source with -ggdb or -gdwarf-2 (instead of -gstabs
or -g) produces the following output:
Internal compiler error in default_no_named_section, at varasm.c:5305
As far as I understand it, dwarf2 debug info is stored in "named
sections" in the assembler code (dwarf2out.c:3679). Some object formats
support names sections, and some don't (default_no_named_section and
the following 3 functions in varasm.c).
The Darwin backend claims to support dwarf2 (config/darwin.h:128), but
doesn't set TARGET_ASM_NAMED_SECTION (either by omission, or correctly
because its object format really doesn't support named sections).
So I think the error is in the Darwin backend. It should either set
TARGET_ASM_NAMED_SECTION (if that's possible) or not set
DWARF2_DEBUGGING_INFO.
Regards,
Adriaan van Os