Attached patch fixes libstdc++ includes for multilib d testsuite and
fixes runnable/cppa.d testsuite failure with 32bit multilib on
x86_64-linux-gnu.


2019-03-12  Uroš Bizjak  <ubiz...@gmail.com>

    PR d/87824
    * lib/gdc.exp (gdc_include_flags): Find C++ headers by calling
    libstdc++v3/scripts/testsuite_flags.  Filter out unsupported
    -nostdinc++ flag.

Tested on x86_64-linux-gnu {,-m32}.

OK for mainline?

Uros.
Index: lib/gdc.exp
===================================================================
--- lib/gdc.exp (revision 269617)
+++ lib/gdc.exp (working copy)
@@ -88,14 +88,13 @@
     append flags "-I${srcdir}/../../libphobos/libdruntime "
     append flags "-I${srcdir}/../../libphobos/src "
 
-    # For the tests that mix C++ and D, we should try and handle this better.
-    if { $gccpath != "" } {
-       if [file exists "${gccpath}/libstdc++-v3/include"] {
-           append flags "-I${gccpath}/libstdc++-v3/include "
-           append flags "-I${gccpath}/libstdc++-v3/include/$target "
-       }
+    # For the tests that mix C++ and D, need to know where headers are located.
+    set odir [lookfor_file ${gccpath} libstdc++-v3]
+    if { ${odir} != "" } {
+       set cxxflags [exec sh ${odir}/scripts/testsuite_flags --build-includes]
+       set idx [lsearch $cxxflags "-nostdinc++"]
+       append flags [lreplace $cxxflags $idx $idx]
     }
-    append flags "-I${srcdir}/../../libstdc++-v3/libsupc++"
 }
 
 #

Reply via email to