summaryrefslogtreecommitdiff
path: root/gcc/cp/g++spec.c
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2007-03-02 21:07:37 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2007-03-02 21:07:37 +0000
commit92bae6924295ce5454ee138eef33ea614b2e99d0 (patch)
tree8933fc27c40c3ab0447477fc8326b9df2ca221ab /gcc/cp/g++spec.c
parentc3783c3b99309137d1939f8201a3d4c83b5a13aa (diff)
downloadgcc-92bae6924295ce5454ee138eef33ea614b2e99d0.tar.gz
Index: gcc/cp/ChangeLog
2007-03-02 Geoffrey Keating <geoffk@apple.com> * g++spec.c (lang_specific_driver): Add -lstdc++ when compiling Objective-C++. Don't exit early if -shared-libgcc needs to be added. Index: gcc/testsuite/ChangeLog 2007-03-02 Geoffrey Keating <geoffk@apple.com> * g++.dg/other/darwin-minversion-1.C: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122488 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/g++spec.c')
-rw-r--r--gcc/cp/g++spec.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c
index 2ddc62c1e20..2f452ee5096 100644
--- a/gcc/cp/g++spec.c
+++ b/gcc/cp/g++spec.c
@@ -159,11 +159,19 @@ lang_specific_driver (int *in_argc, const char *const **in_argv,
arg = "";
if (library == 0
&& (strcmp (arg, "c++") == 0
- || strcmp (arg, "c++-cpp-output") == 0))
+ || strcmp (arg, "c++-cpp-output") == 0
+ || strcmp (arg, "objective-c++") == 0
+ || strcmp (arg, "objective-c++-cpp-output") == 0))
library = 1;
saw_speclang = 1;
}
+ else if (strcmp (argv[i], "-ObjC++") == 0)
+ {
+ if (library == 0)
+ library = 1;
+ saw_speclang = 1;
+ }
/* Arguments that go directly to the linker might be .o files,
or something, and so might cause libstdc++ to be needed. */
else if (strcmp (argv[i], "-Xlinker") == 0)
@@ -237,13 +245,6 @@ lang_specific_driver (int *in_argc, const char *const **in_argv,
if (quote)
fatal ("argument to '%s' missing\n", quote);
- /* If we know we don't have to do anything, bail now. */
- if (! added && library <= 0)
- {
- free (args);
- return;
- }
-
/* There's no point adding -shared-libgcc if we don't have a shared
libgcc. */
#ifndef ENABLE_SHARED_LIBGCC