This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[v3] 12855 continued


... fixes up two peripheral, but open items in libstdc++/12855.

1) Removes a now-unused static member from ios_base::Init

2) Enables the libstdc++ testsuite to disable use of PCH on a per-file basis.

Although Devang pointed out a way to negate the '-include bits/stdc++.h'
by placing a null PCH include immediately before the real pch include,
this sadly doesn't work with the current libstdc++ setup. In changing
the libstdc++ test harness to accomidate this kind of functionality, I
moved the PCHFLAGS from included as part of CXXFLAGS to something new
(testsuite_flags --cxxpchflags). As part of this, PCHFLAGS are not
appended to CXXFLAGS, but instead added to DEFAULT_CXXFLAGS.

Once PCHFLAGS are folded into DEFAULT_CXXFLAGS, then any dg-options in a
file will easily be able to remove the use of PCH. 

I think this is the way to go, as it puts all the libstdc++ testsuite
specific flags (PCH, _GLIBCXX_ASSERT) into the same place, and doesn't
clutter up the include, cxx, or cxxflags for other clients of
testsuite_flags.

I don't anticipate this to be a big deal. 

However, while doing this I noticed that dg-options is a bit flaky about
_GLIBCXX_ASSERT. I'll fix this up next.

Objections soonish: there's a lot to get through today.

tested x86/linux
tested x86/linux --disable-libstdcxx-pch

-benjamin

These are the test files using dg-options. I intend to fix these up
after this patch is in.

 ./testsuite/17_intro/headers.cc:// { dg-options "-Wall -Wsystem-headers" { target *-*-freebsd* } }
./testsuite/18_support/numeric_limits.cc:// { dg-options "-mieee" { target alpha*-*-* } }
./testsuite/21_strings/char_traits/typedefs/char/1.cc:  // dg-options -ansi -pedantic-err
./testsuite/23_containers/vector/resize/1.cc:// { dg-options "-lmalloc" { target mips*-*-irix6* } }
./testsuite/23_containers/vector/invalidation/1.cc:// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
./testsuite/23_containers/vector/invalidation/2.cc:// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
./testsuite/23_containers/vector/invalidation/3.cc:// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
./testsuite/23_containers/vector/invalidation/4.cc:// { dg-options "-D_GLIBCXX_DEBUG_PEDANTIC" }
./testsuite/26_numerics/c_math_dynamic.cc:// { dg-options "-D_XOPEN_SOURCE" { target *-*-freebsd* } }
./testsuite/26_numerics/complex_value.cc:// { dg-options "-O0" }
./testsuite/27_io/ios_base/storage/1.cc:// { dg-options "-lmalloc" { target mips*-*-irix6* } }
./testsuite/27_io/ios_base/storage/2.cc:// { dg-options "-lmalloc" { target mips*-*-irix6* } }
./testsuite/27_io/ios_base/storage/3.cc:// { dg-options "-lmalloc" { target mips*-*-irix6* } }
./testsuite/27_io/manipulators/standard/char/2.cc:// { dg-options "-fno-implicit-templates" }
./testsuite/27_io/objects/char/5.cc:// { dg-options "-D_GLIBCXX_ASSERT" { target *-*-* } }
./testsuite/27_io/objects/wchar_t/5.cc:// { dg-options "-D_GLIBCXX_ASSERT" { target *-*-* } }
./testsuite/backward/header_deque_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_hash_map_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_hash_set_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_hashtable_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_iterator_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_rope_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_slist_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/header_tempbuf_h.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/strstream_members.cc:// { dg-options "-Wno-deprecated" }
./testsuite/backward/11460.cc:// { dg-options "-Wno-deprecated" }
./testsuite/ext/concept_checks.cc:// { dg-options "-D_GLIBCXX_CONCEPT_CHECKS" }
./testsuite/thread/pthread1.cc:// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread1.cc:// { dg-options "-pthreads" { target *-*-solaris* } }
./testsuite/thread/pthread2.cc:// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread2.cc:// { dg-options "-pthreads" { target *-*-solaris* } }
./testsuite/thread/pthread3.cc:// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread3.cc:// { dg-options "-pthreads" { target *-*-solaris* } }
./testsuite/thread/pthread4.cc:// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread4.cc:// { dg-options "-pthreads" { target *-*-solaris* } }
./testsuite/thread/pthread5.cc:// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread5.cc:// { dg-options "-pthreads" { target *-*-solaris* } }
./testsuite/thread/pthread6.cc:// { dg-options "-pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread6.cc:// { dg-options "-pthreads" { target *-*-solaris* } }
./testsuite/thread/pthread7-rope.cc:// { dg-options "-D_GLIBCXX_ASSERT -pthread" { target *-*-freebsd* *-*-netbsd* *-*-linux* alpha*-*-osf* } }
./testsuite/thread/pthread7-rope.cc:// { dg-options "-D_GLIBCXX_ASSERT -pthreads" { target *-*-solaris* } }

Attachment: p.20031222-1.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]