⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog.1

📁 gcc-2.95.3 Linux下最常用的C编译器
💻 1
📖 第 1 页 / 共 5 页
字号:
	* decl2.c (flag_new_for_scope):  Add a new mode that follows ANSI	for-scoping, but supports (and warns about) old programs.	Make the new mode (with value 1) the default.	(lang_f_options):  The on-value for flag_new_for_scope is now 2.	* cp-tree.h (DECL_DEAD_FOR_LOCAL, DECL_ERROR_REPORTED): New macros	(DECL_SHADOWED_FOR_VAR):  Likewise.	* decl.c (struct binding_level):  New fields dead_vars_from_for	and is_for_scope.	(note_level_for_for):  New function.	(poplevel):  Special processing if is_for_scope.	(pushdecl):  Warn if for-scope variable shadows local.	* lex.c (do_identifier):  Handle old (non-ANSI) for scoping,	and warn if conflicts.	* parse.y (FOR):  Call note_level_for_for.Mon Aug 21 10:28:31 1995  Jason Merrill  <jason@deneb.cygnus.com>	* decl2.c (import_export_inline): Class interface hackery does not	apply to synthesized methods.Sun Aug 20 16:29:00 1995  Mike Stump  <mrs@cygnus.com>	* search.c (virtual_context): Find the right context more often.	Solves a `recoverable compiler error, fixups for virtual function'	problem.Sun Aug 20 13:53:24 1995  Mike Stump  <mrs@cygnus.com>	* except.c (expand_start_all_catch): Ensure that we always transfer	control to the right EH handler, by rethrowing the end label on the	region, instead of hoping we are nested and falling through.	(expand_leftover_cleanups): Likewise.	(end_protect): Since we now rethrow the end label, put a	nop after it, so that outer regions are recognized.	* init.c (build_vec_delete_1): New routine to handle most of vector	deleting, all code moved here from build_vec_delete.	(build_array_eh_cleanup): Use build_vec_delete_1 to do all the real	work.	(expand_vec_init): If the array needs partial destructing, setup an	EH region to handle it.	(build_vec_delete): Move lots of code to build_vec_delete_1, use	build_vec_delete_1 to do the grunt work.Sat Aug 19 14:25:33 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>	Handle decl attributes properly for function definitions without	previous attribute-loaded declarations.	* decl.c (start_function): New arg ATTRS.  Add a call to	cplus_decl_attributes with it before we create the RTL.	* cp-tree.h (start_function): Update prototype.	* parse.y (fn.def1): Pass ATTRS into start_function instead of	trying to call cplus_decl_attributes too late.  Pass a NULL_TREE	for other use.	* decl2.c (finish_file): Pass NULL_TREE as fourth arg to	start_function.	* method.c (synthesize_method): Likewise.	* except.c (expand_builtin_throw): Likewise for start on __throw.Sat Aug 19 13:36:08 1995  Mike Stump  <mrs@cygnus.com>	* class.c (set_rtti_entry): Turn on -fvtable-thunk -frtti support.	This changes -fvtable-thunks vtable layout, so a recompile will be	necessary, if you use -fvtable-thunks.	(get_vtable_entry): Use n, instead of i to be consistent with the	rest of the compiler.	(get_vtable_entry_n): Likewise.	(add_virtual_function): Add a slot for the tdesc, if -fvtable-thunks	are being used.	(finish_struct_1): Likewise.	(skip_rtti_stuff): New routine to collapse similar code from many	different parts of the compiler.  I think I got them all.	(modify_one_vtable): Use it.	(fixup_vtable_deltas1): Likewise.	(override_one_vtable): Likewise.	* decl2.c (mark_vtable_entries): Likewise.	* tree.c (debug_binfo): Likewise.	* search.c (expand_upcast_fixups): Likewise.	(get_abstract_virtuals_1): Likewise.  Use virtuals, instead of tmp to	consistent with the rest of the compiler.	(get_abstract_virtuals): Likewise.	* cp-tree.h (skip_rtti_stuff): New routine, declare it.	* gc.c (build_headof): Support -fvtable-thunk and -frtti together.	(build_typeid): Likewise.	(build_classof): Remove old style way of doing rtti.  Remove support	for `classof' and `headof'.	* gxx.gperf: Likewise.	* hash.h: Likewise.	* parse.y: Likewise.Fri Aug 18 17:31:58 1995  Jason Merrill  <jason@deneb.cygnus.com>	* decl.c (start_function): Clear ctor_label and dtor_label.	* class.c (finish_struct_1): Fix handling of access decls.Tue Aug 15 19:21:54 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* class.c (finish_struct): Only do minimal processing here, so it	can be used for class template definitions, as well.	(finish_struct_1): New function with the rest of the code.Tue Aug 15 09:46:16 1995  Mike Stump  <mrs@cygnus.com>	* class.c (prepare_fresh_vtable): On second though, always build the	offset (see Aug 10 change), unless -fvtable-thunks is given.  It	does this by calling the new routine set_rtti_entry.	(finish_struct): Likewise.	(set_rtti_entry): New routine to update the rtti information at the	start of the vtable.Mon Aug 14 12:21:22 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>	* error.c (dump_decl, case IDENTIFIER_NODE): Only work on a dtor	if it's declared in the C++ language spec.	(dump_function_decl): Likewise.	(dump_function_name): Likewise.	(ident_fndecl): Make sure we got something back from lookup_name.	* decl.c (start_function): Likewise.Fri Aug 11 16:52:15 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* call.c (build_method_call): Don't call build_new when calling a	constructor without an instance.Thu Aug 10 20:00:17 1995  Mike Stump  <mrs@cygnus.com>	* class.c (prepare_fresh_vtable): Always build the offset to the	complete object, as it doesn't cost much.  This allows dynamic_cast	to void * to work when -frtti isn't given.	(finish_struct): Likewise.Thu Aug 10 16:31:28 1995  Mike Stump  <mrs@cygnus.com>	* except.c (build_eh_type): Split out some functionality to new	routine named build_eh_type_type.	(build_eh_type_type): New routine.	(expand_start_catch_block): Use build_eh_type_type, as we never want	the dynamic type of the catch parameter, just the static type.	Fixes core dumps when -frtti is used and one catchs pointers to	classes.Thu Aug 10 14:55:29 1995  Mike Stump  <mrs@cygnus.com>	* except.c (expand_builtin_throw): Since we now use normal calling	conventions for __throw, we have to remove the first layer off the	stack, so that the next context we search for handlers is the outer	context instead of the context that had the call to __throw, if we	don't immediately find the desired context.Tue Aug  8 17:44:23 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* tree.c (cp_expand_decl_cleanup): Returns int, not tree.	* cp-tree.h: Update.	* parse.y (template_type_parm): Add support for `typename'.Tue Aug  8 12:06:31 1995  Mike Stump  <mrs@cygnus.com>	* except.c (expand_internal_throw): New internal routine to throw a	value.	(expand_end_all_catch, expand_leftover_cleanups): All throwers	changed to use `expand_internal_throw' instead of jumping to throw	label.	(expand_end_catch_block, expand_throw): Likewise.	(throw_label): Removed.	(expand_builtin_throw): Changed so that EH parameters are passed by	normal function call conventions.  Completes Aug 4th work.Fri Aug  4 17:17:08 1995  Mike Stump  <mrs@cygnus.com>	* cp-tree.h (expand_builtin_throw): Declare it.	* decl2.c (finish_file): Call expand_builtin_throw.	* except.c (make_first_label): Remove.	(init_exception_processing): Don't use a LABEL_REF for throw_label,	instead use a SYMBOL_REF, this is so that we don't use LABEL_REFs in	other functions that don't really appear in those functions.  This	solves a problem where cc1plus consumed exponential amounts of	memory when -Wall was used.	(expand_end_all_catch, expand_leftover_cleanups,	expand_end_catch_block, expand_throw): Change all uses of	throw_label to match new style.	(do_unwind): Rename parameter to inner_throw_label, as it is now	different from throw_label.  Also, assume that our caller will wrap	the passed label with a LABEL_REF, if needed.	(expand_builtin_throw): Make external, change so that the generated	throw is now a real function.	(expand_exception_blocks): Never generate throw code inside another	function.Fri Aug  4 12:20:02 1995  Mike Stump  <mrs@cygnus.com>	* decl.c (grokdeclarator): Move checking of mutable const objects	and mutable static objects down, as we might decide during parsing	to unset staticp or constp (for example, when const is part of the	object being pointed to).Thu Aug  3 17:13:43 1995  Mike Stump  <mrs@cygnus.com>	* except.c (output_exception_table_entry): Enhance portability to	weird machines.	(emit_exception_table): Likewise.Thu Aug  3 16:41:38 1995  Mike Stump  <mrs@cygnus.com>	* typeck.c (build_ptrmemfunc): Handle casting of pointer to	non-virtual member functions.Wed Aug  2 11:58:25 1995  Mike Stump  <mrs@cygnus.com>	* gc.c (build_typeid): Strip cv qualifiers so that const T&, T&, T	and const T all match.Wed Aug  2 11:25:33 1995  Mike Stump  <mrs@cygnus.com>	* except.c (build_eh_type): Strip cv qualifiers so that const T&,	T&, T and const T all match.Tue Aug  1 14:20:16 1995  Mike Stump  <mrs@cygnus.com>	* except.c: Fix up comments, cleanup code and eliminate exceptNode,	exceptStack, exceptstack, push_except_stmts, pop_except_stmts,	new_except_stack, push_last_insn, pop_last_insn, insn_save_node and	InsnSave.  Also, numerous speed improvements, and correctness	improvements.  Double faulting in all situations should now be	handled correctly.	(expand_start_all_catch): Instead of having many terminate protected	regions, just have one.	(expand_start_catch_block): No longer have to protect	false_label_rtx, as it isn't used for EH region marking.	(expand_end_catch_block): Expand out EH cleanups here by using	expand_leftover_cleanups.	(expand_end_all_catch): Use sequences instead of playing with insn	links directly.	(expand_exception_blocks): Likewise.  Also protect all catch clauses	with one terminate region.Mon Jul 31 13:24:30 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* method.c (report_type_mismatch): Don't talk about an object	parameter for non-methods.Sun Jul 30 13:13:02 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* class.c (finish_struct): Catch private and protected members of	anonymous unions here.	* decl2.c (finish_anon_union): And here.	* parse.y: Instead of here.	* errfn.c (ARGSLIST): Support passing four args.	* error.c (cv_as_string): New function.	(cp_printers): Add it.	* call.c (build_method_call): Report 'const' at end of pseudo-decl.	* method.c (report_type_mismatch): Deal with a bad_arg of 0.	* init.c (expand_aggr_init): Handle volatile objects, too.Sat Jul 29 13:42:03 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* decl.c (struct binding_level): Keep list of incomplete decls.	(print_binding_level): Use list_length to count them.	(pushdecl): Build up the list.	(hack_incomplete_structures): Walk it and prune completed decls.Fri Jul 28 15:26:44 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* typeck.c (comp_target_types): Don't check const and volatile for	function types.	(comp_ptr_ttypes_real): Likewise.Thu Jul 27 15:40:48 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* typeck.c (comp_target_types): Fix.Thu Jul 27 15:10:48 1995  Mike Stump  <mrs@cygnus.com>	* cp-tree.h (unsave_expr_now, build_unsave_expr,	cp_expand_decl_cleanup): Declare new routines.	* decl.c (cp_finish_decl, store_parm_decls,	hack_incomplete_structures): Change all cals from	expand_decl_cleanup to cp_expand_decl_cleanup.	* gc.c (protect_value_from_gc): Likewise.	* expr.c (cplus_expand_expr): Handle UNSAVE_EXPRs.	* tree.c (unsave_expr): New routine to build an UNSAVE_EXPR.	(unsave_expr_now): Backend routine used by tree expander.	(cp_expand_decl_cleanup): Wrap second argument in an UNSAVE_EXPR to	work around a limitation in the backend.  The backend uses the	cleanups multiple times, on disjoint control flows, so we cannot	pass unsaved SAVE_EXPRs to the backend.	* tree.def (UNSAVE_EXPR): New tree code.	* typeck.c (c_expand_return): Move goto/return code up inside	conditional, as we don't always want to do this, we only want to do	this when we don't otherwise finish with this control flow.Thu Jul 27 10:38:43 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>	* parse.y (typespec): Only complain about typeof if we're not	getting it from a system header.Thu Jul 27 10:26:23 1995  Doug Evans  <dje@canuck.cygnus.com>	Clean up prefix attribute handling.	* parse.y (reserved_declspecs): Link prefix attributes with declspecs.	(declmods): Likewise.	(all rules that reference typed_declspecs and declmods): Call	split_specs_attrs or strip_attrs to separate declspecs and attrs.	(lang_extdef): Delete resetting of prefix_attributes.	(template_def, notype_declarator rule): Use NULL_TREE for	prefix_attributes.	(condition): Use NULL_TREE for prefix_attributes.	(setattrs): Deleted.	(nomods_initdcl0): Set prefix_attributes to NULL_TREE.	(component_decl): Delete resetting of prefix_attributes.	(component_decl_1, notype_components rule): Use NULL_TREE for	prefix_attributes.	(simple_stmt): Delete resetting of prefix_attributes.Mon Jul 24 13:37:53 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* call.c (convert_harshness): Deal with reference conversions before	others.  Actually do array->pointer decay.  Call comp_target_types	with pointer types rather than their targets.	* typeck.c (comp_target_types): Avoid assigning D const * to B *.Mon Jul 24 08:54:46 1995  Brendan Kehoe  <brendan@lisa.cygnus.com>	* pt.c (to_be_restored): Move decl to global scope.Sat Jul 22 12:22:11 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* decl.c (start_decl): Put back clearing of DECL_IN_AGGR_P.Fri Jul 21 17:09:02 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* decl.c (grokdeclarator): Downgrade error about 'extern int A::i'	to pedwarn.	* pt.c (instantiate_template): Also avoid instantiation if the	function has already been declared to be a specialization.	* decl2.c (check_classfn): Ignore cname argument, and return the	matching function.	* decl.c (start_decl): Handle declarations of member functions	outside of the class (i.e. specialization declarations).Thu Jul 20 10:34:48 1995  Jason Merrill  <jason@phydeaux.cygnus.com>	* class.c (finish_struct): Don't mess with the type of bitfields.	* various.c: s/TYPE_POINTER_TO/build_pointer_type/.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -