@@ -414,8 +414,8 @@ void set_intrinsic(ASR::symbol_t* sym) {
414414 func_sym_type->m_abi = ASR::abiType::Intrinsic;
415415 break ;
416416 }
417- case ASR::symbolType::StructType : {
418- ASR::StructType_t * derived_type_sym = ASR::down_cast<ASR::StructType_t >(sym);
417+ case ASR::symbolType::Struct : {
418+ ASR::Struct_t * derived_type_sym = ASR::down_cast<ASR::Struct_t >(sym);
419419 derived_type_sym->m_abi = ASR::abiType::Intrinsic;
420420 break ;
421421 }
@@ -467,8 +467,8 @@ ASR::asr_t* getStructInstanceMember_t(Allocator& al, const Location& loc,
467467 ASR::asr_t * v_var, ASR::symbol_t *v,
468468 ASR::symbol_t * member, SymbolTable* current_scope) {
469469 member = ASRUtils::symbol_get_past_external (member);
470- if (ASR::is_a<ASR::StructType_t >(*member)) {
471- ASR::StructType_t * member_variable = ASR::down_cast<ASR::StructType_t >(member);
470+ if (ASR::is_a<ASR::Struct_t >(*member)) {
471+ ASR::Struct_t * member_variable = ASR::down_cast<ASR::Struct_t >(member);
472472 ASR::symbol_t *mem_es = nullptr ;
473473 std::string mem_name = " 1_" + std::string (ASRUtils::symbol_name (member));
474474 if (current_scope->resolve_symbol (mem_name)) {
@@ -480,7 +480,7 @@ ASR::asr_t* getStructInstanceMember_t(Allocator& al, const Location& loc,
480480 nullptr , 0 , member_variable->m_name , ASR::accessType::Public));
481481 current_scope->add_symbol (mem_name, mem_es);
482482 }
483- ASR::ttype_t * member_type = ASRUtils::TYPE (ASR::make_Struct_t (al,
483+ ASR::ttype_t * member_type = ASRUtils::TYPE (ASR::make_StructType_t (al,
484484 member_variable->base .base .loc , mem_es));
485485 return ASR::make_StructInstanceMember_t (al, loc, ASRUtils::EXPR (v_var),
486486 mem_es, ASRUtils::fix_scoped_type (al, member_type, current_scope), nullptr );
@@ -493,8 +493,8 @@ ASR::asr_t* getStructInstanceMember_t(Allocator& al, const Location& loc,
493493 ASR::dimension_t * m_dims = nullptr ;
494494 size_t n_dims = ASRUtils::extract_dimensions_from_ttype (member_type, m_dims);
495495 switch ( member_type_->type ) {
496- case ASR::ttypeType::Struct : {
497- ASR::Struct_t * der = ASR::down_cast<ASR::Struct_t >(member_type_);
496+ case ASR::ttypeType::StructType : {
497+ ASR::StructType_t * der = ASR::down_cast<ASR::StructType_t >(member_type_);
498498 std::string der_type_name = ASRUtils::symbol_name (der->m_derived_type );
499499 ASR::symbol_t * der_type_sym = current_scope->resolve_symbol (der_type_name);
500500 if ( der_type_sym == nullptr ) {
@@ -505,9 +505,9 @@ ASR::asr_t* getStructInstanceMember_t(Allocator& al, const Location& loc,
505505 ASR::ExternalSymbol_t* m_ext = ASR::down_cast<ASR::ExternalSymbol_t>(m_external);
506506 m_external = m_ext->m_external ;
507507 module_name = m_ext->m_module_name ;
508- } else if ( ASR::is_a<ASR::StructType_t >(*m_external) ) {
508+ } else if ( ASR::is_a<ASR::Struct_t >(*m_external) ) {
509509 ASR::symbol_t * asr_owner = ASRUtils::get_asr_owner (m_external);
510- if ( ASR::is_a<ASR::StructType_t >(*asr_owner) ||
510+ if ( ASR::is_a<ASR::Struct_t >(*asr_owner) ||
511511 ASR::is_a<ASR::Module_t>(*asr_owner) ) {
512512 module_name = ASRUtils::symbol_name (asr_owner);
513513 }
@@ -543,10 +543,10 @@ ASR::asr_t* getStructInstanceMember_t(Allocator& al, const Location& loc,
543543 } else {
544544 der_ext = current_scope->get_symbol (mangled_name);
545545 }
546- ASR::asr_t * der_new = ASR::make_Struct_t (al, loc, der_ext);
546+ ASR::asr_t * der_new = ASR::make_StructType_t (al, loc, der_ext);
547547 member_type_ = ASRUtils::TYPE (der_new);
548548 } else if (ASR::is_a<ASR::ExternalSymbol_t>(*der_type_sym)) {
549- member_type_ = ASRUtils::TYPE (ASR::make_Struct_t (al, loc, der_type_sym));
549+ member_type_ = ASRUtils::TYPE (ASR::make_StructType_t (al, loc, der_type_sym));
550550 }
551551 member_type = ASRUtils::make_Array_t_util (al, loc,
552552 member_type_, m_dims, n_dims);
@@ -586,13 +586,13 @@ bool use_overloaded(ASR::expr_t* left, ASR::expr_t* right,
586586 const std::function<void (const std::string &, const Location &)> err) {
587587 ASR::ttype_t *left_type = ASRUtils::expr_type (left);
588588 ASR::ttype_t *right_type = ASRUtils::expr_type (right);
589- ASR::StructType_t *left_struct = nullptr ;
590- if ( ASR::is_a<ASR::Struct_t >(*left_type) ) {
591- left_struct = ASR::down_cast<ASR::StructType_t >(
592- ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Struct_t >(
589+ ASR::Struct_t *left_struct = nullptr ;
590+ if ( ASR::is_a<ASR::StructType_t >(*left_type) ) {
591+ left_struct = ASR::down_cast<ASR::Struct_t >(
592+ ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::StructType_t >(
593593 left_type)->m_derived_type ));
594594 } else if ( ASR::is_a<ASR::Class_t>(*left_type) ) {
595- left_struct = ASR::down_cast<ASR::StructType_t >(
595+ left_struct = ASR::down_cast<ASR::Struct_t >(
596596 ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Class_t>(
597597 left_type)->m_class_type ));
598598 }
@@ -666,8 +666,8 @@ bool use_overloaded(ASR::expr_t* left, ASR::expr_t* right,
666666 ASR::dimension_t * m_dims = nullptr ;
667667 size_t n_dims = ASRUtils::extract_dimensions_from_ttype (return_type, m_dims);
668668 return_type = ASRUtils::type_get_past_array (return_type);
669- if ( ASR::is_a<ASR::Struct_t >(*return_type) ) {
670- ASR::Struct_t * struct_t = ASR::down_cast<ASR::Struct_t >(return_type);
669+ if ( ASR::is_a<ASR::StructType_t >(*return_type) ) {
670+ ASR::StructType_t * struct_t = ASR::down_cast<ASR::StructType_t >(return_type);
671671 if ( curr_scope->get_counter () !=
672672 ASRUtils::symbol_parent_symtab (struct_t ->m_derived_type )->get_counter () &&
673673 !curr_scope->resolve_symbol (ASRUtils::symbol_name (struct_t ->m_derived_type )) ) {
@@ -677,7 +677,7 @@ bool use_overloaded(ASR::expr_t* left, ASR::expr_t* right,
677677 ASRUtils::symbol_name (ASRUtils::get_asr_owner (struct_t ->m_derived_type )), nullptr , 0 ,
678678 ASRUtils::symbol_name (struct_t ->m_derived_type ), ASR::accessType::Public)));
679679 }
680- return_type = ASRUtils::TYPE (ASR::make_Struct_t (al, loc,
680+ return_type = ASRUtils::TYPE (ASR::make_StructType_t (al, loc,
681681 curr_scope->resolve_symbol (ASRUtils::symbol_name (struct_t ->m_derived_type ))));
682682 if ( is_array ) {
683683 return_type = ASRUtils::make_Array_t_util (al, loc, return_type, m_dims, n_dims);
@@ -757,8 +757,8 @@ void process_overloaded_unary_minus_function(ASR::symbol_t* proc, ASR::expr_t* o
757757 ASR::dimension_t * m_dims = nullptr ;
758758 size_t n_dims = ASRUtils::extract_dimensions_from_ttype (return_type, m_dims);
759759 return_type = ASRUtils::type_get_past_array (return_type);
760- if ( ASR::is_a<ASR::Struct_t >(*return_type) ) {
761- ASR::Struct_t * struct_t = ASR::down_cast<ASR::Struct_t >(return_type);
760+ if ( ASR::is_a<ASR::StructType_t >(*return_type) ) {
761+ ASR::StructType_t * struct_t = ASR::down_cast<ASR::StructType_t >(return_type);
762762 if ( curr_scope->get_counter () !=
763763 ASRUtils::symbol_parent_symtab (struct_t ->m_derived_type )->get_counter () &&
764764 !curr_scope->resolve_symbol (ASRUtils::symbol_name (struct_t ->m_derived_type )) ) {
@@ -768,7 +768,7 @@ void process_overloaded_unary_minus_function(ASR::symbol_t* proc, ASR::expr_t* o
768768 ASRUtils::symbol_name (ASRUtils::get_asr_owner (struct_t ->m_derived_type )), nullptr , 0 ,
769769 ASRUtils::symbol_name (struct_t ->m_derived_type ), ASR::accessType::Public)));
770770 }
771- return_type = ASRUtils::TYPE (ASR::make_Struct_t (al, loc,
771+ return_type = ASRUtils::TYPE (ASR::make_StructType_t (al, loc,
772772 curr_scope->resolve_symbol (ASRUtils::symbol_name (struct_t ->m_derived_type ))));
773773 if ( is_array ) {
774774 return_type = ASRUtils::make_Array_t_util (
@@ -797,14 +797,14 @@ bool use_overloaded_unary_minus(ASR::expr_t* operand,
797797 ASR::ttype_t *operand_type = ASRUtils::expr_type (operand);
798798 ASR::symbol_t * sym = curr_scope->resolve_symbol (" ~sub" );
799799 if ( !sym ) {
800- if ( ASR::is_a<ASR::Struct_t >(*operand_type) ) {
801- ASR::Struct_t * struct_t = ASR::down_cast<ASR::Struct_t >(operand_type);
800+ if ( ASR::is_a<ASR::StructType_t >(*operand_type) ) {
801+ ASR::StructType_t * struct_t = ASR::down_cast<ASR::StructType_t >(operand_type);
802802 ASR::symbol_t * struct_t_sym = ASRUtils::symbol_get_past_external (struct_t ->m_derived_type );
803- if ( ASR::is_a<ASR::StructType_t >(*struct_t_sym) ) {
804- ASR::StructType_t * struct_type_t = ASR::down_cast<ASR::StructType_t >(struct_t_sym);
803+ if ( ASR::is_a<ASR::Struct_t >(*struct_t_sym) ) {
804+ ASR::Struct_t * struct_type_t = ASR::down_cast<ASR::Struct_t >(struct_t_sym);
805805 sym = struct_type_t ->m_symtab ->resolve_symbol (" ~sub" );
806806 while ( sym == nullptr && struct_type_t ->m_parent != nullptr ) {
807- struct_type_t = ASR::down_cast<ASR::StructType_t >(
807+ struct_type_t = ASR::down_cast<ASR::Struct_t >(
808808 ASRUtils::symbol_get_past_external (struct_type_t ->m_parent ));
809809 sym = struct_type_t ->m_symtab ->resolve_symbol (" ~sub" );
810810 }
@@ -850,7 +850,7 @@ bool use_overloaded_unary_minus(ASR::expr_t* operand,
850850}
851851
852852bool is_op_overloaded (ASR::binopType op, std::string& intrinsic_op_name,
853- SymbolTable* curr_scope, ASR::StructType_t * left_struct) {
853+ SymbolTable* curr_scope, ASR::Struct_t * left_struct) {
854854 bool result = true ;
855855 switch (op) {
856856 case ASR::binopType::Add: {
@@ -972,14 +972,14 @@ bool use_overloaded_assignment(ASR::expr_t* target, ASR::expr_t* value,
972972 ASR::symbol_t * sym = curr_scope->resolve_symbol (" ~assign" );
973973 ASR::expr_t * expr_dt = nullptr ;
974974 if ( !sym ) {
975- if ( ASR::is_a<ASR::Struct_t >(*target_type) ) {
976- ASR::StructType_t * target_struct = ASR::down_cast<ASR::StructType_t >(
977- ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Struct_t >(target_type)->m_derived_type ));
975+ if ( ASR::is_a<ASR::StructType_t >(*target_type) ) {
976+ ASR::Struct_t * target_struct = ASR::down_cast<ASR::Struct_t >(
977+ ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::StructType_t >(target_type)->m_derived_type ));
978978 sym = target_struct->m_symtab ->resolve_symbol (" ~assign" );
979979 expr_dt = target;
980- } else if ( ASR::is_a<ASR::Struct_t >(*value_type) ) {
981- ASR::StructType_t * value_struct = ASR::down_cast<ASR::StructType_t >(
982- ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Struct_t >(value_type)->m_derived_type ));
980+ } else if ( ASR::is_a<ASR::StructType_t >(*value_type) ) {
981+ ASR::Struct_t * value_struct = ASR::down_cast<ASR::Struct_t >(
982+ ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::StructType_t >(value_type)->m_derived_type ));
983983 sym = value_struct->m_symtab ->resolve_symbol (" ~assign" );
984984 expr_dt = value;
985985 }
@@ -1074,9 +1074,9 @@ bool use_overloaded_file_read_write(std::string &read_write, Vec<ASR::expr_t*> a
10741074 ASR::symbol_t * sym = curr_scope->resolve_symbol (read_write);
10751075 ASR::expr_t * expr_dt = nullptr ;
10761076 if ( sym == nullptr ) {
1077- if ( ASR::is_a<ASR::Struct_t >(*arg_type) ) {
1078- ASR::StructType_t * arg_struct = ASR::down_cast<ASR::StructType_t >(
1079- ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Struct_t >(arg_type)->m_derived_type ));
1077+ if ( ASR::is_a<ASR::StructType_t >(*arg_type) ) {
1078+ ASR::Struct_t * arg_struct = ASR::down_cast<ASR::Struct_t >(
1079+ ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::StructType_t >(arg_type)->m_derived_type ));
10801080 sym = arg_struct->m_symtab ->resolve_symbol (read_write);
10811081 expr_dt = args[0 ];
10821082 }
@@ -1120,13 +1120,13 @@ bool use_overloaded(ASR::expr_t* left, ASR::expr_t* right,
11201120 const std::function<void (const std::string &, const Location &)> err) {
11211121 ASR::ttype_t *left_type = ASRUtils::expr_type (left);
11221122 ASR::ttype_t *right_type = ASRUtils::expr_type (right);
1123- ASR::StructType_t *left_struct = nullptr ;
1124- if ( ASR::is_a<ASR::Struct_t >(*left_type) ) {
1125- left_struct = ASR::down_cast<ASR::StructType_t >(
1126- ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Struct_t >(
1123+ ASR::Struct_t *left_struct = nullptr ;
1124+ if ( ASR::is_a<ASR::StructType_t >(*left_type) ) {
1125+ left_struct = ASR::down_cast<ASR::Struct_t >(
1126+ ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::StructType_t >(
11271127 left_type)->m_derived_type ));
11281128 } else if ( ASR::is_a<ASR::Class_t>(*left_type) ) {
1129- left_struct = ASR::down_cast<ASR::StructType_t >(
1129+ left_struct = ASR::down_cast<ASR::Struct_t >(
11301130 ASRUtils::symbol_get_past_external (ASR::down_cast<ASR::Class_t>(
11311131 left_type)->m_class_type ));
11321132 }
@@ -1157,9 +1157,9 @@ bool use_overloaded(ASR::expr_t* left, ASR::expr_t* right,
11571157 if ( (left_arg_type->type == left_type->type &&
11581158 right_arg_type->type == right_type->type )
11591159 || (ASR::is_a<ASR::Class_t>(*left_arg_type) &&
1160- ASR::is_a<ASR::Struct_t >(*left_type))
1160+ ASR::is_a<ASR::StructType_t >(*left_type))
11611161 || (ASR::is_a<ASR::Class_t>(*right_arg_type) &&
1162- ASR::is_a<ASR::Struct_t >(*right_type))) {
1162+ ASR::is_a<ASR::StructType_t >(*right_type))) {
11631163 found = true ;
11641164 Vec<ASR::call_arg_t > a_args;
11651165 a_args.reserve (al, 2 );
@@ -1218,7 +1218,7 @@ bool use_overloaded(ASR::expr_t* left, ASR::expr_t* right,
12181218}
12191219
12201220bool is_op_overloaded (ASR::cmpopType op, std::string& intrinsic_op_name,
1221- SymbolTable* curr_scope, ASR::StructType_t *left_struct) {
1221+ SymbolTable* curr_scope, ASR::Struct_t *left_struct) {
12221222 bool result = true ;
12231223 switch (op) {
12241224 case ASR::cmpopType::Eq: {
0 commit comments