]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR lto/41921 (Cross language don't work with typedef unnamed structs)
authorRichard Biener <rguenth@gcc.gnu.org>
Thu, 3 Jun 2010 16:08:49 +0000 (16:08 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 3 Jun 2010 16:08:49 +0000 (16:08 +0000)
2010-06-03  Richard Guenther  <rguenther@suse.de>

PR lto/41921
* lib/lto.exp: Always load gcc.exp.
(lto-obj): For C source files invoke gcc_target_compile.
* g++.dg/lto/20100603-1_0.C: New testcase.
* g++.dg/lto/20100603-1_1.c: Likewise.

From-SVN: r160227

gcc/testsuite/lib/lto.exp

index 7b51fdd2f6f471ecf7655debcab389f804cae80c..282b57f0b390c8eed700131a9aa9efd85f6cf6d6 100644 (file)
@@ -110,6 +110,7 @@ set lto_skip_list $LTO_SKIPS
 
 load_lib dg.exp
 load_lib gcc-dg.exp
+load_lib gcc.exp
 
 # lto-obj -- compile to an object file
 #
@@ -137,7 +138,13 @@ proc lto-obj { source dest optall optfile optstr xfaildata } {
     lappend options "additional_flags=$optall $optfile"
 
     set compiler_conditional_xfail_data $xfaildata
-    set comp_output [${tool}_target_compile "$source" "$dest" object $options]
+
+    # Allow C source files to mix freely with other languages
+    if [ string match "*.c" $source ] then {
+      set comp_output [gcc_target_compile "$source" "$dest" object $options]
+    } else {
+      set comp_output [${tool}_target_compile "$source" "$dest" object $options]
+    }
     # Prune unimportant visibility warnings before checking output.
     set comp_output [lto_prune_warns $comp_output]
     ${tool}_check_compile "$testcase $dest assemble" $optstr $dest $comp_output