1. 04 Jan, 2013 1 commit
  2. 02 Jan, 2013 1 commit
  3. 11 Nov, 2012 1 commit
  4. 09 Nov, 2012 1 commit
    • Add C++ attribute abi_tag and -Wabi-tag option. · 7dbb85a7
      gcc/
      	* attribs.c (lookup_attribute_spec): Handle getting a TREE_LIST.
      gcc/c-family/
      	* c.opt (Wabi-tag): New.
      gcc/cp/
      	* tree.c (cxx_attribute_table): Add abi_tag attribute.
      	(check_abi_tag_redeclaration, handle_abi_tag_attribute): New.
      	* class.c (find_abi_tags_r, check_abi_tags): New.
      	(check_bases, check_field_decl): Call check_abi_tags.
      	* decl.c (redeclaration_error_message): Call
      	check_abi_tag_redeclaration.
      	* mangle.c (tree_string_cmp, write_abi_tags): New.
      	(write_unqualified_name): Call write_abi_tags.
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_TAGGED_NAME.
      libiberty/
      	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_TAGGED_NAME.
      	(d_make_comp, d_find_pack, d_print_comp): Likewise.
      	(d_abi_tags): New.
      	(d_name): Call it.
      
      From-SVN: r193367
      Jason Merrill committed
  5. 08 Oct, 2012 1 commit
    • Allow dynamic initialization of thread_locals. · 7c424acd
      gcc/cp/
      	* decl.c: Define tls_aggregates.
      	(expand_static_init): Remove sorry.  Add to tls_aggregates.
      	* cp-tree.h: Declare tls_aggregates.
      	* call.c (set_up_extended_ref_temp): Add to tls_aggregates.
      	* decl2.c (var_needs_tls_wrapper): New.
      	(var_defined_without_dynamic_init): New.
      	(get_tls_init_fn, get_tls_wrapper_fn): New.
      	(generate_tls_wrapper, handle_tls_init): New.
      	(cp_write_global_declarations): Call handle_tls_init and
      	enerate_tls_wrapper.
      	* mangle.c (write_guarded_var_name): Split out from..
      	(mangle_guard_variable): ...here.
      	(mangle_tls_init_fn, mangle_tls_wrapper_fn): Use it.
      	(decl_tls_wrapper_p): New.
      	* semantics.c (finish_id_expression): Replace use of thread_local
      	variable with a call to its wrapper.
      libiberty/
      	* cp-demangle.c (d_special_name, d_dump): Handle TH and TW.
      	(d_make_comp, d_print_comp): Likewise.
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_TLS_INIT and DEMANGLE_COMPONENT_TLS_WRAPPER.
      
      From-SVN: r192211
      Jason Merrill committed
  6. 18 Sep, 2012 2 commits
    • strnlen.c: New file. · 9a9baa52
      	* strnlen.c: New file.
      	* configure.ac: Check for strnlen, add it to AC_LIBOBJ if it's not
      	present.
      	* Makefile.in: Rebuild dependencies.
      	(CFILES): Add strnlen.c.
      	(CONFIGURED_OFILES): Add ./strnlen.$(objext).
      	* configure, config.in, functions.texi: Rebuild.
      
      	* maint-tool: Accept .def files in the include directory.
      
      From-SVN: r191432
      Ian Lance Taylor committed
    • PR other/54411: integer overflow in objalloc_alloc · ed770de9
      2012-09-18  Florian Weimer  <fweimer@redhat.com>
      
      	PR other/54411
      	* objalloc.h (objalloc_alloc): Do not use fast path on wraparound.
      
      2012-09-18  Florian Weimer  <fweimer@redhat.com>
      
      	PR other/54411
      	* objalloc.c (_objalloc_alloc): Add overflow check covering
      	alignment and CHUNK_HEADER_SIZE addition.
      
      From-SVN: r191413
      Florian Weimer committed
  7. 29 Aug, 2012 2 commits
  8. 17 Aug, 2012 1 commit
  9. 31 Jul, 2012 1 commit
  10. 26 Jul, 2012 1 commit
  11. 18 Jul, 2012 1 commit
  12. 13 Jul, 2012 1 commit
  13. 29 Jun, 2012 1 commit
  14. 22 May, 2012 1 commit
  15. 27 Apr, 2012 1 commit
    • dwarf2out.c (dwarf_stack_op_name): Use get_DW_OP_name. · 11ec770e
      gcc
      	* dwarf2out.c (dwarf_stack_op_name): Use get_DW_OP_name.
      	(dwarf_tag_name): Use get_DW_TAG_name.
      	(dwarf_attr_name): Use get_DW_AT_name.
      	(dwarf_form_name): Use get_DW_FORM_name.
      	* dwarf2cfi.c (dwarf_cfi_name): Use get_DW_CFA_name.
      include
      	* dwarf2.h (enum dwarf_tag, enum dwarf_form, enum dwarf_attribute)
      	(enum dwarf_location_atom, enum dwarf_type, enum
      	dwarf_call_frame_info): Remove.
      	(DW_TAG, DW_TAG_DUP, DW_FORM, DW_AT, DW_AT_DUP, DW_OP)
      	(DW_OP_DUP, DW_ATE, DW_ATE_DUP, DW_CFA): New macros.
      	Include dwarf2.def.
      	(get_DW_TAG_name, get_DW_AT_name, get_DW_FORM_name)
      	(get_DW_OP_name, get_DW_ATE_name): Declare.
      	* dwarf2.def: New file, from dwarf2.h.
      libiberty
      	* dwarfnames.c: New file.
      	* Makefile.in (CFILES): Add dwarfnames.
      	(REQUIRED_OFILES): Add dwarfnames.
      	(./dwarfnames.$(objext)): New target.
      
      From-SVN: r186908
      Tom Tromey committed
  16. 04 Apr, 2012 1 commit
  17. 02 Apr, 2012 1 commit
  18. 21 Mar, 2012 1 commit
  19. 07 Mar, 2012 1 commit
  20. 26 Jan, 2012 1 commit
  21. 23 Jan, 2012 1 commit
    • Interix resurrection · daecebc8
      2012-01-22  Douglas B Rupp  <rupp@gnat.com>
      
      	* <toplevel>/config/mh-interix: Remove as unneeded.
      	* <toplevel>/config/picflag.m4 (i[[34567]]86-*-interix3*):
      	Change triplet to i[[34567]]86-*-interix[[3-9]]*.
      
      	* <toplevel>/configure.ac: Remove reference to mh-interix.
      	* <toplevel>/configure: Regenerate.
      
      	* <toplevel>/libada/configure: Regenerate.
      
      	* <toplevel>libgcc/config.host (i[34567]86-*-interix3*):
      	Change triplet to i[34567]86-*-interix[3-9]*.
      	* <toplevel>/libgcc/configure: Regenerate.
      
      	* <toplevel>/liberty/configure: Regenerate.
      
      	* config.gcc: (i[34567]86-*-interix3*): Remove from obsolete
      	configurations. Change triplet to i[34567]86-*-interix[3-9]*.
      	(extra_options) interix.opt -> i386/interix.opt"
      	(extra_objs):Add winnt-stubs.o
      	* configure.ac: Add interix to target_os .comm on PE check.
      	* configure: Regenerate.
      	* config/interix3.h: Delete and move bits to..
      	* config/interix.h: Delete and move bits to..
      	* config/i386/i386-interix3.h: Delete and move bits to..
      	* config/i386/i386-interix.h: ..here.
      	(TARGET_CPU_DEFAULT): Remove redefinition.
      	(TARGET_ASM_CONSTRUCTOR): Undefine.
      	(SUBTARGET_SWITCHES): Define for ms-bitfields.
      	(TARGET_OS_CPP_BUILTINS): Remove __OPENNT. Add __declspec.
      	(PTRDIFF_TYPE): Define.
      	(LONG_DOUBLE_TYPE_SIZE): Define.
      	(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Define.
      	(SUBTARGET_OVERRIDE_OPTIONS): Remove.
      	(TARGET_SECTION_TYPE_FLAGS): Define.
      	(ASM_DECLARE_FUNCTION_NAME): Define.
      	(ASM_OUTPUT_EXTERNAL): Define.
      	(ASM_OUTPUT_EXTERNAL_LIBCALL): Define.
      	(ASM_OUTPUT_ALIGNED_BSS): Define.
      	(PCC_BITFIELD_TYPE_MATTERS): Define.
      	(USE_CONST_SECTION): Define.
      	(SUBTARGET_ENCODE_SECTION_INFO): Remove.
      	(TARGET_ASM_FUNCTION_RODATA_SECTION): Remove.
      	(SUPPORTS_ONE_ONLY): Remove.
      	(I386_PE_STRIP_ENCODING): Define.
      	* config/interix.opt: Delete and move bits to..
      	* config/i386/interix.opt: ..here. New.
      	(mpe-aligned-commons): Add.
      	* config/i386/t-interix: Add copyright header.
      	(winnt-stubs.o): Add rule.
      
      	* testsuite/gcc.dg/builtins-config.h: (HAVE_C99_RUNTIME):
      	Do not define for Interix.
      
      From-SVN: r183406
      Douglas Rupp committed
  22. 10 Jan, 2012 1 commit
  23. 06 Jan, 2012 2 commits
    • re PR c++/6057 (expression mangling doesn't work for operator new) · 4b6aaa99
      	PR c++/6057
      	PR c++/48051
      	PR c++/50855
      	PR c++/51322
      gcc/cp/
      	* mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
      	THROW_EXPR, CONSTRUCTOR, OVERLOAD.  Fix PREINCREMENT_EXPR and
      	PREDECREMENT_EXPR.
      	(write_template_arg): Fix mangling of class-scope functions and
      	argument packs.
      	(mangle_decl): Update suggested -fabi-version argument.
      	* operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
      	DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
      	* tree.c (dependent_name): No longer static.
      	* cp-tree.h: Declare it.
      	* pt.c (unify): Defer handling of unconverted functions.
      include/
      	* demangle.h (enum demangle_component_type): Add
      	DEMANGLE_COMPONENT_INITIALIZER_LIST, DEMANGLE_COMPONENT_NULLARY.
      libiberty/
      	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_NULLARY and
      	DEMANGLE_COMPONENT_INITIALIZER_LIST.
      	(d_make_comp): Likewise.  Allow null right arg for
      	DEMANGLE_COMPONENT_TRINARY_ARG2.
      	(cplus_demangle_operators): Adjust new/delete; add .*, :: and throw.
      	(d_template_args, d_template_arg): Handle 'J' for argument packs.
      	(d_exprlist): Add terminator parm.
      	(d_expression, d_print_comp): Handle initializer lists, nullary
      	expressions, prefix/suffix operators, and new.
      	(d_print_subexpr): Avoid parens around DEMANGLE_COMPONENT_QUAL_NAME
      	and DEMANGLE_COMPONENT_INITIALIZER_LIST.
      	* testsuite/demangle-expected: Add tests.
      
      From-SVN: r182970
      Jason Merrill committed
    • cp-demangle.c (cplus_demangle_type): decltype, pack expansion and vector are substitutable. · 49f2da1a
      	* cp-demangle.c (cplus_demangle_type): decltype, pack expansion
      	and vector are substitutable.
      	(cplus_demangle_operators): Sort.
      
      From-SVN: r182969
      Jason Merrill committed
  24. 04 Jan, 2012 1 commit
    • re PR bootstrap/51734 (Bootstrap fails in libada) · 925b0ed8
      config/
      2012-01-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	PR bootstrap/51734
      	* picflag.m4: Remove s390 case statement.
      
      gcc/
      2012-01-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* configure: Regenerate.
      
      libada/
      2012-01-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* configure: Regenerate.
      
      libgcc/
      2012-01-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* configure: Regenerate.
      	* config/s390/t-crtstuff: Remove -fPIC.
      
      libiberty/
      2012-01-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
      
      	* configure: Regenerate.
      
      From-SVN: r182868
      Andreas Krebbel committed
  25. 02 Jan, 2012 1 commit
  26. 20 Dec, 2011 2 commits
  27. 19 Dec, 2011 1 commit
    • Check for warning flags without no- prefix · 095af58f
      config/:
      	PR bootstrap/51388
      	* warnings.m4 (ACX_PROG_CC_WARNING_OPTS)
      	(ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Run the test without the
      	no- prefix.
      fixincludes/:
      	* configure: Regenerate.
      gcc/:
      	* configure: Regenerate.
      libcpp/:
      	* configure: Regenerate.
      libdecnumber/:
      	* configure: Regenerate.
      libiberty/:
      	* configure: Regenerate.
      lto-plugin/:
      	* configure: Regenerate.
      
      From-SVN: r182478
      Andreas Schwab committed
  28. 08 Nov, 2011 1 commit
  29. 04 Nov, 2011 1 commit
    • re PR c++/48370 (G++ fails to extend reference temporary lifetime in some situations) · b25dd954
      	PR c++/48370
      	* call.c (extend_ref_init_temps, extend_ref_init_temps_1): New.
      	(set_up_extended_ref_temp): Use it.  Change cleanup parm to VEC.
      	(initialize_reference): Just call convert_like.
      	* decl.c (grok_reference_init): Just call initialize_reference.
      	(build_init_list_var_init): Remove.
      	(check_initializer): Change cleanup parm to VEC.  Handle references
      	like other types.  Call perform_implicit_conversion instead
      	of build_init_list_var_init.  Don't use build_aggr_init for
      	aggregate initialization of arrays.
      	(cp_finish_decl): Change cleanup to VEC.
      	* typeck2.c (store_init_value): Call extend_ref_init_temps.
      	Use build_vec_init for non-constant arrays.
      	* init.c (expand_aggr_init_1): Adjust.
      	(build_vec_init): Avoid re-converting an initializer
      	that's already digested.
      	* mangle.c (mangle_ref_init_variable): Add a discriminator.
      	* cp-tree.h: Adjust.
      	* typeck.c (convert_for_initialization): Adjust.
      	* decl2.c (maybe_emit_vtables): Adjust.
      
      From-SVN: r180944
      Jason Merrill committed
  30. 02 Nov, 2011 2 commits
  31. 29 Oct, 2011 1 commit
  32. 26 Oct, 2011 1 commit
    • re PR target/48108 (lto should be containerized in a single mach-o section on darwin) · b20577ea
      gcc:
      
      	PR target/48108
      	* config/darwin.c (top level): Amend comments concerning LTO output.
      	(lto_section_num): New variable.  (darwin_lto_section_e): New GTY.
      	(LTO_SECTS_SECTION, LTO_INDEX_SECTION): New.
      	(LTO_NAMES_SECTION): Rename.
      	(darwin_asm_named_section): Record LTO section counts and switches
      	in a vec of darwin_lto_section_e.
      	(darwin_file_start): Remove unused code.
      	(darwin_file_end): Put an LTO section termination label.  Handle
      	output of the wrapped LTO sections, index and names table.
      
      libiberty:
      
      	PR target/48108
      	* simple-object-mach-o.c  (GNU_WRAPPER_SECTS, GNU_WRAPPER_INDEX,
      	GNU_WRAPPER_NAMES): New macros.
      	(simple_object_mach_o_segment): Handle wrapper scheme.
      	(simple_object_mach_o_write_section_header): Allow the segment name
      	to be supplied.
      	(simple_object_mach_o_write_segment): Handle wrapper scheme.  Ensure
      	that the top-level segment name in the load command is empty.
      	(simple_object_mach_o_write_to_file): Determine the number of
      	sections during segment output, use that in writing the header.
      
      From-SVN: r180523
      Iain Sandoe committed
  33. 10 Oct, 2011 1 commit
  34. 28 Sep, 2011 2 commits