(staticp, case FUNCTION_DECL): A nested function isn't static.
authorRichard Kenner <kenner@gcc.gnu.org>
Tue, 14 Jun 1994 21:44:58 +0000 (17:44 -0400)
committerRichard Kenner <kenner@gcc.gnu.org>
Tue, 14 Jun 1994 21:44:58 +0000 (17:44 -0400)
From-SVN: r7466

gcc/tree.c

index 6e15640..1839b31 100644 (file)
@@ -1903,8 +1903,13 @@ staticp (arg)
 {
   switch (TREE_CODE (arg))
     {
-    case VAR_DECL:
     case FUNCTION_DECL:
+      /* Nested functions aren't static.  Since taking their address
+        involves a trampoline.  */
+      if (decl_function_context (arg) != 0)
+       return 0;
+      /* ... fall through ... */
+    case VAR_DECL:
       return TREE_STATIC (arg) || DECL_EXTERNAL (arg);
 
     case CONSTRUCTOR: