2021-06-01  Release Manager

	* GCC 9.4.0 released.

2020-03-12  Release Manager

	* GCC 9.3.0 released.

2019-08-12  Release Manager

	* GCC 9.2.0 released.

2019-05-17  Jakub Jelinek  <jakub@redhat.com>

	Backported from mainline
	2019-05-10  Jakub Jelinek  <jakub@redhat.com>

	PR pch/90326
	* config-lang.in (gtfiles): Don't add c-family/c-cppbuiltin.c.

2019-05-03  Release Manager

	* GCC 9.1.0 released.

2019-01-01  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2018-10-17  David Malcolm  <dmalcolm@redhat.com>

	* Make-lang.in (selftest-obj-c++): New.

2018-05-07  Nathan Sidwell  <nathan@acm.org>

	* objcp-lang.c (objcxx_init_ts): Don't call init_shadowed_var_for_decl.

2018-01-03  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2017-07-03  Nathan Sidwell  <nathan@acm.org>

	* config-lang.in: Source cp/config-lang.in, sort objc++ gtfiles list.

2017-06-02  Nathan Sidwell  <nathan@acm.org>

	* objcp-decl.h (SIZEOF_OBJC_TYPE_LANG_SPECIFIC): Use lang_type.
	(ALLOC_OBJC_TYPE_LANG_SPECIFIC): Use it.  Don't set
	u.c.h.is_lang_type_class.

2017-01-01  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2016-01-04  Jakub Jelinek  <jakub@redhat.com>

	Update copyright years.

2015-11-13  Jason Merrill  <jason@redhat.com>

	* config-lang.in (gtfiles): Add cp-gimplify.c.

2015-11-11  Andrew MacLeod  <amacleod@redhat.com>

	* objcp-decl.c: Remove unused header files.
	* objcp-lang.c: Likewise.

2015-10-29  Andrew MacLeod  <amacleod@redhat.com>

	* objcp-decl.c: Reorder #include's and remove duplicates.
	* objcp-lang.c: Likewise.

2015-07-07  Andrew MacLeod  <amacleod@redhat.com>

	* objcp-decl.c: Adjust includes.
	* objcp-lang.c: Likewise.

2015-06-17  Andrew MacLeod  <amacleod@redhat.com>

	* objcp-decl.c: Do not include input.h, line-map.h or is-a.h.
	* objcp-lang.c: Likewise.

2015-06-08  Andrew MacLeod  <amacleod@redhat.com>

	* objcp-decl.c : Adjust include files.
	* objcp-lang.c : Likewise.

2015-06-04  Andrew MacLeod  <amacleod@redhat.com>

	* objcp-decl.c: Adjust includes for restructured coretypes.h.
	* objcp-lang.c: Likewise.

2015-04-27  Jim Wilson  <jim.wilson@linaro.org>

	* Make-lang.in (obj-c++.mostlyclean): Remove cc1objplus.

2015-01-09  Michael Collison  <michael.collison@linaro.org>

	* objcp-decl.c: Include hash-set.h, machmode.h, vec.h, double-int.h,
	input.h, alias.h, symtab.h, options, fold-const.h,
	wide-int.h, and inchash.h due to flattening of tree.h.
	* objcp-lang.c: Ditto.

2014-12-31  Iain Sandoe  <iain@codesourcery.com>

	* config-lang.in (gtfiles): Update list.

2014-05-17  Trevor Saunders  <tsaunders@mozilla.com>

	* objcp-decl.h: Adjust.

2014-04-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* objcp-decl.h (OBJC_TYPE_NAME, OBJC_SET_TYPE_NAME): Use
	TYPE_IDENTIFIER.

2014-01-02  Richard Sandiford  <rdsandiford@googlemail.com>

	Update copyright years

2013-09-25  Tom Tromey  <tromey@redhat.com>

	* Make-lang.in (START_HDRS, cc1objplus-checksum.o)
	(objcp/objcp-lang.o, objcp/objcp-decl.o
	(objcp/objc-runtime-shared-support.o)
	(objcp/objc-gnu-runtime-abi-01.o objcp/objc-next-runtime-abi-01.o)
	(objcp/objc-next-runtime-abi-02.o, objcp/objcp-act.o)
	(objcp/objc-encoding.o, objcp/objc-map.o): Use COMPILE and
	POSTCOMPILE.  Remove explicit dependencies.

2013-05-16  Jason Merrill  <jason@redhat.com>

	* Make-lang.in (cc1objplus$(exeext)): Use link mutex.

2012-06-02  Jason Merrill  <jason@redhat.com>

	* objcp-decl.c (objcp_start_struct): Adjust for change in
	begin_class_definition prototype.

2011-10-14  Nicola Pero  <nicola.pero@meta-innovation.com>

	* Make-lang.in (OBJCXX_OBJS): Added objc-map.o.
	(objcp/objc-map.o): New rule.
	(objcp/objcp-act.o): Depend on objc/objc-map.h.
	* config-lang.in (gtfiles): Added objc-map.h.

2011-07-11  Nicola Pero  <nicola.pero@meta-innovation.com>

	* Make-lang.in (objcp/objc-runtime-shared-support.o): Do not
	depend on OBSTACK_H.
	(objcp/objc-gnu-runtime-abi-01.o): Likewise.
	(objcp/objc-next-runtime-abi-01.o): Likewise.
	(objcp/objc-next-runtime-abi-02.o): Likewise.
	(objcp/objcp-act.o): Likewise.

2011-07-04  Nicola Pero  <nicola.pero@meta-innovation.com>

	* Make-lang.in (OBJCXX_OBJS): Added objc-encoding.o.
	(objcp/objcp-lang.o): Reordered dependencies.  Depend on GGC_H.
	(objcp/objcp-decl.o): Reordered dependencies.
	(objcp/objc-runtime-shared-support.o): Reordered dependencies.
	Updated them to be identical to the corresponding new objc/ ones,
	with the addition of objcp-decl.h.
	(objcp/objc-runtime-shared-support.o): Likewise.
	(objcp/objc-gnu-runtime-abi-01.o): Likewise.
	(objcp/objc-next-runtime-abi-01.o): Likewise.
	(objcp/objc-next-runtime-abi-02.o): Likewise.
	(objcp/objcp-act.o): Reordered dependencies.  Added dependency on
	objc-encoding.h.
	(objcp/objc-encoding.o): New rule.
	
2011-04-15  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objcp-decl.c (objcp_finish_struct): Use
	objc_detect_field_duplicates instead of having a local
	implementation.

2011-04-12  Nathan Froyd  <froydnj@codesourcery.com>

	* objcp-lang.c (objcxx_init_ts): Call objc_common_init_ts and
	cp_common_init_ts.

2011-03-21  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR bootstrap/48167
	* Make-lang.in (START_HDRS): Added CXX_PARSER_H and
	CXX_PRETTY_PRINT_H.
	* config-lang.in (gtfiles): Added cp/parser.h and reorganized list
	so that it is more obvious that it is identical to the C++ one
	with the addition of some files at the end.
	
2011-03-06  Joseph Myers  <joseph@codesourcery.com>

	* lang-specs.h: Match -save-temps* instead of -save-temps.

2011-02-20  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc++/47711
	* config-lang.in (gtfiles): Updated list.

2011-02-17  Iain Sandoe  <iains@gcc.gnu.org>

	* Make-lang.in (START_HDRS): New.
	(OBJCXX_OBJS): Added new object files from objc/.
	(objcp/objcp-act.o): Updated prerequisites.
	(objcp/objcp-lang.o): Updated prerequisites.
	(objcp/objc-runtime-shared-support.o): New.
	(objcp/objc-gnu-runtime-abi-01.o): New.
	(objcp/objc-next-runtime-abi-01.o): New.
	(objcp/objc-next-runtime-abi-02.o): New.
	* config-lang.in (gtfiles): Updated.
	* objcp-lang.c (objcxx_eh_personality): Removed.
	(LANG_HOOKS_EH_PERSONALITY): Removed.
	(LANG_HOOKS_EH_RUNTIME_TYPE): Removed.
	(objcp_eh_personality_decl): Removed.
	
2011-02-07  Mike Stump  <mikestump@comcast.net>

	* Make-lang.in (obj-c++.tags): Don't include *.y.

2010-12-29  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objcp-lang.c (objcp_tsubst_copy_and_build): Update call to
	objc_finish_message_expr.

2010-12-26  Nicola Pero  <nicola.pero@meta-innovation.com>

	* config-lang.in (gtfiles): Added c-family/c-cppbuiltin.c.

2010-12-06  Nicola Pero  <nicola.pero@meta-innovation.com>

	* config-lang.in (gtfiles): Added c-family/c-objc.h.
	* Make-lang.in (objcp/objcp-act.o): Depend on
	c-family/c-objc.h.
	(objcp/objcp-lang.o): Same change.
	(objcp/objcp-decl.o): Same change.
	* objcp-lang.c: Include c-family/c-objc.h.
	* objcp-decl.c: Same change.

2010-11-23  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/24358
	* lang-specs.h: Print a deprecation note every time
	objc++-cpp-output is requested.

2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objcp-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Do not define.

2010-10-20  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objcp-lang.c (finish_file): Removed.

2010-10-14  Iain Sandoe  <iains@gcc.gnu.org>

	merge from FSF apple 'trunk' branch. 
	2006 Fariborz Jahanian  <fjahanian@apple.com>
	
	Radars 4436866, 4505126, 4506903, 4517826
	* objcp-lang.c (objcxx_init_ts): Update for property_decl.

2010-10-13  Richard Henderson  <rth@redhat.com>

	* objcp-lang.c (objcxx_eh_personality): Update call to
	build_personality_function.

2010-10-11  Andi Kleen  <ak@linux.intel.com>

	* Make-lang.in (cc1objplus-checksum.c): Use correct temporary
	name.

2010-10-07  Andi Kleen  <ak@linux.intel.com>

	* Make-lang.in (cc1objplus-dummy): Remove.
	(cc1objplus-checksum): Change to run checksum over object files
	and options only.

2010-10-04  Andi Kleen  <ak@linux.intel.com>

	* Make-lang.in (cc1objplus-dummy, cc1objplus): Add + to build rule.

2010-09-28  Richard Henderson  <rth@redhat.com>

	* objcp-lang.c: Include "target.h".
	(objcxx_eh_personality): Use targetm.except_unwind_info.
	* Make-lang.in (objcp-lang.o): Update deps.

2010-09-21  Nicola Pero  <nicola.pero@meta-innovation.com>

	PR objc/25965	
	* objcp-decl.c (objcp_finish_struct): Call
	objc_get_interface_ivars() and check for duplicate ivars.

2010-06-28  Steven Bosscher  <steven@gcc.gnu.org>

	* objcp-lang.c: Do not include except.h.
	* Make-lang.in: Update dependencies.

2010-06-25  Joseph Myers  <joseph@codesourcery.com>

	* lang-specs.h: Remove +e handling.

2010-06-08  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

	* objcp-decl.h (ALLOC_OBJC_TYPE_LANG_SPECIFIC): Use typed GC
	allocation.

2010-06-05  Steven Bosscher  <steven@gcc.gnu.org>

	* objcp-lang.c: Update include path for moved files.
	* config-lang.in: Update paths in gtfiles for files in c-family/.

2010-05-25  Steven Bosscher  <steven@gcc.gnu.org>

	* objcp-decl.c: Do not include tm.h, rtl.h, expr.h, c-common.h,
	flags.h, input.h, except.h, output.h, toplev.h, cpplib.h, debug.h,
	and target.h.
	* objcp-lang.c: Do not include tm.h, toplev.h, diagnostics.h,
	and debug.h.  Explain why except.h has to be included.
	* Make-lang.in: Update dependencies.

2010-04-30  Steven Bosscher  <steven@gcc.gnu.org>

	* objcp-decl.c: Do not include varray.h.

2009-09-22  Richard Guenther  <rguenther@suse.de>

	PR objc++/41430
	* Make-lang.in (objcp-lang.o): Add $(EXCEPT_H) dependency.
	* objcp-lang.c (LANG_HOOKS_EH_PERSONALITY): Define.
	(LANG_HOOKS_EH_RUNTIME_TYPE): Likewise.
	(objcxx_eh_personality): New function.

2009-09-03  Diego Novillo  <dnovillo@google.com>

	* objcp-lang.c (lang_hooks): Remove const qualifier.

2009-07-14  Taras Glek  <tglek@mozilla.com>
	    Rafael Espindola  <espindola@google.com>

	* Make-lang.in (obj-c.install-plugin): New target for
	installing plugin headers.

2009-06-19  Ian Lance Taylor  <iant@google.com>

	* objcp-decl.h (start_struct): Remove in_struct and struct_types
	parameters.  Add struct_info parameter.
	(finish_struct): Likewise.

2009-06-13  Aldy Hernandez  <aldyh@redhat.com>

	* objcp-decl.h (start_struct): Add location argument.
	(finish_struct): Same.
	(finish_decl): New.

2009-06-12  Aldy Hernandez  <aldyh@redhat.com>

	* objcp-decl.h (c_end_compound_stmt): New argument.
	* objcp-decl.c (objcp_start_struct): Add argument.
	(objcp_finish_struct): Same.

2009-06-03  Ian Lance Taylor  <iant@google.com>

	* Make-lang.in (cc1objplus-checksum.o): Depend upon $(CONFIG_H)
	and $(SYSTEM_H).

2009-05-27  Ian Lance Taylor  <iant@google.com>

	* Make-lang.in (cc1objplus-dummy$(exeext)): Change $(COMPILER) to
	$(LINKER).
	(cc1objplus$(exeext)): Likewise.

2009-05-26  Ian Lance Taylor  <iant@google.com>

	* Make-lang.in (cc1objplus-dummy$(exeext)): Use $(COMPILER).
	(cc1objplus$(exeext), objcp/objcp-act.o): Likwise.

2009-05-10  Ian Lance Taylor  <iant@google.com>

	* objcp-decl.h (start_struct): Add three new, ignored, macro
	parameters.
	(finish_struct): Add two new, ignored, macro parameters.

2009-04-21  Joseph Myers  <joseph@codesourcery.com>

	* ChangeLog: Add copyright and license notices.

2008-12-05  Sebastian Pop  <sebastian.pop@amd.com>

	PR bootstrap/38262
	* Make-lang.in (cc1objplus-dummy, cc1objplus): Add BACKENDLIBS,
	remove GMPLIBS.

2008-09-17  Andrew Pinski  <andrew_pinski@playstation.sony.com>

	PR objc/37460
	* objcp-lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): Don't define.

2008-04-03  Tom Tromey  <tromey@redhat.com>

	* Make-lang.in (obj-c++_OBJS): New variable.

2008-03-27  Tom Tromey  <tromey@redhat.com>

	* Make-lang.in: Revert automatic dependency patch.

2008-03-25  Tom Tromey  <tromey@redhat.com>

	* Make-lang.in (obj-c++_OBJS): Rename from objcp_OBJS.
	(objcp/objcp-act.o): Restore target.

2008-03-25  Tom Tromey  <tromey@redhat.com>

	* Make-lang.in (objcp_OBJS): New variable.
	(cc1objplus-checksum.o, objcp/objcp-lang.o, objcp/objcp-decl.o,
	objcp/objcp-act.o): Remove.

2008-03-07  Paolo Bonzini  <bonzini@gnu.org>

	Revert:

	2008-02-07  Andreas Tobler  <andreast-list@fgznet.ch>
		    Douglas Gregor  <doug.gregor@gmail.com>
 
	PR bootstrap/35115
	* objcp-decl.c (objcp_comptypes): Call cp_comptypes, not comptypes.

2008-02-07  Andreas Tobler  <andreast-list@fgznet.ch>
	    Douglas Gregor  <doug.gregor@gmail.com>
 
	PR bootstrap/35115
	* objcp-decl.c (objcp_comptypes): Call cp_comptypes, not comptypes.

2008-02-06  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	PR other/35107
	* Make-lang.in (cc1objplus-dummy, cc1objplus): Add $(GMPLIBS).

2007-08-02  Nick Clifton  <nickc@redhat.com>

	* Make-lang.in: Change copyright header to refer to version 3 of
	the GNU General Public License and to point readers at the
	COPYING3 file and the FSF's license web page.
	* lang-specs.h, objcp-decl.c, objcp-decl.h, config-lang.in,
	objcp-lang.c: Likewise.

2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>

	* Make-lang.in: Add dummy lang.install-pdf target.

2006-10-23 Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>

	* objcp-decl.h (objcp_builtin_function): Remove.

2006-10-10  Brooks Moses  <bmoses@stanford.edu>

	* Make-lang.in: Added empty "obj-c++.pdf" target.

2006-08-20  Mark Mitchell  <mark@codesourcery.com>

	* objcp-lang.c (objcp_tsubst_copy_and_build): Adjust call to
	tsubst_copy_and_build.

2006-07-28  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>

	* Make-lang.in: Use $(HEADER_H) instead of header.h in dependencies.

2006-07-03  Paolo Bonzini  <bonzini@gnu.org>

	PR other/27063
	* config-lang.in: Add subdir_requires.

2006-06-30  Jason Merrill  <jason@redhat.com>

	* objcp-decl.c (objcp_start_struct): Pass null attributes argument
	to begin_class_definition.

2006-05-14  H.J. Lu  <hongjiu.lu@intel.com>

	* Make-lang.in (objcp/objcp-decl.o): Add dependency on
	$(TARGET_H).

2006-02-20  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>

	* Make-lang.in (OBJ-C++): Remove
	(.PHONY): Remove Obj-c++ and obj-C++. Add obj-c++

2005-12-14  Andrew Pinski  <pinskia@physics.uc.edu>

	* Make-lang.in (objcp/objcp-decl.o): Add depends on $(EXPR_H).

2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>

	* Make-lang.in (obj-c++.all.build, obj-c++.install-normal): Remove.

2005-12-07  Rafael Ávila de Espíndola  <rafael.espindola@gmail.com>

	* Make-lang.in: Remove all dependencies on s-gtype.

2005-11-22  Andrew Pinski  <pinskia@physics.uc.edu>

	* objcp-decl.c (objcp_lookup_name): Remove.
	* objcp-decl.h (objcp_lookup_name): Delete.
	(lookup_name): Kill define.

2005-09-11  Richard Henderson  <rth@redhat.com>

	* objcp-lang.c (objcxx_init_ts): Remove ALIAS_DECL.

2005-07-09  Andrew Pinski  <pinskia@physics.uc.edu>

	* config-lang.in (gtfiles): Add cp-objcp-common.c.
	* objcp-lang.c (objcxx_init_ts): New function.
	(LANG_HOOKS_INIT_TS): Define.

2005-07-03  Kazu Hirata  <kazu@codesourcery.com>

	* Make-lang.in (cc1plus-checksum.c): Use
	build/genchecksum$(build_exeext), not build/genchecksum$(exeext).

2005-06-30  Zack Weinberg  <zack@codesourcery.com>
	    Jakub Jelinek  <jakub@redhat.com>

	* objcp-lang.c: No need to include cxx-pretty-print.h.
	* Make-lang.in: Update dependencies.

2005-06-25  Kelley Cook  <kcook@gcc.gnu.org>

	* all files: Update FSF in copyright headers.

2005-06-20  Ziemowit Laski  <zlaski@apple.com>

	* config-lang.in (gtfiles): Add cp/rtti.c.

2005-05-24  Ziemowit Laski  <zlaski@apple.com>

	* objcp-decl.c (objcp_start_struct, objcp_xref_tag): Adjust
	call to xref_tag().
	(objcp_build_component_ref): Remove function.
	* objcp-decl.h (objcp_build_component_ref): Remove prototype.
	(build_component_ref): Remove macro.
	* objcp-lang.c (LANG_HOOKS_TYPES_COMPATIBLE_P): Remove.

2005-05-18  Geoffrey Keating  <geoffk@apple.com>

	* Make-lang.in (cc1objplus-dummy): New.
	(cc1objplus-checksum.c): New.
	(cc1objplus-checksum.o): New.
	(cc1objplus): Add cc1objplus-checksum.o.

2005-05-17  Ziemowit Laski  <zlaski@apple.com>
	    Mike Stump  <mrs@apple.com>

	Yet more Objective-C++...
	
	* Make-lang.in (objcp/objcp-lang.o): Add tree-gimple.h
	(objcp/objcp-decl.o): Likewise.
	(objcp/objcp-act.o): Likewise.
	* objcp-lang.c (LANG_HOOKS_GIMPLIFY_EXPR): Add.

2005-04-21  Ziemowit Laski  <zlaski@apple.com>
	    Mike Stump  <mrs@apple.com>

	* ChangeLog: New.
	* Make-lang.in: Likewise.
	* config-lang.in: Likewise.
	* lang-specs.h: Likewise.
	* objcp-decl.c: Likewise.
	* objcp-decl.h: Likewise.
	* objcp-lang.c: Likewise.


Copyright (C) 2005-2019 Free Software Foundation, Inc.

Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.
