Branch Coverage

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


line true false branch
44 2 3490 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
50 371 3119 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
65 9 3481 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
70 1 3480 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
75 8 3472 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
80 28 3444 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
85 325 3119 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
91 55315 3483 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
97 2773 52542 if (parent_basic_type_name) {
100 2 2771 if (!SPVM_BASIC_TYPE_is_class_type(compiler, parent_basic_type->id)) {
104 1 2770 if (!SPVM_BASIC_TYPE_is_class_type(compiler, basic_type->id)) {
109 2 2768 if (strcmp(basic_type->name, parent_basic_type->name) == 0) {
117 1372 55308 for (int32_t i = 0; i < basic_type->interface_decls->length; i++) {
121 2 1370 if (!SPVM_BASIC_TYPE_is_interface_type(compiler, interface_basic_type->id)) {
131 55144 3481 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
135 2758 55142 if (parent_basic_type) {
136 2 2756 if (strcmp(parent_basic_type->name, basic_type->name) == 0) {
148 55096 3481 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
158 2749 55096 if (parent_basic_type) {
168 57845 55096 for (int32_t basic_type_id = basic_type_merge_stack->length - 1; basic_type_id >= 0; basic_type_id--) {
173 1506 57845 for (int32_t interface_index = 0; interface_index < interface_basic_types->length; interface_index++) {
181 1642 55096 for (int32_t i = 0; i < merged_interface_basic_types->length; i++) {
184 136 1506 if (!found_interface_basic_type) {
194 55096 3481 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
196 8196 46900 if (basic_type->is_anon) {
199 0 8196 assert(found_ptr);
203 0 8196 assert(outer_basic_type);
212 55095 3480 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
218 7230 55094 for (int32_t class_var_index = 0; class_var_index < basic_type->class_vars->length; class_var_index++) {
224 1 7229 if (is_mulnum_t) {
233 55066 3472 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
239 7224 55066 for (int32_t class_var_index = 0; class_var_index < basic_type->class_vars->length; class_var_index++) {
245 0 7224 if (is_mulnum_t) {
252 7224 55066 for (int32_t i = 0; i < basic_type->class_vars->length; i++) {
259 270 54796 if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_MULNUM) {
263 1 269 if (!SPVM_TYPE_is_numeric_type(compiler, first_field_type->basic_type->id, first_field_type->dimension, first_field_type->flag)) {
269 1027 268 for (field_index = 0; field_index < basic_type->unmerged_fields->length; field_index++) {
272 1026 1 if (!(field_type->basic_type->id == first_field_type->basic_type->id && field_type->dimension == first_field_type->dimension)) {
0 1026 if (!(field_type->basic_type->id == first_field_type->basic_type->id && field_type->dimension == first_field_type->dimension)) {
306 2 266 if (!found_pos_ptr) {
313 26145 55061 for (int32_t field_index = 0; field_index < basic_type->unmerged_fields->length; field_index++) {
319 1 26144 if (is_mulnum_t) {
334 2746 55061 if (parent_basic_type) {
345 57807 55058 for (int32_t basic_type_id = basic_type_merge_stack->length - 1; basic_type_id >= 0; basic_type_id--) {
351 26285 57804 for (int32_t field_index = 0; field_index < fields_length; field_index++) {
355 3 26282 if (found_field_in_super_class) {
362 26141 141 if (strcmp(field->current_basic_type->name, current_basic_type->name) == 0) {
376 3 57804 if (compile_error) {
381 0 55061 if (!(merged_fields->length <= 65535)) {
386 26282 55061 for (int32_t field_index = 0; field_index < merged_fields->length; field_index++) {
398 3 55058 if (compile_error) {
408 54841 3444 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
416 34422 20419 if (init_method) {
422 29355 34422 for (int32_t i = use_basic_type_names->length - 1; i >= 0; i--) {
426 29355 0 if (use_basic_type) {
427 24181 5174 if (use_basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_CLASS) {
440 2719 31703 if (parent_basic_type_name) {
452 304122 54824 for (int32_t i = 0; i < basic_type->methods->length; i++) {
459 507310 304110 for (int32_t arg_index = 0; arg_index < method->args_length; arg_index++) {
468 60618 446692 if (op_optional_arg_default) {
470 56391 4227 if (SPVM_TYPE_is_numeric_type(compiler, arg_type->basic_type->id, arg_type->dimension, arg_type->flag)) {
471 2 56389 if (op_optional_arg_default->id != SPVM_OP_C_ID_CONSTANT) {
486 2 56387 if (!assignability) {
492 4222 5 else if (SPVM_TYPE_is_object_type(compiler, arg_type->basic_type->id, arg_type->dimension, arg_type->flag)) {
493 1 4221 if (op_optional_arg_default->id != SPVM_OP_C_ID_UNDEF) {
504 2 446690 if (found_optional_arg) {
512 140 507158 if (is_arg_type_is_mulnum_type) {
519 228543 278755 if (arg_index == method->args_length - 1) {
524 4 304106 if (!(args_width <= 255)) {
530 1 304105 if (SPVM_TYPE_is_ref_type(compiler, method->return_type->basic_type->id, method->return_type->dimension, method->return_type->flag)) {
536 8196 295909 if (method->outer_basic_type_name) {
548 304105 54824 for (int32_t i = 0; i < basic_type->methods->length; i++) {
552 6403 297702 if (basic_type->is_precompile) {
554 385 6018 if (method->is_init) {
557 23 5995 else if (method->is_enum) {
561 1615 4380 else if (!method->op_block) {
568 4380 2023 if (can_precompile) {
576 304105 54821 for (int32_t method_index = 0; method_index < basic_type->methods->length; method_index++) {
580 114517 189588 if (!method->is_class_method) {
583 114514 320 if (!parent_basic_type) {
589 251 69 if (parent_method) {
592 3 248 if (method_compatibility == 0) {
600 0 304102 assert(method->current_basic_type->class_file);
603 71952 232150 if (!method->op_block) {
604 120144 71952 for (int32_t arg_index = 0; arg_index < method->args_length; arg_index++) {
612 1620 54813 for (int32_t interface_basic_type_index = 0; interface_basic_type_index < basic_type->interface_basic_types->length; interface_basic_type_index++) {
615 1914 1612 for (int32_t interface_method_index = 0; interface_method_index < interface_basic_type->methods->length; interface_method_index++) {
621 1906 2184 if (!parent_basic_type) {
627 1952 232 if (parent_method) {
630 8 1944 if (method_compatibility == 0) {
643 53663 3119 for (int32_t basic_type_id = compiler->basic_types_base_id; basic_type_id < compiler->basic_types->length; basic_type_id++) {
648 24315 29348 if (basic_type->class_dir) {
651 39627 14036 if (basic_type->class_rel_file) {
654 167 53496 if (basic_type->version_string) {
659 7031 53663 for (int32_t class_var_index = 0; class_var_index < basic_type->class_vars->length; class_var_index++) {
664 25614 53663 for (int32_t field_index = 0; field_index < basic_type->fields->length; field_index++) {
669 299277 53663 for (int32_t method_index = 0; method_index < basic_type->methods->length; method_index++) {
675 299277 53338 for (int32_t method_index = 0; method_index < basic_type->methods->length; method_index++) {
678 227981 71296 if (method->op_block) {
680 10 227971 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
686 315 227656 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
692 0 227656 assert(SPVM_COMPILER_get_error_messages_length(compiler) == 0);
696 0 227656 assert(SPVM_COMPILER_get_error_messages_length(compiler) == 0);
700 0 227656 assert(SPVM_COMPILER_get_error_messages_length(compiler) == 0);
714 443273 2655086 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_UNKNOWN) {
717 0 443273 assert(unresolved_basic_type_name);
720 443262 11 if (found_basic_type) {
728 11 3098348 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_UNKNOWN) {
731 6 5 if (!if_require_not_found_basic_type_name) {
738 4062 3094291 if (SPVM_TYPE_is_ref_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
739 95 3967 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 12318 3086035 if (type->flag & SPVM_NATIVE_C_TYPE_FLAG_MUTABLE && !(type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_STRING && type->dimension == 0)) {
12316 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 12315 if (type->flag & SPVM_NATIVE_C_TYPE_FLAG_MUTABLE && !(type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_STRING && type->dimension == 0)) {
749 100339 2998014 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_ANY_OBJECT && type->dimension > 1) {
2 100337 if (type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_ANY_OBJECT && type->dimension > 1) {
762 3082776 3492 for (int32_t i = 0; i < op_types->length; i++) {
765 2561134 521642 if (!op_type->uv.type->resolved_in_ast) {
773 13068 13072 if (op_class_var_access->uv.class_var_access->class_var) {
776 0 13072 assert(op_class_var_access->uv.class_var_access);
786 504 12568 if (colon_ptr) {
805 13072 0 if (found_basic_type) {
807 13068 4 if (found_class_var) {
817 0 174621 if (field_access->field) {
838 174619 3 if (found_field) {
842 2 1 if (!parent_basic_type) {
847 174619 2 if (found_field) {
857 20528 34533 if (basic_type->category != SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_CLASS) {
874 25276 34533 for (int32_t field_index = 0; field_index < basic_type->fields->length; field_index++) {
879 23862 1414 if (SPVM_TYPE_is_double_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)
880 1414 22448 || SPVM_TYPE_is_long_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
883 21034 1414 else if (SPVM_TYPE_is_float_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)
884 8658 12376 || SPVM_TYPE_is_int_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
887 1414 10962 else if (SPVM_TYPE_is_short_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
890 2137 8825 else if (SPVM_TYPE_is_byte_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
893 8825 0 else if (SPVM_TYPE_is_object_type(compiler, field_type->basic_type->id, field_type->dimension, field_type->flag)) {
902 756 24520 if (next_offset % offset_size != 0) {
906 12839 12437 if (next_offset == alignment_size * (alignment_index + 1)) {
909 1566 10871 else if (next_offset > alignment_size * (alignment_index + 1)) {
914 0 1566 assert(offset % alignment_size == 0);
929 0 251795 if (call_method->method) {
936 165151 86644 if (call_method->is_class_method) {
940 50309 114842 if (call_method->is_current) {
956 165147 4 if (found_method && !found_method->is_class_method) {
1 165146 if (found_method && !found_method->is_class_method) {
960 165146 5 if (found_method) {
974 5429 81215 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 5427 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 86528 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 86523 5 if (found_method) {
1034 3 86520 if (found_method->is_class_method) {
1055 17655410 0 while (op_cur) {
1057 12 17655398 if (op_cur->id == SPVM_OP_C_ID_IF_REQUIRE) {
1067 7 5 if (found_basic_type) {
1082 9442085 8213325 if (op_cur->first) {
1088 763662 16891716 switch (op_cur->id) {
1091 537225 226437 if (op_type->uv.type->resolved_in_ast) {
1095 24224 513001 if (basic_type->is_anon) {
1103 10 537215 if (unresolved_basic_type_name) {
1109 10 537215 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1119 227971 17427397 if (op_cur == op_root) {
1128 7985344 9442053 if (op_cur->moresib) {
1137 227971 7985344 if (finish) {
1146 0 227971 if (!method->op_block) {
1164 17654639 0 while (op_cur) {
1171 1318493 231995 if (!block->no_scope) {
1176 68679 1481809 if (block->id == SPVM_BLOCK_C_ID_LOOP_STATEMENTS) {
1179 2074 1479735 else if (block->id == SPVM_BLOCK_C_ID_EVAL) {
1192 9441832 8212807 if (op_cur->first) {
1200 2 21 if (loop_block_stack_length == 0) {
1207 2 12033 if (loop_block_stack_length == 0) {
1214 2 7998 if (op_switch_stack->length == 0) {
1235 1 2100 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 4716 assert(length_type);
1277 1 4715 if (!SPVM_TYPE_is_integer_type_within_int(compiler, length_type->basic_type->id, length_type->dimension, length_type->flag)) {
1300 1 1644 if (!SPVM_TYPE_is_integer_type_within_int(compiler, operand_type->basic_type->id, operand_type->dimension, operand_type->flag)) {
1312 9553 1644 for (int32_t i = 0; i < switch_info->case_infos->length; i++) {
1313 30398 9553 for (int32_t j = i + 1; j < switch_info->case_infos->length; j++) {
1319 5228 25170 if (match_i > match_j) {
1327 7916 1644 for (int32_t i = 0; i < switch_info->case_infos->length - 1; i++) {
1330 2 7914 if (case_info->case_value == case_info_next->case_value) {
1340 1077 567 if (!switch_info->op_default) {
1353 9556 0 if (op_switch_stack->length > 0) {
1367 1 2757 SPVM_TYPE_is_byte_type(compiler, case_value_type->basic_type->id, case_value_type->dimension, case_value_type->flag) ||
1377 6796 2757 if (constant->type->basic_type->id == SPVM_NATIVE_C_BASIC_TYPE_ID_BYTE) {
1392 567 0 if (op_switch_stack->length > 0) {
1407 9 680444 if (SPVM_TYPE_is_undef_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1416 607480 72964 else if (SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag))
1420 0 607480 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1426 72957 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 680452 if (!is_valid_type) {
1451 11 68241 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 68241 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)) {
16929 51312 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 16928 if (!SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1467 6 51312 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 50522 790 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)) {
50521 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 50521 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1489 790 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)) {
790 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 51311 if (!is_valid_type) {
1515 10 17994 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 17994 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)) {
8359 9635 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 8358 if (!SPVM_TYPE_is_object_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1531 5 9635 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 9597 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)) {
9596 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 9596 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 9634 if (!is_valid_type) {
1578 2 21098 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1584 1 21097 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1591 0 21097 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1603 2 69610 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1609 1 69609 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1616 0 69609 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1628 2 80873 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1634 1 80872 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1641 0 80872 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1653 2 74662 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1659 1 74661 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1666 0 74661 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1678 1 6475 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1684 1 6474 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1691 0 6474 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1702 0 10437 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1708 0 10437 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1720 0 567 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1726 0 567 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 1629 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1816 1 1628 if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1828 146 36239 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 36237 else if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
1841 1481 34902 if (SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1843 0 1481 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
1848 3 34899 else if (!SPVM_TYPE_is_string_or_byte_array_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
1860 195193 741510 if (SPVM_TYPE_is_string_type(compiler, constant_type->basic_type->id, constant_type->dimension, constant_type->flag)) {
1874 0 54016 assert(op_new->first);
1875 8524 45492 assert(op_new->first->id == SPVM_OP_C_ID_TYPE || op_new->first->id == SPVM_OP_C_ID_VAR);
0 8524 assert(op_new->first->id == SPVM_OP_C_ID_TYPE || op_new->first->id == SPVM_OP_C_ID_VAR);
1882 29859 24157 if (SPVM_TYPE_is_array_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
1888 0 29859 assert(length_type);
1889 1 29858 if (!SPVM_TYPE_is_integer_type_within_int(compiler, length_type->basic_type->id, length_type->dimension, length_type->flag)) {
1897 1 24156 else if (SPVM_TYPE_is_numeric_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
1902 24156 0 else if (SPVM_TYPE_is_object_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
1905 1 24155 if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_INTERFACE) {
1909 0 24155 else if (basic_type->category == SPVM_NATIVE_C_BASIC_TYPE_CATEGORY_MULNUM) {
1915 1049 23106 if (!SPVM_CHECK_can_access(compiler, current_basic_type, new_basic_type, new_basic_type->access_control_type)) {
1916 3 1046 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 4060 if (SPVM_TYPE_is_numeric_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1955 4 4056 else if (SPVM_TYPE_is_mulnum_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1958 2 4054 else if (SPVM_TYPE_is_any_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1961 0 4054 else if (SPVM_TYPE_is_ref_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1964 4054 0 else if (SPVM_TYPE_is_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
1971 528 4054 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 4052 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 3745 if (!SPVM_TYPE_is_object_type(compiler, left_operand_type->basic_type->id, left_operand_type->dimension, left_operand_type->flag)) {
2027 1 3744 if (!SPVM_TYPE_is_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2032 1 3743 if (SPVM_TYPE_is_any_object_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2037 1 3742 if (SPVM_TYPE_is_any_object_array_type(compiler, right_type->basic_type->id, right_type->dimension, right_type->flag)) {
2042 1 3741 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 55739 if (!SPVM_TYPE_is_array_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2105 1 20394 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2119 1789586 271956 if (op_dist->id == SPVM_OP_C_ID_VAR) {
2121 477919 1311667 if (var_decl->type == NULL) {
2124 0 1789586 assert(var_decl->type);
2125 2 1789584 if (SPVM_TYPE_is_undef_type(compiler, var_decl->type->basic_type->id, var_decl->type->dimension, var_decl->type->flag)) {
2136 73 2061467 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2141 73091 1988376 if (op_dist->id == SPVM_OP_C_ID_ARRAY_ACCESS && op_dist->flag & SPVM_OP_C_FLAG_ARRAY_ACCESS_STRING) {
5777 67314 if (op_dist->id == SPVM_OP_C_ID_ARRAY_ACCESS && op_dist->flag & SPVM_OP_C_FLAG_ARRAY_ACCESS_STRING) {
2146 2 5775 if(!is_mutable) {
2159 99636 321599 if (SPVM_TYPE_is_void_type(compiler, method->return_type->basic_type->id, method->return_type->dimension, method->return_type->flag)) {
2160 1 99635 if (op_operand) {
2166 321598 1 if (op_operand) {
2169 1 321597 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 1084 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2209 0 1084 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2219 1 1629 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 186934 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 186932 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2267 0 186932 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2278 4 70402 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 70400 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2296 0 70400 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2307 2 7585 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2313 2 7583 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2320 0 7583 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2331 2 5400 if (!SPVM_TYPE_is_numeric_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2337 2 5398 if (!SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2344 0 5398 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 2175 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2397 3 2172 if (!SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2404 0 2172 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 527 if (!SPVM_TYPE_is_long_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2439 2 525 if (!SPVM_TYPE_is_long_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2451 1 1111 if (!SPVM_TYPE_is_integer_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2457 1 1110 if (!SPVM_TYPE_is_integer_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2463 0 1110 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 140296 if (!SPVM_TYPE_is_class_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2609 23 237 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 253 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 252 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 1049 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2677 1 1054 if (!SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2686 1318163 231993 if (!block->no_scope) {
2688 0 1318163 assert(var_decl_scope_base_stack->length > 0);
2693 1233731 1318163 for (int32_t i = 0; i < var_decl_stack_pop_count; i++) {
2699 68679 1481477 if (block->id == SPVM_BLOCK_C_ID_LOOP_STATEMENTS) {
2703 2074 1479403 else if (block->id == SPVM_BLOCK_C_ID_EVAL) {
2713 55 4977 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 3567 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 1234287 3613041 if (op_cur->uv.var->is_declaration) {
2741 2844290 1234283 for (int32_t i = block_var_decl_base; i < var_decl_stack->length; i++) {
2744 4 2844286 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 1234283 if (found) {
2764 754795 479488 if (!op_cur->is_dist && var_decl->type == NULL) {
4 754791 if (!op_cur->is_dist && var_decl->type == NULL) {
2774 15541739 13072 for (int32_t i = var_decl_stack->length - 1; i >= 0; i--) {
2776 0 15541739 assert(var_decl);
2777 4834248 10707491 if (strcmp(var->name, var_decl->var->name) == 0) {
2783 4834248 13072 if (found_var_decl) {
2795 13068 4 if (op_class_var_access->uv.class_var_access->class_var) {
2801 0 13068 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2809 6 13062 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 251795 assert(op_cur->first->id == SPVM_OP_C_ID_LIST);
2839 17 251778 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2848 2 251776 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 587683 251772 while ((op_operand = SPVM_OP_sibling(compiler, op_operand))) {
2862 1 587682 if (call_method_args_length > args_length) {
2864 1 0 if (!call_method->method->is_class_method) {
2880 163775 423907 if (!call_method->method->is_class_method) {
2888 3 587679 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2894 2 251770 if (call_method_args_length < call_method->method->required_args_length) {
2896 1 1 if (!call_method->method->is_class_method) {
2908 5808 245962 if (call_method->method->is_enum) {
2920 165141 86629 if (call_method->method->is_class_method) {
2942 25065 155490 if (SPVM_TYPE_is_string_type(compiler, first_type->basic_type->id, first_type->dimension, first_type->flag)) {
2947 180554 1 if (SPVM_TYPE_is_numeric_type(compiler, last_type->basic_type->id, last_type->dimension, last_type->flag)) {
2949 0 180554 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
2955 180554 0 if (last_type->dimension == 0 && last_type->basic_type->id != SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
1 180553 if (last_type->dimension == 0 && last_type->basic_type->id != SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
2971 0 174622 if (op_invocant->id == SPVM_OP_C_ID_ASSIGN) {
2978 174622 0 if (invocant_type) {
2979 170008 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 174621 if (!is_valid_invocant_type) {
3002 2 174619 if (SPVM_COMPILER_get_error_messages_length(compiler) > 0) {
3008 0 174619 if (!field) {
3015 45 174574 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 174570 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 174562 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 18276 156337 if (!SPVM_CHECK_can_access(compiler, method->current_basic_type, field_access->field->current_basic_type, field_access->field->access_control_type)) {
3039 2 18274 if (!SPVM_OP_is_allowed(compiler, method->current_basic_type, field->current_basic_type)) {
3046 3945 170666 if (op_invocant->id == SPVM_OP_C_ID_ARRAY_ACCESS) {
3052 2283 1662 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 53609 assert(src_type);
3119 0 53609 assert(cast_type);
3127 38 53571 if (!castability) {
3135 2591 50980 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 227659 17425854 if (op_cur == op_root) {
3156 7984836 9441018 if (op_cur->moresib) {
3165 227659 7984836 if (finish) {
3174 0 227656 if (!method->op_block) {
3182 20795894 0 while (op_cur) {
3184 2061384 18734510 switch (op_cur->id) {
3186 1789433 271951 if (op_cur->last->id == SPVM_OP_C_ID_VAR) {
3193 11005170 9790724 if (op_cur->first) {
3204 18734510 3541385 if (!op_cur->is_dist && !op_cur->is_assigned_to_var) {
16945077 1789433 if (!op_cur->is_dist && !op_cur->is_assigned_to_var) {
3319 1480001 20795894 if (convert_to_assign) {
3323 0 1480001 if (op_var_tmp == NULL) {
3344 227656 22048239 if (op_cur == op_root) {
3353 9563068 12485171 if (op_cur->moresib) {
3362 227656 9563068 if (finish) {
3378 22275895 0 while (op_cur) {
3380 1551214 20724681 switch (op_cur->id) {
3392 12485171 9790724 if (op_cur->first) {
3406 619166 932048 if (block_current->has_object_var_decls && !block_current->no_scope) {
618639 527 if (block_current->has_object_var_decls && !block_current->no_scope) {
3411 1323558 227656 if (op_block_stack->length > 0) {
3415 456784 866774 if (block_current->has_object_var_decls) {
3419 456784 866774 if (block_current->has_object_var_decls && !block_parent->no_scope) {
456784 0 if (block_current->has_object_var_decls && !block_parent->no_scope) {
3432 2713729 3599335 if (op_var->uv.var->is_declaration) {
3434 773819 1939910 if (SPVM_TYPE_is_object_type(compiler, var_type->basic_type->id, var_type->dimension, var_type->flag)) {
3443 227656 22048239 if (op_cur == op_root) {
3452 9563068 12485171 if (op_cur->moresib) {
3461 227656 9563068 if (finish) {
3486 22275895 0 while (op_cur) {
3491 12485171 9790724 if (op_cur->first) {
3501 68679 1482535 if (op_cur->uv.block->id == SPVM_BLOCK_C_ID_LOOP_INIT) {
3518 2713729 3599335 if (op_cur->uv.var->is_declaration) {
3525 773819 1939910 if (SPVM_TYPE_is_object_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3528 6720 1933190 else if (SPVM_TYPE_is_ref_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3531 523 1932667 else if (SPVM_TYPE_is_mulnum_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3533 0 523 assert(first_field);
3566 1807269 125398 else if (SPVM_TYPE_is_numeric_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3579 227656 1389529 if (strcmp(var_decl->var->name, "$.condition_flag") == 0) {
3580 0 227656 assert(runtime_var_index == 0);
3600 125398 0 else if (SPVM_TYPE_is_void_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3613 227656 22048239 if (op_cur == op_root) {
3621 9563068 12485171 if (op_cur->moresib) {
3630 227656 9563068 if (finish) {
3667 86627 266 if (found_method) {
3672 5 261 if (!parent_basic_type) {
3683 68 26217 if (basic_type) {
3691 3 66 if (found_field) {
3696 65 1 if (!parent_basic_type) {
3709 149 463465 if (basic_type_from->is_anon) {
3713 226924 236690 if (access_controll_flag_to == SPVM_ATTRIBUTE_C_ID_PRIVATE) {
3714 207592 19332 if (strcmp(basic_type_from->name, basic_type_to->name) == 0) {
3721 236 236454 else if (access_controll_flag_to == SPVM_ATTRIBUTE_C_ID_PROTECTED) {
3722 182 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 236454 0 else if (access_controll_flag_to == SPVM_ATTRIBUTE_C_ID_PUBLIC) {
3760 1650 0 if (SPVM_TYPE_is_numeric_type(compiler, type->basic_type->id, type->dimension, type->flag)) {
3782 825697 0 if (type->dimension == 0 && type->basic_type->id <= SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
824955 742 if (type->dimension == 0 && type->basic_type->id <= SPVM_NATIVE_C_BASIC_TYPE_ID_INT) {
3790 824881 74 if (!(type->basic_type->id == dist_type->basic_type->id && type->dimension == dist_type->dimension)) {
0 824881 if (!(type->basic_type->id == dist_type->basic_type->id && type->dimension == dist_type->dimension)) {
3809 586513 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)) {
580784 5729 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)) {
580784 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 580688 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 580688 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)) {
577735 2953 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)) {
577735 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 577695 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 577695 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)) {
571909 5786 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)) {
571909 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)) {
524 571385 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 559773 26740 if (!(first_type->basic_type->id == dist_type->basic_type->id && first_type->dimension == dist_type->dimension)) {
0 559773 if (!(first_type->basic_type->id == dist_type->basic_type->id && first_type->dimension == dist_type->dimension)) {
3836 537054 49459 if (!(last_type->basic_type->id == dist_type->basic_type->id && last_type->dimension == dist_type->dimension)) {
0 537054 if (!(last_type->basic_type->id == dist_type->basic_type->id && last_type->dimension == dist_type->dimension)) {
3849 106432 2920776 if (op_src->allow_narrowing_conversion) {
3864 456946 2463830 if (op_src->id == SPVM_OP_C_ID_CONSTANT) {
3869 2106440 814336 if (SPVM_TYPE_is_numeric_type(compiler, dist_type_basic_type_id, dist_type_dimension, dist_type_flag)) {
3871 2102212 4228 if (SPVM_TYPE_is_numeric_type(compiler, src_type_basic_type_id, src_type_dimension, src_type_flag)) {
3873 17423 2084789 if (src_type_basic_type_id == dist_type_basic_type_id) {
3877 2327 15096 else if (dist_type_basic_type_id > src_type_basic_type_id) {
3881 2327 0 else if (dist_type_basic_type_id < src_type_basic_type_id) {
3882 2322 5 if (src_constant) {
3883 0 2322 assert(src_type_dimension == 0);
3884 10 2312 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 2312 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 1224 1097 if (dist_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_BYTE) {
3897 1223 1 if (src_constant_value >= INT8_MIN && src_constant_value <= INT8_MAX) {
1220 3 if (src_constant_value >= INT8_MIN && src_constant_value <= INT8_MAX) {
3904 1090 7 else if (dist_type_basic_type_id == SPVM_NATIVE_C_BASIC_TYPE_ID_SHORT) {
3905 1089 1 if (src_constant_value >= INT16_MIN && src_constant_value <= INT16_MAX) {
1087 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 2970819 if (SPVM_TYPE_is_void_type(compiler, src_type_basic_type_id, src_type_dimension, src_type_flag)) {
3965 76 2970743 if (!assignability) {
3970 23898 2946845 if (need_implicite_conversion) {
3994 24851454 2588331 for (int32_t runtime_var_index = 0; runtime_var_index < runtime_vars->length; runtime_var_index++) {
3995 24850613 841 if (runtime_var_index + var_width <= runtime_vars->length) {
3997 24850613 0 for (int32_t i = 0; i < var_width; i++) {
3999 24850613 0 if (var_decl_id >= 0) {
4004 0 24850613 if (!is_used) {
4007 0 0 for (int32_t i = 0; i < var_width; i++) {
4014 0 24851454 if (found) {
4020 2588331 0 if (!found) {
4022 2589752 2588331 for (int32_t i = 0; i < var_width; i++) {
4040 0 1480001 assert(type);
4134 88184 473455 if (SPVM_TYPE_is_string_type(compiler, basic_type->id, first_type->dimension, 0)) {
4137 136456 336999 else if (SPVM_TYPE_is_any_object_array_type(compiler, basic_type->id, first_type->dimension, 0)) {
4178 223843 42620 if (op->first->id == SPVM_OP_C_ID_TYPE) {
4181 42620 0 else if (op->first->id == SPVM_OP_C_ID_VAR) {
4205 760702 0 if (op->uv.type) {
4230 46075 0 if (class_var->type) {
4237 14454 0 if (class_var->type) {
4266 57 611419 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 15085 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 11120 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));