Permalink
Find file
Fetching contributors…
Cannot retrieve contributors at this time
3 lines (2 sloc) 46.3 KB
<?xml version="1.0" encoding="UTF-8"?>
<bgf:grammar xmlns:bgf="http://planet-sl.org/bgf"><bgf:production><nonterminal>StructDeclarator</nonterminal><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>StructDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><optional><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>PrototypeParameter</nonterminal><bgf:expression><sequence><bgf:expression><star><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>StructDecl</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>struct</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>StructDeclaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Union</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>union</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Int</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>int</terminal></bgf:expression></bgf:production><bgf:production><label>Void</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>void</terminal></bgf:expression></bgf:production><bgf:production><label>StructAnonDecl</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>struct</terminal></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>StructDeclaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Short</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>short</terminal></bgf:expression></bgf:production><bgf:production><label>Identifier</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></bgf:production><bgf:production><label>EnumDecl</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>enum</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><seplistplus><bgf:expression><nonterminal>Enumerator</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>signed</terminal></bgf:expression></bgf:production><bgf:production><label>UnionDecl</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>union</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>StructDeclaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>UnionAnonDecl</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>union</terminal></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>StructDeclaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Enum</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>enum</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Struct</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>struct</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>unsigned</terminal></bgf:expression></bgf:production><bgf:production><label>Long</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>long</terminal></bgf:expression></bgf:production><bgf:production><label>Double</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>double</terminal></bgf:expression></bgf:production><bgf:production><label>Float</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>float</terminal></bgf:expression></bgf:production><bgf:production><label>EnumAnonDecl</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><sequence><bgf:expression><terminal>enum</terminal></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><seplistplus><bgf:expression><nonterminal>Enumerator</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Char</label><nonterminal>TypeSpecifier</nonterminal><bgf:expression><terminal>char</terminal></bgf:expression></bgf:production><bgf:production><label>StructDeclWithoutDecl</label><nonterminal>StructDeclaration</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><plus><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></plus></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>StructDeclWithDecl</label><nonterminal>StructDeclaration</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><plus><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></plus></bgf:expression></selectable></bgf:expression><bgf:expression><seplistplus><bgf:expression><nonterminal>StructDeclarator</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>TypeName</nonterminal><bgf:expression><sequence><bgf:expression><plus><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></plus></bgf:expression><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Initializer</nonterminal><bgf:expression><sequence><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><seplistplus><bgf:expression><nonterminal>Initializer</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression><bgf:expression><optional><bgf:expression><terminal>,</terminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Initializer</nonterminal><bgf:expression><nonterminal>NonCommaExpression</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>InitDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>=</terminal></bgf:expression><bgf:expression><nonterminal>Initializer</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>decl</label><nonterminal>InitDeclarator</nonterminal><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>default</terminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>switch</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>return</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>for</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></optional></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>case</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>continue</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><terminal>;</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>goto</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>do</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression><bgf:expression><terminal>while</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>Declaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>while</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>break</terminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>if</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>if</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression><bgf:expression><terminal>else</terminal></bgf:expression><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Statement</nonterminal><bgf:expression><sequence><bgf:expression><terminal>return</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>ExternalDeclaration</nonterminal><bgf:expression><nonterminal>FunctionPrototype</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>ExternalDeclaration</nonterminal><bgf:expression><nonterminal>FunctionDefinition</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>ExternalDeclaration</nonterminal><bgf:expression><nonterminal>GlobalDeclaration</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>PrototypeParameters</nonterminal><bgf:expression><terminal>void</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>PrototypeParameters</nonterminal><bgf:expression><sequence><bgf:expression><seplistplus><bgf:expression><nonterminal>PrototypeParameter</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>MoreParameters</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Parameters</nonterminal><bgf:expression><sequence><bgf:expression><seplistplus><bgf:expression><nonterminal>Parameter</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression><bgf:expression><optional><bgf:expression><nonterminal>MoreParameters</nonterminal></bgf:expression></optional></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Parameters</nonterminal><bgf:expression><terminal>void</terminal></bgf:expression></bgf:production><bgf:production><label>DefaultFunctionPrototype</label><nonterminal>FunctionPrototype</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><star><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>PrototypeDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Parameter</nonterminal><bgf:expression><sequence><bgf:expression><star><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>AnonymousIdentifier</nonterminal><bgf:expression><epsilon /></bgf:expression></bgf:production><bgf:production><label>FunctionDeclarator</label><nonterminal>PrototypeDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>PrototypeDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><selectable><selector>params</selector><bgf:expression><optional><bgf:expression><nonterminal>PrototypeParameters</nonterminal></bgf:expression></optional></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Identifier</label><nonterminal>PrototypeDeclarator</nonterminal><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></bgf:production><bgf:production><label>Bracket</label><nonterminal>PrototypeDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>ArrayDeclarator</label><nonterminal>PrototypeDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>PrototypeDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>[</terminal></bgf:expression><bgf:expression><selectable><selector>exp</selector><bgf:expression><optional><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></optional></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>]</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>PointerDeclarator</label><nonterminal>PrototypeDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>*</terminal></bgf:expression><bgf:expression><selectable><selector>qualifiers</selector><bgf:expression><star><bgf:expression><nonterminal>TypeQualifier</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>PrototypeDeclarator</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Identifier</label><nonterminal>AbstractDeclarator</nonterminal><bgf:expression><nonterminal>AnonymousIdentifier</nonterminal></bgf:expression></bgf:production><bgf:production><label>ArrayDeclarator</label><nonterminal>AbstractDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>[</terminal></bgf:expression><bgf:expression><selectable><selector>exp</selector><bgf:expression><optional><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></optional></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>]</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Bracket</label><nonterminal>AbstractDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>FunctionDeclarator</label><nonterminal>AbstractDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><selectable><selector>params</selector><bgf:expression><optional><bgf:expression><nonterminal>Parameters</nonterminal></bgf:expression></optional></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>PointerDeclarator</label><nonterminal>AbstractDeclarator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>*</terminal></bgf:expression><bgf:expression><selectable><selector>qualifiers</selector><bgf:expression><star><bgf:expression><nonterminal>TypeQualifier</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>AbstractDeclarator</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>ArrayDeclarator</label><nonterminal>Declarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>[</terminal></bgf:expression><bgf:expression><selectable><selector>exp</selector><bgf:expression><optional><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></optional></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>]</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Identifier</label><nonterminal>Declarator</nonterminal><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></bgf:production><bgf:production><label>FunctionDeclarator</label><nonterminal>Declarator</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><selectable><selector>params</selector><bgf:expression><optional><bgf:expression><nonterminal>Parameters</nonterminal></bgf:expression></optional></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Bracket</label><nonterminal>Declarator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>PointerDeclarator</label><nonterminal>Declarator</nonterminal><bgf:expression><sequence><bgf:expression><terminal>*</terminal></bgf:expression><bgf:expression><selectable><selector>qualifiers</selector><bgf:expression><star><bgf:expression><nonterminal>TypeQualifier</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>decl</selector><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>StorageClass</label><nonterminal>Specifier</nonterminal><bgf:expression><nonterminal>StorageClass</nonterminal></bgf:expression></bgf:production><bgf:production><label>TypeQualifier</label><nonterminal>Specifier</nonterminal><bgf:expression><nonterminal>TypeQualifier</nonterminal></bgf:expression></bgf:production><bgf:production><label>TypeSpecifier</label><nonterminal>Specifier</nonterminal><bgf:expression><nonterminal>TypeSpecifier</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>StorageClass</nonterminal><bgf:expression><terminal>register</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>StorageClass</nonterminal><bgf:expression><terminal>static</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>StorageClass</nonterminal><bgf:expression><terminal>extern</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>StorageClass</nonterminal><bgf:expression><terminal>auto</terminal></bgf:expression></bgf:production><bgf:production><label>TypeDef</label><nonterminal>StorageClass</nonterminal><bgf:expression><terminal>typedef</terminal></bgf:expression></bgf:production><bgf:production><label>DeclarationWithoutInitDecls</label><nonterminal>Declaration</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><plus><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></plus></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>DeclarationWithInitDecls</label><nonterminal>Declaration</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><plus><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></plus></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>initDeclarators</selector><bgf:expression><seplistplus><bgf:expression><nonterminal>InitDeclarator</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Enumerator</nonterminal><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Enumerator</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression><bgf:expression><terminal>=</terminal></bgf:expression><bgf:expression><nonterminal>NonCommaExpression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>NonCommaExpression</label><nonterminal>NonCommaExpression</nonterminal><bgf:expression><selectable><selector>expr</selector><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></selectable></bgf:expression></bgf:production><bgf:production><label>DefaultFunctionDefinition</label><nonterminal>FunctionDefinition</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><star><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><nonterminal>Declarator</nonterminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>Declaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>{</terminal></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>Declaration</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><star><bgf:expression><nonterminal>Statement</nonterminal></bgf:expression></star></bgf:expression><bgf:expression><terminal>}</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>GlobalDeclarationWithoutInitDecls</label><nonterminal>GlobalDeclaration</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><plus><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></plus></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>GlobalDeclarationWithInitDecls</label><nonterminal>GlobalDeclaration</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>specs</selector><bgf:expression><star><bgf:expression><nonterminal>Specifier</nonterminal></bgf:expression></star></bgf:expression></selectable></bgf:expression><bgf:expression><selectable><selector>initDeclarators</selector><bgf:expression><seplistplus><bgf:expression><nonterminal>InitDeclarator</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></seplistplus></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>;</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>TranslationUnit</nonterminal><bgf:expression><plus><bgf:expression><nonterminal>ExternalDeclaration</nonterminal></bgf:expression></plus></bgf:expression></bgf:production><bgf:production><nonterminal>TypeQualifier</nonterminal><bgf:expression><terminal>const</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>TypeQualifier</nonterminal><bgf:expression><terminal>volatile</terminal></bgf:expression></bgf:production><bgf:production><nonterminal>MoreParameters</nonterminal><bgf:expression><sequence><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><terminal>...</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>CharacterConstant</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>--</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Variable</label><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>[</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>]</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>Bracket</label><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>sizeof</terminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>TypeName</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>++</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>FloatingPointConstant</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>.</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>StringConstant</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>IntegerConstant</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>HexadecimalConstant</nonterminal></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>-&gt;</terminal></bgf:expression><bgf:expression><nonterminal>Identifier</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><sepliststar><bgf:expression><nonterminal>NonCommaExpression</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression></sepliststar></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></bgf:production><bgf:production><label>SizeOfExpression</label><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>sizeof</terminal></bgf:expression><bgf:expression><selectable><selector>exp</selector><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>&amp;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>!</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>(</terminal></bgf:expression><bgf:expression><nonterminal>TypeName</nonterminal></bgf:expression><bgf:expression><terminal>)</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>*</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>+</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>-</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><terminal>~</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>MultiplicationExpression</label><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><selectable><selector>lexp</selector><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></selectable></bgf:expression><bgf:expression><terminal>*</terminal></bgf:expression><bgf:expression><selectable><selector>rexp</selector><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></selectable></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>/</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>%</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>+</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>-</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&gt;&gt;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&lt;&lt;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&lt;=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&gt;=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&gt;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&lt;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>==</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>!=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&amp;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>^</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>|</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&amp;&amp;</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>||</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>?</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>:</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>|=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&amp;=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>*=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>/=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>+=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&gt;&gt;=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>^=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>-=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>&lt;&lt;=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>%=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>=</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production><bgf:production><label>CommaExpression</label><nonterminal>Expression</nonterminal><bgf:expression><sequence><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression><bgf:expression><terminal>,</terminal></bgf:expression><bgf:expression><nonterminal>Expression</nonterminal></bgf:expression></sequence></bgf:expression></bgf:production></bgf:grammar>