summaryrefslogtreecommitdiff
path: root/gcc/config/arm/symbian.h
diff options
context:
space:
mode:
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-06 17:51:45 +0000
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>2004-08-06 17:51:45 +0000
commitb08de606de108292113bff9a65ba34cc7b816f76 (patch)
tree07e882143d1fcb2ff08cb3045152f8878714e664 /gcc/config/arm/symbian.h
parent43341e2fef3058d90fde0502230bef2abbc9ca85 (diff)
downloadgcc-b08de606de108292113bff9a65ba34cc7b816f76.tar.gz
* config/arm/symbian.h (CC1_SPEC): Avoid passing duplicate options
to the compiler. Use -fshort-wchar by default. * gcc.dg/symbian4.c: Expect a 2-byte wchar_t, not a 4-byte wchar_t. * gcc.dg/symbian5.c: Test -fno-short-wchar. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85648 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/arm/symbian.h')
-rw-r--r--gcc/config/arm/symbian.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/gcc/config/arm/symbian.h b/gcc/config/arm/symbian.h
index 4ad4f46b74a..c03b428e692 100644
--- a/gcc/config/arm/symbian.h
+++ b/gcc/config/arm/symbian.h
@@ -34,8 +34,18 @@
Make all symbols hidden by default. Symbian OS expects that all
exported symbols will be explicitly marked with
- "__declspec(dllexport)". */
-#define CC1_SPEC "-fno-builtin -fvisibility=hidden -fno-short-enums"
+ "__declspec(dllexport)".
+
+ Enumeration types use 4 bytes, even if the enumerals are small,
+ unless explicitly overridden.
+
+ The wchar_t type is a 2-byte type, unless explicitly
+ overridden. */
+#define CC1_SPEC \
+ "%{!fbuiltin:%{!fno-builtin:-fno-builtin}} " \
+ "%{!fvisibility=*:-fvisibility=hidden} " \
+ "%{!fshort-enums:%{!fno-short-enums:-fno-short-enums}} " \
+ "%{!fshort-wchar:%{!fno-short-wchar:-fshort-wchar}} "
#define CC1PLUS_SPEC CC1_SPEC
/* Symbian OS does not use crt0.o, unlike the generic unknown-elf