This is the mail archive of the
libstdc++-cvs@gcc.gnu.org
mailing list for the libstdc++ project.
r123625 - in /branches/fixed-point: ./ gcc/Chan...
- From: chaoyingfu at gcc dot gnu dot org
- To: libstdc++-cvs at gcc dot gnu dot org
- Date: Fri, 06 Apr 2007 18:46:02 -0000
- Subject: r123625 - in /branches/fixed-point: ./ gcc/Chan...
Author: chaoyingfu
Date: Fri Apr 6 19:46:00 2007
New Revision: 123625
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123625
Log:
Merged revisions 123366-123377 via svnmerge from
svn+ssh://chaoyingfu@sources.redhat.com/svn/gcc/trunk
........
r123366 | paolo | 2007-03-30 12:45:57 -0700 (Fri, 30 Mar 2007) | 81 lines
gcc/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
* c-common.h (enum rid): Add RID_HAS_NOTHROW_ASSIGN,
RID_HAS_NOTHROW_CONSTRUCTOR, RID_HAS_NOTHROW_COPY,
RID_HAS_TRIVIAL_ASSIGN, RID_HAS_TRIVIAL_CONSTRUCTOR,
RID_HAS_TRIVIAL_COPY, RID_HAS_TRIVIAL_DESTRUCTOR,
RID_HAS_VIRTUAL_DESTRUCTOR, RID_IS_ABSTRACT, RID_IS_BASE_OF,
RID_IS_CONVERTIBLE_TO, RID_IS_CLASS, RID_IS_EMPTY, RID_IS_ENUM,
RID_IS_POD, RID_IS_POLYMORPHIC, RID_IS_UNION, as
C++ extensions.
* doc/extend.texi (Extensions to the C++ Language): Add Type Traits.
gcc/cp/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
* cp-tree.h (enum cp_trait_kind, struct tree_trait_expr,
TRAIT_EXPR_TYPE1, TRAIT_EXPR_TYPE2, TRAIT_EXPR_KIND): Add.
(enum cp_tree_node_structure_enum, union lang_tree_node): Update.
(CLASS_TYPE_NON_UNION_P): Add.
(struct lang_type_class): Add has_complex_dflt.
(TYPE_HAS_COMPLEX_DFLT, TYPE_HAS_TRIVIAL_DFLT): Add.
(locate_copy, locate_ctor, locate_dtor, finish_trait_expr): Declare.
* cp-tree.def: Add TRAIT_EXPR.
* cp-objcp-common.c (cp_tree_size): Add TRAIT_EXPR case.
* lex.c (struct resword): Add __has_nothrow_assign,
__has_nothrow_constructor, __has_nothrow_copy, __has_trivial_assign,
__has_trivial_constructor, __has_trivial_copy,
__has_trivial_destructor, __has_virtual_destructor, __is_abstract,
__is_base_of, __is_class, __is_convertible_to, __is_empty, __is_enum,
__is_pod, __is_polymorphic, __is_union.
* parser.c (cp_parser_primary_expression): Deal with the new RIDs.
(cp_parser_trait_expr): New.
* semantics.c (finish_trait_expr, trait_expr_value
classtype_has_nothrow_copy_or_assign_p): New.
* method.c (locate_copy, locate_ctor, locate_dtor): Do not define
as static.
* decl.c (cp_tree_node_structure): Add TRAIT_EXPR.
* class.c (check_bases, check_field_decl, check_bases_and_members):
Deal with TYPE_HAS_COMPLEX_DFLT (t) too.
* pt.c (uses_template_parms, tsubst_copy_and_build,
value_dependent_expression_p, type_dependent_expression_p): Deal with
TRAIT_EXPR.
* tree.c (cp_walk_subtrees): Deal with TRAIT_EXPR.
gcc/testsuite/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
* g++.dg/ext/is_base_of.C: New.
* g++.dg/ext/has_virtual_destructor.C: New.
* g++.dg/ext/is_polymorphic.C: New.
* g++.dg/ext/is_base_of_diagnostic.C: New.
* g++.dg/ext/is_enum.C: New.
* g++.dg/ext/has_nothrow_assign.C: New.
* g++.dg/ext/has_nothrow_constructor.C: New.
* g++.dg/ext/is_empty.C: New.
* g++.dg/ext/has_trivial_copy.C: New.
* g++.dg/ext/has_trivial_assign.C: New.
* g++.dg/ext/is_abstract.C: New.
* g++.dg/ext/is_pod.C: New.
* g++.dg/ext/has_nothrow_copy.C: New.
* g++.dg/ext/is_class.C: New.
* g++.dg/ext/has_trivial_constructor.C: New.
* g++.dg/ext/is_union.C: New.
* g++.dg/ext/has_trivial_destructor.C: New.
* g++.dg/tree-ssa/pr22444.C: Adjust, avoid __is_pod.
* g++.dg/template/crash43.C: Likewise.
libstdc++-v3/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
* include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty):
Remove.
* include/bits/valarray_array.h: Adjust.
* include/bits/allocator.h: Likewise.
* include/bits/stl_tree.h: Likewise.
........
r123367 | aesok | 2007-03-30 13:28:55 -0700 (Fri, 30 Mar 2007) | 4 lines
* config/avr/avr.c (avr_override_options): Clear
'flag_delete_null_pointer_checks'.
........
r123370 | rth | 2007-03-30 14:12:53 -0700 (Fri, 30 Mar 2007) | 12 lines
libcpp/
* directives.c (lex_macro_node_from_str): New.
(cpp_push_definition, cpp_pop_definition): New.
* include/cpplib.h (cpp_push_definition, cpp_pop_definition): Declare.
gcc/
* c-pragma.c (struct def_pragma_macro_value): New.
(struct def_pragma_macro): New.
(pushed_macro_table): New.
(dpm_hash, dpm_eq): New.
(handle_pragma_push_macro, handle_pragma_pop_macro): New.
(init_pragma): Install them.
* doc/tm.texi (HANDLE_PRAGMA_PUSH_POP_MACRO): New.
........
r123371 | rth | 2007-03-30 14:39:57 -0700 (Fri, 30 Mar 2007) | 5 lines
* tree-ssa-loop-ivopts.c: Include target.h.
(produce_memory_decl_rtl): Pass the rtx through encode_section_info.
(get_address_cost): Force SYMBOL_FLAG_LOCAL set.
(force_expr_to_var_cost): Use produce_memory_decl_rtl.
* Makefile.in (tree-ssa-loop-ivopts.o): Depend on TARGET_H.
........
r123372 | rth | 2007-03-30 14:45:03 -0700 (Fri, 30 Mar 2007) | 68 lines
gcc/
* config/i386/cygming.h (DWARF2_DEBUGGING_INFO): Enable by
default for 64-bit.
(PREFERRED_DEBUGGING_TYPE): Prefer dwarf2 for 64-bit.
(TARGET_64BIT_MS_ABI): New.
(DBX_REGISTER_NUMBER): Handle 64-bit.
(SIZE_TYPE, PTRDIFF_TYPE): Use long long for 64-bit.
(LONG_TYPE_SIZE): Force to 32.
(REG_PARM_STACK_SPACE): New.
(OUTGOING_REG_PARM_STACK_SPACE): New.
(REGPARM_MAX, SSE_REGPARM_MAX): New.
(HANDLE_PRAGMA_PUSH_POP_MACRO): New.
(STACK_BOUNDARY): Use 128 for 64-bit.
* config/i386/cygwin.asm: Use push/ret to preserve call stack.
Add 64-bit implementation.
* config/i386/gthr-win32.c (__gthr_win32_key_create): Mark dtor
argument unused.
* config/i386/i386.c (x86_64_ms_abi_int_parameter_registers): New.
(override_options): Set ix86_cmodel for TARGET_64BIT_MS_ABI.
Warn for -mregparm, -mrtd in 64-bit mode; force ix86_regparm
for 64-bit; use TARGET_SUBTARGET64_DEFAULT.
(ix86_handle_cconv_attribute): Don't warn when ignoring if
TARGET_64BIT_MS_ABI.
(ix86_function_arg_regno_p): Handle TARGET_64BIT_MS_ABI.
(ix86_pass_by_reference): Likewise.
(ix86_function_value_regno_p): Likewise.
(ix86_build_builtin_va_list): Likewise.
(ix86_va_start, ix86_gimplify_va_arg): Likewise.
(function_arg_advance_ms_64): New.
(function_arg_advance): Call it.
(function_arg_ms_64): New.
(function_arg): Call it.
(function_value_ms_64): New.
(ix86_function_value_1): Call it.
(return_in_memory_ms_64): New.
(ix86_return_in_memory): Call it.
(setup_incoming_varargs_ms_64): New.
(ix86_setup_incoming_varargs): Call it.
(ix86_expand_prologue): Handle 64-bit stack probing.
(legitimize_pic_address): Handle TARGET_64BIT_MS_ABI.
(output_pic_addr_const): Likewise.
(x86_this_parameter): Likewise.
(x86_output_mi_thunk): Likewise.
(x86_function_profiler): Likewise.
(TARGET_STRICT_ARGUMENT_NAMING): New.
* config/i386/i386.h (TARGET_SUBTARGET64_DEFAULT): New.
(TARGET_64BIT_MS_ABI): New.
(CONDITIONAL_REGISTER_USAGE): Handle TARGET_64BIT_MS_ABI.
* config/i386/i386.md (allocate_stack_worker): Remove.
(allocate_stack_worker_32): Rename from allocate_stack_worker_1;
describe the clobber of eax without a match_scratch.
(allocate_stack_worker_postreload): Remove.
(allocate_stack_worker_64): Rename from allocate_stack_worker_rex64;
describe the clobbers of rax, r10, r11 properly; use __chkstk symbol.
(allocate_stack_worker_rex64_postreload): Remove.
(allocate_stack): Handle 64-bit.
* config/i386/i386elf (TARGET_SUBTARGET_DEFAULT): Remove.
* config/i386/mingw32.h (TARGET_VERSION): Set correctly for 64-bit.
(EXTRA_OS_CPP_BUILTINS): Handle 64-bit.
(STANDARD_INCLUDE_DIR): Handle TARGET_64BIT_DEFAULT.
(STANDARD_STARTFILE_PREFIX_1): Likewise.
* config/i386/unix.h (TARGET_SUBTARGET64_DEFAULT): New.
* config.build (x86_64-*-mingw*): New host.
* config.host (x86_64-*-mingw*): New host.
* config.gcc (x86_64-*-mingw*): New target.
* gthr-win32.h (__gthread_key_create): Mark dtor unused.
libgcc/
* config.host (x86_64-*-mingw*): New target.
........
r123373 | espindola | 2007-03-30 15:09:01 -0700 (Fri, 30 Mar 2007) | 39 lines
gcc/java/ChangeLog:
* typeck.c (java_signed_or_unsigned_type): Remove.
(java_signed_type): use get_signed_or_unsigned_type instead of
java_signed_or_unsigned_type.
(java_unsigned_type): Ditto.
* lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove.
* java-tree.h (java_signed_or_unsigned_type): Remove
gcc/Changelog:
* tree.h(get_signed_or_unsigned_type): New
* fold-const.c (operand_equal_for_comparison_p): Use
get_signed_or_unsigned_type instead of
lang_hooks.types.signed_or_unsigned_type.
* expr.c (store_expr): Ditto.
* langhooks.c (get_signed_or_unsigned_type): New.
(lhd_signed_or_unsigned_type): New
* langhooks.h (lhd_signed_or_unsigned_type): New.
* langhooks-def.h (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Define.
gcc/treelang/ChangeLog:
* treetree.c (tree_lang_signed_or_unsigned_type): Remove.
(LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE) Remove.
gcc/ada/ChangeLog:
* trans.c (Attribute_to_gnu): Use get_signed_or_unsigned_type
instead of gnat_signed_or_unsigned_type.
* utils.c (gnat_signed_or_unsigned_type): Remove.
* misc.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove
* gigi.h (gnat_signed_or_unsigned_type): Remove
gcc/forrtan/trans-types.c:
* trans-types.c (gfc_signed_or_unsigned_type): Remove.
(gfc_unsigned_type): Use get_signed_or_unsigned_type instead of
gfc_signed_or_unsigned_type.
(gfc_signed_type): Ditto.
* trans-types.h (gfc_signed_or_unsigned_type): Remove.
* f95-lang.c (LANG_HOOKS_SIGNED_OR_UNSIGNED_TYPE): Remove.
........
r123374 | meissner | 2007-03-30 15:40:19 -0700 (Fri, 30 Mar 2007) | 1 line
make alloca call type correct
........
r123377 | gccadmin | 2007-03-30 16:17:32 -0700 (Fri, 30 Mar 2007) | 1 line
Daily bump.
........
Modified:
branches/fixed-point/libstdc++-v3/ChangeLog
branches/fixed-point/libstdc++-v3/include/bits/allocator.h
branches/fixed-point/libstdc++-v3/include/bits/cpp_type_traits.h
branches/fixed-point/libstdc++-v3/include/bits/stl_tree.h
branches/fixed-point/libstdc++-v3/include/bits/valarray_array.h
Changes in other areas also in this revision:
Added:
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_nothrow_assign.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_nothrow_assign.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_nothrow_constructor.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_nothrow_constructor.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_nothrow_copy.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_nothrow_copy.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_trivial_assign.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_trivial_assign.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_trivial_constructor.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_trivial_constructor.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_trivial_copy.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_trivial_copy.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_trivial_destructor.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_trivial_destructor.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/has_virtual_destructor.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/has_virtual_destructor.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_abstract.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_abstract.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_base_of.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_base_of.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_base_of_diagnostic.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_base_of_diagnostic.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_class.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_class.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_empty.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_empty.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_enum.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_enum.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_pod.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_pod.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_polymorphic.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_polymorphic.C
branches/fixed-point/gcc/testsuite/g++.dg/ext/is_union.C
- copied unchanged from r123377, trunk/gcc/testsuite/g++.dg/ext/is_union.C
branches/fixed-point/gcc/testsuite/gcc.dg/pragma-push_macro-1.c
- copied unchanged from r123377, trunk/gcc/testsuite/gcc.dg/pragma-push_macro-1.c
Modified:
branches/fixed-point/ (props changed)
branches/fixed-point/gcc/ChangeLog
branches/fixed-point/gcc/DATESTAMP
branches/fixed-point/gcc/Makefile.in
branches/fixed-point/gcc/ada/ChangeLog
branches/fixed-point/gcc/ada/gigi.h
branches/fixed-point/gcc/ada/misc.c
branches/fixed-point/gcc/ada/trans.c
branches/fixed-point/gcc/ada/utils.c
branches/fixed-point/gcc/c-common.h
branches/fixed-point/gcc/c-pragma.c
branches/fixed-point/gcc/config.build
branches/fixed-point/gcc/config.gcc
branches/fixed-point/gcc/config.host
branches/fixed-point/gcc/config/avr/avr.c
branches/fixed-point/gcc/config/i386/cygming.h
branches/fixed-point/gcc/config/i386/cygwin.asm
branches/fixed-point/gcc/config/i386/gthr-win32.c
branches/fixed-point/gcc/config/i386/i386.c
branches/fixed-point/gcc/config/i386/i386.h
branches/fixed-point/gcc/config/i386/i386.md
branches/fixed-point/gcc/config/i386/i386elf.h
branches/fixed-point/gcc/config/i386/mingw32.h
branches/fixed-point/gcc/config/i386/unix.h
branches/fixed-point/gcc/cp/ChangeLog
branches/fixed-point/gcc/cp/class.c
branches/fixed-point/gcc/cp/cp-objcp-common.c
branches/fixed-point/gcc/cp/cp-tree.def
branches/fixed-point/gcc/cp/cp-tree.h
branches/fixed-point/gcc/cp/decl.c
branches/fixed-point/gcc/cp/lex.c
branches/fixed-point/gcc/cp/method.c
branches/fixed-point/gcc/cp/parser.c
branches/fixed-point/gcc/cp/pt.c
branches/fixed-point/gcc/cp/semantics.c
branches/fixed-point/gcc/cp/tree.c
branches/fixed-point/gcc/doc/extend.texi
branches/fixed-point/gcc/doc/tm.texi
branches/fixed-point/gcc/expr.c
branches/fixed-point/gcc/fold-const.c
branches/fixed-point/gcc/fortran/ChangeLog
branches/fixed-point/gcc/fortran/f95-lang.c
branches/fixed-point/gcc/fortran/trans-types.c
branches/fixed-point/gcc/fortran/trans-types.h
branches/fixed-point/gcc/gthr-win32.h
branches/fixed-point/gcc/java/ChangeLog
branches/fixed-point/gcc/java/java-tree.h
branches/fixed-point/gcc/java/lang.c
branches/fixed-point/gcc/java/typeck.c
branches/fixed-point/gcc/langhooks-def.h
branches/fixed-point/gcc/langhooks.c
branches/fixed-point/gcc/langhooks.h
branches/fixed-point/gcc/testsuite/ChangeLog
branches/fixed-point/gcc/testsuite/g++.dg/template/crash43.C
branches/fixed-point/gcc/testsuite/g++.dg/tree-ssa/pr22444.C
branches/fixed-point/gcc/tree-ssa-loop-ivopts.c
branches/fixed-point/gcc/tree.h
branches/fixed-point/gcc/treelang/ChangeLog
branches/fixed-point/gcc/treelang/treetree.c
branches/fixed-point/libcpp/ChangeLog
branches/fixed-point/libcpp/directives.c
branches/fixed-point/libcpp/include/cpplib.h
branches/fixed-point/libgcc/ChangeLog
branches/fixed-point/libgcc/config.host
Propchange: branches/fixed-point/
('svnmerge-integrated' modified)