Branch Coverage

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


line true false branch
36 2111 15605101 if (compiler->ch_ptr == NULL) {
72 39726437 3592 if (!compiler->current_class_content || source_index >= compiler->current_class_content_length) {
68785 39657652 if (!compiler->current_class_content || source_index >= compiler->current_class_content_length) {
75 34392 37985 if (!end_of_file) {
85 3529 34456 if (!success) {
89 34456 0 if (compiler->current_class_content) {
98 8526 39649126 if (compiler->ch_ptr == compiler->next_string_literal_ch_ptr) {
107 34104 39623548 if (var_expansion_state > 0) {
134 21 39623527 else if (previous_token_is_heredoc) {
157 0 3047549 assert(SPVM_TOKE_is_line_terminator(compiler, compiler->ch_ptr));
170 8526 28278 if (var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_FIRST_CONCAT) {
176 8526 19752 else if (var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_SECOND_CONCAT) {
183 8379 11373 if (*compiler->ch_ptr == '=') {
203 80994 105804 if (*compiler->ch_ptr == '+') {
208 5867 99937 else if (*compiler->ch_ptr == '=') {
228 45102 557834 if (isdigit(*compiler->ch_ptr)) {
232 486204 71630 else if (*compiler->ch_ptr == '>') {
240 10201 61429 else if (*compiler->ch_ptr == '-') {
245 14 61415 else if (*compiler->ch_ptr == '=') {
264 537 9979 if (*compiler->ch_ptr == '=') {
284 14 5398 if (*compiler->ch_ptr == '=') {
301 10 2172 if (*compiler->ch_ptr == '=') {
318 10 36 if (*compiler->ch_ptr == '=') {
336 8092 52 if (*compiler->ch_ptr == '|') {
342 10 42 else if (*compiler->ch_ptr == '=') {
361 48421 51551 if (*compiler->ch_ptr == '&') {
368 10 51541 else if (*compiler->ch_ptr == '=') {
378 15750 35791 else if (isalpha(*compiler->ch_ptr) || *compiler->ch_ptr == '_') {
14646 1104 else if (isalpha(*compiler->ch_ptr) || *compiler->ch_ptr == '_') {
397 66611 1263606 if (is_line_terminator) {
402 1263606 66611 if (is_line_terminator || *compiler->ch_ptr == '\0') {
1263600 6 if (is_line_terminator || *compiler->ch_ptr == '\0') {
415 703678 0 if (compiler->ch_ptr == compiler->current_class_content || *(compiler->ch_ptr - 1) == '\n') {
6 703672 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 68531 635141 if (*compiler->ch_ptr == '=') {
456 4973 630168 if (*compiler->ch_ptr == '>') {
474 79 161748 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 81284 80464 else if (*compiler->ch_ptr == '=') {
617 6488 74796 if (*compiler->ch_ptr == '>') {
642 76 90874 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 69734 21140 else if (*compiler->ch_ptr == '=') {
701 18050 3157 if (*compiler->ch_ptr == '=') {
726 2 49654 if (*compiler->ch_ptr == '\'') {
731 3521 46133 if (*compiler->ch_ptr == '\\') {
733 2 3519 if (*compiler->ch_ptr == 'a') {
737 7 3512 else if (*compiler->ch_ptr == 't') {
741 1051 2461 else if (*compiler->ch_ptr == 'n') {
745 5 2456 else if (*compiler->ch_ptr == 'f') {
749 528 1928 else if (*compiler->ch_ptr == 'r') {
753 3 1925 else if (*compiler->ch_ptr == '\'') {
757 3 1922 else if (*compiler->ch_ptr == '"') {
761 211 1711 else if (*compiler->ch_ptr == '\\') {
766 1148 563 else if (SPVM_TOKE_is_octal_number(compiler, *compiler->ch_ptr) || *compiler->ch_ptr == 'o') {
39 1109 else if (SPVM_TOKE_is_octal_number(compiler, *compiler->ch_ptr) || *compiler->ch_ptr == 'o') {
770 1107 2 else if (*compiler->ch_ptr == 'x') {
783 49645 9 if (*compiler->ch_ptr == '\'') {
800 8526 187340 if (var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_BEGIN_NEXT_STRING_LITERAL) {
815 6617 189249 if (*(compiler->ch_ptr) == '"') {
825 180719 6000265 if (*compiler->ch_ptr == '"') {
829 8534 5991731 else if (*compiler->ch_ptr == '$') {
830 8529 5 if (*(compiler->ch_ptr + 1) == '"') {
842 8 8521 if (*next_string_literal_ch_ptr == '$') {
849 17 8512 if (*next_string_literal_ch_ptr == '{') {
855 10 8519 if (*next_string_literal_ch_ptr == '@') {
857 4 6 if (var_have_brace) {
859 4 0 if (*next_string_literal_ch_ptr == '}') {
868 12823 57327 if (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
4292 8531 if (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
871 16 8515 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 8506 else if (*next_string_literal_ch_ptr == '}') {
875 13 0 if (var_have_brace) {
888 8506 13 if (!var_have_brace && !var_is_ref) {
8502 4 if (!var_have_brace && !var_is_ref) {
894 8502 12 if (!has_arrow) {
895 141 8361 if (*next_string_literal_ch_ptr == '-' && *(next_string_literal_ch_ptr + 1) == '>') {
137 4 if (*next_string_literal_ch_ptr == '-' && *(next_string_literal_ch_ptr + 1) == '>') {
904 149 0 if (has_arrow) {
906 29 120 if (*next_string_literal_ch_ptr == '{') {
910 119 1 else if (*next_string_literal_ch_ptr == '[') {
920 170 156 while (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
8 148 while (isalnum(*next_string_literal_ch_ptr) || *next_string_literal_ch_ptr == '_') {
924 29 119 if (open_getting_field_brace) {
925 28 1 if (*next_string_literal_ch_ptr == '}') {
934 119 0 else if (open_bracket) {
935 118 1 if (*next_string_literal_ch_ptr == ']') {
948 4 142 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 134 12 if (!(*next_string_literal_ch_ptr == '{' || *next_string_literal_ch_ptr == '[')) {
134 0 if (!(*next_string_literal_ch_ptr == '{' || *next_string_literal_ch_ptr == '[')) {
964 1 5991730 else if (*compiler->ch_ptr == '\0') {
967 189246 5991735 if (string_literal_finished) {
972 196246 5795489 if (*compiler->ch_ptr == '\\') {
980 1 189245 if (*compiler->ch_ptr == '\0') {
993 5990839 189245 while (string_literal_ch_ptr != string_literal_end_ch_ptr) {
994 196246 5794593 if (*string_literal_ch_ptr == '\\') {
996 8 196238 if (*string_literal_ch_ptr == 'a') {
1001 17 196221 else if (*string_literal_ch_ptr == 't') {
1006 6825 189396 else if (*string_literal_ch_ptr == 'n') {
1011 9 189387 else if (*string_literal_ch_ptr == 'f') {
1016 15 189372 else if (*string_literal_ch_ptr == 'r') {
1021 3155 186217 else if (*string_literal_ch_ptr == '"') {
1026 185613 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 5794563 if (is_line_terminator) {
1210 0 195862 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == memory_blocks_count_tmp);
1217 8526 187336 if (next_var_expansion_state == SPVM_TOKE_C_VAR_EXPANSION_STATE_FIRST_CONCAT) {
1232 2496 2840589 if (*(compiler->ch_ptr + 1) == '$') {
1239 3217 2837372 else if (*(compiler->ch_ptr + 1) == '@') {
1246 34 2837338 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 2837338 if (*compiler->ch_ptr == '{') {
1267 16830858 3599616 while (
1269 761532 2838084 || (*compiler->ch_ptr) == '_'
1270 1246 2836838 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':')
716 530 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':')
1273 716 17592390 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
716 0 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
1296 0 2837368 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == memory_blocks_count_tmp_var_name_tmp);
1300 30 2837338 if (have_brace) {
1301 29 1 if (*compiler->ch_ptr == '}') {
1312 1 2837367 if (strstr(var_name, "__")) {
1317 2342366 495002 if (var_name_symbol_name_part_length >= 2 && var_name[1] == ':' && var_name[2] == ':') {
1 2342365 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 2342366 495002 if (var_name_symbol_name_part_length >= 2 && var_name[var_name_length - 1] == ':' && var_name[var_name_length - 2] == ':') {
2 2342364 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 2837366 if (strstr(var_name, "::::")) {
1332 2837368 0 if (var_name_symbol_name_part_length >= 1 && isdigit(var_name[1])) {
2 2837366 if (var_name_symbol_name_part_length >= 1 && isdigit(var_name[1])) {
1360 315668 6255766 if (before_token_is_arrow && ch == '{') {
149514 166154 if (before_token_is_arrow && ch == '{') {
1368 520859 3497914 if (isdigit(ch)) {
1373 45102 475757 if (before_char_is_minus) {
1379 314665 206194 if (*(compiler->ch_ptr) == '0') {
1381 294099 20566 if (*(compiler->ch_ptr + 1) == 'x' || *(compiler->ch_ptr + 1) == 'X') {
8 294091 if (*(compiler->ch_ptr + 1) == 'x' || *(compiler->ch_ptr + 1) == 'X') {
1385 294061 30 else if (*(compiler->ch_ptr + 1) == 'b' || *(compiler->ch_ptr + 1) == 'B') {
2 294059 else if (*(compiler->ch_ptr + 1) == 'b' || *(compiler->ch_ptr + 1) == 'B') {
1389 294033 26 else if (isdigit(*(compiler->ch_ptr + 1)) || *(compiler->ch_ptr + 1) == '_') {
5 294028 else if (isdigit(*(compiler->ch_ptr + 1)) || *(compiler->ch_ptr + 1) == '_') {
1407 20574 500285 if (digit == 16) {
1409 51366 20734 while(
1410 45 20689 SPVM_TOKE_is_hex_number(compiler, *compiler->ch_ptr) || *compiler->ch_ptr == '_'
1411 52 20637 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
53 20584 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
2 20582 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
4 20578 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
4 20574 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+'
1415 51474 52 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
51421 53 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
2 51419 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
1418 51473 53 if (*compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
2 51471 if (*compiler->ch_ptr == 'p' || *compiler->ch_ptr == 'P') {
1425 500254 31 else if (digit == 8 || digit == 2) {
32 500222 else if (digit == 8 || digit == 2) {
1427 949 93 while(
1429 30 63 || *compiler->ch_ptr == '_'
1437 97428 503397 while(
1439 2809 500588 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
68 500520 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
85 500435 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
151 500284 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
14 500270 || *compiler->ch_ptr == '.' || *compiler->ch_ptr == '-' || *compiler->ch_ptr == '+' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E'
1440 48 500222 || *compiler->ch_ptr == '_'
1444 97794 2809 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E') {
97643 151 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E') {
14 97629 if (*compiler->ch_ptr == '.' || *compiler->ch_ptr == 'e' || *compiler->ch_ptr == 'E') {
1460 715178 520859 for (i = 0; i < str_len; i++) {
1461 715046 132 if (*(number_literal_begin_ptr + i) != '_') {
1469 55 520804 if (is_hex_floating_number && !isdigit(*(compiler->ch_ptr - 1))) {
13 42 if (is_hex_floating_number && !isdigit(*(compiler->ch_ptr - 1))) {
1482 520847 12 if (*compiler->ch_ptr == 'l' || *compiler->ch_ptr == 'L') {
5482 515365 if (*compiler->ch_ptr == 'l' || *compiler->ch_ptr == 'L') {
1488 514006 1359 else if (*compiler->ch_ptr == 'f' || *compiler->ch_ptr == 'F') {
8 513998 else if (*compiler->ch_ptr == 'f' || *compiler->ch_ptr == 'F') {
1494 513945 53 else if (*compiler->ch_ptr == 'd' || *compiler->ch_ptr == 'D') {
4 513941 else if (*compiler->ch_ptr == 'd' || *compiler->ch_ptr == 'D') {
1504 2081 511860 if (is_floating_number) {
1516 511860 8999 if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
1522 19344 492516 if (digit == 16) {
1525 19 492497 else if (digit == 8) {
1528 18 492479 else if (digit == 2) {
1531 492479 0 else if (digit == 10) {
1540 0 511860 if (*end != '\0') {
1543 0 511860 else if (errno == ERANGE) {
1547 492516 19344 if (digit == 16 || digit == 8 || digit == 2) {
492497 19 if (digit == 16 || digit == 8 || digit == 2) {
18 492479 if (digit == 16 || digit == 8 || digit == 2) {
1548 3 19378 if (num_uint64_nosign > UINT32_MAX) {
1553 43822 448657 if (minus) {
1554 1 43821 if (num_uint64_nosign > ((uint32_t)INT32_MAX + 1)) {
1559 2 448655 if (num_uint64_nosign > INT32_MAX) {
1566 6 511854 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 492516 19344 if (digit == 16 || digit == 8 || digit == 2) {
492497 19 if (digit == 16 || digit == 8 || digit == 2) {
18 492479 if (digit == 16 || digit == 8 || digit == 2) {
1572 12 19369 if (minus) {
1577 43822 448657 num.ival = minus ? (int32_t)-num_uint64_nosign : (int32_t)num_uint64_nosign;
1581 5494 3505 else if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
1586 1174 4320 if (digit == 16) {
1589 12 4308 else if (digit == 8) {
1592 14 4294 else if (digit == 2) {
1595 4294 0 else if (digit == 10) {
1604 0 5494 if (*end != '\0') {
1607 3 5491 else if (errno == ERANGE) {
1611 4319 1172 if (digit == 16 || digit == 8 || digit == 2) {
4307 12 if (digit == 16 || digit == 8 || digit == 2) {
13 4294 if (digit == 16 || digit == 8 || digit == 2) {
1617 1190 3104 if (minus) {
1618 1 1189 if (num_uint64_nosign > ((uint64_t)INT64_MAX + 1)) {
1623 1 3103 if (num_uint64_nosign > INT64_MAX) {
1630 5 5489 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 4320 1174 if (digit == 16 || digit == 8 || digit == 2) {
4308 12 if (digit == 16 || digit == 8 || digit == 2) {
14 4294 if (digit == 16 || digit == 8 || digit == 2) {
1636 12 1188 if (minus) {
1641 1190 3104 num.lval = minus ? (int64_t)-num_uint64_nosign : (int64_t)num_uint64_nosign;
1645 1367 2138 else if (constant_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT) {
1648 0 1367 if (*end != '\0') {
1652 18 1349 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 48 2090 if (minus) {
1671 0 520859 assert(compiler->current_each_compile_allocator->memory_blocks_count_tmp == numeric_literal_memoyr_blocks_count);
1702 68002 3429912 else if (isalpha(ch) || ch == '_') {
68001 1 else if (isalpha(ch) || ch == '_') {
1713 15557386 4144788 while(isalnum(*compiler->ch_ptr)
1714 583953 3560835 || *compiler->ch_ptr == '_'
1715 63493 3497342 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':'))
62922 571 || (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':'))
1717 62922 16141339 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
62922 0 if (*compiler->ch_ptr == ':' && *(compiler->ch_ptr + 1) == ':') {
1734 2433285 3497913 while (SPVM_TOKE_is_white_space(compiler, *fat_camma_check_ptr)) {
1737 63964 3433949 if (*fat_camma_check_ptr == '=' && *(fat_camma_check_ptr + 1) == '>') {
91 63873 if (*fat_camma_check_ptr == '=' && *(fat_camma_check_ptr + 1) == '>') {
1746 3497822 91 if (next_is_fat_camma) {
1749 3049416 448406 else if (expect_method_name) {
1752 2872443 176973 else if (expect_field_name) {
1760 2 554 if (strcmp(symbol_name, "alias") == 0) {
1764 525 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 33231 if (strcmp(symbol_name, "basic_type_id") == 0) {
1783 7988 25243 else if (strcmp(symbol_name, "break") == 0) {
1787 25242 1 else if (strcmp(symbol_name, "byte") == 0) {
1794 20 47313 if (strcmp(symbol_name, "can") == 0) {
1798 9575 37738 else if (strcmp(symbol_name, "case") == 0) {
1802 1633 36105 else if (strcmp(symbol_name, "cmp") == 0) {
1806 34457 1648 else if (strcmp(symbol_name, "class") == 0) {
1810 14 1634 else if (strcmp(symbol_name, "compile_type_name") == 0) {
1814 1633 1 else if (strcmp(symbol_name, "copy") == 0) {
1821 570 171911 if (strcmp(symbol_name, "default") == 0) {
1825 140561 31350 else if (strcmp(symbol_name, "die") == 0) {
1829 7 31343 else if (strcmp(symbol_name, "divui") == 0) {
1833 7 31336 else if (strcmp(symbol_name, "divul") == 0) {
1837 31278 58 else if (strcmp(symbol_name, "double") == 0) {
1841 58 0 else if (strcmp(symbol_name, "dump") == 0) {
1848 25232 66150 if (strcmp(symbol_name, "elsif") == 0) {
1852 47236 18914 else if (strcmp(symbol_name, "else") == 0) {
1856 3203 15711 else if (strcmp(symbol_name, "enum") == 0) {
1860 10455 5256 else if (strcmp(symbol_name, "eq") == 0) {
1864 2153 3103 else if (strcmp(symbol_name, "eval") == 0) {
1868 10 3093 else if (strcmp(symbol_name, "eval_error_id") == 0) {
1872 3093 0 else if (strcmp(symbol_name, "extends") == 0) {
1879 42609 25325 if (strcmp(symbol_name, "for") == 0) {
1883 25295 30 else if (strcmp(symbol_name, "float") == 0) {
1887 30 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 27460 0 if (strcmp(symbol_name, "has") == 0) {
1913 138840 314523 if (strcmp(symbol_name, "if") == 0) {
1917 1394 313129 else if (strcmp(symbol_name, "interface") == 0) {
1921 297836 15293 else if (strcmp(symbol_name, "int") == 0) {
1925 5790 9503 else if (strcmp(symbol_name, "interface_t") == 0) {
1930 4599 4904 else if (strcmp(symbol_name, "isa") == 0) {
1934 20 4884 else if (strcmp(symbol_name, "isa_error") == 0) {
1938 8 4876 else if (strcmp(symbol_name, "isweak") == 0) {
1942 16 4860 else if (strcmp(symbol_name, "is_compile_type") == 0) {
1946 3753 1107 else if (strcmp(symbol_name, "is_type") == 0) {
1950 18 1089 else if (strcmp(symbol_name, "is_error") == 0) {
1954 1057 32 else if (strcmp(symbol_name, "is_read_only") == 0) {
1961 12058 56261 if (strcmp(symbol_name, "last") == 0) {
1965 20434 35827 else if (strcmp(symbol_name, "length") == 0) {
1969 46 35781 else if (strcmp(symbol_name, "lt") == 0) {
1975 46 35735 else if (strcmp(symbol_name, "le") == 0) {
1981 35735 0 else if (strcmp(symbol_name, "long") == 0) {
1988 1052 605983 if (strcmp(symbol_name, "make_read_only") == 0) {
1992 355845 250138 else if (strcmp(symbol_name, "my") == 0) {
1997 285 249853 else if (strcmp(symbol_name, "mulnum_t") == 0) {
2002 240336 9517 else if (strcmp(symbol_name, "method") == 0) {
2010 9517 0 else if (strcmp(symbol_name, "mutable") == 0) {
2017 64989 44724 if (strcmp(symbol_name, "native") == 0) {
2023 568 44156 else if (strcmp(symbol_name, "ne") == 0) {
2027 23 44133 else if (strcmp(symbol_name, "next") == 0) {
2031 39405 4728 else if (strcmp(symbol_name, "new") == 0) {
2035 4725 3 else if (strcmp(symbol_name, "new_string_len") == 0) {
2042 20 59055 if (strcmp(symbol_name, "of") == 0) {
2046 8116 50939 else if (strcmp(symbol_name, "our") == 0) {
2050 50937 2 else if (strcmp(symbol_name, "object") == 0) {
2057 203 59209 if (strcmp(symbol_name, "print") == 0) {
2061 15301 43908 else if (strcmp(symbol_name, "private") == 0) {
2067 231 43677 else if (strcmp(symbol_name, "protected") == 0) {
2073 1676 42001 else if (strcmp(symbol_name, "public") == 0) {
2079 39032 2969 else if (strcmp(symbol_name, "precompile") == 0) {
2085 2968 1 else if (strcmp(symbol_name, "pointer") == 0) {
2094 7 201377 if (strcmp(symbol_name, "remui") == 0) {
2098 530 200847 else if (strcmp(symbol_name, "remul") == 0) {
2102 170154 30693 else if (strcmp(symbol_name, "return") == 0) {
2106 12 30681 else if (strcmp(symbol_name, "require") == 0) {
2110 5773 24908 else if (strcmp(symbol_name, "required") == 0) {
2115 1572 23336 else if (strcmp(symbol_name, "rw") == 0) {
2120 23301 35 else if (strcmp(symbol_name, "ro") == 0) {
2128 60 295171 if (strcmp(symbol_name, "say") == 0) {
2132 144897 150274 else if (strcmp(symbol_name, "static") == 0) {
2137 1652 148622 else if (strcmp(symbol_name, "switch") == 0) {
2141 129056 19566 else if (strcmp(symbol_name, "string") == 0) {
2145 19552 14 else if (strcmp(symbol_name, "short") == 0) {
2149 10 4 else if (strcmp(symbol_name, "scalar") == 0) {
2159 32 2107 if (strcmp(symbol_name, "true") == 0) {
2163 2105 2 else if (strcmp(symbol_name, "type_name") == 0) {
2170 41405 185913 if (strcmp(symbol_name, "undef") == 0) {
2174 156994 28919 else if (strcmp(symbol_name, "unless") == 0) {
2178 4 28915 else if (strcmp(symbol_name, "unweaken") == 0) {
2182 28915 0 else if (strcmp(symbol_name, "use") == 0) {
2189 210 68250 if (strcmp(symbol_name, "version") == 0) {
2193 68250 0 else if (strcmp(symbol_name, "void") == 0) {
2200 264 26219 if (strcmp(symbol_name, "warn") == 0) {
2204 26172 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 1530 12482 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 2619946 877967 if (keyword_token > 0) {
2264 3 877964 if (strstr(symbol_name, "__")) {
2269 870741 7226 if (symbol_name_length >= 2 && symbol_name[symbol_name_length - 2] == ':' && symbol_name[symbol_name_length - 1] == ':' ) {
2 870739 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 877966 if (strstr(symbol_name, "::::")) {
2279 0 877967 assert(!(symbol_name[0] == ':' && symbol_name[1] == ':'));
0 0 assert(!(symbol_name[0] == ':' && symbol_name[1] == ':'));
2282 0 877967 assert(!isdigit(symbol_name[0]));
2286 91 877876 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 3516 126447 if (op_use_stack->length == 0) {
2336 126447 0 else if (op_use_stack->length > 0) {
2345 2 126445 if (islower(basic_type_name[0])) {
2353 1025042 126443 for (int32_t i = 0; i < basic_type_name_length; i++) {
2354 772152 252890 if (i > 1) {
2355 64576 707576 if (basic_type_name[i - 2] == ':' && basic_type_name[i - 1] == ':') {
32290 32286 if (basic_type_name[i - 2] == ':' && basic_type_name[i - 1] == ':') {
2356 2 32288 if (islower(basic_type_name[i])) {
2365 1 126442 if (strstr(basic_type_name, "__")) {
2371 126442 0 if (basic_type_name_length >= 2 && basic_type_name[basic_type_name_length - 2] == ':' && basic_type_name[basic_type_name_length - 1] == ':' ) {
1 126441 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 126440 if (strstr(basic_type_name, "::::")) {
2383 126440 0 if (basic_type_name_length >= 2 && basic_type_name[0] == ':' && basic_type_name[1] == ':') {
1 126439 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 126439 0 if (basic_type_name_length >= 1 && isdigit(basic_type_name[0])) {
1 126438 if (basic_type_name_length >= 1 && isdigit(basic_type_name[0])) {
2397 91973 34465 if (basic_type) {
2406 308666 34465 while (*ch_ptr_orig) {
2407 11087 297579 if (*ch_ptr_orig == ':' && *(ch_ptr_orig + 1) == ':') {
11087 0 if (*ch_ptr_orig == ':' && *(ch_ptr_orig + 1) == ':') {
2427 16692 17773 if (!class_file) {
2432 60244 9 for (int32_t i = 0; i < include_dirs_length; i++) {
2442 2937143 60244 for (int32_t i = 0; i < file_name_length; i++) {
2443 0 2937143 if (current_file[i] == '\\') {
2450 16683 43561 if (fh) {
2457 9 16683 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 16683 if (source_length < 0) {
2493 0 16683 if ((int32_t)fread(source, 1, source_length, fh) < source_length) {
2499 16683 0 if (!read_error) {
2505 16683 0 if (!found_class_file) {
2520 34456 5 if (class_file) {
2521 0 34456 if (!class_file->content) {
2528 0 34456 if (!(class_file->content_length >= 0)) {
2537 0 34456 if (!class_file->rel_file) {
2547 16684 17772 if (class_file->file) {
2562 5 0 if (op_use->uv.use->is_require) {
2599 3497919 2433284 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
3497919 0 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
3497913 6 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
3497913 0 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
0 3497913 if (ch == 0x20 || ch == 0x0D || ch == 0x0A || ch == 0x09 || ch == 0x0C) {
2610 3549 707 if (ch >= '0' && ch <= '7') {
1861 1688 if (ch >= '0' && ch <= '7') {
2621 63530 11889 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
1290 62240 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
103 1187 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
41812 20531 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
40344 1468 if (isdigit(ch) || (ch >= 'a' && ch <= 'f') || (ch >= 'A' && ch <= 'F')) {
2635 111 693 if (*ch_ptr == 'o') {
2638 111 0 if (*ch_ptr == '{') {
2641 1 110 if (!SPVM_TOKE_is_octal_number(compiler, *ch_ptr)) {
2654 1058 802 while (SPVM_TOKE_is_octal_number(compiler, *ch_ptr)) {
2655 1 1057 if (octal_escape_char_index >= 3) {
2663 803 0 if (strlen(octal_escape_char) > 0) {
2666 1 802 if (number > 255) {
2673 109 693 if (has_brace) {
2674 108 1 if (*ch_ptr == '}') {
2695 16 1229 if (*ch_ptr == '{') {
2702 1953 1241 while (SPVM_TOKE_is_hex_number(compiler, *ch_ptr)) {
2703 4 1949 if (hex_escape_char_index >= 2) {
2711 1241 4 if (strlen(hex_escape_char) > 0) {
2719 16 1229 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 7059162 3113561 if (*ch == '\n' || *ch == '\r') {
735 7058427 if (*ch == '\n' || *ch == '\r') {
2792 735 3113561 if (**ch_ptr_ptr == '\r' && *(*ch_ptr_ptr + 1) == '\n') {
679 56 if (**ch_ptr_ptr == '\r' && *(*ch_ptr_ptr + 1) == '\n') {
2796 56 3113561 else if (**ch_ptr_ptr == '\n' || **ch_ptr_ptr == '\r') {
56 0 else if (**ch_ptr_ptr == '\n' || **ch_ptr_ptr == '\r') {