Commit Graph

138206 Commits

Author SHA1 Message Date
Mikhail Maltsev fab27f5289 Use std::swap instead of explicit swaps
gcc/
	* bb-reorder.c (fix_up_fall_thru_edges): Use std::swap instead of
	explicit swaps.
	* dojump.c (do_compare_rtx_and_jump): Likewise.
	* expmed.c (emit_store_flag_1): Likewise.
	* fibonacci_heap.h (fibonacci_heap::union_with): Likewise.
	* final.c (sprint_ul): Use std::reverse for reversing a string.
	* fold-const.c (extract_muldiv_1): Use std::swap.
	* genmodes.c (emit_mode_int_n): Likewise.
	* ifcvt.c (dead_or_predicable): Likewise.
	* ira-build.c (ira_merge_live_ranges): Likewise.
	(swap_allocno_copy_ends_if_necessary): Likewise.
	* ira.c (ira_setup_alts): Likewise.
	* loop-iv.c (iv_analyze_expr): Likewise.
	(implies_p): Likewise.
	(canon_condition): Likewise.
	* lra-constraints.c (swap_operands): Likewise.
	* lra-lives.c (lra_merge_live_ranges): Likewise.
	* omega.c (swap): Remove.
	(bswap): Remove.
	(omega_unprotect_1): Use std::swap.
	(omega_solve_geq): Likewise.
	* optabs.c (expand_binop_directly): Likewise.
	(expand_binop): Likewise.
	(emit_conditional_move): Likewise.
	(emit_conditional_add): Likewise.
	* postreload.c (reload_cse_simplify_operands): Likewise.
	* reg-stack.c (emit_swap_insn): Likewise.
	(swap_to_top): Likewise.
	(compare_for_stack_reg): Likewise.
	(subst_asm_stack_regs): Likewise.
	* reload.c (find_reloads): Likewise.
	* reload1.c (gen_reload_chain_without_interm_reg_p): Likewise.
	* sel-sched.c (invoke_reorder_hooks): Likewise.
	(create_block_for_bookkeeping): Likewise.
	* tree-data-ref.c (lambda_matrix_row_exchange): Remove.
	(lambda_matrix_right_hermite): Use std::swap.
	* tree-ssa-coalesce.c (sort_coalesce_list): Likewise.
	* tree-ssa-ifcombine.c (ifcombine_ifandif): Likewise.
	* tree-ssa-loop-ivopts.c (iv_ca_delta_reverse): Likewise.
	* tree-ssa-math-opts.c (is_widening_mult_p): Likewise.
	* tree-ssa-phiopt.c (hoist_adjacent_loads): Likewise.
	* tree-ssa-reassoc.c (linearize_expr_tree): Likewise.
	* tree-ssa-threadedge.c (simplify_control_stmt_condition): Likewise.
	* tree-vrp.c (compare_ranges): Likewise.
	* var-tracking.c (add_with_sets): Likewise.
	(vt_find_locations): Likewise.

gcc/c/
	* c-typeck.c (build_array_ref): Use std::swap instead of explicit
	swaps

gcc/cp/
	* typeck.c (composite_pointer_type): Use std::swap instead of explicit
	swaps.

gcc/c-family/
	* c-common.c (shorten_compare): Use std::swap instead of explicit swaps.

gcc/fortran/
	* interface.c (compare_actual_formal): Use std::swap instead of
	explicit swaps.
	* trans-array.c (gfc_trans_scalarized_loop_end): Likewise.
	* trans-intrinsic.c (walk_inline_intrinsic_transpose): Likewise.

From-SVN: r223332
2015-05-19 04:24:31 +00:00
GCC Administrator de7fe08778 Daily bump.
From-SVN: r223330
2015-05-19 00:16:14 +00:00
Steven G. Kargl 898344a944 re PR fortran/66057 (ICE for incomplete generic statement (gfc_match_generic))
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66057
	* interface.c(gfc_match_end_interface): Enforce F2008 C1202 (R1201).
	* match.c(gfc_op2string): Return 'none' for INTRINSIC_NONE.


2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66057
	* gfortran.dg/interface_operator_1.f90: New tests.

From-SVN: r223326
2015-05-18 23:26:38 +00:00
Steven G. Kargl 377e37c159 re PR fortran/66057 (ICE for incomplete generic statement (gfc_match_generic))
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66057
	* decl.c(gfc_match_generic):  Detected a malformed GENERIC statement.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66057
	* gfortran.dg/generic_29.f90: New tests.

From-SVN: r223325
2015-05-18 23:09:49 +00:00
Steven G. Kargl 73641c881f re PR fortran/66052 (Segmentation fault for misplaced protected statement)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66052
	* decl.c(gfc_match_protected): Prevent dereference of NULL pointer. 

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66052
	* gfortran.dg/protected_9.f90: New test.

From-SVN: r223324
2015-05-18 22:52:52 +00:00
Steven G. Kargl bfeeb14516 re PR fortran/66045 (ICE on incorrect code with null)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66045
	* expr.c (gfc_check_assign):  Check for assignment of NULL() instead
	of the (intended) pointer assignment.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66045
	* gfortran.dg/null1.f90: New test.

From-SVN: r223322
2015-05-18 22:21:08 +00:00
Steven G. Kargl fce523bf9b re PR fortran/66044 (ICE on misplaced entry statement)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66044
	* decl.c(gfc_match_entry):  Change a gfc_internal_error() into
	a gfc_error() 

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66044
	* gfortran.dg/entry_21.f90: New test.

From-SVN: r223321
2015-05-18 22:06:48 +00:00
Steven G. Kargl ce7fb7118f re PR fortran/66043 (ICE on storage_size of null or output of null array)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66043
	* check.c (gfc_check_storage_size): Prevent the direct use of NULL()
	in STORAGE_SIZE() reference.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66043
	* gfortran.dg/storage_size_6.f90: New tests.

From-SVN: r223320
2015-05-18 21:52:03 +00:00
Steven G. Kargl 46b6b3542d re PR fortran/66040 (ICE on misplaced sequence in function)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66040
	* parse.c(verify_st_order): Replace a gfc_internal_error with your
	generic gfc_error.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66040
	* gfortran.dg/misplaced_statement.f90: New test.

From-SVN: r223318
2015-05-18 21:16:05 +00:00
Joseph Myers 589ff4d209 * sv.po: Update.
From-SVN: r223316
2015-05-18 22:06:01 +01:00
Steven G. Kargl 20898e8096 re PR fortran/66039 (ICE on incomplete parentheses at rewind, flush, endfile, backspace)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66039
	* io.c (match_filepos): Check for incomplete/mangled REWIND, FLUSH,
	BACKSPACE, and ENDFILE statements

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/66039
	* gfortran.dg/filepos1.f90: New test

From-SVN: r223315
2015-05-18 21:04:33 +00:00
Jason Merrill 703245d706 revert: Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.
Revert:
	* Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.

From-SVN: r223314
2015-05-18 16:22:14 -04:00
Steven G. Kargl f7c1c17192 re PR fortran/64925 (ICE with same names for dummy arg and internal procedure)
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/64925
	* symbol.c(check_conflict):  Check for a conflict between a dummy
	argument and an internal procedure name.

2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/64925
	* gfortran.dg/pr64925.f90: New test.

From-SVN: r223313
2015-05-18 19:25:49 +00:00
Jason Merrill 87734648c9 * Makefile.in (GCC_WARN_CXXFLAGS): Add -std=c++98.
From-SVN: r223312
2015-05-18 15:21:54 -04:00
Steven G. Kargl 71c87d1c0f pr41521_0.f90: Move INTERFACE statement in program unit.
2015-05-18  Steven G. Kargl  <kargl@gcc.gnu.org>

	* gfortran.dg/lto/pr41521_0.f90: Move INTERFACE statement in program
	unit.
	* gfortran.dg/lto/pr41576_1.f90: Ditto.

From-SVN: r223309
2015-05-18 18:59:48 +00:00
Andreas Tobler 8ea0dcb9e0 freebsd-spec.h (FBSD_STARTFILE_SPEC): Add the bits to build pie executables.
2015-05-18  Andreas Tobler  <andreast@gcc.gnu.org>

gcc:
        * config/freebsd-spec.h (FBSD_STARTFILE_SPEC): Add the bits to build
	pie executables.
	(FBSD_ENDFILE_SPEC): Likewise.
	* config/i386/freebsd.h (STARTFILE_SPEC): Remove and use the one from
	config/freebsd-spec.h.
	(ENDFILE_SPEC): Likewise.

gcc/testsuite:
	* lib/target-supports.exp (check_effective_target_pie): Add *-*-freebsd*
	to the family of pie capable targets.

From-SVN: r223308
2015-05-18 20:37:18 +02:00
Jason Merrill f41aecf428 pt.c (retrieve_specialization): Make sure our arguments have gone through strip_typedefs.
* pt.c (retrieve_specialization): Make sure our arguments have
	gone through strip_typedefs.

From-SVN: r223305
2015-05-18 14:08:53 -04:00
Jason Merrill b237c4cbd3 pt.c (tsubst_decl): Call coerce_innermost_template_parms.
* pt.c (tsubst_decl) [VAR_DECL]: Call coerce_innermost_template_parms.
	(determine_specialization): Call coerce_template_parms.

From-SVN: r223304
2015-05-18 14:08:48 -04:00
Jason Merrill c4d6d7bc46 DR 1391
DR 1391
	* pt.c (type_unification_real): Check convertibility here.
	(unify_one_argument): Not here.

From-SVN: r223301
2015-05-18 13:14:11 -04:00
Jason Merrill 8f56fadc24 tree.c (strip_typedefs_expr): Fix typo.
* tree.c (strip_typedefs_expr) [TRAIT_EXPR]: Fix typo.
	(strip_typedefs) [DECLTYPE_TYPE]: Fix typedef of decltype.
	[TREE_LIST]: Fix no-change case.

From-SVN: r223300
2015-05-18 13:14:04 -04:00
Jason Merrill 80f1c14df5 * ptree.c (cxx_print_xnode): Handle TRAIT_EXPR.
From-SVN: r223299
2015-05-18 13:13:59 -04:00
Uros Bizjak 6f2ac3606e re PR rtl-optimization/57032 (internal compiler error: Max. number of generated reload insns per insn is achieved (90))
PR target/57032
	* config/alpha/constraints.md (Q): Rewrite as define_memory_constraint.
	Check for a memory location that is not a reference (using an AND)
	to an unaligned location here.
	* config/alpha/predicates.md (normal_memory_operand): Remove.


Co-Authored-By: Richard Henderson <rth@redhat.com>

From-SVN: r223298
2015-05-18 18:34:23 +02:00
Tom de Vries 323eb6e3cf check_GNU_style.sh: Don't do 80 char check line by line
2015-05-18  Tom de Vries  <tom@codesourcery.com>

	* check_GNU_style.sh: Add temp files tmp2 and tmp3.
	(cat_with_prefix): New function, using global variable prefix.
	(col): Make prefix a global variable. Rewrite to process file at a time
	rather than line at a time.  Print part longer than 80 chars in red.

From-SVN: r223297
2015-05-18 15:44:55 +00:00
Alex Velenko 0454e69840 arm.md (andsi_not_shiftsi_si_scc): New pattern.
gcc/config

2015-05-18  Alex Velenko  <Alex.Velenko@arm.com>

  	* arm/arm.md (andsi_not_shiftsi_si_scc): New pattern.
  	(andsi_not_shiftsi_si_scc_no_reuse): New pattern.

gcc/testsuite

2015-05-18  Alex Velenko <Alex.Velenko@arm.com>

  	* gcc.target/arm/bics_1.c : New testcase.
  	* gcc.target/arm/bics_2.c : New testcase.
  	* gcc.target/arm/bics_3.c : New testcase.
  	* gcc.target/arm/bics_4.c : New testcase.

From-SVN: r223295
2015-05-18 14:38:41 +00:00
Robert Suchanek fb05f2e4dd Fix ICE when both micromips and nomicromips attributes are used.
gcc/ChangeLog:

2015-05-18  Robert Suchanek  <robert.suchanek@imgtec.com>

	* config/mips/mips.c (micromips_globals): New variable.
	(mips_set_compression_mode): Save and reinitialize target-dependent
	state for microMIPS.

gcc/testsuite/ChangeLog:

2015-05-18  Robert Suchanek  <robert.suchanek@imgtec.com>

	* gcc.target/mips/umips-attr.c: New test.

From-SVN: r223294
2015-05-18 14:32:19 +00:00
Martin Liska 7aeb92b472 IPA ICF: add support for debug counter.
* dbgcnt.def: Add new counter.
	* ipa-icf.c (sem_item_optimizer::merge_classes): Use the
	counter.

From-SVN: r223288
2015-05-18 09:05:15 +00:00
Martin Liska 68d070ac6a dbgcnt: enhance behavior.
* dbgcnt.def: Sort counters.
	* opts.c (common_handle_option): Do not compile if
	-fdbg-cnt-list is enabled.

From-SVN: r223287
2015-05-18 09:03:28 +00:00
Tom de Vries 2fe1d762d6 Move array-type va_list handling to build_va_arg
2015-05-18  Tom de Vries  <tom@codesourcery.com>

	* gimplify.c (gimplify_modify_expr): Remove do_deref handling.
	(gimplify_va_arg_expr): Remove do_deref handling.  Remove adding of
	address operator to va_list operand.
	* tree-stdarg.c (expand_ifn_va_arg_1): Do deref of va_list operand
	unconditionally.
	* config/i386/i386.c (ix86_gimplify_va_arg): Remove deref on va_list
	operand.
	* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): Same.
	* config/s390/s390.c (s390_gimplify_va_arg): Same.
	* config/spu/spu.c (spu_gimplify_va_arg_expr): Same.

	* c-common.c (build_va_arg_1): New function.
	(build_va_arg): Add address operator to va_list operand if necessary.

From-SVN: r223286
2015-05-18 08:19:29 +00:00
Tom de Vries daf347dddd Fix whitespace in tree-ssa-tail-merge.c
2015-05-18  Tom de Vries  <tom@codesourcery.com>

	* tree-ssa-tail-merge.c: Fix whitespace.

From-SVN: r223285
2015-05-18 08:14:09 +00:00
Tom de Vries ad7f0dfea3 check_GNU_style.sh: Don't cat empty file
2015-05-18  Tom de Vries  <tom@codesourcery.com>

	* check_GNU_style.sh (g, ag, vg): Don't cat empty file.

From-SVN: r223284
2015-05-18 07:07:44 +00:00
Tom de Vries 847b6e1511 check_GNU_style.sh: Declare local vars with local
2015-05-18  Tom de Vries  <tom@codesourcery.com>

	* check_GNU_style.sh (g, ag, vg, col): Declare local vars with local.

From-SVN: r223283
2015-05-18 07:07:36 +00:00
Tom de Vries 7e425ad686 check_GNU_style.sh: Improve readability function calls
2015-05-18  Tom de Vries  <tom@codesourcery.com>

	* check_GNU_style.sh: Improve readability function calls.

From-SVN: r223282
2015-05-18 07:07:27 +00:00
Jim Wilson ff10afd391 invoke.texi (ARM Options, mtune): Add generic-armv7-a, cortex-a17, and cortex-a17.cortex-a7.
gcc/
	* doc/invoke.texi (ARM Options, mtune): Add generic-armv7-a,
	cortex-a17, and cortex-a17.cortex-a7.

From-SVN: r223281
2015-05-17 20:14:54 -07:00
GCC Administrator 9371b12f50 Daily bump.
From-SVN: r223280
2015-05-18 00:16:20 +00:00
Uros Bizjak a6f90a1885 20150120-1.c (dg-final): Cleanup original tree dump.
* gcc.dg/20150120-1.c (dg-final): Cleanup original tree dump.
	* gcc.dg/20150120-2.c (dg-final): Ditto.
	* gcc.dg/20150120-2.c (dg-final): Ditto.
	* gfortran.dg/inline_matmul_1.f90 (dg-final): Ditto.

From-SVN: r223276
2015-05-17 23:49:19 +02:00
Uros Bizjak fd02576de9 pr66174.c: New test.
* gcc.target/i386/pr66174.c: New test.

From-SVN: r223275
2015-05-17 23:45:40 +02:00
Oleg Endo f5a64dbf01 re PR target/54236 ([SH] Improve addc and subc insn utilization)
gcc/
	PR target/54236
	* config/sh/sh.md (*addc_2r_t): Use ashift instead of mult.

From-SVN: r223274
2015-05-17 21:01:29 +00:00
François Dumont e55b80f5f4 unordered_map.h (unordered_map, [...]): Add missing constructors.
2015-05-17  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/unordered_map.h (unordered_map, unordered_multimap): Add
	missing constructors.
	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
	Likewise.
	* include/debug/unordered_map (unordered_map, unordered_multimap): Add
	missing constructors.
	* include/debug/unordered_set (unordered_set, unordered_multiset):
	Likewise.
	* include/profile/unordered_map (unordered_map, unordered_multimap): Add
	missing constructors.
	* include/profile/unordered_set (unordered_set, unordered_multiset):
	Likewise.
	* testsuite/23_containers/unordered_map/cons/66055.cc: Add constructor
	invocations.
	* testsuite/23_containers/unordered_multimap/cons/66055.cc: Likewise.
	* testsuite/23_containers/unordered_multiset/cons/66055.cc: Likewise.
	* testsuite/23_containers/unordered_set/cons/66055.cc: Likewise.

From-SVN: r223273
2015-05-17 20:14:53 +00:00
Uros Bizjak 8c7bcf951d re PR target/66174 (ICE: in extract_insn, at recog.c:2341 (unrecognizable insns) with -ftree-vectorize -mavx512ifma)
PR target/66174
	* config/i386/i386.c (expand_vec_perm_blend): Enable HImode and
	QImode inner modes for TARGET_AVX512BW.  Force mask operand
	to a register for AVX512F modes.

testsuite/ChangeLog:

	PR target/66174
	* gcc.target/i386/pr66174.c: New test.

From-SVN: r223269
2015-05-17 17:08:16 +02:00
Thomas Koenig 2ea560b2b0 re PR fortran/37131 (inline matmul for small matrix sizes)
2015-05-17  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/37131
	* gfortran.dg/matmul_bounds_6.f90:  New test.
	* gfortran.dg/matmul_bounds_7.f90:  New test.

From-SVN: r223268
2015-05-17 13:45:07 +00:00
GCC Administrator ebd5b3fd54 Daily bump.
From-SVN: r223265
2015-05-17 00:16:20 +00:00
James Bowman fef939d6a9 FT32 target added. Approved by Jeff Law [law@redhat.com]
From-SVN: r223261
2015-05-16 23:49:08 +00:00
Jan Hubicka 9261aa4364 toplev.c (emit_debug_global_declarations): Do not output debug info when doing slim LTO objects.
* toplev.c (emit_debug_global_declarations): Do not output debug info
	when doing slim LTO objects.

From-SVN: r223260
2015-05-16 23:20:49 +00:00
Jan Hubicka 499568ed02 ipa-utils.h (warn_types_mismatch, [...]): Declare.
* ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
	odr_types_equivalent_p): Declare.
	(odr_type_p): Use gcc_checking_assert.
	(type_in_anonymous_namespace_p) Declare.
	(type_with_linkage_p): Declare.
	* common.opt (Wlto-type-mismatch): New warning.
	* ipa-devirt.c (compound_type_base): New function.
	(odr_or_derived_type_p): New function.
	(odr_types_equivalent_p): New function.
	(add_type_duplicate): Simplify.
	(type_with_linkage_p): Add hack to prevent false positives on C types
	(type_in_anonymous_namespace_p): Likewise.
	* tree.c (need_assembler_name_p): Use type_with_linkage.
	* tree.h (type_in_anonymous_namespace_p): Remove.
	* doc/invoke.texi (-Wlto-type-mismatch): Document

From-SVN: r223259
2015-05-16 23:19:23 +00:00
Jan Hubicka 259d29e396 ipa-utils.h (warn_types_mismatch, [...]): Declare.
* ipa-utils.h (warn_types_mismatch, odr_or_derived_type_p,
	odr_types_equivalent_p): Declare.
	(odr_type_p): Use gcc_checking_assert.
	(type_in_anonymous_namespace_p) Declare.
	(type_with_linkage_p): Declare.
	* common.opt (Wlto-type-mismatch): New warning.
	* ipa-devirt.c (compound_type_base): New function.
	(odr_or_derived_type_p): New function.
	(odr_types_equivalent_p): New function.
	(add_type_duplicate): Simplify.
	(type_with_linkage_p): Add hack to prevent false positives on C types
	(type_in_anonymous_namespace_p): Likewise.
	* tree.c (need_assembler_name_p): Use type_with_linkage.
	* tree.h (type_in_anonymous_namespace_p): Remove.
	* doc/invoke.texi (-Wlto-type-mismatch): Document

	* lto-symtab.c (warn_type_compatibility_p): Break out from ...;
	compare ODR types (if available) and function types.
	(lto_symtab_merge): ... here; output ODR violation warnings
	and call warn_types_mismatch.

	* gfortran.dg/lto/20091028-2_1.c: Fix return value.
	* gfortran.dg/lto/pr41576_1.f90: Add interface.
	* gfortran.dg/lto/pr41521_0.f90: Disable lto-type-mismatch
	* gfortran.dg/lto/pr60635_0.f90: Disable lto-type-mismatch.
	* gfortran.dg/lto/20091028-1_1.c: Fix return type.
	* gcc.dg/lto/20120723_0.c: Disbale lto-type-mismatch.

From-SVN: r223258
2015-05-16 23:18:29 +00:00
Jan Hubicka 4d259d334e tree.c (verify_type_variant): Verify tree_base and type_common flags.
* tree.c (verify_type_variant): Verify tree_base and type_common flags.
	(verify_type): Verify STRING_FLAG.

From-SVN: r223252
2015-05-16 20:51:50 +00:00
Jerry DeLisle f70713026c re PR fortran/65903 (Line continuation followed by comment character in string fails to compile)
2015-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/65903
	* gfortran.dg/continuation_13.f90: Update test.
	* gfortran.dg/pr65903.f90: New test.

From-SVN: r223249
2015-05-16 17:51:41 +00:00
Jerry DeLisle c55bbc72ff re PR fortran/65903 (Line continuation followed by comment character in string fails to compile)
2015-05-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/65903
	* io.c (format_lex): Change to NONSTRING when checking for
	possible doubled quote.
	* scanner.c (gfc_next_char_literal): Revert change from 64506
	and add a check for quotes and return.

From-SVN: r223248
2015-05-16 17:44:15 +00:00
Iain Buclaw 7e8655412c d-demangle.c (dlang_symbol_kinds): New enum.
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

	* d-demangle.c (dlang_symbol_kinds): New enum.
	(dlang_parse_symbol): Update signature.  Handle an ambiguity between
	pascal functions and template value arguments.  Only check for a type
	if parsing a function, or at the top level.  Return failure if the
	entire symbol was not successfully demangled.
	(dlang_identifier): Update signature.  Handle an ambiguity between two
	adjacent digits in a mangled symbol string.
	(dlang_type): Update call to dlang_parse_symbol.
	(dlang_template_args): Likewise.
	(dlang_parse_template): Likewise.
	(dlang_demangle): Likewise.
	* testsuite/d-demangle-expected: Fix bad tests found, and add problematic
	examples to the unittests.

From-SVN: r223247
2015-05-16 16:50:30 +00:00
Iain Buclaw ed4cdb8502 d-demangle.c (dlang_template_args): Skip over specialized template parameters in mangled symbol.
libiberty/ChangeLog:

2015-05-16  Iain Buclaw  <ibuclaw@gdcproject.org>

	* d-demangle.c (dlang_template_args): Skip over specialized template
	parameters in mangled symbol.
	* testsuite/d-demangle-expected: Add coverage and unittest for specialized
	template parameters.

From-SVN: r223246
2015-05-16 16:50:19 +00:00