Branch Coverage

lib/SPVM/Builder/src/spvm_check.c
Criterion Covered Total %
branch 1013 1156 87.6


line true false branch
44 2 3412 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
50 371 3041 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
65 9 3403 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
70 1 3402 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
75 8 3394 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
80 28 3366 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
85 325 3041 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
91 54495 3405 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
97 2735 51760 if (parent_basic_type_name) {
100 2 2733 if (!SPVM_BASIC_TYPE_is_class_type(compiler, parent_basic_type->id)) {
104 1 2732 if (!SPVM_BASIC_TYPE_is_class_type(compiler, basic_type->id)) {
109 2 2730 if (strcmp(basic_type->name, parent_basic_type->name) == 0) {
117 1380 54488 for (int32_t i = 0; i < basic_type->interface_decls->length; i++) {
121 2 1378 if (!SPVM_BASIC_TYPE_is_interface_type(compiler, interface_basic_type->id)) {
131 54324 3403 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
135 2720 54322 if (parent_basic_type) {
136 2 2718 if (strcmp(parent_basic_type->name, basic_type->name) == 0) {
148 54276 3403 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
158 2711 54276 if (parent_basic_type) {
168 56987 54276 for (int32_t basic_type_id = basic_type_merge_stack->length - 1; basic_type_id >= 0; basic_type_id--) {
173 1514 56987 for (int32_t interface_index = 0; interface_index < interface_basic_types->length; interface_index++) {
181 1650 54276 for (int32_t i = 0; i < merged_interface_basic_types->length; i++) {
184 136 1514 if (!found_interface_basic_type) {
194 54276 3403 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
196 8076 46200 if (basic_type->is_anon) {
199 0 8076 assert(found_ptr);
203 0 8076 assert(outer_basic_type);
212 54275 3402 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
218 7166 54274 for (int32_t class_var_index = 0; class_var_index < basic_type->class_vars->length; class_var_index++) {
224 1 7165 if (is_mulnum_t) {
233 54246 3394 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
239 7160 54246 for (int32_t class_var_index = 0; class_var_index < basic_type->class_vars->length; class_var_index++) {
245 0 7160 if (is_mulnum_t) {
252 7160 54246 for (int32_t i = 0; i < basic_type->class_vars->length; i++) {
259 272 53974 if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_MULNUM) {
263 1 271 if (!SPVM_TYPE_is_numeric_type(compiler, first_field_type->basic_type->id, first_field_type->dimension, first_field_type->flag)) {
269 1031 270 for (field_index = 0; field_index < basic_type->unmerged_fields->length; field_index++) {
272 1030 1 if (!(field_type->basic_type->id == first_field_type->basic_type->id && field_type->dimension == first_field_type->dimension)) {
0 1030 if (!(field_type->basic_type->id == first_field_type->basic_type->id && field_type->dimension == first_field_type->dimension)) {
306 2 268 if (!found_pos_ptr) {
313 25809 54241 for (int32_t field_index = 0; field_index < basic_type->unmerged_fields->length; field_index++) {
319 1 25808 if (is_mulnum_t) {
334 2708 54241 if (parent_basic_type) {
345 56949 54238 for (int32_t basic_type_id = basic_type_merge_stack->length - 1; basic_type_id >= 0; basic_type_id--) {
351 25949 56946 for (int32_t field_index = 0; field_index < fields_length; field_index++) {
355 3 25946 if (found_field_in_super_class) {
362 25805 141 if (strcmp(field->current_basic_type->name, current_basic_type->name) == 0) {
376 3 56946 if (compile_error) {
381 0 54241 if (!(merged_fields->length <= 65535)) {
386 25946 54241 for (int32_t field_index = 0; field_index < merged_fields->length; field_index++) {
398 3 54238 if (compile_error) {
408 54021 3366 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
416 33894 20127 if (init_method) {
422 28857 33894 for (int32_t i = use_basic_type_names->length - 1; i >= 0; i--) {
426 28857 0 if (use_basic_type) {
427 23751 5106 if (use_basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_CLASS) {
440 2681 31213 if (parent_basic_type_name) {
452 300052 54004 for (int32_t i = 0; i < basic_type->methods->length; i++) {
459 499808 300040 for (int32_t arg_index = 0; arg_index < method->args_length; arg_index++) {
468 59750 440058 if (op_optional_arg_default) {
470 55585 4165 if (SPVM_TYPE_is_numeric_type(compiler, arg_type->basic_type->id, arg_type->dimension, arg_type->flag)) {
471 2 55583 if (op_optional_arg_default->id != SPVM_OP_C_ID_CONSTANT) {
486 2 55581 if (!assignability) {
492 4160 5 else if (SPVM_TYPE_is_object_type(compiler, arg_type->basic_type->id, arg_type->dimension, arg_type->flag)) {
493 1 4159 if (op_optional_arg_default->id != SPVM_OP_C_ID_UNDEF) {
504 2 440056 if (found_optional_arg) {
512 142 499654 if (is_arg_type_is_mulnum_type) {
519 225151 274645 if (arg_index == method->args_length - 1) {
524 4 300036 if (!(args_width <= 255)) {
530 1 300035 if (SPVM_TYPE_is_ref_type(compiler, method->return_type->basic_type->id, method->return_type->dimension, method->return_type->flag)) {
536 8076 291959 if (method->outer_basic_type_name) {
548 300035 54004 for (int32_t i = 0; i < basic_type->methods->length; i++) {
552 6686 293349 if (basic_type->is_precompile) {
554 386 6300 if (method->is_init) {
557 24 6276 else if (method->is_enum) {
561 1755 4521 else if (!method->op_block) {
568 4521 2165 if (can_precompile) {
576 300035 54001 for (int32_t method_index = 0; method_index < basic_type->methods->length; method_index++) {
580 112647 187388 if (!method->is_class_method) {
583 112644 320 if (!parent_basic_type) {
589 251 69 if (parent_method) {
592 3 248 if (method_compatibility == 0) {
600 0 300032 assert(method->current_basic_type->class_file);
603 70812 229220 if (!method->op_block) {
604 118022 70812 for (int32_t arg_index = 0; arg_index < method->args_length; arg_index++) {
612 1628 53993 for (int32_t interface_basic_type_index = 0; interface_basic_type_index < basic_type->interface_basic_types->length; interface_basic_type_index++) {
615 1930 1620 for (int32_t interface_method_index = 0; interface_method_index < interface_basic_type->methods->length; interface_method_index++) {
621 1922 2200 if (!parent_basic_type) {
627 1962 238 if (parent_method) {
630 8 1954 if (method_compatibility == 0) {
643 52843 3041 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
648 23955 28888 if (basic_type->class_dir) {
651 39027 13816 if (basic_type->class_rel_file) {
654 171 52672 if (basic_type->version_string) {
659 6967 52843 for (int32_t class_var_index = 0; class_var_index < basic_type->class_vars->length; class_var_index++) {
664 25278 52843 for (int32_t field_index = 0; field_index < basic_type->fields->length; field_index++) {
669 295207 52843 for (int32_t method_index = 0; method_index < basic_type->methods->length; method_index++) {
675 295207 52518 for (int32_t method_index = 0; method_index < basic_type->methods->length; method_index++) {
678 225051 70156 if (method->op_block) {
680 10 225041 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
686 315 224726 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
692 0 224726 assert(SPVM_COMPILER_get_error_messages_length(compiler) == 0);
696 0 224726 assert(SPVM_COMPILER_get_error_messages_length(compiler) == 0);
700 0 224726 assert(SPVM_COMPILER_get_error_messages_length(compiler) == 0);
714 437371 2618700 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_UNKNOWN) {
717 0 437371 assert(unresolved_basic_type_name);
720 437360 11 if (found_basic_type) {
728 11 3056060 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_UNKNOWN) {
731 6 5 if (!if_require_not_found_basic_type_name) {
738 4018 3052047 if (SPVM_TYPE_is_ref_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
739 95 3923 if (!(SPVM_TYPE_is_numeric_ref_type(compiler, type->basic_type->id, type->dimension, type->flag) || SPVM_TYPE_is_mulnum_ref_type(compiler, type->basic_type->id, type->dimension, type->flag))) {
2 93 if (!(SPVM_TYPE_is_numeric_ref_type(compiler, type->basic_type->id, type->dimension, type->flag) || SPVM_TYPE_is_mulnum_ref_type(compiler, type->basic_type->id, type->dimension, type->flag))) {
745 12134 3043931 if (type->flag & SPVM_NATIVE_C_TYPE_FLAG_MUTABLE && !(type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_STRING && type->dimension == 0)) {
12132 2 if (type->flag & SPVM_NATIVE_C_TYPE_FLAG_MUTABLE && !(type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_STRING && type->dimension == 0)) {
1 12131 if (type->flag & SPVM_NATIVE_C_TYPE_FLAG_MUTABLE && !(type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_STRING && type->dimension == 0)) {
749 98871 2957194 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_ANY_OBJECT && type->dimension > 1) {
2 98869 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_ANY_OBJECT && type->dimension > 1) {
762 3040956 3414 for (int32_t i = 0; i < op_types->length; i++) {
765 2525390 515566 if (!op_type->uv.type->resolved_in_ast) {
773 12960 12964 if (op_class_var_access->uv.class_var_access->class_var) {
776 0 12964 assert(op_class_var_access->uv.class_var_access);
786 532 12432 if (colon_ptr) {
805 12964 0 if (found_basic_type) {
807 12960 4 if (found_class_var) {
817 0 172353 if (field_access->field) {
838 172351 3 if (found_field) {
842 2 1 if (!parent_basic_type) {
847 172351 2 if (found_field) {
857 20236 34005 if (basic_type->category != SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_CLASS) {
874 24936 34005 for (int32_t field_index = 0; field_index < basic_type->fields->length; field_index++) {
879 23538 1398 if (SPVM_TYPE_is_double_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)
880 1398 22140 || SPVM_TYPE_is_long_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
883 20742 1398 else if (SPVM_TYPE_is_float_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)
884 8574 12168 || SPVM_TYPE_is_int_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
887 1398 10770 else if (SPVM_TYPE_is_short_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
890 2101 8669 else if (SPVM_TYPE_is_byte_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
893 8669 0 else if (SPVM_TYPE_is_object_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
902 756 24180 if (next_offset % offset_size != 0) {
906 12631 12305 if (next_offset == alignment_size * (alignment_index + 1)) {
909 1570 10735 else if (next_offset > alignment_size * (alignment_index + 1)) {
914 0 1570 assert(offset % alignment_size == 0);
929 0 248605 if (call_method->method) {
936 163203 85402 if (call_method->is_class_method) {
940 49581 113622 if (call_method->is_current) {
956 163199 4 if (found_method && !found_method->is_class_method) {
1 163198 if (found_method && !found_method->is_class_method) {
960 163198 5 if (found_method) {
974 5353 80049 if (!(SPVM_TYPE_is_class_type(compiler, type->basic_type->id, type->dimension, type->flag) || SPVM_TYPE_is_interface_type(compiler, type->basic_type->id, type->dimension, type->flag))) {
2 5351 if (!(SPVM_TYPE_is_class_type(compiler, type->basic_type->id, type->dimension, type->flag) || SPVM_TYPE_is_interface_type(compiler, type->basic_type->id, type->dimension, type->flag))) {
985 114 85286 if (last_colon_pos) {
993 105 9 if (strstr(abs_method_name, "SUPER::") == abs_method_name) {
995 104 1 if (parent_basic_type) {
1002 0 9 if (!found_basic_type) {
1007 9 0 if (found_basic_type) {
1016 112 2 if (found_method) {
1018 0 112 if (found_method->is_class_method) {
1033 85281 5 if (found_method) {
1034 3 85278 if (found_method->is_class_method) {
1055 17410184 0 while (op_cur) {
1057 12 17410172 if (op_cur->id == SPVM_OP_C_ID_IF_REQUIRE) {
1067 7 5 if (found_basic_type) {
1082 9311527 8098657 if (op_cur->first) {
1088 753968 16656184 switch (op_cur->id) {
1091 530681 223287 if (op_type->uv.type->resolved_in_ast) {
1095 23864 506817 if (basic_type->is_anon) {
1103 10 530671 if (unresolved_basic_type_name) {
1109 10 530671 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1119 225041 17185101 if (op_cur == op_root) {
1128 7873606 9311495 if (op_cur->moresib) {
1137 225041 7873606 if (finish) {
1146 0 225041 if (!method->op_block) {
1164 17409413 0 while (op_cur) {
1171 1300629 228471 if (!block->no_scope) {
1176 67619 1461481 if (block->id == SPVM_BLOCK_C_ID_LOOP_STATEMENTS) {
1179 2152 1459329 else if (block->id == SPVM_BLOCK_C_ID_EVAL) {
1192 9311274 8098139 if (op_cur->first) {
1200 2 21 if (loop_block_stack_length == 0) {
1207 2 11849 if (loop_block_stack_length == 0) {
1214 2 7878 if (op_switch_stack->length == 0) {
1235 1 2068 if (!SPVM_TYPE_is_object_type(compiler, operand_type->basic_type->id, operand_type->dimension, operand_type->flag)) {
1262 1 57 if (!SPVM_TYPE_is_object_type(compiler, operand_type->basic_type->id, operand_type->dimension, operand_type->flag)) {
1275 0 4644 assert(length_type);
1277 1 4643 if (!SPVM_TYPE_is_integer_type_within_int(compiler, length_type->basic_type->id, length_type->dimension, length_type->flag)) {
1300 1 1620 if (!SPVM_TYPE_is_integer_type_within_int(compiler, operand_type->basic_type->id, operand_type->dimension, operand_type->flag)) {
1312 9409 1620 for (int32_t i = 0; i < switch_info->case_infos->length; i++) {
1313 29934 9409 for (int32_t j = i + 1; j < switch_info->case_infos->length; j++) {
1319 5148 24786 if (match_i > match_j) {
1327 7796 1620 for (int32_t i = 0; i < switch_info->case_infos->length - 1; i++) {
1330 2 7794 if (case_info->case_value == case_info_next->case_value) {
1340 1061 559 if (!switch_info->op_default) {
1353 9412 0 if (op_switch_stack->length > 0) {
1367 1 2717 SPVM_TYPE_is_byte_type(compiler, case_value_type->basic_type->id, case_value_type->dimension, case_value_type->flag) ||
1377 6692 2717 if (constant->type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_BYTE) {
1392 559 0 if (op_switch_stack->length > 0) {
1407 9 670572 if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1416 598622 71950 else if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag))
1420 0 598622 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1426 71943 7 else if (SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1430 6 1 else if (SPVM_TYPE_is_ref_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1437 1 670580 if (!is_valid_type) {
1451 11 67501 if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
5 6 if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1459 67501 6 else if (!SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
16675 50826 else if (!SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1461 1 16674 if (!SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1467 6 50826 else if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && !SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
6 0 else if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && !SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1469 1 5 if (!SPVM_TYPE_is_object_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1479 50042 784 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
50041 1 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1484 0 50041 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1489 784 1 else if (SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_object_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
784 0 else if (SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_object_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1493 0 1 else if (SPVM_TYPE_is_ref_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_ref_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
0 0 else if (SPVM_TYPE_is_ref_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_ref_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1500 1 50825 if (!is_valid_type) {
1515 10 17730 if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
5 5 if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1523 17730 5 else if (!SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
8231 9499 else if (!SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1525 1 8230 if (!SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1531 5 9499 else if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && !SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
5 0 else if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && !SPVM_TYPE_is_undef_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1533 1 4 if (!SPVM_TYPE_is_object_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1543 9461 38 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
9460 1 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1548 0 9460 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1553 30 9 else if (SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_object_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
30 0 else if (SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_object_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1557 8 1 else if (SPVM_TYPE_is_ref_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_ref_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
8 0 else if (SPVM_TYPE_is_ref_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) && SPVM_TYPE_is_ref_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1564 1 9498 if (!is_valid_type) {
1578 2 20778 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1584 1 20777 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1591 0 20777 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1603 2 68544 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1609 1 68543 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1616 0 68543 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1628 2 79629 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1634 1 79628 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1641 0 79628 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1653 2 73516 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1659 1 73515 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1666 0 73515 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1678 1 6379 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1684 1 6378 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1691 0 6378 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1702 0 10293 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1708 0 10293 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1720 0 559 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1726 0 559 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1738 1 45 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1744 1 44 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1756 1 45 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1762 1 44 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1774 1 45 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1780 1 44 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1792 1 45 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1798 1 44 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1810 1 1605 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1816 1 1604 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1828 146 35751 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1830 0 146 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1835 2 35749 else if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1841 1487 34408 if (SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1843 0 1487 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1848 3 34405 else if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1860 192329 731936 if (SPVM_TYPE_is_string_type(compiler, constant_type->basic_type->id, constant_type->dimension, constant_type->flag)) {
1874 0 53310 assert(op_new->first);
1875 8448 44862 assert(op_new->first->id == SPVM_OP_C_ID_TYPE || op_new->first->id == SPVM_OP_C_ID_VAR);
0 8448 assert(op_new->first->id == SPVM_OP_C_ID_TYPE || op_new->first->id == SPVM_OP_C_ID_VAR);
1882 29485 23825 if (SPVM_TYPE_is_array_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
1888 0 29485 assert(length_type);
1889 1 29484 if (!SPVM_TYPE_is_integer_type_within_int(compiler, length_type->basic_type->id, length_type->dimension, length_type->flag)) {
1897 1 23824 else if (SPVM_TYPE_is_numeric_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
1902 23824 0 else if (SPVM_TYPE_is_object_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
1905 1 23823 if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_INTERFACE) {
1909 0 23823 else if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_MULNUM) {
1915 1033 22790 if (!SPVM_CHECK_can_access(compiler, current_basic_type, new_basic_type, new_basic_type->access_control_type)) {
1916 3 1030 if (!SPVM_OP_is_allowed(compiler, current_basic_type, new_basic_type)) {
1933 45 1 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) || !SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1 44 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag) || !SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1939 0 44 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1952 522 4014 if (SPVM_TYPE_is_numeric_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1955 4 4010 else if (SPVM_TYPE_is_mulnum_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1958 2 4008 else if (SPVM_TYPE_is_any_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1961 0 4008 else if (SPVM_TYPE_is_ref_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1964 4008 0 else if (SPVM_TYPE_is_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1971 528 4008 if (compile_time_check) {
1973 524 4 if (left_operand_type->basic_type->id == right_type->basic_type->id && left_operand_type->dimension == right_type->dimension) {
524 0 if (left_operand_type->basic_type->id == right_type->basic_type->id && left_operand_type->dimension == right_type->dimension) {
1988 2 4006 if (!SPVM_TYPE_is_object_type(compiler, left_operand_type->basic_type->id, left_operand_type->dimension, left_operand_type->flag)) {
2002 1 19 if (!SPVM_TYPE_is_integer_type_within_int(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2008 2 17 if (!SPVM_TYPE_is_class_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2022 1 3689 if (!SPVM_TYPE_is_object_type(compiler, left_operand_type->basic_type->id, left_operand_type->dimension, left_operand_type->flag)) {
2027 1 3688 if (!SPVM_TYPE_is_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2032 1 3687 if (SPVM_TYPE_is_any_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2037 1 3686 if (SPVM_TYPE_is_any_object_array_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2042 1 3685 if (SPVM_TYPE_is_interface_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2055 1 17 if (!SPVM_TYPE_is_integer_type_within_int(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2061 2 15 if (!SPVM_TYPE_is_class_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2075 16 0 if (left_operand_type->basic_type->id == right_type->basic_type->id && left_operand_type->dimension == right_type->dimension) {
16 0 if (left_operand_type->basic_type->id == right_type->basic_type->id && left_operand_type->dimension == right_type->dimension) {
2094 1 54891 if (!SPVM_TYPE_is_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2105 1 20082 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2119 1763730 268318 if (op_dist->id == SPVM_OP_C_ID_VAR) {
2121 471195 1292535 if (var_decl->type == NULL) {
2124 0 1763730 assert(var_decl->type);
2125 2 1763728 if (SPVM_TYPE_is_undef_type(compiler, var_decl->type->basic_type->id, var_decl->type->dimension, var_decl->type->flag)) {
2136 73 2031973 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2141 72159 1959814 if (op_dist->id == SPVM_OP_C_ID_ARRAY_ACCESS && op_dist->flag & SPVM_OP_C_FLAG_ARRAY_ACCESS_STRING) {
5689 66470 if (op_dist->id == SPVM_OP_C_ID_ARRAY_ACCESS && op_dist->flag & SPVM_OP_C_FLAG_ARRAY_ACCESS_STRING) {
2146 2 5687 if(!is_mutable) {
2159 98196 318013 if (SPVM_TYPE_is_void_type(compiler, method->return_type->basic_type->id, method->return_type->dimension, method->return_type->flag)) {
2160 1 98195 if (op_operand) {
2166 318012 1 if (op_operand) {
2169 1 318011 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2185 2 38 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2192 0 38 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2202 2 1068 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2209 0 1068 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2219 1 1605 if (!SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2230 1 37 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2237 0 37 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2248 4 184122 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2249 3 1 if (op_cur->original_id == SPVM_OP_C_ID_PRE_INC || op_cur->original_id == SPVM_OP_C_ID_POST_INC) {
1 2 if (op_cur->original_id == SPVM_OP_C_ID_PRE_INC || op_cur->original_id == SPVM_OP_C_ID_POST_INC) {
2260 2 184120 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2267 0 184120 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2278 4 69338 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2279 3 1 if (op_cur->original_id == SPVM_OP_C_ID_PRE_DEC || op_cur->original_id == SPVM_OP_C_ID_POST_DEC) {
1 2 if (op_cur->original_id == SPVM_OP_C_ID_PRE_DEC || op_cur->original_id == SPVM_OP_C_ID_POST_DEC) {
2289 2 69336 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2296 0 69336 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2307 2 7475 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2313 2 7473 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2320 0 7473 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2331 2 5320 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2337 2 5318 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2344 0 5318 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2355 2 5 if (!SPVM_TYPE_is_int_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2361 2 3 if (!SPVM_TYPE_is_int_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2373 2 5 if (!SPVM_TYPE_is_long_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2379 2 3 if (!SPVM_TYPE_is_long_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2391 3 2143 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2397 3 2140 if (!SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2404 0 2140 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2415 2 5 if (!SPVM_TYPE_is_int_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2421 2 3 if (!SPVM_TYPE_is_int_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2433 2 519 if (!SPVM_TYPE_is_long_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2439 2 517 if (!SPVM_TYPE_is_long_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2451 1 1095 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2457 1 1094 if (!SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2463 0 1094 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2474 1 45 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2480 1 44 if (!SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2486 0 44 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2497 53 1 if (SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2499 0 53 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2509 52 1 if (SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2511 0 52 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2515 52 0 if (last_type->dimension == 0 && last_type->basic_type->id >= SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
1 51 if (last_type->dimension == 0 && last_type->basic_type->id >= SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
2532 37 1 if (SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2534 0 37 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2544 36 1 if (SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2546 0 36 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2550 36 0 if (last_type->dimension == 0 && last_type->basic_type->id >= SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
1 35 if (last_type->dimension == 0 && last_type->basic_type->id >= SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
2567 37 1 if (SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2569 0 37 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2579 36 1 if (SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2581 0 36 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2585 36 0 if (last_type->dimension == 0 && last_type->basic_type->id >= SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
1 35 if (last_type->dimension == 0 && last_type->basic_type->id >= SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
2600 1 138154 if (!SPVM_TYPE_is_class_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2609 23 239 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2611 0 23 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2628 0 203 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2630 0 0 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2637 1 202 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2646 0 60 if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2648 0 0 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2655 0 60 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2666 1 1033 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2677 1 1038 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2686 1300299 228469 if (!block->no_scope) {
2688 0 1300299 assert(var_decl_scope_base_stack->length > 0);
2693 1216933 1300299 for (int32_t i = 0; i < var_decl_stack_pop_count; i++) {
2699 67619 1461149 if (block->id == SPVM_BLOCK_C_ID_LOOP_STATEMENTS) {
2703 2152 1458997 else if (block->id == SPVM_BLOCK_C_ID_EVAL) {
2713 55 4917 if (!(SPVM_TYPE_is_numeric_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag) || SPVM_TYPE_is_mulnum_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag))) {
1 54 if (!(SPVM_TYPE_is_numeric_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag) || SPVM_TYPE_is_mulnum_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag))) {
2724 17 3531 if (!(SPVM_TYPE_is_numeric_ref_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag) || SPVM_TYPE_is_mulnum_ref_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag))) {
1 16 if (!(SPVM_TYPE_is_numeric_ref_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag) || SPVM_TYPE_is_mulnum_ref_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag))) {
2734 1217489 3560389 if (op_cur->uv.var->is_declaration) {
2741 2805906 1217485 for (int32_t i = block_var_decl_base; i < var_decl_stack->length; i++) {
2744 4 2805902 if (strcmp(var_decl->var->name, bef_var_decl->var->name) == 0) {
2746 4 0 if (strncmp(var_decl->var->name, "$.", 2) != 0) {
2753 4 1217485 if (found) {
2764 744739 472746 if (!op_cur->is_dist && var_decl->type == NULL) {
4 744735 if (!op_cur->is_dist && var_decl->type == NULL) {
2774 15312193 12964 for (int32_t i = var_decl_stack->length - 1; i >= 0; i--) {
2776 0 15312193 assert(var_decl);
2777 4764906 10547287 if (strcmp(var->name, var_decl->var->name) == 0) {
2783 4764906 12964 if (found_var_decl) {
2795 12960 4 if (op_class_var_access->uv.class_var_access->class_var) {
2801 0 12960 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2809 6 12954 if (!SPVM_CHECK_can_access(compiler, method->current_basic_type, class_var_access_basic_type, class_var_access->class_var->access_control_type)) {
2810 2 4 if (!SPVM_OP_is_allowed(compiler, method->current_basic_type, class_var_access_basic_type)) {
2834 0 248605 assert(op_cur->first->id == SPVM_OP_C_ID_LIST);
2839 17 248588 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2848 2 248586 if (!SPVM_CHECK_can_access(compiler, method->current_basic_type, call_method->method->current_basic_type, call_method->method->access_control_type)) {
2849 2 0 if (!SPVM_OP_is_allowed(compiler, method->current_basic_type, call_method->method->current_basic_type)) {
2860 579275 248582 while ((op_operand = SPVM_OP_sibling(compiler, op_operand))) {
2862 1 579274 if (call_method_args_length > args_length) {
2864 1 0 if (!call_method->method->is_class_method) {
2880 161437 417837 if (!call_method->method->is_class_method) {
2888 3 579271 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2894 2 248580 if (call_method_args_length < call_method->method->required_args_length) {
2896 1 1 if (!call_method->method->is_class_method) {
2908 5720 242860 if (call_method->method->is_enum) {
2920 163193 85387 if (call_method->method->is_class_method) {
2942 24685 153376 if (SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2947 178060 1 if (SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2949 0 178060 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2955 178060 0 if (last_type->dimension == 0 && last_type->basic_type->id != SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
1 178059 if (last_type->dimension == 0 && last_type->basic_type->id != SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
2971 0 172354 if (op_invocant->id == SPVM_OP_C_ID_ASSIGN) {
2978 172354 0 if (invocant_type) {
2979 167740 4614 if (SPVM_TYPE_is_class_type(compiler, invocant_type->basic_type->id, invocant_type->dimension, invocant_type->flag)) {
2982 4297 317 else if (SPVM_TYPE_is_mulnum_type(compiler, invocant_type->basic_type->id, invocant_type->dimension, invocant_type->flag)) {
2985 316 1 else if (SPVM_TYPE_is_mulnum_ref_type(compiler, invocant_type->basic_type->id, invocant_type->dimension, invocant_type->flag)) {
2995 1 172353 if (!is_valid_invocant_type) {
3002 2 172351 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
3008 0 172351 if (!field) {
3015 45 172306 if (op_cur->flag & SPVM_OP_C_FLAG_FIELD_ACCESS_WEAKEN) {
3016 2 43 if (!SPVM_TYPE_is_object_type(compiler, field->type->basic_type->id, field->type->dimension, field->type->flag)) {
3022 4 172302 else if (op_cur->flag & SPVM_OP_C_FLAG_FIELD_ACCESS_UNWEAKEN) {
3023 2 2 if (!SPVM_TYPE_is_object_type(compiler, field->type->basic_type->id, field->type->dimension, field->type->flag)) {
3029 8 172294 else if (op_cur->flag & SPVM_OP_C_FLAG_FIELD_ACCESS_ISWEAK) {
3030 2 6 if (!SPVM_TYPE_is_object_type(compiler, field->type->basic_type->id, field->type->dimension, field->type->flag)) {
3038 17996 154349 if (!SPVM_CHECK_can_access(compiler, method->current_basic_type, field_access->field->current_basic_type, field_access->field->access_control_type)) {
3039 2 17994 if (!SPVM_OP_is_allowed(compiler, method->current_basic_type, field->current_basic_type)) {
3046 3921 168422 if (op_invocant->id == SPVM_OP_C_ID_ARRAY_ACCESS) {
3052 2283 1638 if (is_basic_type_mulnum_t && array_element_type->dimension == 0) {
2283 0 if (is_basic_type_mulnum_t && array_element_type->dimension == 0) {
3088 14 3 if (!(SPVM_TYPE_is_class_type(compiler, type->basic_type->id, type->dimension, type->flag) || SPVM_TYPE_is_interface_type(compiler, type->basic_type->id, type->dimension, type->flag))) {
1 13 if (!(SPVM_TYPE_is_class_type(compiler, type->basic_type->id, type->dimension, type->flag) || SPVM_TYPE_is_interface_type(compiler, type->basic_type->id, type->dimension, type->flag))) {
3103 1 15 if (!found_method) {
3116 0 53033 assert(src_type);
3119 0 53033 assert(cast_type);
3127 38 52995 if (!castability) {
3135 2635 50360 if (SPVM_TYPE_equals(compiler, cast_type->basic_type->id, cast_type->dimension, cast_type->flag, src_type->basic_type->id, src_type->dimension, src_type->flag)) {
3147 224729 17183558 if (op_cur == op_root) {
3156 7873098 9310460 if (op_cur->moresib) {
3165 224729 7873098 if (finish) {
3174 0 224726 if (!method->op_block) {
3182 20508924 0 while (op_cur) {
3184 2031890 18477034 switch (op_cur->id) {
3186 1763577 268313 if (op_cur->last->id == SPVM_OP_C_ID_VAR) {
3193 10853828 9655096 if (op_cur->first) {
3204 18477034 3492289 if (!op_cur->is_dist && !op_cur->is_assigned_to_var) {
16713457 1763577 if (!op_cur->is_dist && !op_cur->is_assigned_to_var) {
3319 1460399 20508924 if (convert_to_assign) {
3323 0 1460399 if (op_var_tmp == NULL) {
3344 224726 21744597 if (op_cur == op_root) {
3353 9430370 12314227 if (op_cur->moresib) {
3362 224726 9430370 if (finish) {
3378 21969323 0 while (op_cur) {
3380 1529810 20439513 switch (op_cur->id) {
3392 12314227 9655096 if (op_cur->first) {
3406 610342 919468 if (block_current->has_object_var_decls && !block_current->no_scope) {
609823 519 if (block_current->has_object_var_decls && !block_current->no_scope) {
3411 1305084 224726 if (op_block_stack->length > 0) {
3415 450016 855068 if (block_current->has_object_var_decls) {
3419 450016 855068 if (block_current->has_object_var_decls && !block_parent->no_scope) {
450016 0 if (block_current->has_object_var_decls && !block_parent->no_scope) {
3432 2677329 3546791 if (op_var->uv.var->is_declaration) {
3434 763047 1914282 if (SPVM_TYPE_is_object_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag)) {
3443 224726 21744597 if (op_cur == op_root) {
3452 9430370 12314227 if (op_cur->moresib) {
3461 224726 9430370 if (finish) {
3486 21969323 0 while (op_cur) {
3491 12314227 9655096 if (op_cur->first) {
3501 67619 1462191 if (op_cur->uv.block->id == SPVM_BLOCK_C_ID_LOOP_INIT) {
3518 2677329 3546791 if (op_cur->uv.var->is_declaration) {
3525 763047 1914282 if (SPVM_TYPE_is_object_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3528 6636 1907646 else if (SPVM_TYPE_is_ref_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3531 527 1907119 else if (SPVM_TYPE_is_mulnum_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3533 0 527 assert(first_field);
3566 1783587 123532 else if (SPVM_TYPE_is_numeric_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3579 224726 1370913 if (strcmp(var_decl->var->name, "$.condition_flag") == 0) {
3580 0 224726 assert(runtime_var_index == 0);
3600 123532 0 else if (SPVM_TYPE_is_void_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3613 224726 21744597 if (op_cur == op_root) {
3621 9430370 12314227 if (op_cur->moresib) {
3630 224726 9430370 if (finish) {
3667 85385 266 if (found_method) {
3672 5 261 if (!parent_basic_type) {
3683 68 25881 if (basic_type) {
3691 3 66 if (found_field) {
3696 65 1 if (!parent_basic_type) {
3709 149 457567 if (basic_type_from->is_anon) {
3713 223608 234108 if (access_controll_flag_to == SPVM_ATTRIBUTE_C_ID_PRIVATE) {
3714 204572 19036 if (strcmp(basic_type_from->name, basic_type_to->name) == 0) {
3721 238 233870 else if (access_controll_flag_to == SPVM_ATTRIBUTE_C_ID_PROTECTED) {
3722 184 54 if (strcmp(basic_type_from->name, basic_type_to->name) == 0) {
3726 53 1 if (SPVM_BASIC_TYPE_is_super_class(compiler, basic_type_to->id, basic_type_from->id)) {
3734 233870 0 else if (access_controll_flag_to == SPVM_ATTRIBUTE_C_ID_PUBLIC) {
3760 1656 0 if (SPVM_TYPE_is_numeric_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3782 813859 0 if (type->dimension == 0 && type->basic_type->id <= SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
813125 734 if (type->dimension == 0 && type->basic_type->id <= SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
3790 813051 74 if (!(type->basic_type->id == dist_type->basic_type->id && type->dimension == dist_type->dimension)) {
0 813051 if (!(type->basic_type->id == dist_type->basic_type->id && type->dimension == dist_type->dimension)) {
3809 577911 0 if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE)) {
572232 5679 if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE)) {
572232 0 if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE)) {
96 572136 if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_DOUBLE)) {
3813 572136 0 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT)) {
569193 2943 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT)) {
569193 0 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT)) {
40 569153 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_FLOAT)) {
3817 569153 0 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG)) {
563415 5738 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG)) {
563415 0 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG)) {
516 562899 else if ((first_type->dimension == 0 && first_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) || (last_type->dimension == 0 && last_type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG)) {
3826 551527 26384 if (!(first_type->basic_type->id == dist_type->basic_type->id && first_type->dimension == dist_type->dimension)) {
0 551527 if (!(first_type->basic_type->id == dist_type->basic_type->id && first_type->dimension == dist_type->dimension)) {
3836 529174 48737 if (!(last_type->basic_type->id == dist_type->basic_type->id && last_type->dimension == dist_type->dimension)) {
0 529174 if (!(last_type->basic_type->id == dist_type->basic_type->id && last_type->dimension == dist_type->dimension)) {
3849 104804 2880110 if (op_src->allow_narrowing_conversion) {
3864 451162 2428948 if (op_src->id == SPVM_OP_C_ID_CONSTANT) {
3869 2077232 802878 if (SPVM_TYPE_is_numeric_type(compiler, dist_type_basic_type_id, dist_type_dimension, dist_type_flag)) {
3871 2073068 4164 if (SPVM_TYPE_is_numeric_type(compiler, src_type_basic_type_id, src_type_dimension, src_type_flag)) {
3873 17279 2055789 if (src_type_basic_type_id == dist_type_basic_type_id) {
3877 2339 14940 else if (dist_type_basic_type_id > src_type_basic_type_id) {
3881 2339 0 else if (dist_type_basic_type_id < src_type_basic_type_id) {
3882 2334 5 if (src_constant) {
3883 0 2334 assert(src_type_dimension == 0);
3884 10 2324 if (src_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_INT || src_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
9 1 if (src_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_INT || src_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
3886 2324 9 if (src_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
3889 9 0 else if (src_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_LONG) {
3896 1230 1103 if (dist_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_BYTE) {
3897 1229 1 if (src_constant_value >= INT8_MIN && src_constant_value <= INT8_MAX) {
1226 3 if (src_constant_value >= INT8_MIN && src_constant_value <= INT8_MAX) {
3904 1096 7 else if (dist_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_SHORT) {
3905 1095 1 if (src_constant_value >= INT16_MIN && src_constant_value <= INT16_MAX) {
1093 2 if (src_constant_value >= INT16_MIN && src_constant_value <= INT16_MAX) {
3912 7 0 else if (dist_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
3913 6 1 if (src_constant_value >= INT32_MIN && src_constant_value <= INT32_MAX) {
5 1 if (src_constant_value >= INT32_MIN && src_constant_value <= INT32_MAX) {
3950 1 2929331 if (SPVM_TYPE_is_void_type(compiler, src_type_basic_type_id, src_type_dimension, src_type_flag)) {
3965 76 2929255 if (!assignability) {
3970 23672 2905583 if (need_implicite_conversion) {
3994 24575166 2553797 for (int32_t runtime_var_index = 0; runtime_var_index < runtime_vars->length; runtime_var_index++) {
3995 24574323 843 if (runtime_var_index + var_width <= runtime_vars->length) {
3997 24574323 0 for (int32_t i = 0; i < var_width; i++) {
3999 24574323 0 if (var_decl_id >= 0) {
4004 0 24574323 if (!is_used) {
4007 0 0 for (int32_t i = 0; i < var_width; i++) {
4014 0 24575166 if (found) {
4020 2553797 0 if (!found) {
4022 2555222 2553797 for (int32_t i = 0; i < var_width; i++) {
4040 0 1460399 assert(type);
4134 86848 466859 if (SPVM_TYPE_is_string_type(compiler, basic_type->id, first_type->dimension, 0)) {
4137 134400 332459 else if (SPVM_TYPE_is_any_object_array_type(compiler, basic_type->id, first_type->dimension, 0)) {
4178 220701 42240 if (op->first->id == SPVM_OP_C_ID_TYPE) {
4181 42240 0 else if (op->first->id == SPVM_OP_C_ID_VAR) {
4205 750480 0 if (op->uv.type) {
4230 45643 0 if (class_var->type) {
4237 14326 0 if (class_var->type) {
4266 57 603123 if (op->flag & (SPVM_OP_C_FLAG_FIELD_ACCESS_WEAKEN|SPVM_OP_C_FLAG_FIELD_ACCESS_UNWEAKEN|SPVM_OP_C_FLAG_FIELD_ACCESS_ISWEAK)) {
4289 0 14905 assert(operand_type->dimension == 0);
4316 0 162 assert(SPVM_TYPE_is_mulnum_type(compiler, operand_type->basic_type->id, operand_type->dimension, operand_type->flag));
4324 0 11024 assert(operand_type->dimension == 0);
4351 0 64 assert(SPVM_TYPE_is_mulnum_ref_type(compiler, operand_type->basic_type->id, operand_type->dimension, operand_type->flag));