From 1598f4da785010db4282a0f502eb2bfc5a9839e1 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Sun, 24 Dec 1995 18:15:12 -0500 Subject: [PATCH] (mark_addressable, case COMPONENT_REF): Give error if taking address of a bit field. From-SVN: r10858 --- gcc/c-typeck.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index d76e724..d8e4ff1 100644 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -3292,8 +3292,15 @@ mark_addressable (exp) while (1) switch (TREE_CODE (x)) { - case ADDR_EXPR: case COMPONENT_REF: + if (DECL_C_BIT_FIELD (TREE_OPERAND (x, 1))) + error ("cannot take address of bitfield `%s'", + IDENTIFIER_POINTER (DECL_NAME (TREE_OPERAND (x, 1)))); + return 0; + + /* ... fall through ... */ + + case ADDR_EXPR: case ARRAY_REF: case REALPART_EXPR: case IMAGPART_EXPR: -- 2.7.4