aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2008-05-25 22:42:49 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2008-05-25 22:42:49 +0000
commit3651f7ad941bc7dd797d5e5948c9922da0fb6f8c (patch)
tree1a3f8d2557f13dd05aa93e2ca0e800b6a5a115c6 /gcc/ada
parentb885a4c1e2ba31aacad53184599c8ae2fc1147e6 (diff)
downloadgcc-3651f7ad941bc7dd797d5e5948c9922da0fb6f8c.zip
gcc-3651f7ad941bc7dd797d5e5948c9922da0fb6f8c.tar.gz
gcc-3651f7ad941bc7dd797d5e5948c9922da0fb6f8c.tar.bz2
tree-nested.c (convert_tramp_reference): Do not build a trampoline if we don't want one.
* tree-nested.c (convert_tramp_reference) <ADDR_EXPR>: Do not build a trampoline if we don't want one. * varasm.c (initializer_constant_valid_p) <ADDR_EXPR>: Do not return zero for nested functions if we don't want a trampoline. ada/ * trans.c (Attribute_to_gnu) <Code_Address>: Set TREE_NO_TRAMPOLINE instead of TREE_STATIC on the ADDR_EXPR. From-SVN: r135884
Diffstat (limited to 'gcc/ada')
-rw-r--r--gcc/ada/ChangeLog5
-rw-r--r--gcc/ada/trans.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index f7305e8..c2ffb5e 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,8 @@
+2008-05-25 Eric Botcazou <ebotcazou@adacore.com>
+
+ * trans.c (Attribute_to_gnu) <Code_Address>: Set TREE_NO_TRAMPOLINE
+ instead of TREE_STATIC on the ADDR_EXPR.
+
2008-05-24 Eric Botcazou <ebotcazou@adacore.com>
* trans.c (gnat_to_gnu): Do not set source location info on NOP_EXPRs.
diff --git a/gcc/ada/trans.c b/gcc/ada/trans.c
index 5f579e7..717c14b 100644
--- a/gcc/ada/trans.c
+++ b/gcc/ada/trans.c
@@ -920,7 +920,7 @@ Attribute_to_gnu (Node_Id gnat_node, tree *gnu_result_type_p, int attribute)
TREE_CONSTANT (gnu_expr) = 1;
if (TREE_CODE (gnu_expr) == ADDR_EXPR)
- TREE_STATIC (gnu_expr) = TREE_CONSTANT (gnu_expr) = 1;
+ TREE_NO_TRAMPOLINE (gnu_expr) = TREE_CONSTANT (gnu_expr) = 1;
}
/* For other address attributes applied to a nested function,