This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
egcs/gcc cp/ChangeLog cp/cp-tree.def cp/cp-tre ...
- To: gcc-cvs at gcc dot gnu dot org
- Subject: egcs/gcc cp/ChangeLog cp/cp-tree.def cp/cp-tre ...
- From: mmitchel at gcc dot gnu dot org
- Date: 5 Dec 1999 00:49:27 -0000
CVSROOT: /cvs/gcc
Module name: egcs
Changes by: mmitchel@sourceware.cygnus.com 99/12/04 16:49:27
Modified files:
gcc/cp : ChangeLog cp-tree.def cp-tree.h decl.c ir.texi
semantics.c tree.c
Added files:
gcc/testsuite/g++.old-deja/g++.other: goto2.C
Log message:
* cp-tree.def (SCOPE_STMT): Take one operand.
* cp-tree.h (SCOPE_STMT_BLOCK): New macro.
(SCOPE_NULLIFIED_P): Redefine.
(SCOPE_NO_CLEANUPS_P): New macro.
(add_scope_stmt): Change prototype.
* decl.c (poplevel): Tidy. Warn about unused variables here.
Record SCOPE_STMT_BLOCKs.
(finish_function): Keep DECL_INITIAL for functions that might be
inlined.
* ir.texi: Document SCOPE_NO_CLEANUPS_P.
* semantics.c: Include rtl.h.
(add_scope_stmt): Return the new scope statement and, for an
end-of-scope statement, its matching begin statement. Don't set
SCOPE_NULLIFIED_P.
(do_pushlevel): Simplify, now that we are always
function-at-a-time.
(do_poplevel): Likewise. Record SCOPE_STMT_BLOCKs.
(expand_stmt): Don't call expand_start_bindings or
expand_end_bindings for a scope with SCOPE_NO_CLEANUPS_P set.
* tree.c (copy_tree_r): Clear SCOPE_STMT_BLOCK rather than setting
SCOPE_NULLIFIED_P.