* cgraphunit.c (analyze_functions) Use update_type_inheritance_graph.
	* ipa-utils.h (update_type_inheritance_graph): Declare.
	(possible_polymorphic_call_target_p): Declare.
	(possible_polymorphic_call_target_p): New.
	* ipa-devirt.c: Update toplevel comments.
	(cached_polymorphic_call_targets): Move up.
	(odr_type_d): Move ID down.
	(polymorphic_type_binfo_p): Update comment.
	(odr_hasher::remove): Likewise;
	(get_odr_type): Set anonymous_namespace.
	(dump_odr_type): Dump it.
	(dump_type_inheritance_graph): Do not ICE when there are no ODR types.
	(maybe_record_node): Record node in cached_polymorphic_call_targets.
	(record_binfo): Add comment.
	(free_polymorphic_call_targets_hash): Do not ICE when cache is not built.
	(devirt_node_removal_hook): Do not iCE when cache is freed.
	(possible_polymorphic_call_target_p): New predicate.
	(update_type_inheritance_graph): New function.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201917 138bc75d-0d04-0410-961f-82ee72b054a4
	* pretty-print.h (output_buffer::output_buffer): Declare.
	(pretty_printer::pretty_printer): Likewise.
	(pp_construct): Remove.
	* pretty-print.c (output_buffer::output_buffer): Define.
	(pretty_printer::pretty_printer): Rename from pp_construct.  Simplify.
	* gimple-pretty-print.c (print_gimple_stmt): Do not call pp_construct.
	(print_gimple_expr): Likewise.
	(print_gimple_seq): Likewise.
	(gimple_dump_bb): Likewise.
	* sched-vis.c (dump_value_slim): Likewise.
	(dump_insn_slim): Likewise.
	(dump_rtl_slim): Likewise.
	(str_pattern_slim): Likewise.
	* tree-mudflap.c (mf_varname_tree): Likewise.
	* graph.c (print_graph_cfg): Likewise.
	(start_graph_dump): Likewise.
	* tree-pretty-print.c (maybe_init_pretty_print): Likewise.  Use
	placement-new.
	* diagnostic.c (diagnostic_initialize): Simplify early diagnostic
	pretty printer initialization.
	* coretypes.h (diagnostic_context): Remove superflous type alias
	declaration.
	(pretty_printer): Likewise.  Declare directly as a class.
	(pretty_print_info): Remove declaration as class.
	* asan.c (asan_emit_stack_protection): Remove call to pp_construct
	and pp_clear_output_area.
	(asan_add_global): Likewise.

c/
	* c-objc-common.c (c_initialize_diagnostics): Simplify C pretty
	printer initialization.

c-family/
	* c-pretty-print.h (pp_c_pretty_printer_init): Remove.
	(c_pretty_printer::c_pretty_printer): Declare.
	* c-pretty-print.c (pretty_printer::c_pretty_printer): Rename from
	c_pretty_printer_init.  Adjust.
	(print_c_tree): Do not call c_pretty_printer_init.
	* c-ada-spec.c (dump_ads): Remove call to pp_construct.

cp/
	* error.c (init_error): Remove calls to pp_construct and
	pp_cxx_pretty_printer_init.  Initialize cxx_pp with placement-new.
	* cxx-pretty-print.h (cxx_pretty_printer::cxx_pretty_printer): Declare.
	(cxx_pretty_printer_init): Remove.
	* cxx-pretty-print.c (cxx_pretty_printer::cxx_pretty_printer):
	Rename from cxx_pretty_printer_init.  Adjust.
	* cp-objcp-common.c (cxx_initialize_diagnostics): Simplify
	initialization of C++ diagnostics pretty printer.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201918 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-22  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/58185
	* match.c (copy_ts_from_selector_to_associate): Only build class
	container for polymorphic selector. Some cleanup.


2013-08-22  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/58185
	* gfortran.dg/select_type_34.f90: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201919 138bc75d-0d04-0410-961f-82ee72b054a4
	* timevar.c (validate_phases): Use size_t for memory.
	* timevar.h (struct timevar_time_def): Use size_t for ggc_mem.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201920 138bc75d-0d04-0410-961f-82ee72b054a4

	* timevar.c (validate_phases): Add cast.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201921 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-22  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/linux.h (TARGET_LIBC_HAS_FUNCTION): Define as
	gnu_libc_has_function.
	* config/s390/tpf.h: Likewise.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201922 138bc75d-0d04-0410-961f-82ee72b054a4
	* configure.ac: Add aarch64 to list of arches which use "nop" in
	debug_line test.
	* configure: Regenerate.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201923 138bc75d-0d04-0410-961f-82ee72b054a4

	* ipa.c (function_and_variable_visibility): First remember function was global
	and then make it local.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201924 138bc75d-0d04-0410-961f-82ee72b054a4
/cp
2013-08-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56380
	* class.c (check_field_decls): Check for const mutable and const
	reference data members.

/testsuite
2013-08-22  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/56380
	* g++.dg/template/error54.C: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201925 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-22  Paolo Carlini  <paolo.carlini@oracle.com>

	* configure.ac: Add backslashes missing from the last change.
	* configure: Regenerate.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201927 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-22  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/pr57744.c: Declare abort.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201929 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201932 138bc75d-0d04-0410-961f-82ee72b054a4
libgo: Update libtool.m4 from upstream to recognize powerpcle.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201933 138bc75d-0d04-0410-961f-82ee72b054a4
	PR tree-optimization/58209
	* tree-tailcall.c (process_assignment): Handle POINTER_PLUS_EXPR.
	(find_tail_calls): Give up for pointer result types if m is non-NULL.
	(adjust_return_value_with_ops): For PLUS_EXPR and pointer result type
	emit POINTER_PLUS_EXPR.
	(create_tailcall_accumulator): For pointer result type accumulate in
	sizetype type.

	* gcc.c-torture/execute/pr58209.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201935 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/config/i386/predicates.md (ext_sse_reg_operand): New.
* gcc/config/i386/i386.md (*movti_internal): Use
predicate to determine if EVEX is needed.
(*movsi_internal): Ditto.
(*movdf_internal): Ditto.
(*movsf_internal): Ditto.
* gcc/config/i386/mmx.md (*mov<mode>_internal): Ditto.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@201936 138bc75d-0d04-0410-961f-82ee72b054a4
2013-08-23  Tim Shen  <timshen91@gmail.com>

	* include/Makefile.am: Add regex_scanner.{h,tcc}.
	* include/Makefile.in: Regenerate.
	* include/bits/regex.h: Fix match_search.
	* include/bits/regex_compiler.h: Remove _Scanner ...
	* include/bits/regex_compiler.tcc: Remove _Scanner ...
	* include/bits/regex_executor.tcc: Don't use reference for submatch.
	* include/bits/regex_scanner.h: ... to here. New.
	* include/bits/regex_scanner.tcc: ... to here, too. New.
	* include/std/regex: Add regex_scanner.h
	* testsuite/28_regex/algorithms/regex_match/awk/cstring_01.cc: New.
	* testsuite/28_regex/algorithms/regex_match/basic/empty_range.cc: New.
	* testsuite/28_regex/algorithms/regex_match/ecma/cstring_hex.cc: New.
	* testsuite/28_regex/algorithms/regex_match/ecma/empty_range.cc: New.
	* testsuite/28_regex/algorithms/regex_search/ecma/string_01.cc: New.
2013-08-23  Tim Shen  <timshen91@gmail.com>

	* include/bits/regex.h: Fix callers.
	* include/bits/regex_compiler.h: Store _Traits reference.
	* include/bits/regex_executor.h: Add _Traits member for _DFSExecutor.
	* include/bits/regex_executor.tcc: Likewise.
	* testsuite/28_regex/algorithms/regex_match/extended/wstring_locale.cc:
	  New.