浏览代码

Add all storage classes

pull/1/head
Max Brunsfeld 11 年前
父节点
当前提交
ae3a41b13f
共有 3 个文件被更改,包括 12000 次插入11650 次删除
  1. +4
    -2
      grammar.coffee
  2. +21
    -1
      grammar_test/declarations.txt
  3. +11975
    -11647
      src/parser.c

+ 4
- 2
grammar.coffee 查看文件

@ -174,9 +174,11 @@ module.exports =
enum_value: -> seq(
@identifier, optional(seq("=", @expression)))
storage_class: -> repeat(choice(
storage_class: -> choice(
keyword("extern"),
keyword("static"),
keyword("extern"))),
keyword("auto"),
keyword("register"))
field: -> seq(@type, @type_expression)

+ 21
- 1
grammar_test/declarations.txt 查看文件

@ -69,12 +69,32 @@ float d, e;
(program
(var_declaration (primitive_type (identifier)) (identifier))
(var_declaration (primitive_type (identifier))
(var_declaration
(primitive_type (identifier))
(identifier)
(var_assignment (identifier) (number))
(identifier))
(var_declaration (identifier) (identifier) (identifier)))
============================================
Variable storage classes
============================================
int a;
extern int b, c;
auto int d;
register int e;
static int f;
---
(program
(var_declaration (identifier) (identifier))
(var_declaration (storage_class) (identifier) (identifier) (identifier))
(var_declaration (storage_class) (identifier) (identifier))
(var_declaration (storage_class) (identifier) (identifier))
(var_declaration (storage_class) (identifier) (identifier)))
============================================
Composite-typed variable declarations
============================================

+ 11975
- 11647
src/parser.c
文件差异内容过多而无法显示
查看文件


正在加载...
取消
保存