From cdeb2e6d9332b75d1054ba59c1cd87f479e493ea Mon Sep 17 00:00:00 2001 From: Oliver Tappe Date: Sat, 28 Jan 2006 14:35:27 +0000 Subject: [PATCH] moved USE_EGCS_MANGLED_NAMES from host to target config file in order to generate "correct" (aka BeOS-specific) symbols when using the cross compiler, too. git-svn-id: file:///srv/svn/repos/haiku/buildtools/trunk@16119 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- legacy/gcc/gcc/system.h | 7 ------- legacy/gcc/gcc/cp/method.c | 2 +- legacy/gcc/gcc/config/i386/beos-elf.h | 6 ++++++ legacy/gcc/gcc/config/i386/xm-beos.h | 5 ----- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/legacy/gcc/gcc/system.h b/legacy/gcc/gcc/system.h index f276a5f..bcfaf6c 100644 --- a/legacy/gcc/gcc/system.h +++ b/legacy/gcc/gcc/system.h @@ -402,17 +402,10 @@ #define abort() fatal ("Internal compiler error at %s:%d\n", \ trim_filename (__FILE__), __LINE__) #else -#if defined (__BEOS__) /* hm, Be is no more, so we are *very* local about bug reports >:oP */ #define abort() fatal ("Internal compiler error in `%s', at %s:%d\n" \ "Please submit info to Oliver Tappe .\n",\ __PRETTY_FUNCTION__, trim_filename (__FILE__), __LINE__) -#else -#define abort() fatal ("Internal compiler error in `%s', at %s:%d\n" \ - "Please submit a full bug report.\n" \ - "See %s for instructions.", \ - __PRETTY_FUNCTION__, trim_filename (__FILE__), __LINE__, GCCBUGURL) -#endif /* __BEOS__ */ #endif /* recent gcc */ /* trim_filename is in toplev.c. Define a stub macro for files that diff --git a/legacy/gcc/gcc/cp/method.c b/legacy/gcc/gcc/cp/method.c index daf7056..5f3bc85 100644 --- a/legacy/gcc/gcc/cp/method.c +++ b/legacy/gcc/gcc/cp/method.c @@ -1353,7 +1353,7 @@ else { tree length = array_type_nelts (parmtype); -#ifndef __BEOS__ +#ifndef USE_EGCS_MANGLED_NAMES // *always* add one under BeOS... if (TREE_CODE (length) != INTEGER_CST || flag_do_squangling) #endif diff --git a/legacy/gcc/gcc/config/i386/beos-elf.h b/legacy/gcc/gcc/config/i386/beos-elf.h index 5d7eb98..e6bfd3e 100644 --- a/legacy/gcc/gcc/config/i386/beos-elf.h +++ b/legacy/gcc/gcc/config/i386/beos-elf.h @@ -530,3 +530,9 @@ */ #define WORK_AROUND_PRAGMA_INTERFACE_BUG 1 +/* The origin of BeOS's gcc is egcs 1.1.x, and these version had a bug + in mangled name builder. The APIs of BeOS are furnished to the + developers as shared library of C++. And if we use fixed mangled + names in newer gcc, some APIs are hidden with name problem. */ +#define USE_EGCS_MANGLED_NAMES + diff --git a/legacy/gcc/gcc/config/i386/xm-beos.h b/legacy/gcc/gcc/config/i386/xm-beos.h index 29a2604..25a7bfc 100644 --- a/legacy/gcc/gcc/config/i386/xm-beos.h +++ b/legacy/gcc/gcc/config/i386/xm-beos.h @@ -76,8 +76,3 @@ #define LIBRARY_PATH_ENV "BELIBRARIES" #endif -/* The origin of BeOS's gcc is egcs 1.1.x, and these version had a bug - in mangled name builder. The APIs of BeOS are furnished to the - developers as shared library of C++. And if we use fixed mangled - names in newer gcc, some APIs are hidden with name problem. */ -#define USE_EGCS_MANGLED_NAMES -- gitore 0.2.3