Go to file
Mark Mitchell f1dedc319f cp-tree.def (SUBOBJECT): New tree node.
* cp-tree.def (SUBOBJECT): New tree node.
	* cp-tree.h (CLEANUP_P): New macro.
	(SUBOBJECT_CLEANUP): Likewise.
	(keep_next_level): Add parameter.
	(get_temp_regvar): Don't declare.
	(emit_base_init): Remove parameter.
	(expand_aggr_init): Rename to build_aggr_init.
	(expand_vec_init): Rename to build_vec_init.
	(do_pushlevel): Remove.
	(do_poplevel): Likewise.
	(finish_cleanup): New function.
	(finish_subobject): Likewise.
	(stmts_are_full_exprs_p): New variable.
	* decl.c (keep_next_level): Add parameter.
	(cp_finish_decl): Use build_aggr_init, not
	expand_aggr_init.  Use finish_expr_stmt to expand the code.
	(expand_static_init): Use tree-generating, not RTL-generating,
	functions to handle the initialization.
	(start_function): Remove dead code.  Always have a momentary
	obstack inside the function, even before hitting the first curly
	brace.
	(cplus_expand_expr_stmt): Move calls to
	expand_{start,end}_target_temps into semantics.c.
	(cp_function): Add stmts_are_full_exprs_p.
	(push_cp_function_context): Save it.
	(pop_cp_function_context): Restore it.
	* decl2.c (get_temp_regvar): Move to init.c.
	(do_static_initialization): Use build_{aggr,vec}_init.
	(do_static_destruction): Fix typo in comment.
	* dump.c (dequeue_and_dump): Handle INIT_EXPR.
	* except.c (expand_throw): Use create_temporary_var.
	* expr.c (cplus_expand_expr): Use build_{aggr,vec}_init.
	* init.c (expand_vec_init_try_block): Remove.
	(expand_vec_init_catch_clause): Likewise.
	(get_temp_regvar): New function.
	(begin_init_stmts): Likewise.
	(finish_init_stmts): Likewise.
	(perform_member_init): Use build_{aggr,vec}_init.  Build up tree
	structure here.
	(emit_base_init): Likewise.  Remove unused parameter.
	(expand_virtual_init): Likewise.
	(expand_cleanup_for_base): Use finish_subobject.
	(expand_aggr_vbase_init_1): Simplify.
	(construct_virtual_bases): Use tree-generating functions to build
	up initialization.
	(expand_aggr_init): Likewise.  Rename to build_aggr_init.
	(expand_default_init): Likewise.
	(expand_aggr_init_1): Likewise.
	(expand_vec_init): Rename to build_vec_init.
	* method.c (do_build_copy_constructor): Use tree-generating
	functions.  Don't call clear_last_expr.
	(do_build_assign_ref): Likewise.
	(synthesize_method): Call clear_last_expr here.
	* parse.y (base_init): Don't call clear_last_expr here.
	(nodecls): Likewise.
	* pt.c (tsubst_expr): Handle a TRY_BLOCK with CLEANUP_P set.
	* semantics.c (do_pushlevel): Move to here.
	(do_poplevel): Likewise.
	(stmts_are_full_exprs_p): New variable.
	(finish_expr_stmt): Handle logic for temoprary cleanup here.
	(finish_for_stmt): Use finish_expr_stmt.
	(finish_cleanup): New function.
	(finish_function_try_block): Fix indentation.
	(finish_subobject): New function.
	(setup_vtbl_ptr): Call keep_next_level here.
	(finish_stmt_expr): Handle a block with no scope inside the
	statement-expression.
	(expand_stmt): Handle a TRY_BLOCK with CLEANUP_P set.  Handle
	SUBOBJECT.
	* tree.c (search_tree): Handle INIT_EXPR.
	(mapcar): Likewise.
	* typeck.c (build_modify_expr): Don't build an RTL_EXPR.
	* typeck2.c (store_init_value): Change expand_aggr_init to
	build_aggr_init in comment.

From-SVN: r28878
1999-08-25 22:07:18 +00:00
boehm-gc gc_priv.h: Merged IRIX thread changes from include/private/gc_priv.h. 1999-08-17 22:46:02 +00:00
config
contrib gcc_update: New file. 1999-08-16 16:49:21 +00:00
etc
gcc cp-tree.def (SUBOBJECT): New tree node. 1999-08-25 22:07:18 +00:00
include
INSTALL More mail address and web address updates. 1999-08-09 00:48:10 -06:00
libchill Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix, libdir, libsubdir and tooldir. 1999-08-06 23:37:16 -06:00
libf2c Daily bump. 1999-08-25 01:45:11 -06:00
libffi Makefile.in: Rebuilt. 1999-08-10 05:29:27 +00:00
libiberty Warning fixes: 1999-08-25 13:29:34 +00:00
libio streambuf.h (ios::streamsize): Declare as _IO_ssize_t, as in the global scope. 1999-08-09 00:07:09 +00:00
libjava G19990304_01.out: New file. 1999-08-25 18:38:58 +00:00
libobjc Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix, libdir, libsubdir and tooldir. 1999-08-06 23:37:16 -06:00
libstdc++ * configure.in: Alphabetize selection of .ml fragments. 1999-08-25 01:33:08 -06:00
texinfo
zlib Makefile.in: Rebuilt. 1999-08-10 05:30:10 +00:00
.cvsignore
ChangeLog Do not configure or build ld for AIX native systems. 1999-08-25 10:12:07 +00:00
config-ml.in config-ml.in: Pass compiler flag corresponding to multidirs to subdir configures. 1999-08-25 01:14:07 -06:00
config.guess
config.if
config.sub * config.sub (vxworks case): Use os=-vxworks, not os=vxworks. 1999-08-04 02:07:57 -06:00
configure
configure.in Do not configure or build ld for AIX native systems. 1999-08-25 10:12:07 +00:00
COPYING
COPYING.LIB
install-sh
ltconfig
ltmain.sh
MAINTAINERS make me the mips maintainer, fix my name 1999-08-16 21:43:19 +00:00
Makefile.in
missing
mkinstalldirs
move-if-change
README
symlink-tree
ylwrap

		   README for GNU development tools

This directory contains various GNU compilers, assemblers, linkers, 
debuggers, etc., plus their support routines, definitions, and documentation.


Check the INSTALL directory for detailed configuration and installation
instructions.


Much of the code and documentation enclosed is copyright by
the Free Software Foundation, Inc.  See the file COPYING or
COPYING.LIB in the various directories, for a description of the
GNU General Public License terms under which you can copy the files.

REPORTING BUGS: Again, see gdb/README, binutils/README, etc., for info
on where and how to report problems.