I've been working on some changes to let the libstdc++ testsuite use
the same approach as G++ to specify a minimum language dialect for
tests. That means instead of hardcoding { dg-options "-std=gnu++11" }
we can use { dg-do run { target c++11 } } and the test will be run for
any implicit or explicit -std mode that meets that minimum.
For that to work I need check_effective_target_c++ to return true when
the dg tool is "libstdc++".
The patch looks a bit messy, because it's fixing some messy
indentiation.
Tested x86_64-linux.
OK for trunk?
* lib/target-supports.exp (check_effective_target_c): Fix indentation.
(check_effective_target_c++): Likewise. Also match for libstdc++.
commit 56250fec9250e6864a9d7471ead2b08a77b89952
Author: Jonathan Wakely <[email protected]>
Date: Tue Jul 26 15:49:07 2016 +0100
Make check_effective_target_c++ work for libstdc++
* lib/target-supports.exp (check_effective_target_c): Fix indentation.
(check_effective_target_c++): Likewise. Also match for libstdc++.
diff --git a/gcc/testsuite/lib/target-supports.exp
b/gcc/testsuite/lib/target-supports.exp
index 770268f..9c5194d 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -7001,9 +7001,9 @@ proc check_effective_target_masm_intel {} {
# Return 1 if the language for the compiler under test is C.
proc check_effective_target_c { } {
- global tool
+ global tool
if [string match $tool "gcc"] {
- return 1
+ return 1
}
return 0
}
@@ -7011,9 +7011,9 @@ proc check_effective_target_c { } {
# Return 1 if the language for the compiler under test is C++.
proc check_effective_target_c++ { } {
- global tool
- if [string match $tool "g++"] {
- return 1
+ global tool
+ if { [string match $tool "g++"] || [string match $tool "libstdc++"] } {
+ return 1
}
return 0
}