aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@codesourcery.com>2023-04-13 08:54:47 +0200
committerThomas Schwinge <thomas@codesourcery.com>2023-12-20 15:08:39 +0100
commit4d9d015cf4054f5f9df14a2c11ce81379b6caf0f (patch)
treecfce80e2eb6e14d8540bece2d2d24daab32ba0cd /gcc
parenta8f0278ade1353e3e6389aa7a00525b6e9b723ab (diff)
downloadgcc-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.h4
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"