diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-11-23 08:08:47 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-11-23 08:08:47 +0000 |
commit | 0d65cc6c6ef215b50ebd5301fec4294cb077c7c8 (patch) | |
tree | ad134efbf24d7e4a890b64a180a763b6ff99b23b /gcc/c-family/c-pragma.c | |
parent | b2aa1313204348df27492fa2e22df7a4b1b260de (diff) | |
download | gcc-0d65cc6c6ef215b50ebd5301fec4294cb077c7c8.tar.gz |
PR target/78451
* c-pragma.c (handle_pragma_target): Don't replace
current_target_pragma, but chainon the new args to the current one.
* gcc.target/i386/pr78451.c: New test.
* gcc.target/i386/pr69255-1.c: Use #pragma GCC push_options
and #pragma GCC pop_options around the first #pragma GCC target.
* gcc.target/i386/pr69255-2.c: Likewise.
* gcc.target/i386/pr69255-3.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@242740 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-family/c-pragma.c')
-rw-r--r-- | gcc/c-family/c-pragma.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/c-family/c-pragma.c b/gcc/c-family/c-pragma.c index 58ef5c9c80b..2ecacb8d57b 100644 --- a/gcc/c-family/c-pragma.c +++ b/gcc/c-family/c-pragma.c @@ -893,7 +893,7 @@ handle_pragma_target(cpp_reader *ARG_UNUSED(dummy)) args = nreverse (args); if (targetm.target_option.pragma_parse (args, NULL_TREE)) - current_target_pragma = args; + current_target_pragma = chainon (current_target_pragma, args); } } |