summaryrefslogtreecommitdiff
path: root/gcc/c-parser.c
diff options
context:
space:
mode:
authorgingold <gingold@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-15 08:47:20 +0000
committergingold <gingold@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-15 08:47:20 +0000
commitdd8e886865b9e2aa4e2fcb9a3fc446587c2d0f7c (patch)
tree4a9d507412cd6edd789f0d09c272188d04954f20 /gcc/c-parser.c
parent3b8208fd6c1f4b25a42a853467b7ba164c74acf4 (diff)
downloadgcc-dd8e886865b9e2aa4e2fcb9a3fc446587c2d0f7c.tar.gz
2012-03-15 Tristan Gingold <gingold@adacore.com>
* c-parser.c (c_parser_parameter_declaration): Handle #pragma before a parameter. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185413 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-parser.c')
-rw-r--r--gcc/c-parser.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/c-parser.c b/gcc/c-parser.c
index 56134c24e50..0d6f7a43056 100644
--- a/gcc/c-parser.c
+++ b/gcc/c-parser.c
@@ -3305,6 +3305,11 @@ c_parser_parameter_declaration (c_parser *parser, tree attrs)
tree prefix_attrs;
tree postfix_attrs = NULL_TREE;
bool dummy = false;
+
+ /* Accept #pragmas between parameter declarations. */
+ while (c_parser_next_token_is (parser, CPP_PRAGMA))
+ c_parser_pragma (parser, pragma_external);
+
if (!c_parser_next_token_starts_declspecs (parser))
{
c_token *token = c_parser_peek_token (parser);