aboutsummaryrefslogtreecommitdiff
path: root/gcc/c
diff options
context:
space:
mode:
authorGeorg-Johann Lay <avr@gjlay.de>2016-07-20 13:07:43 +0000
committerGeorg-Johann Lay <gjl@gcc.gnu.org>2016-07-20 13:07:43 +0000
commitffc2284012c94620bdbffb5276a264bd7fcf7d91 (patch)
tree3af01204ef4bbfc231cede2c4fc9c9162a5b05a7 /gcc/c
parent144530cf6352a55404e04bce3354e23d7c7c2d1d (diff)
downloadgcc-ffc2284012c94620bdbffb5276a264bd7fcf7d91.zip
gcc-ffc2284012c94620bdbffb5276a264bd7fcf7d91.tar.gz
gcc-ffc2284012c94620bdbffb5276a264bd7fcf7d91.tar.bz2
target.def (addr_space): Add new diagnose_usage to hook vector.
gcc/ * target.def (addr_space): Add new diagnose_usage to hook vector. * targhooks.c (default_addr_space_diagnose_usage): Add default implementation and... * targhooks.h (default_addr_space_diagnose_usage): ... its prototype. * c/c-parser.c (c_lex_one_token) [CPP_NAME]: If the token is some address space, call targetm.addr_space.diagnose_usage. * doc/tm.texi.in (Named Address Spaces): Add anchor for TARGET_ADDR_SPACE_DIAGNOSE_USAGE documentation. * doc/tm.texi: Regenerate. From-SVN: r238514
Diffstat (limited to 'gcc/c')
-rw-r--r--gcc/c/c-parser.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/c/c-parser.c b/gcc/c/c-parser.c
index ef585fb..45e32ba 100644
--- a/gcc/c/c-parser.c
+++ b/gcc/c/c-parser.c
@@ -301,6 +301,9 @@ c_lex_one_token (c_parser *parser, c_token *token)
else if (rid_code >= RID_FIRST_ADDR_SPACE
&& rid_code <= RID_LAST_ADDR_SPACE)
{
+ addr_space_t as;
+ as = (addr_space_t) (rid_code - RID_FIRST_ADDR_SPACE);
+ targetm.addr_space.diagnose_usage (as, token->location);
token->id_kind = C_ID_ADDRSPACE;
token->keyword = rid_code;
break;