aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-common.c
diff options
context:
space:
mode:
authorJason Merrill <merrill@gnu.org>1996-05-06 18:36:48 +0000
committerJason Merrill <merrill@gnu.org>1996-05-06 18:36:48 +0000
commit2786cbadc7943950874df60f65da3f6a081162d9 (patch)
treebe78d9090c203f4f4af7523158cd4c1fe16087a4 /gcc/c-common.c
parent7b8b9722a4c9b7789d3d1bfcc12f23d49eb0b1bf (diff)
downloadgcc-2786cbadc7943950874df60f65da3f6a081162d9.zip
gcc-2786cbadc7943950874df60f65da3f6a081162d9.tar.gz
gcc-2786cbadc7943950874df60f65da3f6a081162d9.tar.bz2
-fno-common change
From-SVN: r11940
Diffstat (limited to 'gcc/c-common.c')
-rw-r--r--gcc/c-common.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/c-common.c b/gcc/c-common.c
index eb6ccaf..3c9018a 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -37,7 +37,7 @@ Boston, MA 02111-1307, USA. */
extern struct obstack permanent_obstack;
-enum attrs {A_PACKED, A_NOCOMMON, A_NORETURN, A_CONST, A_T_UNION,
+enum attrs {A_PACKED, A_NOCOMMON, A_COMMON, A_NORETURN, A_CONST, A_T_UNION,
A_CONSTRUCTOR, A_DESTRUCTOR, A_MODE, A_SECTION, A_ALIGNED,
A_UNUSED, A_FORMAT, A_WEAK, A_ALIAS};
@@ -263,6 +263,7 @@ init_attributes ()
{
add_attribute (A_PACKED, "packed", 0, 0, 0);
add_attribute (A_NOCOMMON, "nocommon", 0, 0, 1);
+ add_attribute (A_COMMON, "common", 0, 0, 1);
add_attribute (A_NORETURN, "noreturn", 0, 0, 1);
add_attribute (A_NORETURN, "volatile", 0, 0, 1);
add_attribute (A_UNUSED, "unused", 0, 0, 1);
@@ -358,6 +359,13 @@ decl_attributes (node, attributes, prefix_attributes)
warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
break;
+ case A_COMMON:
+ if (TREE_CODE (decl) == VAR_DECL)
+ DECL_COMMON (decl) = 1;
+ else
+ warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+ break;
+
case A_NORETURN:
if (TREE_CODE (decl) == FUNCTION_DECL)
TREE_THIS_VOLATILE (decl) = 1;