blob: 3f625389e774753be8ea990205cf26ef9df320c5 [file] [log] [blame]
-----------------------------------------------------------------------------------
-- Copyright (c) 2009 IBM Corporation and others.
-- This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License 2.0
-- which accompanies this distribution, and is available at
-- https://www.eclipse.org/legal/epl-2.0/
--
-- SPDX-License-Identifier: EPL-2.0
--
-- Contributors:
-- IBM Corporation - initial API and implementation
-----------------------------------------------------------------------------------
%options la=2
%options package=org.eclipse.cdt.internal.core.lrparser.xlc.c
%options template=LRParserTemplate.g
$Import
GCCGrammar.g
$End
$Import
XlcGrammarExtensions.g
$End
$Globals
/.
import org.eclipse.cdt.core.lrparser.xlc.action.XlcCBuildASTParserAction;
import org.eclipse.cdt.core.dom.lrparser.action.gnu.GCCSecondaryParserFactory;
import org.eclipse.cdt.internal.core.lrparser.xlc.ast.XlcCNodeFactory;
./
$End
$Define
$build_action_class /. XlcCBuildASTParserAction ./
$parser_factory_create_expression /. GCCSecondaryParserFactory.getDefault() ./
$node_factory_create_expression /. XlcCNodeFactory.getDefault() ./
$End
$Start
translation_unit
$End
$Rules
declaration
::= vector_declaration
identifier_token
::= 'pixel'
| 'vector'
| 'bool'
declarator_id_name
::= 'pixel'
/. $Build consumeIdentifierName(); $EndBuild ./
| 'vector'
/. $Build consumeIdentifierName(); $EndBuild ./
| 'bool'
/. $Build consumeIdentifierName(); $EndBuild ./
$End