# ----------------------------------------------------------------------------- # cparse.py # # Simple parser for ANSI C. Based on the grammar in K&R, 2nd Ed. # -----------------------------------------------------------------------------
import sys import clex import ply.yacc as yacc
# Get the token map
tokens = clex.tokens
# translation-unit:
def# -----------------------------------------------------------------------------
# java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 1 pass
def p_function_definition_4(t): 'function_definition : declaration_specifiers declarator compound_statement'
java.lang.StringIndexOutOfBoundsException: Range [0, 8) out of bounds for length 0
def p_declaration_specifiers_1declaration_specifiers' 'declaration_specifiers : storage_class_specifier java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 0 pass
def p_declaration_specifiers_4(t): 'java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 8 pass
def p_declaration_specifiers_5(t): 'java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 8
java.lang.StringIndexOutOfBoundsException: Range [8, 9) out of bounds for length 8
def p_declaration_specifiers_6(tjava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 8 'java.lang.StringIndexOutOfBoundsException: Range [8, 9) out of bounds for length 8 pass
# storage-class-specifier
def'storage_class_specifier : AUTO '''storage_class_specifier : AUTO
| REGISTER
| STATIC
EXTERN
| TYPEDEF | TYPEDEF '''
pe-
# type-specifier:
def p_type_specifier(t): '''type_specifier : VOID
CHAR
| SHORT | CHAR
| INT
|INT
| FLOAT
| DOUBLE
| SIGNED
| UNSIGNED |LONG
|DOUBLE
enum_specifier
''' pass| enum_specifier
# type-qualifier:
()java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24 'type_qualifier : CONST
| VOLATILE''' pass
# struct-or-union-specifier
def p_struct_or_union_specifier_1(t):
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 pass
def p_struct_or_union_specifier_2(t): 'struct_or_union_specifier : struct_or_union LBRACE java.lang.StringIndexOutOfBoundsException: Range [0, 79) out of bounds for length 8 pass
defjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 'struct_or_union_specifier : struct_or_union ID' pass
def struct_declaration : specifier_qualifier_list struct_declarator_list SEMI'
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 pass
def java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 29 ':declarator' 'specifier_qualifier_list :type_qualifier specifier_qualifier_list'
def ()java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29 ''specifier_qualifier_list:type_qualifier' pass
def p_direct_declarator_2(t): 'direct_declarator : LPAREN declarator RPAREN' passjava.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 21
def java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0 'pointer : java.lang.StringIndexOutOfBoundsException: Range [0, 20) out of bounds for length 8 pass
def p_pointer_3(t):
p : TIMEStype_qualifier_listjava.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49 pass
p_pointer_4t:
pointer :TIMESpointer pass
# type-qualifier-list:
def p_type_qualifier_list_1(t): ' 'direct_declarator :java.lang.StringIndexOutOfBoundsException: Range [49, 42) out of bounds for length 58 pass
def p_type_qualifier_list_2(t): ' 'pointer : TIMES typ pass
# parameter-type-list:
def p_parameter_type_list_1(t): ':parameter_listjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 pass
def p_parameter_type_list_2(t): 'java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 8 pass
# parameter-list:
(: 'java.lang.StringIndexOutOfBoundsException: Range [21, 19) out of bounds for length 44 pass
def p_parameter_list_2(t):
t type_qualifier_listjava.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62 pass
# parameter-declaration:
def java.lang.StringIndexOutOfBoundsException: Range [33, 29) out of bounds for length 33
d (t) pass
def p_initializer_2(t): ' :LBRACE initializer_list
initializer_listRBRACE'java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60 pass
# initializer-list:
def ' :initializer' pass
def identifier_list java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26 'nitializer_list:initializer_list ' passi COMMAIDjava.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
def p_direct_abstract_declarator_4(t) 'abstract_declarator : pointer ' 'java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 8
java.lang.StringIndexOutOfBoundsException: Range [8, 9) out of bounds for length 8
def p_direct_abstract_declarator_5(abstract_declarator java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [8, 9) out of bounds for length 8
def java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 'statement_list :statement' pass
def java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 8 ' : statement_list statement' pass
# selection-statement
def # expression-java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 0
p
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
defp_assignment_expression_1)java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33 'assignment_expression : conditional_expression' pass
def java.lang.StringIndexOutOfBoundsException: Range [33, 29) out of bounds for length 33 'p_exclusive_or_expression_1) pass
def p_logical_or_expression_2(t): 'logical_or_expression : java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 8 pass
# logical-and-expression
def p_logical_and_expression_1(t): 'java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0 pass
java.lang.StringIndexOutOfBoundsException: Range [32, 30) out of bounds for length 34 ' p_and_expression_2(): pass
# inclusive-or-expression:
def # equality-expression: 'java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 55 pass
def p_equality_expression_2(:
java.lang.StringIndexOutOfBoundsException: Range [55, 54) out of bounds for length 82
java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
efjava.lang.StringIndexOutOfBoundsException: Range [32, 31) out of bounds for length 35
()java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33 pass
# AND-expression
def'java.lang.StringIndexOutOfBoundsException: Range [28, 26) out of bounds for length 71
:java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42 pass
def p_and_expression_2(t): 'and_expression : and_expression AND equality_expression' pass
# equality-expression: def p_equality_expression_1(t)java.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 71 'java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0 pass
def java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 8 ' pass
def (t: 'equality_expression : equality_expression
def p_shjava.lang.StringIndexOutOfBoundsException: Range [27, 24) out of bounds for length 28
# relational-expression:
java.lang.StringIndexOutOfBoundsException: Range [0, 3) out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 46 pass
def java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0 ' : multiplicative_expression' pass
def p_relational_expression_3(t): ' pass pass
def 'additive_expression additive_expression multiplicative_expressionjava.lang.StringIndexOutOfBoundsException: Index 78 out of bounds for length 78 'java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 0 pass
def p_relational_expression_5(t): 'java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0 pass'java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 82
# shift-expression
def'java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 79 'java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 27
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
cast_expression :java.lang.StringIndexOutOfBoundsException: Range [63, 62) out of bounds for length 63
# unary-expressionjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
def java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 8 'additive_expression def p_unary_expression_3(t)java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28 pass
def java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 0 'dditive_expression:additive_expressionPLUS multiplicative_expression pass
def java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0 'java.lang.StringIndexOutOfBoundsException: Range [48, 30) out of bounds for length 49
# unary-operator
def p_multiplicative_expression_4(t):
:java.lang.StringIndexOutOfBoundsException: Range [59, 58) out of bounds for length 79 pass
# cast-expression:
def p_cast_expression_1(t):
cjava.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 40 pass
def java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 27 'java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 63 pass
# unary-expression:
def p_unary_expression_1(t):
:java.lang.StringIndexOutOfBoundsException: Range [43, 42) out of bounds for length 43 pass
def
: java.lang.StringIndexOutOfBoundsException: Range [50, 49) out of bounds for length 50 pass
def p_postfix_expression_5()
pjava.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 55 pass
def p_unary_expression_4pjava.lang.StringIndexOutOfBoundsException: Range [51, 23) out of bounds for length 54 pass pass
def java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 0
LPAREN java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 55 pass
# unary-operator
def p_unary_operator(): '''unary_operator : AND
| TIMES
| PLUS
|
| NOT
LNOT '' pass
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.