re PR lto/41921 (Cross language don't work with typedef unnamed structs)

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
This commit is contained in:
Richard Biener 2010-06-03 16:08:49 +00:00
parent f5f92f6d3b
commit ddf54e5aa0
1 changed files with 8 additions and 1 deletions

View 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