From 9e4cc72218d010fc89002ddc474350689b6f3d69 Mon Sep 17 00:00:00 2001 From: Mark Mitchell Date: Thu, 10 Feb 2000 09:07:59 +0000 Subject: [PATCH] ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be used to create an implicit temporary. * ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be used to create an implicit temporary. From-SVN: r31888 --- gcc/cp/ChangeLog | 3 +++ gcc/cp/ir.texi | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index bd471d28eb5..710b9d8f500 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,8 @@ 2000-02-10 Mark Mitchell + * ir.texi (ADDR_EXPR): Document the fact that an ADDR_EXPR can be + used to create an implicit temporary. + * class.c (dfs_modify_vtables): Tweak calculation of functions to override. diff --git a/gcc/cp/ir.texi b/gcc/cp/ir.texi index f3b50396aae..97aa51a7234 100644 --- a/gcc/cp/ir.texi +++ b/gcc/cp/ir.texi @@ -31,7 +31,7 @@ This manual documents the internal representation used by G++ to represent C++ source programs. -Copyright (c) 1999 Free Software Foundation, Inc. +Copyright (c) 1999, 2000 Free Software Foundation, Inc. @end ifinfo @c --------------------------------------------------------------------- @@ -43,7 +43,7 @@ Copyright (c) 1999 Free Software Foundation, Inc. @author CodeSourcery, LLC @page @vskip 0pt plus 1filll -Copyright @copyright{} 1999 Free Software Foundation, Inc. +Copyright @copyright{} 1999, 2000 Free Software Foundation, Inc. @end titlepage @c --------------------------------------------------------------------- @@ -1655,6 +1655,9 @@ As an extension, G++ allows users to take the address of a label. In this case, the operand of the @code{ADDR_EXPR} will be a @code{LABEL_DECL}. The type of such an expression is @code{void*}. +If the object addressed is not an lvalue, a temporary is created, and +the address of the temporary is used. + @item INDIRECT_REF These nodes are used to represent the object pointed to by a pointer. The operand is the pointer being dereferenced; it will always have -- 2.30.2