Make sure FUNDECL is non-nil before we try to use it.
authorStan Cox <coxs@gnu.org>
Tue, 4 Mar 1997 21:43:13 +0000 (21:43 +0000)
committerStan Cox <coxs@gnu.org>
Tue, 4 Mar 1997 21:43:13 +0000 (21:43 +0000)
From-SVN: r13689

gcc/config/i386/i386.c
gcc/config/i386/isc.h
gcc/config/i386/next.h
gcc/config/i386/sco.h
gcc/config/i386/sco5.h
gcc/config/i386/scodbx.h

index 85b422fdc227625aef9693f649751e7cabd8a28e..ff48a3d7a4fb2519db854120160275f4e812dc22 100644 (file)
@@ -579,7 +579,7 @@ i386_return_pops_args (fundecl, funtype, size)
      tree funtype;
      int size;
 { 
-  int rtd = TARGET_RTD && TREE_CODE (fundecl) != IDENTIFIER_NODE;
+  int rtd = TARGET_RTD && (!fundecl || TREE_CODE (fundecl) != IDENTIFIER_NODE);
 
     /* Cdecl functions override -mrtd, and never pop the stack */
   if (!lookup_attribute ("cdecl", TYPE_ATTRIBUTES (funtype))) {
index 24569e1daba323901118b365b6d4341bf8d05a07..c0a51508abd380b91aa3bd069033917f649a16cb 100644 (file)
@@ -37,7 +37,7 @@
 
 #undef RETURN_POPS_ARGS
 #define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE)   \
-  (TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0                  \
+  ((FUNDECL) && TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0     \
    : (TARGET_RTD                                               \
       && (TYPE_ARG_TYPES (FUNTYPE) == 0                                \
          || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \
index 62c8dd6f25bfef0e86a49cb9c24b7bff20c1b476..8dd46f5cd41f5f5986a31121af5e5385ca1a67df 100644 (file)
@@ -216,7 +216,7 @@ Boston, MA 02111-1307, USA.  */
 
 #undef RETURN_POPS_ARGS
 #define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE)                                 \
-  (TREE_CODE (FUNDECL) == IDENTIFIER_NODE                      \
+  ((FUNDECL) && TREE_CODE (FUNDECL) == IDENTIFIER_NODE         \
    ? 0                                                         \
    : (TARGET_RTD                                               \
       && (TYPE_ARG_TYPES (FUNTYPE) == 0                                \
index 8676889f9448f9a61d91d4745ed631dc17632ead..9c94a766a837e5b86f4548f9d9fe05bcb6df0c39 100644 (file)
@@ -104,7 +104,7 @@ Boston, MA 02111-1307, USA.  */
 
 #undef RETURN_POPS_ARGS
 #define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE)   \
-  (TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0                  \
+  ((FUNDECL) && TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0     \
    : (TARGET_RTD                                               \
       && (TYPE_ARG_TYPES (FUNTYPE) == 0                                \
          || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \
index d6fc7d4e923b533472511137b3b720e0d1ebe274..d156cab601e6956dd58721211a9426968badf53c 100644 (file)
@@ -668,7 +668,7 @@ dtors_section ()                                                    \
 #define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE)                                 \
  ((TARGET_ELF) ?                                                       \
   (i386_return_pops_args (FUNDECL, FUNTYPE, SIZE)) :                   \
-  (TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0                          \
+  (((FUNDECL) && (TREE_CODE (FUNDECL) == IDENTIFIER_NODE)) ? 0         \
    : (TARGET_RTD                                                       \
       && (TYPE_ARG_TYPES (FUNTYPE) == 0                                        \
          || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE)))         \
index 3a7a1984c203420cb6d84bc37a03a182dfb657e1..a2581d4257f10bb6823c839de6681cdc0e205932 100644 (file)
@@ -75,7 +75,7 @@ Boston, MA 02111-1307, USA.  */
 
 #undef RETURN_POPS_ARGS
 #define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE)   \
-  (TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0                  \
+  ((FUNDECL) && TREE_CODE (FUNDECL) == IDENTIFIER_NODE ? 0     \
    : (TARGET_RTD                                               \
       && (TYPE_ARG_TYPES (FUNTYPE) == 0                                \
          || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \