changeset 9:ddf292032e7d

add fastcall.
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Wed, 26 Aug 2009 15:11:42 +0900
parents 5066dc73ff8f
children 26e357f6275f
files gcc/c-parser.c
diffstat 1 files changed, 19 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/gcc/c-parser.c	Thu Aug 20 19:10:35 2009 +0900
+++ b/gcc/c-parser.c	Wed Aug 26 15:11:42 2009 +0900
@@ -1524,9 +1524,6 @@
 	case RID_FRACT:
 	case RID_ACCUM:
 	case RID_SAT:
-#ifndef noCbC
-	case RID_CbC_CODE:
-#endif
 	  if (!typespec_ok)
 	    goto out;
 	  attrs_ok = true;
@@ -1538,6 +1535,25 @@
 	  declspecs_add_type (specs, t);
 	  c_parser_consume_token (parser);
 	  break;
+#ifndef noCbC
+	case RID_CbC_CODE:
+	  if (!typespec_ok)
+	    goto out;
+	  attrs_ok = true;
+	  seen_type = true;
+	  if (c_dialect_objc ())
+	    parser->objc_need_raw_identifier = true;
+	  t.kind = ctsk_resword;
+	  t.spec = c_parser_peek_token (parser)->value;
+	  declspecs_add_type (specs, t);
+
+	  attrs = get_identifier("fastcall");
+	  attrs = build_tree_list(attrs, NULL_TREE);
+	  declspecs_add_attrs(specs, attrs);
+
+	  c_parser_consume_token (parser);
+	  break;
+#endif
 	case RID_ENUM:
 	  if (!typespec_ok)
 	    goto out;