nml-ip-parser.exp 31.7 KB
Newer Older
1 2 3 4
File "nml-ip-parser.mly", line 252, characters 25-28:
Warning: the token VAL is unused.
File "nml-ip-parser.mly", line 1114, characters 0-8:
Warning: symbol opt_semi is unreachable from any of the start symbol(s).
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206
Grammar has 65 nonterminal symbols, among which 2 start symbols.
Grammar has 115 terminal symbols.
Grammar has 300 productions.
nullable(value_expr) = false
nullable(val_longident) = false
nullable(val_ident) = false
nullable(use_file_exprs) = false
nullable(use_file) = false
nullable(type_vars) = false
nullable(type_list) = false
nullable(type_expr) = false
nullable(toplevel_phrase) = true
nullable(top_expr) = false
nullable(tag_list) = false
nullable(simple_tag_type) = false
nullable(simple_pattern) = false
nullable(simple_expr_list) = false
nullable(simple_expr) = false
nullable(simple_case) = false
nullable(simple_bi_pattern) = false
nullable(signed_constant) = false
nullable(seq_expr) = false
nullable(record_expr) = false
nullable(rec_flag) = true
nullable(pattern_comma_list_element) = false
nullable(pattern_comma_list) = false
nullable(pattern) = false
nullable(param_tail) = false
nullable(option_pattern_list_element) = false
nullable(option_pattern_list) = false
nullable(opt_comma) = true
nullable(opt_bar) = true
nullable(operator) = false
nullable(no_value_expr) = false
nullable(mod_ident) = false
nullable(matrix_expr) = false
nullable(match_cases) = false
nullable(match_action) = false
nullable(list_pattern) = false
nullable(list_expr) = false
nullable(let_bindings) = false
nullable(let_binding) = false
nullable(lbl_type_list) = false
nullable(lbl_pattern_list_element) = false
nullable(lbl_pattern_list) = false
nullable(lbl_expr_list) = false
nullable(label_longident) = false
nullable(key_pattern_list_element) = false
nullable(key_pattern_list) = false
nullable(key_pattern) = false
nullable(index_list) = false
nullable(index) = false
nullable(generator_list) = false
nullable(generator) = false
nullable(fun_def) = false
nullable(fun_binding) = false
nullable(field_defn) = false
nullable(expr_comma_list_element) = false
nullable(expr_comma_list) = false
nullable(expr) = false
nullable(direction_flag) = false
nullable(constr_longident) = false
nullable(constant) = false
nullable(colonized_symbol) = false
nullable(case_list) = false
nullable(built_in_constr) = false
nullable(bi_pattern) = false
nullable(basic_seq_expr) = false
first(value_expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(val_longident) = UIDENT LPAREN LIDENT
first(val_ident) = LPAREN LIDENT
first(use_file_exprs) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION DOLLAR CHAR CASE BEGIN ASSERT
first(use_file) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION DOLLAR CHAR CASE BEGIN ASSERT
first(type_vars) = TIDENT LPAREN
first(type_list) = TIDENT
first(type_expr) = UIDENT TIDENT LPAREN LIDENT
first(toplevel_phrase) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION DOLLAR CHAR CASE BEGIN ASSERT
first(top_expr) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION DOLLAR CHAR CASE BEGIN ASSERT
first(tag_list) = UIDENT
first(simple_tag_type) = UIDENT
first(simple_pattern) = UNDERSCORE UIDENT STRING SHARP MINUS LVECTOR LPAREN LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR
first(simple_expr_list) = UIDENT STRING SHARP PREFIXOP LVECTOR LPAREN LMATRIX LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR BEGIN
first(simple_expr) = UIDENT STRING SHARP PREFIXOP LVECTOR LPAREN LMATRIX LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR BEGIN
first(simple_case) = WHILE WHERE UNDERSCORE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(simple_bi_pattern) = UNDERSCORE STRING SHARP MINUS LVECTOR LPAREN LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR
first(signed_constant) = STRING SHARP MINUS LVECTOR LPAREN LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR
first(seq_expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(record_expr) = UIDENT STRING SHARP PREFIXOP LVECTOR LPAREN LMATRIX LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR BEGIN
first(rec_flag) = REC
first(pattern_comma_list_element) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
first(pattern_comma_list) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
first(pattern) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT
first(param_tail) = AMPEROPT AMPERKEY
first(option_pattern_list_element) = LIDENT AMPERREST
first(option_pattern_list) = LIDENT AMPERREST
first(opt_comma) = COMMA
first(opt_bar) = BAR
first(operator) = STAR SHARP PREFIXOP PLUS MINUS INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L EQ DOLLAR COLONEQUAL COLONCOLON
first(no_value_expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(mod_ident) = UIDENT
first(matrix_expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(match_cases) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
first(match_action) = WHEN MINUSGREATER
first(list_pattern) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOTDOTDOT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
first(list_expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(let_bindings) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
first(let_binding) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
first(lbl_type_list) = MUTABLE LIDENT
first(lbl_pattern_list_element) = UIDENT LIDENT
first(lbl_pattern_list) = UIDENT LIDENT
first(lbl_expr_list) = UIDENT LIDENT
first(label_longident) = UIDENT LIDENT
first(key_pattern_list_element) = LIDENT AMPERREST
first(key_pattern_list) = LIDENT AMPERREST
first(key_pattern) = LIDENT DOTDOTDOT AMPERREST
first(index_list) = WHILE WHERE UIDENT TRY STRING STAR SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOTDOT DOLLAR CHAR CASE BEGIN ASSERT
first(index) = WHILE WHERE UIDENT TRY STRING STAR SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOTDOT DOLLAR CHAR CASE BEGIN ASSERT
first(generator_list) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT
first(generator) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT
first(fun_def) = WHEN UNDERSCORE UIDENT STRING SHARP MINUSGREATER MINUS LVECTOR LPAREN LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR
first(fun_binding) = UNDERSCORE UIDENT STRING SHARP MINUS LVECTOR LPAREN LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT EQ DOLLAR CHAR
first(field_defn) = MUTABLE LIDENT
first(expr_comma_list_element) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(expr_comma_list) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(direction_flag) = TO DOWNTO BELOW ABOVE
first(constr_longident) = UIDENT
first(constant) = STRING SHARP LVECTOR LPAREN LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR
first(colonized_symbol) = UIDENT LIDENT
first(case_list) = WHILE WHERE UNDERSCORE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
first(built_in_constr) = WEAKARRAYPAT VECTORPAT TUPLEPAT SYMBOLPAT STRINGPAT STACKPAT RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT LISTPAT IN_CHANNELPAT INTPAT HASHTABLEPAT FLOATPAT FARRAYPAT DIR_HANDLEPAT COMPLEXPAT CHARPAT CARRAYPAT BOXPAT ARRAYPAT
first(bi_pattern) = UNDERSCORE STRING SHARP MINUS LVECTOR LPAREN LIDENT LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT DOLLAR CHAR
first(basic_seq_expr) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
follow(value_expr) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(val_longident) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(val_ident) = error WITH WHILE WHERE WHEN UNDERSCORE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LESSMINUS LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AS AND AMPERAMPER ABOVE
follow(use_file_exprs) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN ASSERT
follow(use_file) = #
follow(type_vars) = LIDENT
follow(type_list) = RPAREN COMMA
follow(type_expr) = error WHILE WHERE UIDENT TYPE TRY STRING STAR SHARP SEMISEMI RPAREN RBRACE RAISE PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR COMMA CHAR CASE BEGIN BAR ASSERT
follow(toplevel_phrase) = #
follow(top_expr) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN ASSERT
follow(tag_list) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN BAR ASSERT
follow(simple_tag_type) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN BAR ASSERT
follow(simple_pattern) = error WHEN UNDERSCORE UIDENT STRING SHARP RPAREN RBRACK RBRACE MINUSGREATER MINUS LVECTOR LPAREN LIDENT LESSMINUS LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT EQ DOLLAR COMMA COLONCOLON CHAR BARBAR BAR AS
follow(simple_expr_list) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(simple_expr) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(simple_case) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(simple_bi_pattern) = error WHEN RPAREN RBRACK RBRACE MINUSGREATER LESSMINUS EQ COMMA COLONCOLON BARBAR BAR AS
follow(signed_constant) = error WHEN UNDERSCORE UIDENT STRING SHARP RPAREN RBRACK RBRACE MINUSGREATER MINUS LVECTOR LPAREN LIDENT LESSMINUS LBRACKBAR LBRACK LBRACE INT IMAGINARY FLOAT EQ DOLLAR COMMA COLONCOLON CHAR BARBAR BAR AS
follow(seq_expr) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(record_expr) = error RBRACE COMMA
follow(rec_flag) = WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT QUEUEPAT OUT_CHANNELPAT NUMBERPAT MINUS LVECTOR LPAREN LISTPAT LIDENT LBRACKBAR LBRACK LBRACE IN_CHANNELPAT INTPAT INT IMAGINARY HASHTABLEPAT FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CARRAYPAT BOXPAT ARRAYPAT AMPERREST
follow(pattern_comma_list_element) = error WHEN RPAREN RBRACK MINUSGREATER EQ COMMA BAR
follow(pattern_comma_list) = error WHEN RPAREN RBRACK MINUSGREATER EQ COMMA BAR
follow(pattern) = error WHEN RPAREN RBRACK RBRACE MINUSGREATER LESSMINUS EQ COMMA COLONCOLON BARBAR BAR AS
follow(param_tail) = RPAREN
follow(option_pattern_list_element) = RPAREN COMMA
follow(option_pattern_list) = RPAREN COMMA
follow(opt_comma) = error WITH WHEN RPAREN RBRACK RBRACE MINUSGREATER DOTDOT BARRBRACK
follow(opt_bar) = WHILE WHERE WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TUPLEPAT TRY SYMBOLPAT STRINGPAT STRING STACKPAT SHARP RECORDPAT REALPAT RAISE QUEUEPAT PREFIXOP PLUS OUT_CHANNELPAT NUMBERPAT MINUS MATCH LVECTOR LPAREN LMATRIX LISTPAT LIDENT LET LBRACKBAR LBRACK LBRACE LAZY IN_CHANNELPAT INTPAT INT IMAGINARY IF HASHTABLEPAT FUNCTION FUN FOR FLOATPAT FLOAT FARRAYPAT DOLLAR DIR_HANDLEPAT COMPLEXPAT CHARPAT CHAR CASE CARRAYPAT BOXPAT BEGIN ASSERT ARRAYPAT AMPERREST
follow(operator) = RPAREN
follow(no_value_expr) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(mod_ident) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF DOLLAR CHAR CASE BEGIN ASSERT
follow(matrix_expr) = error SEMI RBRACK
follow(match_cases) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(match_action) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(list_pattern) = error RPAREN RBRACK
follow(list_expr) = error RBRACK
follow(let_bindings) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN ASSERT AND
follow(let_binding) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN ASSERT AND
follow(lbl_type_list) = error RBRACE COMMA
follow(lbl_pattern_list_element) = error RBRACE COMMA
follow(lbl_pattern_list) = error RBRACE COMMA
follow(lbl_expr_list) = error RBRACE COMMA
follow(label_longident) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LESSMINUS LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(key_pattern_list_element) = RPAREN COMMA
follow(key_pattern_list) = RPAREN COMMA
follow(key_pattern) = RPAREN
follow(index_list) = error RBRACK COMMA
follow(index) = error RBRACK COMMA
follow(generator_list) = error SEMI RBRACK
follow(generator) = error SEMI RBRACK
follow(fun_def) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(fun_binding) = WHILE WHERE UIDENT TYPE TRY STRING SHARP SEMISEMI RAISE PREFIXOP PLUS OPEN MODULE MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EOF DOLLAR CHAR CASE BEGIN ASSERT AND
follow(field_defn) = error RBRACE COMMA
follow(expr_comma_list_element) = error WITH SEMI RPAREN RBRACK DOTDOT COMMA BARRBRACK BAR
follow(expr_comma_list) = error WITH SEMI RPAREN RBRACK DOTDOT COMMA BARRBRACK BAR
follow(expr) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(direction_flag) = WHILE WHERE UIDENT TRY STRING SHARP RAISE PREFIXOP PLUS MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT IMAGINARY IF FUNCTION FUN FOR FLOAT DOLLAR CHAR CASE BEGIN ASSERT
follow(constr_longident) = error WITH WHILE WHERE WHEN WEAKARRAYPAT VECTORPAT UNDERSCORE UIDENT TYPE TUPLEPAT TRY TO THEN SYMBOLPAT STRINGPAT STRING STAR STACKPAT SHARP SEMISEMI SEMI RPAREN RECORDPAT REALPAT RBRACK RBRACE RAISE QUEUEPAT QUESTION PREFIXOP PLUS OUT_CHANNELPAT OPEN NUMBERPAT MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LISTPAT LIDENT LET LESSMINUS LBRACKBAR LBRACK LBRACE LAZY IN_CHANNELPAT INTPAT INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF HASHTABLEPAT FUNCTION FUN FOR FLOATPAT FLOAT FARRAYPAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DOT DONE DOLLAR DO DIR_HANDLEPAT COMPLEXPAT COMMA COLONEQUAL COLONCOLON COLON CHARPAT CHAR CASE CARRAYPAT BOXPAT BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AS ARRAYPAT AND AMPERAMPER ABOVE
follow(constant) = error WITH WHILE WHERE WHEN UNDERSCORE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LESSMINUS LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AS AND AMPERAMPER ABOVE
follow(colonized_symbol) = COLON
follow(case_list) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
follow(built_in_constr) = error WHEN RPAREN RBRACK RBRACE MINUSGREATER LESSMINUS EQ COMMA COLONCOLON BARBAR BAR AS
follow(bi_pattern) = error WHEN RPAREN RBRACK RBRACE MINUSGREATER LESSMINUS EQ COMMA COLONCOLON BARBAR BAR AS
follow(basic_seq_expr) = error WITH WHILE WHERE UIDENT TYPE TRY TO THEN STRING STAR SHARP SEMISEMI SEMI RPAREN RBRACK RBRACE RAISE QUESTION PREFIXOP PLUS OPEN MODULE MINUSGREATER MINUS MATCH LVECTOR LPAREN LMATRIX LIDENT LET LBRACKBAR LBRACK LBRACE LAZY INT INFIXOP5R INFIXOP5L INFIXOP4R INFIXOP4L INFIXOP3R INFIXOP3L INFIXOP2R INFIXOP2L INFIXOP1R INFIXOP1L IN IMAGINARY IF FUNCTION FUN FOR FLOAT EXCEPTION EQ EOF END ELSE DOWNTO DOTDOT DONE DOLLAR DO COMMA COLONEQUAL COLONCOLON COLON CHAR CASE BELOW BEGIN BARRBRACK BARCOLON BARBAR BAR ASSERT AND AMPERAMPER ABOVE
Built an LR(0) automaton with 604 states.
The grammar is not SLR(1) -- 78 states have a conflict.
Built an LR(1) automaton with 999 states.
1102 shift/reduce conflicts were silently solved.
207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273
File "nml-ip-parser.mly", line 289, characters 0-5:
Warning: the precedence level assigned to COMMA is never useful.
File "nml-ip-parser.mly", line 281, characters 0-6:
Warning: the precedence level assigned to prec_let is never useful.
File "nml-ip-parser.mly", line 284, characters 0-6:
Warning: the precedence level assigned to prec_list is never useful.
File "nml-ip-parser.mly", line 590, characters 22-31:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 592, characters 36-45:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 602, characters 34-43:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 604, characters 56-65:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 762, characters 23-31:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 1015, characters 58-67:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 775, characters 34-43:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 777, characters 54-63:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 1029, characters 58-67:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 467, characters 22-31:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 469, characters 42-51:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 756, characters 41-49:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 497, characters 29-38:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 989, characters 64-73:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 882, characters 26-42:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 948, characters 62-71:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 917, characters 37-46:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 924, characters 60-69:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 417, characters 26-35:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 419, characters 39-48:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 338, characters 36-44:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 435, characters 18-27:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 437, characters 33-42:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 505, characters 49-57:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 507, characters 56-64:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 510, characters 37-45:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 516, characters 34-42:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 536, characters 39-55:
Warning: this %prec declaration is never useful.
File "nml-ip-parser.mly", line 586, characters 27-36:
Warning: this %prec declaration is never useful.
Warning: 100 states have shift/reduce conflicts.
Warning: 411 shift/reduce conflicts were arbitrarily resolved.
Warning: one state has an end-of-stream conflict.
274
File "nml-ip-parser.mly", line 322, characters 3-3:
275
Warning: production toplevel_phrase -> is never reduced.
276
Warning: in total, 1 production is never reduced.
277
321 out of 999 states have a default reduction.
278 279 280 281 282 283
547 out of 999 states are represented.
0 out of 184 symbols keep track of their start position.
0 out of 184 symbols keep track of their end position.
140 out of 302 productions exploit shiftreduce optimization.
267 out of 999 states can peek at an error.
2371 functions before inlining, 658 functions after inlining.