In some configurations of our validation setup, we always call the
compiler with -Wl,-rpath=XXX, which instructs the driver to invoke the
linker if none of -c, -S or -E is used.
This happens to be the case in the PCH tests, where dg-flags-pch sets
dg-do-what-default to precompile.
This works most of the time, in absence of any linker option, the
compiler defaults to generating a precompiled header (otherwise the
linker complains because it cannot find 'main').
This small patch forces the use of '-c' when generating the .gch file,
which is sufficient not to invoke the linker.
Arguably, this could be seen as a dejagnu bug: in gcc-dg-test-1 (in
gcc-dg.exp), we set compile_type to "precompiled_header", which is not
one of the supported values in dejagnu's default_target_compile (in
target.exp).
2023-10-27 Christophe Lyon <christophe.lyon@linaro.org>
gcc/testsuite/
* lib/dg-pch.exp (dg-flags-pch): Add -c when generating the
precompiled header.
set dg-do-what-default precompile
catch { file_on_host delete "$bname$suffix" }
gcc_copy_files "[file rootname $test]${suffix}s" "$bname$suffix"
- dg-test -keep-output "./$bname$suffix" "$otherflags $flags" ""
+ dg-test -keep-output "./$bname$suffix" "$otherflags $flags -c" ""
# For the rest, the default is to compile to .s.
set dg-do-what-default compile