diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2023-04-13 08:54:47 +0200 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2023-12-20 15:08:39 +0100 |
commit | 4d9d015cf4054f5f9df14a2c11ce81379b6caf0f (patch) | |
tree | cfce80e2eb6e14d8540bece2d2d24daab32ba0cd /gcc | |
parent | a8f0278ade1353e3e6389aa7a00525b6e9b723ab (diff) | |
download | gcc-4d9d015cf4054f5f9df14a2c11ce81379b6caf0f.zip gcc-4d9d015cf4054f5f9df14a2c11ce81379b6caf0f.tar.gz gcc-4d9d015cf4054f5f9df14a2c11ce81379b6caf0f.tar.bz2 |
No libstdc++ for GCN
Like commit d94fae044da071381b73a2ee8afa874b14fa3820 "No libstdc++ for nvptx"
(2015) and elsewhere.
Based on commit 5f1bed2a7af828103ca23a3546466a23e8dd2f30 (2023-12-16), there
are a ton of progressions (for test cases not actually depending on libstdc++
symbols, obviously):
=== g++ Summary ===
# of expected passes [-178369-]{+189226+}
# of unexpected failures [-19880-]{+14089+}
# of unexpected successes 14
# of expected failures [-1684-]{+1685+}
# of unresolved testcases [-9820-]{+4837+}
# of unsupported tests [-11971-]{+11968+}
..., and only two benign "regressions":
[-UNSUPPORTED:-]{+FAIL:+} g++.dg/init/array54.C -std=c++14 {+(test for excess errors)+}
{+UNRESOLVED: g++.dg/init/array54.C -std=c++14 compilation failed to produce executable+}
[Etc.]
[...]/g++.dg/init/array54.C:5:10: fatal error: atomic: No such file or directory
That's similar to a lof of other test cases intending to '#include' standard
C++/libstdc++ headers; to be addressed in due time.
PASS: g++.old-deja/g++.pt/const2.C -std=c++98 at line 5 (test for warnings, line )
[-PASS:-]{+FAIL:+} g++.old-deja/g++.pt/const2.C -std=c++98 (test for excess errors)
[Etc.]
ld: error: undefined symbol: A<int>::i
>>> referenced by /tmp/ccqXWCSh.o:(p)
The 'error: undefined symbol' is expected here; maybe should simply in the test
case 'dg-prune-output "referenced by"'? (This PASSed before, as the
'dg-message "i"' was satisfied by 'ld: error: unable to find library -lstdc++',
eh...)
gcc/
* config/gcn/gcn.h (LIBSTDCXX): Define to "gcc".
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/gcn/gcn.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/config/gcn/gcn.h b/gcc/config/gcn/gcn.h index cb52be7..b8f2854 100644 --- a/gcc/config/gcn/gcn.h +++ b/gcc/config/gcn/gcn.h @@ -836,3 +836,7 @@ enum gcn_builtin_codes || M == V2SFmode || M == V2DImode || M == V2DFmode) \ ? 2 \ : 1) + +/* The C++ front end insists to link against libstdc++ -- which we don't build. + Tell it to instead link against the innocuous libgcc. */ +#define LIBSTDCXX "gcc" |