[PATCH, d/87824]: x86_64-linux multilib issues

Uros Bizjak ubizjak@gmail.com
Tue Mar 12 18:22:00 GMT 2019


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  <ubizjak@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.
-------------- next part --------------
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++"
 }
 
 #


More information about the Gcc-patches mailing list