1. 05 Mar, 2007 21 commits
  2. 04 Mar, 2007 13 commits
    • re PR other/30465 (Duplicated overflow warning) · f73fe417
      2007-03-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
      
      	PR other/30465
      	* c-common.c (convert_and_check): Don't give warnings for
      	conversion if 'expr' already overflowed.
      
      testsuite/
      	* gcc.dg/multiple-overflow-warn-3.c: New.
      	* g++.dg/warn/multiple-overflow-warn-3.C: New.
      
      From-SVN: r122534
      Manuel López-Ibáñez committed
    • acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global. · af13a7a6
      2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
      	* configure.host (c_model): Set default to c_global.
      	* configure: Regenerate.
      	* include/Makefile.am (c_compatibility_headers_extra): Make
      	conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
      	(c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
      	(c_compatibility_headers): Make conditional on c/c_std/c_global.
      	* include/Makefile.in: Regenerate.
      	* docs/html/configopts.html: Add c_global information to
      	--enable-cheaders. Eventually, "c_std" should mean "C" includes
      	that are in namespace std, with optional C++ "C" compatibility
      	includes to inject into global scope. And "c_global" should mean
      	"C" includes that are in the global namespace, with C++ includes
      	injecting into namespace std and no C++ "C" compatibility
      	includes.
       
      2007-03-04  Benjamin Kosnik  <bkoz@redhat.com>
      
      	* include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
      	Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
      	Add _GLIBCXX_TR1 as namespace macro.
      	Add namespace associations for std::__cxx200x conditionally.
      
      	* include/c_compatibility/assert.h: Correct doxygen markup,
      	conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
      	* include/c_compatibility/ctype.h: Same.
      	* include/c_compatibility/errno.h: Same.
      	* include/c_compatibility/float.h: Same.
      	* include/c_compatibility/iso646.h: Same.
      	* include/c_compatibility/limits.h: Same.
      	* include/c_compatibility/locale.h: Same.
      	* include/c_compatibility/math.h: Same.
      	* include/c_compatibility/setjmp.h: Same.
      	* include/c_compatibility/signal.h: Same.
      	* include/c_compatibility/stdarg.h: Same.
      	* include/c_compatibility/stddef.h: Same.
      	* include/c_compatibility/stdio.h: Same.
      	* include/c_compatibility/stdlib.h: Same.
      	* include/c_compatibility/string.h: Same.
      	* include/c_compatibility/time.h: Same.
      	* include/c_compatibility/wchar.h: Same.
      	* include/c_compatibility/wctype.h: Same.
      
      	* include/c_compatibility/complex.h: Add.
      	* include/c_compatibility/fenv.h: Same.
      	* include/c_compatibility/inttypes.h: Same.
      	* include/c_compatibility/stdbool.h: Same.
      	* include/c_compatibility/stdint.h: Same.
      	* include/c_compatibility/tgmath.h: Same.
      
      	* include/c_global/cassert: Add, use include_next, use C++0x features
      	if -std=c++0x.
      	* include/c_global/cctype: Same.
      	* include/c_global/cerrno: Same.
      	* include/c_global/cfloat: Same.
      	* include/c_global/ciso646: Same.
      	* include/c_global/climits: Same.
      	* include/c_global/clocale: Same.
      	* include/c_global/cmath: Same.
      	* include/c_global/cmath.tcc: Same.
      	* include/c_global/csetjmp: Same.
      	* include/c_global/csignal: Same.
      	* include/c_global/cstdarg: Same.
      	* include/c_global/cstddef: Same.
      	* include/c_global/cstdio: Same.
      	* include/c_global/cstdlib: Same.
      	* include/c_global/cstring: Same.
      	* include/c_global/ctime: Same.
      	* include/c_global/cwchar: Same.
      	* include/c_global/cwctype: Same.
      
      	* include/c_global/ccomplex: Add.
      	* include/c_global/cfenv: Add.
      	* include/c_global/cinttypes: Add. 
      	* include/c_global/cstdbool: Add.
      	* include/c_global/cstdint: Add.
      	* include/c_global/ctgmath: Add.
      
      	* include/std/algorithm: Use C++0x features if -std=c++0x.	
      	* include/std/bitset: Same.
      	* include/std/complex: Same.
      	* include/std/deque: Same.
      	* include/std/fstream: Same.
      	* include/std/functional: Same.
      	* include/std/iomanip: Same.
      	* include/std/ios: Same.
      	* include/std/iosfwd: Same.
      	* include/std/iostream: Same.
      	* include/std/istream: Same.
      	* include/std/iterator: Same.
      	* include/std/limits: Same.
      	* include/std/list: Same.
      	* include/std/locale: Same.
      	* include/std/map: Same.
      	* include/std/memory: Same.
      	* include/std/numeric: Same.
      	* include/std/ostream: Same.
      	* include/std/queue: Same.
      	* include/std/set: Same.
      	* include/std/sstream: Same.
      	* include/std/stack: Same.
      	* include/std/stdexcept: Same.
      	* include/std/streambuf: Same.
      	* include/std/string: Same.
      	* include/std/utility: Same.
      	* include/std/valarray: Same.
      	* include/std/vector: Same.
      
      	* include/std/array: Add.
      	* include/std/random: Add.
      	* include/std/regex: Add.
      	* include/std/tuple: Add.
      	* include/std/type_traits: Add.
      	* include/std/unordered_map: Add.
      	* include/std/unordered_set: Add.
      	* include/std/c++0x_warning.h: Add.
      	
      	* include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
      	* include/tr1/boost_shared_ptr.h: Same.
      	* include/tr1/cctype: Same.
      	* include/tr1/cfenv: Same.
      	* include/tr1/cinttypes: Same.
      	* include/tr1/cmath: Same.
      	* include/tr1/common.h: Same.
      	* include/tr1/complex: Same.
      	* include/tr1/cstdint: Same.
      	* include/tr1/cstdio: Same.
      	* include/tr1/cstdlib: Same.
      	* include/tr1/cwchar: Same.
      	* include/tr1/cwctype: Same.
      	* include/tr1/functional: Same.
      	* include/tr1/functional_hash.h: Same.
      	* include/tr1/functional_iterate.h: Same.
      	* include/tr1/hashtable: Same.
      	* include/tr1/hashtable_policy.h: Same.
      	* include/tr1/math.h: Same.
      	* include/tr1/memory: Same.
      	* include/tr1/random: Same.
      	* include/tr1/random.tcc: Same.
      	* include/tr1/ref_fwd.h: Same.
      	* include/tr1/repeat.h: Same.
      	* include/tr1/stdlib.h: Same.
      	* include/tr1/tuple: Same.
      	* include/tr1/tuple_iterate.h: Same.
      	* include/tr1/type_traits: Same.
      	* include/tr1/type_traits_fwd.h: Same.
      	* include/tr1/unordered_map: Same.
      	* include/tr1/unordered_set: Same.
      	* include/tr1/utility: Same.
      
      	* include/tr1/ccomplex: Add.
      	* include/tr1/complex.h: Add.
      	* include/tr1/regex: Add.
      
      	* include/Makefile.am: Add C++0x headers, "C" compatibility headers.
      	* include/Makefile.in: Regenerate.
      
      	* testsuite/tr1/headers.cc: Add in regex/complex.
      
      	* testsuite/17_intro/headers/c++200x/all.cc: New.
      	* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
      	* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
      	* testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
      	* testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
      	* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
      	* testsuite/20_util/enable_shared_from_this/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
      	* testsuite/20_util/headers/functional/
      	using_namespace_std_placeholders.cc: Same.
      	* testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
      	* testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
      	* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
      	* testsuite/20_util/shared_ptr/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/20_util/weak_ptr/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/array/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/hash/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
      	* testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
      	* testsuite/23_containers/tuple/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_map/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_multimap/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_multiset/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/23_containers/unordered_set/requirements/
      	explicit_instantiation.cc: Same.
      	* testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
      	* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
      	* testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
      	* testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
      	* testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
      	* testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
      	* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
      	* testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.
      
      	* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
      	* testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
      	* testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
      	* testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.
      
      From-SVN: r122533
      Benjamin Kosnik committed
    • re PR c++/30895 (ICE with complex values in template parameter) · 2a2193e0
      2007-03-04  Simon Martin  <simartin@users.sourceforge.net>
      
      	PR c++/30895
      	* tree.c (cp_tree_equal): Properly handle COMPLEX_CST trees.
      
      From-SVN: r122532
      Simon Martin committed
    • re PR middle-end/30744 (ICE in compare_values, at tree-vrp.c:466) · 270d43bf
      
      	PR middle-end/30744
      	* fold-const.c (fold_comparison): Enforce type consistency when
      	transforming ~X op ~Y to Y op X, and ~X op C to X op' ~C.
      
      	* gcc.dg/pr30744-1.c: New test case.
      
      From-SVN: r122531
      Roger Sayle committed
    • c_by_val.c: Use _Complex instead of a struct. · 3af83686
      2007-03-04  Tobias Burnus  <burnus@net-b.de>
      
             * gfortran.dg/c_by_val.c: Use _Complex instead of a struct.
      
      From-SVN: r122530
      Tobias Burnus committed
    • Add missing changelog entry: · 5ca09e73
      	* config/i386/driver-i386.c (describe_cache, detect_caches_amd,
      	decode_caches_intel, detect_caches_intel): New functions.
      	(host_detect_local_cpu): Use detect_caches_amd and
      	detect_caches_intel.
      
      From-SVN: r122529
      Zdenek Dvorak committed
    • tree-ssa-address.c (create_mem_ref): Do not put an expression containing a cast… · 69bd3423
      tree-ssa-address.c (create_mem_ref): Do not put an expression containing a cast to the base of TARGET_MEM_REF.
      
      	* tree-ssa-address.c (create_mem_ref): Do not put an expression
      	containing a cast to the base of TARGET_MEM_REF.
      
      From-SVN: r122528
      Zdenek Dvorak committed
    • Remove spurious whitespace from error message. · 23204428
      From-SVN: r122525
      Martin Michlmayr committed
    • re PR target/30406 ([4.1 only] ICE in LOGICAL(8) functions) · 7348aa7f
      	PR target/30406
      
      	* config/rs6000/rs6000.c (rs6000_function_value): Look at bit size
      	instead of precision.
      
      	* gfortran.dg/logical_3.f90: New test.
      
      From-SVN: r122523
      François-Xavier Coudert committed
    • re PR fortran/30981 ([4.1 only] a ** exp fails for integer exponents if exp is… · 3d1f465a
      re PR fortran/30981 ([4.1 only] a ** exp fails for integer exponents if exp is "-huge()-1" (endless loop))
      
      2007-03-04  Thomas Koenig  <Thomas.Koenig@online.de>
      
      	PR libfortran/30981
      	* m4/pow_m4: Use appropriate unsigned int type for u.
      	* generated/pow_c10_i16.c: Regenerated.
      	* generated/pow_c10_i4.c: Regenerated.
      	* generated/pow_c10_i8.c: Regenerated.
      	* generated/pow_c16_i16.c: Regenerated.
      	* generated/pow_c16_i4.c: Regenerated.
      	* generated/pow_c16_i8.c: Regenerated.
      	* generated/pow_c4_i16.c: Regenerated.
      	* generated/pow_c4_i4.c: Regenerated.
      	* generated/pow_c4_i8.c: Regenerated.
      	* generated/pow_c8_i16.c: Regenerated.
      	* generated/pow_c8_i4.c: Regenerated.
      	* generated/pow_c8_i8.c: Regenerated.
      	* generated/pow_i16_i16.c: Regenerated.
      	* generated/pow_i16_i4.c: Regenerated.
      	* generated/pow_i16_i8.c: Regenerated.
      	* generated/pow_i4_i16.c: Regenerated.
      	* generated/pow_i4_i4.c: Regenerated.
      	* generated/pow_i4_i8.c: Regenerated.
      	* generated/pow_i8_i16.c: Regenerated.
      	* generated/pow_i8_i4.c: Regenerated.
      	* generated/pow_i8_i8.c: Regenerated.
      	* generated/pow_r10_i16.c: Regenerated.
      	* generated/pow_r10_i4.c: Regenerated.
      	* generated/pow_r10_i8.c: Regenerated.
      	* generated/pow_r16_i16.c: Regenerated.
      	* generated/pow_r16_i4.c: Regenerated.
      	* generated/pow_r16_i8.c: Regenerated.
      	* generated/pow_r4_i16.c: Regenerated.
      	* generated/pow_r4_i4.c: Regenerated.
      	* generated/pow_r4_i8.c: Regenerated.
      	* generated/pow_r8_i16.c: Regenerated.
      	* generated/pow_r8_i4.c: Regenerated.
      	* generated/pow_r8_i8.c: Regenerated.
      	
      2007-03-04  Thomas Koenig  <Thomas.Koenig@online.de>
      
      	PR libfortran/30981
      	* gfortran.dg/integer_exponentiation_1.f90:  New test.
      
      From-SVN: r122522
      Thomas Koenig committed
    • m68k.exp: New. · dda10672
      	* gcc.target/m68k/m68k.exp: New.
      	* gcc.target/m68k/crash1.c: New.
      
      From-SVN: r122521
      Roman Zippel committed
    • emit-rtl.c (find_auto_inc): New. · 594f8779
      	* emit-rtl.c (find_auto_inc): New.
      	(try_split): recreate REG_INC notes,
      	Use regular for loops rather than whiles.
      
      	* gcc.target/m68k/m68k.exp: New.
      	* gcc.target/m68k/crash1.c: New.
      
      From-SVN: r122520
      Roman Zippel committed
    • Daily bump. · adc485b1
      From-SVN: r122516
      GCC Administrator committed
  3. 03 Mar, 2007 6 commits