Branch Coverage

lib/SPVM/Builder/src/spvm_toke.c
Criterion Covered Total %
branch 888 970 91.5


line true false branch
36 2169 15820389 if (compiler->ch_ptr == NULL) {
72 40273791 3670 if (!compiler->current_class_content || source_index >= compiler->current_class_content_length) {
69745 40204046 if (!compiler->current_class_content || source_index >= compiler->current_class_content_length) {
75 34872 38543 if (!end_of_file) {
85 3607 34936 if (!success) {
89 34936 0 if (compiler->current_class_content) {
98 8634 40195412 if (compiler->ch_ptr == compiler->next_string_literal_ch_ptr) {
107 34536 40169510 if (var_expansion_state > 0) {
134 21 40169489 else if (previous_token_is_heredoc) {
157 0 3089019 assert(SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr));
170 8634 28658 if (var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_FIRST_CONCAT) {
176 8634 20024 else if (var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_SECOND_CONCAT) {
183 8507 11517 if (*compiler->ch_ptr == '=') {
203 82238 107364 if (*compiler->ch_ptr == '+') {
208 5955 101409 else if (*compiler->ch_ptr == '=') {
228 45756 565334 if (isdigit(*compiler->ch_ptr)) {
232 492624 72710 else if (*compiler->ch_ptr == '>') {
240 10353 62357 else if (*compiler->ch_ptr == '-') {
245 14 62343 else if (*compiler->ch_ptr == '=') {
264 545 10109 if (*compiler->ch_ptr == '=') {
284 14 5478 if (*compiler->ch_ptr == '=') {
301 10 2204 if (*compiler->ch_ptr == '=') {
318 10 36 if (*compiler->ch_ptr == '=') {
336 8210 52 if (*compiler->ch_ptr == '|') {
342 10 42 else if (*compiler->ch_ptr == '=') {
361 49161 52295 if (*compiler->ch_ptr == '&') {
368 10 52285 else if (*compiler->ch_ptr == '=') {
378 15990 36295 else if (isalpha(*compiler->ch_ptr) || *compiler->ch_ptr == '_') {
14870 1120 else if (isalpha(*compiler->ch_ptr) || *compiler->ch_ptr == '_') {
397 67643 1283460 if (is_line_terminator) {
402 1283460 67643 if (is_line_terminator || *compiler->ch_ptr == '\0') {
1283454 6 if (is_line_terminator || *compiler->ch_ptr == '\0') {
415 713236 0 if (compiler->ch_ptr == compiler->current_class_content || *(compiler->ch_ptr - 1) == '\n') {
6 713230 if (compiler->ch_ptr == compiler->current_class_content || *(compiler->ch_ptr - 1) == '\n') {
418 22 210 if (*compiler->ch_ptr == '\n') {
422 1 231 if (*compiler->ch_ptr == '\0') {
426 7 224 if (
428 5 2 && strncmp(compiler->ch_ptr + 1, "cut", 3) == 0
429 5 0 && (*(compiler->ch_ptr + 4) == '\0' || SPVM_TOKE_is_white_space(compiler, *(compiler->ch_ptr + 4)))
5 0 && (*(compiler->ch_ptr + 4) == '\0' || SPVM_TOKE_is_white_space(compiler, *(compiler->ch_ptr + 4)))
435 6 5 if (*compiler->ch_ptr == '\n' || *compiler->ch_ptr == '\0') {
6 0 if (*compiler->ch_ptr == '\n' || *compiler->ch_ptr == '\0') {
449 69271 643959 if (*compiler->ch_ptr == '=') {
456 5045 638914 if (*compiler->ch_ptr == '>') {
474 79 164226 if (*compiler->ch_ptr == '<') {
477 10 69 if (*compiler->ch_ptr == '=') {
488 25 44 else if (*compiler->ch_ptr == '\'') {
493 111 35 while(isalnum(*compiler->ch_ptr) || *compiler->ch_ptr == '_') {
10 25 while(isalnum(*compiler->ch_ptr) || *compiler->ch_ptr == '_') {
499 1 24 if (heredoc_name_length == 0) {
509 1 23 if (isdigit(heredoc_name[0])) {
512 1 22 else if (strstr(heredoc_name, "__")) {
515 22 0 else if (!(*(compiler->ch_ptr) == '\'' && *(compiler->ch_ptr + 1) == ';' && SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr + 2))) {
21 1 else if (!(*(compiler->ch_ptr) == '\'' && *(compiler->ch_ptr + 1) == ';' && SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr + 2))) {
0 21 else if (!(*(compiler->ch_ptr) == '\'' && *(compiler->ch_ptr + 1) == ';' && SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr + 2))) {
519 21 3 if (compiler->error_messages->length == 0) {
533 53 129 if (previous_is_line_terminator) {
535 21 32 if (strncmp(compiler->ch_ptr, heredoc_name, heredoc_name_length) == 0 && SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr + heredoc_name_length)) {
21 0 if (strncmp(compiler->ch_ptr, heredoc_name, heredoc_name_length) == 0 && SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr + heredoc_name_length)) {
545 32 129 if (is_line_terminator) {
552 0 129 else if (*compiler->ch_ptr == '\0') {
563 21 0 if (compiler->error_messages->length == 0) {
567 161 21 while (heredoc_index < heredoc_length) {
570 32 129 if (is_line_terminator) {
577 0 129 else if (*heredoc_ptr == '\0') {
599 3 21 if (compiler->error_messages->length > 0) {
613 82526 81700 else if (*compiler->ch_ptr == '=') {
617 6584 75942 if (*compiler->ch_ptr == '>') {
642 76 92260 if (*compiler->ch_ptr == '>') {
644 38 38 if (*compiler->ch_ptr == '>') {
647 10 28 if (*compiler->ch_ptr == '=') {
665 10 28 if (*compiler->ch_ptr == '=') {
683 70800 21460 else if (*compiler->ch_ptr == '=') {
701 18314 3203 if (*compiler->ch_ptr == '=') {
726 2 50410 if (*compiler->ch_ptr == '\'') {
731 3569 46841 if (*compiler->ch_ptr == '\\') {
733 2 3567 if (*compiler->ch_ptr == 'a') {
737 7 3560 else if (*compiler->ch_ptr == 't') {
741 1067 2493 else if (*compiler->ch_ptr == 'n') {
745 5 2488 else if (*compiler->ch_ptr == 'f') {
749 536 1952 else if (*compiler->ch_ptr == 'r') {
753 3 1949 else if (*compiler->ch_ptr == '\'') {
757 3 1946 else if (*compiler->ch_ptr == '"') {
761 211 1735 else if (*compiler->ch_ptr == '\\') {
766 1164 571 else if (SPVM_TOKE_is_octal_number(compiler, *compiler->ch_ptr) || *compiler->ch_ptr == 'o') {
39 1125 else if (SPVM_TOKE_is_octal_number(compiler, *compiler->ch_ptr) || *compiler->ch_ptr == 'o') {
770 1123 2 else if (*compiler->ch_ptr == 'x') {
783 50401 9 if (*compiler->ch_ptr == '\'') {
800 8634 190092 if (var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_BEGIN_NEXT_STRING_LITERAL) {
815 6715 192011 if (*(compiler->ch_ptr) == '"') {
825 183373 6091747 if (*compiler->ch_ptr == '"') {
829 8642 6083105 else if (*compiler->ch_ptr == '$') {
830 8637 5 if (*(compiler->ch_ptr + 1) == '"') {
842 8 8629 if (*next_string_literal_ch_ptr == '$') {
849 17 8620 if (*next_string_literal_ch_ptr == '{') {
855 10 8627 if (*next_string_literal_ch_ptr == '@') {
857 4 6 if (var_have_brace) {
859 4 0 if (*next_string_literal_ch_ptr == '}') {
868 13007 58203 if (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
4368 8639 if (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
871 16 8623 else if (*next_string_literal_ch_ptr == ':' && *(next_string_literal_ch_ptr + 1) == ':') {
12 4 else if (*next_string_literal_ch_ptr == ':' && *(next_string_literal_ch_ptr + 1) == ':') {
874 13 8614 else if (*next_string_literal_ch_ptr == '}') {
875 13 0 if (var_have_brace) {
888 8614 13 if (!var_have_brace && !var_is_ref) {
8610 4 if (!var_have_brace && !var_is_ref) {
894 8610 12 if (!has_arrow) {
895 137 8473 if (*next_string_literal_ch_ptr == '-' && *(next_string_literal_ch_ptr + 1) == '>') {
133 4 if (*next_string_literal_ch_ptr == '-' && *(next_string_literal_ch_ptr + 1) == '>') {
904 145 0 if (has_arrow) {
906 29 116 if (*next_string_literal_ch_ptr == '{') {
910 115 1 else if (*next_string_literal_ch_ptr == '[') {
920 166 152 while (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
8 144 while (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
924 29 115 if (open_getting_field_brace) {
925 28 1 if (*next_string_literal_ch_ptr == '}') {
934 115 0 else if (open_bracket) {
935 114 1 if (*next_string_literal_ch_ptr == ']') {
948 4 138 if (*next_string_literal_ch_ptr == '-' && *(next_string_literal_ch_ptr + 1) == '>') {
4 0 if (*next_string_literal_ch_ptr == '-' && *(next_string_literal_ch_ptr + 1) == '>') {
952 130 12 if (!(*next_string_literal_ch_ptr == '{' || *next_string_literal_ch_ptr == '[')) {
130 0 if (!(*next_string_literal_ch_ptr == '{' || *next_string_literal_ch_ptr == '[')) {
964 1 6083104 else if (*compiler->ch_ptr == '\0') {
967 192008 6083109 if (string_literal_finished) {
972 199268 5883841 if (*compiler->ch_ptr == '\\') {
980 1 192007 if (*compiler->ch_ptr == '\0') {
993 6082213 192007 while (string_literal_ch_ptr != string_literal_end_ch_ptr) {
994 199268 5882945 if (*string_literal_ch_ptr == '\\') {
996 8 199260 if (*string_literal_ch_ptr == 'a') {
1001 17 199243 else if (*string_literal_ch_ptr == 't') {
1006 6991 192252 else if (*string_literal_ch_ptr == 'n') {
1011 9 192243 else if (*string_literal_ch_ptr == 'f') {
1016 15 192228 else if (*string_literal_ch_ptr == 'r') {
1021 3203 189025 else if (*string_literal_ch_ptr == '"') {
1026 188421 604 else if (*string_literal_ch_ptr == '$') {
1031 9 595 else if (*string_literal_ch_ptr == '\'') {
1036 21 574 else if (*string_literal_ch_ptr == '\\') {
1042 444 130 else if (SPVM_TOKE_is_octal_number(compiler, *string_literal_ch_ptr) || *string_literal_ch_ptr == 'o') {
72 372 else if (SPVM_TOKE_is_octal_number(compiler, *string_literal_ch_ptr) || *string_literal_ch_ptr == 'o') {
1049 138 234 else if (*string_literal_ch_ptr == 'x') {
1057 28 206 else if (*string_literal_ch_ptr == 'N' && *(string_literal_ch_ptr + 1) == '{') {
24 4 else if (*string_literal_ch_ptr == 'N' && *(string_literal_ch_ptr + 1) == '{') {
1060 24 0 if (*string_literal_ch_ptr == '{' && *(string_literal_ch_ptr + 1) == 'U' && *(string_literal_ch_ptr + 2) == '+') {
24 0 if (*string_literal_ch_ptr == '{' && *(string_literal_ch_ptr + 1) == 'U' && *(string_literal_ch_ptr + 2) == '+') {
24 0 if (*string_literal_ch_ptr == '{' && *(string_literal_ch_ptr + 1) == 'U' && *(string_literal_ch_ptr + 2) == '+') {
1065 101 24 while (SPVM_TOKE_is_hex_number(compiler, *string_literal_ch_ptr)) {
1069 24 0 if (*string_literal_ch_ptr == '}') {
1071 1 23 if (unicode_chars_length < 1) {
1074 1 22 else if (unicode_chars_length > 8) {
1085 19 3 if (is_valid_utf8_code_point) {
1088 61 19 for (int32_t byte_index = 0; byte_index < byte_length; byte_index++) {
1097 0 22 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == memory_blocks_count_tmp);
1109 209 1 switch(*string_literal_ch_ptr) {
1188 30 5882915 if (is_line_terminator) {
1210 0 198722 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == memory_blocks_count_tmp);
1217 8634 190088 if (next_var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_FIRST_CONCAT) {
1232 2516 2881739 if (*(compiler->ch_ptr + 1) == '$') {
1239 3085 2878654 else if (*(compiler->ch_ptr + 1) == '@') {
1246 34 2878620 else if (*(compiler->ch_ptr + 1) == '{' && *(compiler->ch_ptr + 2) == '@' && *(compiler->ch_ptr + 3) == '}') {
4 30 else if (*(compiler->ch_ptr + 1) == '{' && *(compiler->ch_ptr + 2) == '@' && *(compiler->ch_ptr + 3) == '}') {
4 0 else if (*(compiler->ch_ptr + 1) == '{' && *(compiler->ch_ptr + 2) == '@' && *(compiler->ch_ptr + 3) == '}') {
1258 30 2878620 if (*compiler->ch_ptr == '{') {
1267 17077942 3652302 while (
1269 772970 2879332 || (*compiler->ch_ptr) == '_'
1270 1220 2878112 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':')
682 538 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':')
1273 682 17850912 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
682 0 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
1296 0 2878650 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == memory_blocks_count_tmp_var_name_tmp);
1300 30 2878620 if (have_brace) {
1301 29 1 if (*compiler->ch_ptr == '}') {
1312 1 2878649 if (strstr(var_name, "__")) {
1317 2376336 502314 if (var_name_symbol_name_part_length >= 2 && var_name[1] == ':' && var_name[2] == ':') {
1 2376335 if (var_name_symbol_name_part_length >= 2 && var_name[1] == ':' && var_name[2] == ':') {
1 0 if (var_name_symbol_name_part_length >= 2 && var_name[1] == ':' && var_name[2] == ':') {
1322 2376336 502314 if (var_name_symbol_name_part_length >= 2 && var_name[var_name_length - 1] == ':' && var_name[var_name_length - 2] == ':') {
2 2376334 if (var_name_symbol_name_part_length >= 2 && var_name[var_name_length - 1] == ':' && var_name[var_name_length - 2] == ':') {
2 0 if (var_name_symbol_name_part_length >= 2 && var_name[var_name_length - 1] == ':' && var_name[var_name_length - 2] == ':') {
1327 2 2878648 if (strstr(var_name, "::::")) {
1332 2878650 0 if (var_name_symbol_name_part_length >= 1 && isdigit(var_name[1])) {
2 2878648 if (var_name_symbol_name_part_length >= 1 && isdigit(var_name[1])) {
1360 320170 6341843 if (before_token_is_arrow && ch == '{') {
151566 168604 if (before_token_is_arrow && ch == '{') {
1368 527223 3544537 if (isdigit(ch)) {
1373 45756 481467 if (before_char_is_minus) {
1379 318833 208390 if (*(compiler->ch_ptr) == '0') {
1381 297965 20868 if (*(compiler->ch_ptr + 1) == 'x' || *(compiler->ch_ptr + 1) == 'X') {
8 297957 if (*(compiler->ch_ptr + 1) == 'x' || *(compiler->ch_ptr + 1) == 'X') {
1385 297927 30 else if (*(compiler->ch_ptr + 1) == 'b' || *(compiler->ch_ptr + 1) == 'B') {
2 297925 else if (*(compiler->ch_ptr + 1) == 'b' || *(compiler->ch_ptr + 1) == 'B') {
1389 297899 26 else if (isdigit(*(compiler->ch_ptr + 1)) || *(compiler->ch_ptr + 1) == '_') {
5 297894 else if (isdigit(*(compiler->ch_ptr + 1)) || *(compiler->ch_ptr + 1) == '_') {
1407 20876 506347 if (digit == 16) {
1409 52096 21036 while(
1410 45 20991 SPVM_TOKE_is_hex_number(compiler, *compiler->ch_ptr) || *compiler->ch_ptr == '_'
1411 52 20939 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
53 20886 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
2 20884 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
4 20880 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
4 20876 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
1415 52204 52 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
52151 53 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
2 52149 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
1418 52203 53 if (*compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
2 52201 if (*compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
1425 506316 31 else if (digit == 8 || digit == 2) {
32 506284 else if (digit == 8 || digit == 2) {
1427 949 93 while(
1429 30 63 || *compiler->ch_ptr == '_'
1437 98524 509439 while(
1439 2793 506646 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
68 506578 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
83 506495 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
149 506346 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
14 506332 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
1440 48 506284 || *compiler->ch_ptr == '_'
1444 98886 2793 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E') {
98737 149 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E') {
14 98723 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E') {
1460 723952 527223 for (i = 0; i < str_len; i++) {
1461 723820 132 if (*(number_literal_begin_ptr + i) != '_') {
1469 55 527168 if (is_hex_floating_number && !isdigit(*(compiler->ch_ptr - 1))) {
13 42 if (is_hex_floating_number && !isdigit(*(compiler->ch_ptr - 1))) {
1482 527211 12 if (*compiler->ch_ptr == 'l' || *compiler->ch_ptr == 'L') {
5548 521663 if (*compiler->ch_ptr == 'l' || *compiler->ch_ptr == 'L') {
1488 520312 1351 else if (*compiler->ch_ptr == 'f' || *compiler->ch_ptr == 'F') {
8 520304 else if (*compiler->ch_ptr == 'f' || *compiler->ch_ptr == 'F') {
1494 520251 53 else if (*compiler->ch_ptr == 'd' || *compiler->ch_ptr == 'D') {
4 520247 else if (*compiler->ch_ptr == 'd' || *compiler->ch_ptr == 'D') {
1504 2081 518166 if (is_floating_number) {
1516 518166 9057 if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
1522 19630 498536 if (digit == 16) {
1525 19 498517 else if (digit == 8) {
1528 18 498499 else if (digit == 2) {
1531 498499 0 else if (digit == 10) {
1540 0 518166 if (*end != '\0') {
1543 0 518166 else if (errno == ERANGE) {
1547 498536 19630 if (digit == 16 || digit == 8 || digit == 2) {
498517 19 if (digit == 16 || digit == 8 || digit == 2) {
18 498499 if (digit == 16 || digit == 8 || digit == 2) {
1548 3 19664 if (num_uint64_nosign > UINT32_MAX) {
1553 44464 454035 if (minus) {
1554 1 44463 if (num_uint64_nosign > ((uint32_t)INT32_MAX + 1)) {
1559 2 454033 if (num_uint64_nosign > INT32_MAX) {
1566 6 518160 if (out_of_range) {
1567 1 5 SPVM_COMPILER_error(compiler, "The numeric literal \"%s%s\" is out of range of maximum and minimum values of int type.\n at %s line %d", minus ? "-" : "", numeric_literal, compiler->current_file, compiler->current_line);
1570 498536 19630 if (digit == 16 || digit == 8 || digit == 2) {
498517 19 if (digit == 16 || digit == 8 || digit == 2) {
18 498499 if (digit == 16 || digit == 8 || digit == 2) {
1572 12 19655 if (minus) {
1577 44464 454035 num.ival = minus ? (int32_t)-num_uint64_nosign : (int32_t)num_uint64_nosign;
1581 5560 3497 else if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
1586 1190 4370 if (digit == 16) {
1589 12 4358 else if (digit == 8) {
1592 14 4344 else if (digit == 2) {
1595 4344 0 else if (digit == 10) {
1604 0 5560 if (*end != '\0') {
1607 3 5557 else if (errno == ERANGE) {
1611 4369 1188 if (digit == 16 || digit == 8 || digit == 2) {
4357 12 if (digit == 16 || digit == 8 || digit == 2) {
13 4344 if (digit == 16 || digit == 8 || digit == 2) {
1617 1204 3140 if (minus) {
1618 1 1203 if (num_uint64_nosign > ((uint64_t)INT64_MAX + 1)) {
1623 1 3139 if (num_uint64_nosign > INT64_MAX) {
1630 5 5555 if (invalid) {
1631 1 4 SPVM_COMPILER_error(compiler, "The numeric literal \"%s%s%s\" is out of range of maximum and minimum values of long type.\n at %s line %d", minus ? "-" : "", numeric_literal, suffix, compiler->current_file, compiler->current_line);
1634 4370 1190 if (digit == 16 || digit == 8 || digit == 2) {
4358 12 if (digit == 16 || digit == 8 || digit == 2) {
14 4344 if (digit == 16 || digit == 8 || digit == 2) {
1636 12 1204 if (minus) {
1641 1204 3140 num.lval = minus ? (int64_t)-num_uint64_nosign : (int64_t)num_uint64_nosign;
1645 1359 2138 else if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT) {
1648 0 1359 if (*end != '\0') {
1652 18 1341 if (minus) {
1657 2138 0 else if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE) {
1660 0 2138 if (*end != '\0') {
1663 46 2092 if (minus) {
1671 0 527223 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == numeric_literal_memoyr_blocks_count);
1702 69058 3475479 else if (isalpha(ch) || ch == '_') {
69057 1 else if (isalpha(ch) || ch == '_') {
1713 15752339 4197515 while(isalnum(*compiler->ch_ptr)
1714 589405 3608110 || *compiler->ch_ptr == '_'
1715 64153 3543957 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':'))
63574 579 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':'))
1717 63574 16341744 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
63574 0 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
1734 2465938 3544536 while (SPVM_TOKE_is_white_space(compiler, *fat_camma_check_ptr)) {
1737 64874 3479662 if (*fat_camma_check_ptr == '=' && *(fat_camma_check_ptr + 1) == '>') {
91 64783 if (*fat_camma_check_ptr == '=' && *(fat_camma_check_ptr + 1) == '>') {
1746 3544445 91 if (next_is_fat_camma) {
1749 3090289 454156 else if (expect_method_name) {
1752 2910928 179361 else if (expect_field_name) {
1760 2 562 if (strcmp(symbol_name, "alias") == 0) {
1764 533 29 else if (strcmp(symbol_name, "allow") == 0) {
1768 11 18 else if (strcmp(symbol_name, "args_width") == 0) {
1772 17 1 else if (strcmp(symbol_name, "as") == 0) {
1779 64 33645 if (strcmp(symbol_name, "basic_type_id") == 0) {
1783 8108 25537 else if (strcmp(symbol_name, "break") == 0) {
1787 25536 1 else if (strcmp(symbol_name, "byte") == 0) {
1794 20 47985 if (strcmp(symbol_name, "can") == 0) {
1798 9719 38266 else if (strcmp(symbol_name, "case") == 0) {
1802 1657 36609 else if (strcmp(symbol_name, "cmp") == 0) {
1806 34937 1672 else if (strcmp(symbol_name, "class") == 0) {
1810 14 1658 else if (strcmp(symbol_name, "compile_type_name") == 0) {
1814 1657 1 else if (strcmp(symbol_name, "copy") == 0) {
1821 578 174447 if (strcmp(symbol_name, "default") == 0) {
1825 142703 31744 else if (strcmp(symbol_name, "die") == 0) {
1829 7 31737 else if (strcmp(symbol_name, "divui") == 0) {
1833 7 31730 else if (strcmp(symbol_name, "divul") == 0) {
1837 31672 58 else if (strcmp(symbol_name, "double") == 0) {
1841 58 0 else if (strcmp(symbol_name, "dump") == 0) {
1848 25614 67012 if (strcmp(symbol_name, "elsif") == 0) {
1852 47948 19064 else if (strcmp(symbol_name, "else") == 0) {
1856 3249 15815 else if (strcmp(symbol_name, "enum") == 0) {
1860 10599 5216 else if (strcmp(symbol_name, "eq") == 0) {
1864 2075 3141 else if (strcmp(symbol_name, "eval") == 0) {
1868 10 3131 else if (strcmp(symbol_name, "eval_error_id") == 0) {
1872 3131 0 else if (strcmp(symbol_name, "extends") == 0) {
1879 43269 25635 if (strcmp(symbol_name, "for") == 0) {
1883 25607 28 else if (strcmp(symbol_name, "float") == 0) {
1887 28 0 else if (strcmp(symbol_name, "false") == 0) {
1894 46 49 if (strcmp(symbol_name, "gt") == 0) {
1898 46 3 else if (strcmp(symbol_name, "ge") == 0) {
1905 27796 0 if (strcmp(symbol_name, "has") == 0) {
1913 140746 318677 if (strcmp(symbol_name, "if") == 0) {
1917 1386 317291 else if (strcmp(symbol_name, "interface") == 0) {
1921 301806 15485 else if (strcmp(symbol_name, "int") == 0) {
1925 5864 9621 else if (strcmp(symbol_name, "interface_t") == 0) {
1930 4645 4976 else if (strcmp(symbol_name, "isa") == 0) {
1934 20 4956 else if (strcmp(symbol_name, "isa_error") == 0) {
1938 8 4948 else if (strcmp(symbol_name, "isweak") == 0) {
1942 16 4932 else if (strcmp(symbol_name, "is_compile_type") == 0) {
1946 3809 1123 else if (strcmp(symbol_name, "is_type") == 0) {
1950 18 1105 else if (strcmp(symbol_name, "is_error") == 0) {
1954 1073 32 else if (strcmp(symbol_name, "is_read_only") == 0) {
1961 12242 57033 if (strcmp(symbol_name, "last") == 0) {
1965 20746 36287 else if (strcmp(symbol_name, "length") == 0) {
1969 46 36241 else if (strcmp(symbol_name, "lt") == 0) {
1975 46 36195 else if (strcmp(symbol_name, "le") == 0) {
1981 36195 0 else if (strcmp(symbol_name, "long") == 0) {
1988 1068 614305 if (strcmp(symbol_name, "make_read_only") == 0) {
1992 360735 253570 else if (strcmp(symbol_name, "my") == 0) {
1997 283 253287 else if (strcmp(symbol_name, "mulnum_t") == 0) {
2002 243626 9661 else if (strcmp(symbol_name, "method") == 0) {
2010 9661 0 else if (strcmp(symbol_name, "mutable") == 0) {
2017 66059 45314 if (strcmp(symbol_name, "native") == 0) {
2023 576 44738 else if (strcmp(symbol_name, "ne") == 0) {
2027 23 44715 else if (strcmp(symbol_name, "next") == 0) {
2031 39915 4800 else if (strcmp(symbol_name, "new") == 0) {
2035 4797 3 else if (strcmp(symbol_name, "new_string_len") == 0) {
2042 20 59867 if (strcmp(symbol_name, "of") == 0) {
2046 8180 51687 else if (strcmp(symbol_name, "our") == 0) {
2050 51685 2 else if (strcmp(symbol_name, "object") == 0) {
2057 253 60026 if (strcmp(symbol_name, "print") == 0) {
2061 15529 44497 else if (strcmp(symbol_name, "private") == 0) {
2067 229 44268 else if (strcmp(symbol_name, "protected") == 0) {
2073 1624 42644 else if (strcmp(symbol_name, "public") == 0) {
2079 39621 3023 else if (strcmp(symbol_name, "precompile") == 0) {
2085 3022 1 else if (strcmp(symbol_name, "pointer") == 0) {
2094 7 203501 if (strcmp(symbol_name, "remui") == 0) {
2098 538 202963 else if (strcmp(symbol_name, "remul") == 0) {
2102 171938 31025 else if (strcmp(symbol_name, "return") == 0) {
2106 12 31013 else if (strcmp(symbol_name, "require") == 0) {
2110 5847 25166 else if (strcmp(symbol_name, "required") == 0) {
2115 1512 23654 else if (strcmp(symbol_name, "rw") == 0) {
2120 23619 35 else if (strcmp(symbol_name, "ro") == 0) {
2128 60 298969 if (strcmp(symbol_name, "say") == 0) {
2132 146419 152550 else if (strcmp(symbol_name, "static") == 0) {
2137 1676 150874 else if (strcmp(symbol_name, "switch") == 0) {
2141 131102 19772 else if (strcmp(symbol_name, "string") == 0) {
2145 19758 14 else if (strcmp(symbol_name, "short") == 0) {
2149 10 4 else if (strcmp(symbol_name, "scalar") == 0) {
2159 30 2139 if (strcmp(symbol_name, "true") == 0) {
2163 2137 2 else if (strcmp(symbol_name, "type_name") == 0) {
2170 41949 188507 if (strcmp(symbol_name, "undef") == 0) {
2174 159090 29417 else if (strcmp(symbol_name, "unless") == 0) {
2178 4 29413 else if (strcmp(symbol_name, "unweaken") == 0) {
2182 29413 0 else if (strcmp(symbol_name, "use") == 0) {
2189 206 69296 if (strcmp(symbol_name, "version") == 0) {
2193 69296 0 else if (strcmp(symbol_name, "void") == 0) {
2200 262 26619 if (strcmp(symbol_name, "warn") == 0) {
2204 26572 47 else if (strcmp(symbol_name, "while") == 0) {
2208 45 2 else if (strcmp(symbol_name, "weaken") == 0) {
2212 2 0 else if (strcmp(symbol_name, "wo") == 0) {
2220 1548 12652 if (strcmp(symbol_name, "INIT") == 0) {
2227 3 45 if (strcmp(symbol_name, "__END__") == 0) {
2235 3 42 else if (strcmp(symbol_name, "__PACKAGE__") == 0) {
2239 4 38 else if (strcmp(symbol_name, "__FILE__") == 0) {
2244 23 15 else if (strcmp(symbol_name, "__LINE__") == 0) {
2256 2655375 889161 if (keyword_token > 0) {
2264 3 889158 if (strstr(symbol_name, "__")) {
2269 882003 7158 if (symbol_name_length >= 2 && symbol_name[symbol_name_length - 2] == ':' && symbol_name[symbol_name_length - 1] == ':' ) {
2 882001 if (symbol_name_length >= 2 && symbol_name[symbol_name_length - 2] == ':' && symbol_name[symbol_name_length - 1] == ':' ) {
1 1 if (symbol_name_length >= 2 && symbol_name[symbol_name_length - 2] == ':' && symbol_name[symbol_name_length - 1] == ':' ) {
2274 1 889160 if (strstr(symbol_name, "::::")) {
2279 0 889161 assert(!(symbol_name[0] == ':' && symbol_name[1] == ':'));
0 0 assert(!(symbol_name[0] == ':' && symbol_name[1] == ':'));
2282 0 889161 assert(!isdigit(symbol_name[0]));
2286 91 889070 if (next_is_fat_camma) {
2288 91 0 if (symbol_name_length >= 2 && strstr(symbol_name, "::")) {
1 90 if (symbol_name_length >= 2 && strstr(symbol_name, "::")) {
2333 3594 128991 if (op_use_stack->length == 0) {
2336 128991 0 else if (op_use_stack->length > 0) {
2345 2 128989 if (islower(basic_type_name[0])) {
2353 1045520 128987 for (int32_t i = 0; i < basic_type_name_length; i++) {
2354 787542 257978 if (i > 1) {
2355 65972 721570 if (basic_type_name[i - 2] == ':' && basic_type_name[i - 1] == ':') {
32988 32984 if (basic_type_name[i - 2] == ':' && basic_type_name[i - 1] == ':') {
2356 2 32986 if (islower(basic_type_name[i])) {
2365 1 128986 if (strstr(basic_type_name, "__")) {
2371 128986 0 if (basic_type_name_length >= 2 && basic_type_name[basic_type_name_length - 2] == ':' && basic_type_name[basic_type_name_length - 1] == ':' ) {
1 128985 if (basic_type_name_length >= 2 && basic_type_name[basic_type_name_length - 2] == ':' && basic_type_name[basic_type_name_length - 1] == ':' ) {
1 0 if (basic_type_name_length >= 2 && basic_type_name[basic_type_name_length - 2] == ':' && basic_type_name[basic_type_name_length - 1] == ':' ) {
2377 1 128984 if (strstr(basic_type_name, "::::")) {
2383 128984 0 if (basic_type_name_length >= 2 && basic_type_name[0] == ':' && basic_type_name[1] == ':') {
1 128983 if (basic_type_name_length >= 2 && basic_type_name[0] == ':' && basic_type_name[1] == ':') {
1 0 if (basic_type_name_length >= 2 && basic_type_name[0] == ':' && basic_type_name[1] == ':') {
2389 128983 0 if (basic_type_name_length >= 1 && isdigit(basic_type_name[0])) {
1 128982 if (basic_type_name_length >= 1 && isdigit(basic_type_name[0])) {
2397 94037 34945 if (basic_type) {
2406 312734 34945 while (*ch_ptr_orig) {
2407 11257 301477 if (*ch_ptr_orig == ':' && *(ch_ptr_orig + 1) == ':') {
11257 0 if (*ch_ptr_orig == ':' && *(ch_ptr_orig + 1) == ':') {
2427 16932 18013 if (!class_file) {
2432 61246 9 for (int32_t i = 0; i < include_dirs_length; i++) {
2442 2986453 61246 for (int32_t i = 0; i < file_name_length; i++) {
2443 0 2986453 if (current_file[i] == '\\') {
2450 16923 44323 if (fh) {
2457 9 16923 if (!fh) {
2458 4 5 if (!op_use->uv.use->is_require) {
2460 41 4 for (int32_t i = 0; i < include_dirs_length; i++) {
2466 41 4 for (int32_t i = 0; i < include_dirs_length; i++) {
2470 37 4 if (i != include_dirs_length - 1) {
2486 0 16923 if (source_length < 0) {
2493 0 16923 if ((int32_t)fread(source, 1, source_length, fh) < source_length) {
2499 16923 0 if (!read_error) {
2505 16923 0 if (!found_class_file) {
2520 34936 5 if (class_file) {
2521 0 34936 if (!class_file->content) {
2528 0 34936 if (!(class_file->content_length >= 0)) {
2537 0 34936 if (!class_file->rel_file) {
2547 16924 18012 if (class_file->file) {
2562 5 0 if (op_use->uv.use->is_require) {
2599 3544542 2465937 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
3544542 0 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
3544536 6 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
3544536 0 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
0 3544536 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
2610 3581 715 if (ch >= '0' && ch <= '7') {
1877 1704 if (ch >= '0' && ch <= '7') {
2621 64452 12039 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
1306 63146 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
103 1203 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
42414 20835 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
40932 1482 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
2635 111 701 if (*ch_ptr == 'o') {
2638 111 0 if (*ch_ptr == '{') {
2641 1 110 if (!SPVM_TOKE_is_octal_number(compiler, *ch_ptr)) {
2654 1066 810 while (SPVM_TOKE_is_octal_number(compiler, *ch_ptr)) {
2655 1 1065 if (octal_escape_char_index >= 3) {
2663 811 0 if (strlen(octal_escape_char) > 0) {
2666 1 810 if (number > 255) {
2673 109 701 if (has_brace) {
2674 108 1 if (*ch_ptr == '}') {
2695 16 1245 if (*ch_ptr == '{') {
2702 1977 1257 while (SPVM_TOKE_is_hex_number(compiler, *ch_ptr)) {
2703 4 1973 if (hex_escape_char_index >= 2) {
2711 1257 4 if (strlen(hex_escape_char) > 0) {
2719 16 1245 if (has_brace) {
2720 14 2 if (*ch_ptr == '}') {
2739 22 0 if (code_point >= 0 && code_point <= 0x10FFFF) {
22 0 if (code_point >= 0 && code_point <= 0x10FFFF) {
2740 7 15 if (!(code_point >= 0xD800 && code_point <= 0xDFFF)) {
4 3 if (!(code_point >= 0xD800 && code_point <= 0xDFFF)) {
2749 0 19 if (uc < 0x00) {
2751 0 19 } else if (uc < 0x80) {
2754 0 19 } else if (uc < 0x800) {
2760 15 4 } else if (uc < 0x10000) {
2765 4 0 } else if (uc < 0x110000) {
2781 7167368 3156063 if (*ch == '\n' || *ch == '\r') {
735 7166633 if (*ch == '\n' || *ch == '\r') {
2792 735 3156063 if (**ch_ptr_ptr == '\r' && *(*ch_ptr_ptr + 1) == '\n') {
679 56 if (**ch_ptr_ptr == '\r' && *(*ch_ptr_ptr + 1) == '\n') {
2796 56 3156063 else if (**ch_ptr_ptr == '\n' || **ch_ptr_ptr == '\r') {
56 0 else if (**ch_ptr_ptr == '\n' || **ch_ptr_ptr == '\r') {