This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
egcs/gcc/cp cp-tree.h decl.c semantics.c typec ...
- To: egcs-cvs at egcs dot cygnus dot com
- Subject: egcs/gcc/cp cp-tree.h decl.c semantics.c typec ...
- From: mmitchel at egcs dot cygnus dot com
- Date: 25 Sep 1999 18:10:07 -0000
CVSROOT: /egcs/carton/cvsfiles
Module name: egcs
Changes by: mmitchel@egcs.cygnus.com 99/09/25 11:10:06
Modified files:
gcc/cp : cp-tree.h decl.c semantics.c typeck.c ChangeLog
Log message:
* cp-tree.h (check_return_expr): New function.
* decl.c (finish_constructor_body): New function.
(pushdecl): Put global friend functions in namespace binding
level, not the class binding level.
(finish_destructor_body): Make sure the dtor_label is always
defined. Fix typo in comment.
(finish_function): Move generation of constructor-termination code
to semantic-analysis time. Move generation of implicit `main'
return value to semantic-analysis time.
* semantics.c (finish_return_stmt): Generate goto's to
ctor_label/dtor_label here. Use check_return_expr to do semantic
analysis on the returned expression.
* typeck.c (maybe_warn_about_returning_address_of_local): New
function split out from c_expand_return.
(check_return_expr): Likewise.
(c_expand_return): Just generate the RTL for the return.