]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/cp/pt.c
cp-tree.def (FUNCTION_NAME): New tree node.
authorMark Mitchell <mark@codesourcery.com>
Tue, 23 Nov 1999 02:49:41 +0000 (02:49 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Tue, 23 Nov 1999 02:49:41 +0000 (02:49 +0000)
commitf981720185940a12e9d4bd8f1000602a2ca07d05
tree226ba8a834310f6b3389722c4c998ad288f65546
parenta96c67ec898a25a760997e6b51b4f5832f671fa1
cp-tree.def (FUNCTION_NAME): New tree node.

* cp-tree.def (FUNCTION_NAME): New tree node.
* cp-tree.h (current_function_name_declared): Tweak documentation.
(lang_decl_flags): Add pretty_function_p, adjust dummy.
(DECL_PRETTY_FUNCTION_P): New macro.
* decl.c (cp_finish_decl): Handle declarations of __FUNCTION__,
etc., in a template function.  Use at_function_scope_p instead of
expanding it inline.
* pt.c (tsubst_decl): Handle DECL_PRETTY_FUNCTION_P declarations
specially.
(tsubst): Handle FUNCTION_NAME.
(tsubst_copy): Likewise.
(instantiate_decl): Prevent redeclarations of __PRETTY_FUNCTION__,
etc. in instantiation.
* semantics.c (begin_compound_stmt): Declare __FUNCTION__, etc.,
even in template functions.
(setup_vtbl_ptr): Don't declare __PRETTY_FUNCTION in the
conditional scope at the top of a destructor.

* error.c (dump_function_decl): Use `[ with ... ]' syntax for
specializations too.

From-SVN: r30625
gcc/cp/ChangeLog
gcc/cp/cp-tree.def
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/error.c
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/testsuite/g++.old-deja/g++.ext/pretty2.C
gcc/testsuite/g++.old-deja/g++.ext/pretty3.C
gcc/testsuite/g++.old-deja/g++.pt/memtemp77.C