+2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
+
+ * testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
+ * testsuite/27_io/objects/wchar_t/5.cc: Same.
+ * docs/html/test.html: Add docs for constructing test files that
+ don't use stdc++.h.gch.
+ * scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
+ * testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
+ differently.
+
+ * include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
+ * src/ios_init.cc: Same.
+ * config/linker-map.gnu: Same.
+ * testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
+ * testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
+
2003-12-22 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/13462
std::ios_base::_M_grow_words*;
std::ios_base::_M_init*;
std::ios_base::Init::[A-Za-z]*;
- std::ios_base::Init::_S_initialized*;
std::ios_base::[J-Za-z]*;
std::i[p-z]*;
std::[A-Zj-k]*;
Example 4: Testing for compilation errors on line 41
// { dg-do compile }
// { dg-error "no match for" "" { target *-*-* } 41 }
+
+Example 5: Testing with special command line settings, or without the
+use of pre-compiled headers, in particular the stdc++.h.gch file. Any
+options here will override the DEFAULT_CXXFLAGS set up in the
+normal.exp file.
+// { dg-options "-O0" { target *-*-* } }
</pre>
<p>
Init();
~Init();
- // NB: Allows debugger applications use of the standard streams
- // from operator new.
- static bool
- _S_initialized();
-
private:
static _Atomic_word _S_refcount;
static bool _S_synced_with_stdio;
--build-cxx
--install-cxx
--cxxflags
+ --cxxpchflags
EOF
}
echo ${CXX}
;;
--build-cxx)
- PCHFLAGS="@glibcxx_PCHFLAGS@"
- CXX_build="@CXX@ ${PCHFLAGS}"
+ CXX_build="@CXX@"
CXX=`echo "$CXX_build" | sed 's,gcc/xgcc ,gcc/g++ ,'`
echo ${CXX}
;;
@EXTRA_CXX_FLAGS@ -DLOCALEDIR="@glibcxx_localedir@" '
echo ${CXXFLAGS_save} ${CXXFLAGS_config}
;;
+ --cxxpchflags)
+ PCHFLAGS="@glibcxx_PCHFLAGS@"
+ echo ${PCHFLAGS}
+ ;;
*)
- print_usage
+ print_usagex
;;
esac
}
}
- bool
- ios_base::Init::_S_initialized()
- {
- return _S_refcount > 0;
- }
-
bool
ios_base::sync_with_stdio(bool __sync)
{
io1 = io2;
}
// { dg-error "within this context" "" { target *-*-* } 41 }
-// { dg-error "is private" "" { target *-*-* } 745 }
+// { dg-error "is private" "" { target *-*-* } 740 }
// { dg-error "operator=" "" { target *-*-* } 0 }
test_base io2 = io1;
}
// { dg-error "within this context" "" { target *-*-* } 41 }
-// { dg-error "is private" "" { target *-*-* } 742 }
+// { dg-error "is private" "" { target *-*-* } 737 }
// { dg-error "copy constructor" "" { target *-*-* } 0 }
+// { dg-options "-D_GLIBCXX_ASSERT" { target *-*-* } }
// 2003-04-26 Petur Runolfsson <peturr02@ru.is>
// Copyright (C) 2003 Free Software Foundation
+// { dg-options "-D_GLIBCXX_ASSERT" { target *-*-* } }
// 2003-05-01 Petur Runolfsson <peturr02@ru.is>
// Copyright (C) 2003 Free Software Foundation
# libstdc++-v3 testsuite that uses the 'dg.exp' driver.
-global target_triplet
+# Initialization.
+dg-init
+v3-init
-# If a testcase doesn't have special options, use these.
+# If a libstdc++ test file doesn't have special options, use DEFAULT_CXXFLAGS.
+# Use this variable if the behavior
+# 1) only applies to libstdc++ testing
+# 2) might need to be negated
+# In particular, some tests have to be run without precompiled
+# headers, or without assertions.
+global blddir
+global target_triplet
global DEFAULT_CXXFLAGS
if ![info exists DEFAULT_CXXFLAGS] then {
- if { [string match "powerpc-*-darwin*" $target_triplet] } {
- set DEFAULT_CXXFLAGS "-D_GLIBCXX_ASSERT -multiply_defined suppress"
+ set DEFAULT_CXXFLAGS "-D_GLIBCXX_ASSERT"
+
+ # Set up includes for stdc++.h.gch, the precompiled header file.
+ set flags_file "${blddir}/scripts/testsuite_flags"
+ if { [file exists $flags_file] } {
+ set cxxpchflags [exec sh $flags_file --cxxpchflags]
} else {
- set DEFAULT_CXXFLAGS "-D_GLIBCXX_ASSERT"
+ set cxxpchflags ""
}
-}
+ append DEFAULT_CXXFLAGS " ${cxxpchflags}"
-# Initialization.
-dg-init
-v3-init
+ # Host specific goo here.
+ if { [string match "powerpc-*-darwin*" $target_triplet] } {
+ append DEFAULT_CXXFLAGS " -multiply_defined suppress"
+ }
+}
# Main loop.
dg-runtest [v3-list-tests testsuite_files] "" $DEFAULT_CXXFLAGS