From 3bc6a13bb6b227b0a58b0662fc527e1d73d1bfff Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Wed, 29 Sep 1999 20:07:56 +0000 Subject: [PATCH] dump.c (dequeue_and_dump): Dump DECL_EXTERNAL. * dump.c (dequeue_and_dump): Dump DECL_EXTERNAL. * ir.texi: Document DECL_EXTERNAL. From-SVN: r29710 --- gcc/cp/ChangeLog | 3 +++ gcc/cp/dump.c | 2 ++ gcc/cp/ir.texi | 8 +++++--- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 7a70093..dc46c74 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 1999-09-29 Mark Mitchell + * dump.c (dequeue_and_dump): Dump DECL_EXTERNAL. + * ir.texi: Document DECL_EXTERNAL. + * dump.c (dequeue_and_dump): Improve support for dumping THUNK_DECLs. * ir.texi: Document THUNK_DECLs. diff --git a/gcc/cp/dump.c b/gcc/cp/dump.c index 845a467..747e28d 100644 --- a/gcc/cp/dump.c +++ b/gcc/cp/dump.c @@ -607,6 +607,8 @@ dequeue_and_dump (di) dump_child ("mngl", DECL_ASSEMBLER_NAME (t)); dump_child ("args", DECL_ARGUMENTS (t)); } + if (DECL_EXTERNAL (t)) + dump_string (di, "undefined"); if (TREE_PUBLIC (t)) dump_string(di, "extern"); else diff --git a/gcc/cp/ir.texi b/gcc/cp/ir.texi index a198fc9..f85c657 100644 --- a/gcc/cp/ir.texi +++ b/gcc/cp/ir.texi @@ -739,6 +739,7 @@ FIXME: Talk about @code{TYPE_NONCOPIED_PARTS}. @findex DECL_INITIAL @findex DECL_SIZE @findex DECL_ALIGN +@findex DECL_EXTERNAL This chapter covers the various kinds of declarations that appear in the internal representation, except for declarations of functions @@ -864,7 +865,7 @@ then jumps to another function. When the jumped-to function returns, control is transferred directly to the caller, without returning to the thunk. The first parameter to the thunk is always the @code{this} pointer; the thunk should add @code{THUNK_DELTA} to this value. (The -@code{THUNK_DECL} is an @code{int}, not an @code{INTEGER_CST}.) Then, +@code{THUNK_DELTA} is an @code{int}, not an @code{INTEGER_CST}.) Then, the thunk should jump to the location given by @code{DECL_INITIAL}; this will always be an expression for the address of a function. @@ -970,6 +971,9 @@ platform, it is the responsibility of the back-end to perform those modifications. (Of course, the back-end should not modify @code{DECL_ASSEMBLER_NAME} itself.) +@item DECL_EXTERNAL +This predicate holds if the function is undefined. + @item TREE_PUBLIC This predicate holds if the function has external linkage. @@ -1023,8 +1027,6 @@ the function. @end ftable -FIXME: Explain about constructor try-catch blocks. - @c --------------------------------------------------------------------- @c Function Bodies @c --------------------------------------------------------------------- -- 2.7.4