亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? parser.y

?? cg編譯器
?? Y
?? 第 1 頁 / 共 3 頁
字號:
%{
/****************************************************************************\
Copyright (c) 2002, NVIDIA Corporation.

NVIDIA Corporation("NVIDIA") supplies this software to you in
consideration of your agreement to the following terms, and your use,
installation, modification or redistribution of this NVIDIA software
constitutes acceptance of these terms.  If you do not agree with these
terms, please do not use, install, modify or redistribute this NVIDIA
software.

In consideration of your agreement to abide by the following terms, and
subject to these terms, NVIDIA grants you a personal, non-exclusive
license, under NVIDIA's copyrights in this original NVIDIA software (the
"NVIDIA Software"), to use, reproduce, modify and redistribute the
NVIDIA Software, with or without modifications, in source and/or binary
forms; provided that if you redistribute the NVIDIA Software, you must
retain the copyright notice of NVIDIA, this notice and the following
text and disclaimers in all such redistributions of the NVIDIA Software.
Neither the name, trademarks, service marks nor logos of NVIDIA
Corporation may be used to endorse or promote products derived from the
NVIDIA Software without specific prior written permission from NVIDIA.
Except as expressly stated in this notice, no other rights or licenses
express or implied, are granted by NVIDIA herein, including but not
limited to any patent rights that may be infringed by your derivative
works or by other works in which the NVIDIA Software may be
incorporated. No hardware is licensed hereunder. 

THE NVIDIA SOFTWARE IS BEING PROVIDED ON AN "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED,
INCLUDING WITHOUT LIMITATION, WARRANTIES OR CONDITIONS OF TITLE,
NON-INFRINGEMENT, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR
ITS USE AND OPERATION EITHER ALONE OR IN COMBINATION WITH OTHER
PRODUCTS.

IN NO EVENT SHALL NVIDIA BE LIABLE FOR ANY SPECIAL, INDIRECT,
INCIDENTAL, EXEMPLARY, CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
TO, LOST PROFITS; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) OR ARISING IN ANY WAY
OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION OF THE
NVIDIA SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT,
TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF
NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
\****************************************************************************/

#include <stdio.h>
#include <stdlib.h>

#define NO_PARSER 1
#include "slglobals.h"

%}

/* Grammar semantic type: */

%union {
    int    sc_token;
    int    sc_int;
    float  sc_fval;
    int    sc_ident;
    spec   sc_specifiers;
    dtype  sc_type;
    Type   *sc_ptype;
    decl   *sc_decl;
    expr   *sc_expr;
    symb   *sc_symb;
    stmt   *sc_stmt;
    /* Dummy palce holder: */
    int    dummy;
}

%token <sc_token> AND_SY
%token <sc_token> ASM_SY
%token <sc_token> ASSIGNMINUS_SY
%token <sc_token> ASSIGNMOD_SY
%token <sc_token> ASSIGNPLUS_SY
%token <sc_token> ASSIGNSLASH_SY
%token <sc_token> ASSIGNSTAR_SY
%token <sc_token> BOOLEAN_SY
%token <sc_token> BREAK_SY
%token <sc_token> CASE_SY
%token <sc_fval>  CFLOATCONST_SY
%token <sc_token> COLONCOLON_SY
%token <sc_token> CONST_SY
%token <sc_token> CONTINUE_SY
%token <sc_token> DEFAULT_SY
%token <sc_token> DISCARD_SY
%token <sc_token> DO_SY
%token <sc_token> EQ_SY
%token <sc_token> ELSE_SY
%token <sc_token> ERROR_SY
%token <sc_token> EXTERN_SY
%token <sc_token> FLOAT_SY
%token <sc_fval>  FLOATCONST_SY
%token <sc_fval>  FLOATHCONST_SY
%token <sc_fval>  FLOATXCONST_SY
%token <sc_token> FOR_SY
%token <sc_token> GE_SY
%token <sc_token> GG_SY
%token <sc_token> GOTO_SY
%token <sc_ident> IDENT_SY
%token <sc_token> IF_SY
%token <sc_token> IN_SY
%token <sc_token> INLINE_SY
%token <sc_token> INOUT_SY
%token <sc_token> INT_SY
%token <sc_int>   INTCONST_SY
%token <sc_token> INTERNAL_SY
%token <sc_token> LE_SY
%token <sc_token> LL_SY
%token <sc_token> MINUSMINUS_SY
%token <sc_token> NE_SY
%token <sc_token> OR_SY
%token <sc_token> OUT_SY
%token <sc_token> PACKED_SY
%token <sc_token> PLUSPLUS_SY
%token <sc_token> RETURN_SY
%token <sc_token> STATIC_SY
%token <sc_token> STRCONST_SY
%token <sc_token> STRUCT_SY
%token <sc_token> SWITCH_SY
%token <sc_token> TEXOBJ_SY
%token <sc_token> THIS_SY
%token <sc_token> TYPEDEF_SY
%token <sc_ident> TYPEIDENT_SY
%token <sc_token> UNIFORM_SY
%token <sc_token> VARYING_SY
%token <sc_token> VOID_SY
%token <sc_token> WHILE_SY

%token <sc_token> FIRST_USER_TOKEN_SY  /* Must be last token declaration */

/*************<<<<<<<<<<<<<<<<<<<********************
%type <dummy> abstract_parameter_declaration
**************>>>>>>>>>>>>>>>>>***********************/
%type <dummy> compilation_unit
%type <dummy> compound_header
%type <dummy> compound_tail
%type <dummy> external_declaration
%type <dummy> function_definition
%type <dummy> struct_compound_header

%type <sc_int> function_specifier
%type <sc_int> in_out
/***
%type <sc_int> integer_constant
***/
%type <sc_int> type_domain
%type <sc_int> type_qualifier
%type <sc_int> storage_class

%type <sc_ident> identifier
%type <sc_ident> member_identifier
%type <sc_ident> scope_identifier
%type <sc_ident> semantics_identifier
%type <sc_ident> struct_identifier
%type <sc_ident> type_identifier
%type <sc_ident> variable_identifier

%type <sc_decl> abstract_declaration
%type <sc_decl> abstract_declarator
%type <sc_decl> abstract_parameter_list
%type <sc_decl> declarator
%type <sc_decl> basic_declarator
%type <sc_decl> semantic_declarator
%type <sc_decl> function_decl_header
%type <sc_decl> function_definition_header
%type <sc_decl> non_empty_abstract_parameter_list
%type <sc_decl> parameter_declaration
%type <sc_decl> parameter_list

%type <sc_type> abstract_declaration_specifiers
%type <sc_type> abstract_declaration_specifiers2
%type <sc_type> declaration_specifiers
%type <sc_ptype> struct_or_connector_header
%type <sc_ptype> struct_or_connector_specifier
/***
%type <sc_type> type_name
***/
%type <sc_ptype> type_specifier
%type <sc_ptype> untagged_struct_header

%type <sc_expr> actual_argument_list
%type <sc_expr> additive_expression
%type <sc_expr> AND_expression
%type <sc_expr> basic_variable
%type <sc_expr> boolean_expression_opt
%type <sc_expr> boolean_scalar_expression
%type <sc_expr> cast_expression
%type <sc_expr> conditional_expression
%type <sc_expr> constant
/***
%type <sc_expr> constant_expression
***/
%type <sc_expr> conditional_test
%type <sc_expr> equality_expression
%type <sc_expr> exclusive_OR_expression
%type <sc_expr> expression
%type <sc_expr> expression_list
%type <sc_expr> inclusive_OR_expression
%type <sc_expr> initializer
%type <sc_expr> initializer_list
%type <sc_expr> logical_AND_expression
%type <sc_expr> logical_OR_expression
%type <sc_expr> multiplicative_expression
%type <sc_expr> non_empty_argument_list
%type <sc_expr> postfix_expression
%type <sc_expr> primary_expression
%type <sc_expr> relational_expression
%type <sc_expr> shift_expression
%type <sc_expr> unary_expression
%type <sc_expr> variable

%type <sc_stmt> annotation
%type <sc_stmt> annotation_decl_list
%type <sc_stmt> balanced_statement
%type <sc_stmt> block_item
%type <sc_stmt> block_item_list
%type <sc_stmt> compound_statement
%type <sc_stmt> dangling_if
%type <sc_stmt> dangling_iteration
%type <sc_stmt> dangling_statement
%type <sc_stmt> declaration
%type <sc_stmt> discard_statement
%type <sc_stmt> expression_statement
%type <sc_stmt> expression_statement2
%type <sc_stmt> for_expression
%type <sc_stmt> for_expression_opt
%type <sc_stmt> if_header
%type <sc_stmt> if_statement
%type <sc_stmt> init_declarator
%type <sc_stmt> init_declarator_list
%type <sc_stmt> iteration_statement
%type <sc_stmt> return_statement
%type <sc_stmt> statement
%type <sc_stmt> struct_declaration
%type <sc_stmt> struct_declaration_list

/* Operator precedence rules: */

/* Don't even THINK about it! */

%%

compilation_unit:         external_declaration
                        | compilation_unit external_declaration
;

/****************/
/* Declarations */
/****************/

external_declaration:     declaration
                              { $$ = GlobalInitStatements(CurrentScope, $1); }
                        | function_definition
;

declaration:              declaration_specifiers ';'
                              { $$ = NULL; }
                        | declaration_specifiers init_declarator_list ';'
                              { $$ = $2; }
                        | ERROR_SY ';'
                              { RecordErrorPos(Cg->tokenLoc); $$ = NULL; }
;

abstract_declaration:     abstract_declaration_specifiers abstract_declarator
                              { $$ = $2; }
/***
                        | abstract_declarator
***/
;

declaration_specifiers:   abstract_declaration_specifiers
                              { $$ = $1; }
                        | TYPEDEF_SY abstract_declaration_specifiers
                              { SetTypeMisc(Cg->tokenLoc, &CurrentDeclTypeSpecs, TYPE_MISC_TYPEDEF); $$ = $2; }
;

abstract_declaration_specifiers:
                          abstract_declaration_specifiers2
                              { $$ = $1; }
                        | type_qualifier abstract_declaration_specifiers
                              { SetTypeQualifiers(Cg->tokenLoc, &CurrentDeclTypeSpecs, $1); $$ = CurrentDeclTypeSpecs; }
                        | storage_class abstract_declaration_specifiers
                              { SetStorageClass(Cg->tokenLoc, &CurrentDeclTypeSpecs, $1); $$ = CurrentDeclTypeSpecs; }
                        | type_domain abstract_declaration_specifiers
                              { SetTypeDomain(Cg->tokenLoc, &CurrentDeclTypeSpecs, $1); $$ = CurrentDeclTypeSpecs; }
                        | in_out abstract_declaration_specifiers
                              { SetTypeQualifiers(Cg->tokenLoc, &CurrentDeclTypeSpecs, $1); $$ = CurrentDeclTypeSpecs; }
                        | function_specifier abstract_declaration_specifiers
                              { SetTypeMisc(Cg->tokenLoc, &CurrentDeclTypeSpecs, $1); $$ = CurrentDeclTypeSpecs; }
                        | PACKED_SY abstract_declaration_specifiers
                              { SetTypePacked(Cg->tokenLoc, &CurrentDeclTypeSpecs); $$ = CurrentDeclTypeSpecs; }
;

abstract_declaration_specifiers2:
                          type_specifier
                              { $$ = *SetDType(&CurrentDeclTypeSpecs, $1); }
                        | abstract_declaration_specifiers2 type_qualifier
                              { SetTypeQualifiers(Cg->tokenLoc, &CurrentDeclTypeSpecs, $2); $$ = CurrentDeclTypeSpecs; }
                        | abstract_declaration_specifiers2 storage_class
                              { SetStorageClass(Cg->tokenLoc, &CurrentDeclTypeSpecs, $2); $$ = CurrentDeclTypeSpecs; }
                        | abstract_declaration_specifiers2 type_domain
                              { SetTypeDomain(Cg->tokenLoc, &CurrentDeclTypeSpecs, $2); $$ = CurrentDeclTypeSpecs; }
                        | abstract_declaration_specifiers2 in_out
                              { SetTypeQualifiers(Cg->tokenLoc, &CurrentDeclTypeSpecs, $2); $$ = CurrentDeclTypeSpecs; }
                        | abstract_declaration_specifiers2 function_specifier
                              { SetTypeMisc(Cg->tokenLoc, &CurrentDeclTypeSpecs, $2); $$ = CurrentDeclTypeSpecs; }
                        | abstract_declaration_specifiers2 PACKED_SY
                              { SetTypePacked(Cg->tokenLoc, &CurrentDeclTypeSpecs); $$ = CurrentDeclTypeSpecs; }
;

init_declarator_list:     init_declarator
                              { $$ = $1; }
                        | init_declarator_list ',' init_declarator
                              { $$ = AddStmt($1, $3); }
;

init_declarator:          declarator
                              { $$ = Init_Declarator(Cg->tokenLoc, CurrentScope, $1, NULL); }
                        | declarator '=' initializer
                              { $$ = Init_Declarator(Cg->tokenLoc, CurrentScope, $1, $3); }
;

/*******************/
/* Type Specifiers */
/*******************/

type_specifier:           INT_SY
                              { $$ = LookUpTypeSymbol(NULL, INT_SY); }
                        | FLOAT_SY
                              { $$ = LookUpTypeSymbol(NULL, FLOAT_SY); }
                        | VOID_SY
                              { $$ = LookUpTypeSymbol(NULL, VOID_SY); }
                        | BOOLEAN_SY
                              { $$ = LookUpTypeSymbol(NULL, BOOLEAN_SY); }
                        | TEXOBJ_SY
                              { $$ = LookUpTypeSymbol(NULL, TEXOBJ_SY); }
                        | struct_or_connector_specifier
                              { $$ = $1; }
                        | type_identifier

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
老司机午夜精品| 日韩三级高清在线| 精品少妇一区二区三区在线播放| 久久久不卡影院| 亚洲精品日韩一| 国产精品91xxx| 日韩一级精品视频在线观看| 国产精品看片你懂得| 青青草精品视频| 在线精品视频小说1| 欧美国产视频在线| 久久国产精品无码网站| 色妞www精品视频| 国产色产综合色产在线视频| 男人的天堂亚洲一区| 色综合久久综合网欧美综合网| 久久人人爽人人爽| 青青草97国产精品免费观看无弹窗版 | 韩国三级在线一区| 欧美视频在线不卡| 亚洲激情男女视频| 91在线国产观看| 国产精品理论片在线观看| 国产最新精品免费| 欧美精品一区二| 精品一区二区三区久久久| 69堂成人精品免费视频| 亚洲高清一区二区三区| 欧美午夜免费电影| 亚洲午夜在线观看视频在线| 色播五月激情综合网| 亚洲精品国产第一综合99久久| 成人激情av网| 亚洲女人的天堂| 一本到不卡精品视频在线观看| 日韩一区中文字幕| 99re这里都是精品| 亚洲视频在线一区二区| 色婷婷综合视频在线观看| 亚洲人成网站在线| 欧美午夜不卡在线观看免费| 天天av天天翘天天综合网色鬼国产| 欧美综合色免费| 日韩精品一区第一页| 日韩欧美国产综合在线一区二区三区 | 国产精品少妇自拍| 成人激情动漫在线观看| 亚洲日本乱码在线观看| 在线观看国产91| 日本中文字幕一区二区视频| 日韩亚洲欧美成人一区| 九一九一国产精品| 中文字幕国产精品一区二区| 色欧美片视频在线观看在线视频| 亚洲综合一区在线| 欧美电影免费观看高清完整版在| 国产乱妇无码大片在线观看| 综合久久综合久久| 欧美日韩视频在线一区二区| 久久精品国产一区二区三区免费看 | 欧美亚洲另类激情小说| 丝袜国产日韩另类美女| 国产婷婷精品av在线| 色综合天天做天天爱| 五月激情综合网| 亚洲电影欧美电影有声小说| 日韩精品一区二区三区在线观看| 国产精品888| 亚洲国产欧美在线人成| 久久免费视频一区| 欧美亚洲丝袜传媒另类| 狠狠色综合日日| 亚洲一区二区三区四区五区中文| 精品人在线二区三区| 99久久婷婷国产| 麻豆精品久久久| 亚洲天堂精品视频| 日韩欧美一卡二卡| 91麻豆国产在线观看| 另类欧美日韩国产在线| 亚洲欧洲精品成人久久奇米网| 欧美精品九九99久久| 成人免费福利片| 久久99精品久久久久久| 亚洲一区二区欧美| 《视频一区视频二区| www国产精品av| 欧美一区二区三区在| 色哦色哦哦色天天综合| 成人午夜电影久久影院| 美女一区二区视频| 亚洲观看高清完整版在线观看| 日本一区二区三区国色天香| 日韩午夜中文字幕| 欧美性高清videossexo| 91网站在线播放| 高清免费成人av| 精品无人码麻豆乱码1区2区| 亚洲成人资源网| 亚洲精品国产a久久久久久| 欧美极品美女视频| 国产日本一区二区| 久久尤物电影视频在线观看| 欧美一区二区网站| 欧美日韩国产精品自在自线| 色88888久久久久久影院野外| 成人午夜私人影院| 国产精品一二三| 国产麻豆精品视频| 国产一区二区三区综合| 精品一区二区在线看| 久久国产精品露脸对白| 日韩不卡在线观看日韩不卡视频| 亚洲国产日产av| 香蕉久久夜色精品国产使用方法| 亚洲一区二区欧美日韩| 亚洲综合色在线| 婷婷夜色潮精品综合在线| 亚洲一区在线视频观看| 午夜精品久久久久久久久久| 丝袜a∨在线一区二区三区不卡| 亚洲超碰精品一区二区| 亚洲r级在线视频| 日韩高清一区在线| 日本欧洲一区二区| 秋霞电影一区二区| 精品无人码麻豆乱码1区2区| 国产黄色成人av| 成a人片国产精品| 在线观看国产一区二区| 欧美日韩黄视频| 精品卡一卡二卡三卡四在线| 精品国产亚洲一区二区三区在线观看| 2024国产精品| ...xxx性欧美| 亚洲亚洲人成综合网络| 美女视频一区在线观看| 国产风韵犹存在线视精品| 9i在线看片成人免费| 欧美日韩精品一区二区在线播放| 欧美一区二区三区小说| 欧美成人精品二区三区99精品| 国产色婷婷亚洲99精品小说| 亚洲免费在线视频一区 二区| 日精品一区二区| 精品写真视频在线观看| av在线不卡免费看| 欧美日韩一区二区在线观看| 日韩精品在线一区| 中文字幕中文在线不卡住| 日韩国产欧美在线视频| 福利视频网站一区二区三区| 色国产精品一区在线观看| 日韩一区二区三| 亚洲婷婷在线视频| 日本中文字幕一区| 99国产精品99久久久久久| 日韩欧美国产wwwww| 亚洲欧美色一区| 国产真实乱对白精彩久久| 欧美私模裸体表演在线观看| 久久久久国产精品麻豆ai换脸| 亚洲国产精品久久一线不卡| 国产成人在线看| 日韩美女一区二区三区| 亚洲激情自拍视频| 国产夫妻精品视频| 日韩视频一区二区三区在线播放 | 精品三级在线看| 亚洲最大成人网4388xx| 国产白丝精品91爽爽久久| 欧美一区二区视频观看视频| 亚洲精品自拍动漫在线| 精品制服美女久久| 精品视频在线看| 亚洲精品视频免费观看| 粉嫩绯色av一区二区在线观看| 日韩片之四级片| 亚洲成人精品一区二区| 91亚洲男人天堂| 中文字幕乱码日本亚洲一区二区| 久久精品国产亚洲5555| 欧美日韩一区高清| 亚洲精品国产精品乱码不99| 成人免费视频免费观看| 久久蜜桃av一区二区天堂| 日本va欧美va精品| 日本乱人伦一区| 亚洲欧美另类在线| eeuss影院一区二区三区| 日本一区二区免费在线| 国产精一区二区三区| 亚洲综合视频网| 国产老肥熟一区二区三区| 欧美一区二区免费| 男男gaygay亚洲| 日韩一级欧美一级| 毛片av一区二区三区| 欧美r级在线观看| 国产一区二区调教|