Ignore:
Timestamp:
Mar 6, 2024, 6:06:30 AM (5 months ago)
Author:
JiadaL <j82liang@…>
Branches:
master
Children:
f6e8c67
Parents:
00eaeb8
Message:

Add the Working support to succ() and pred() pseudo function to Enum

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/CommonType.cc

    r00eaeb8 rbbf2cb1  
    672672
    673673        void postvisit( const ast::EnumInstType * enumInst ) {
    674                 if (!dynamic_cast<const ast::EnumInstType *>(type2))
     674                // if ( dynamic_cast<const ast::EnumPosType *>(enumInst) ) {
     675                //      result = enumInst;
     676                // } else
     677                if (!dynamic_cast<const ast::EnumInstType *>(type2)) {
    675678                        result = commonType( type2, enumInst, tenv, need, have, open, widen);
    676679                }
     680        }
     681
     682        void postvisit( const ast::EnumPosType * enumPos ) {
     683                if ( auto type2AsPos = dynamic_cast<const ast::EnumPosType *>(type2) ) {
     684                        // result = commonType( type2AsPos->instance, enumPos->instance, tenv, need, have, open, widen );
     685                        result = enumPos;
     686                } else if (  auto typeAsBasic = dynamic_cast<const ast::BasicType *>(type2) ) {
     687                        result = type2;
     688                }
     689        }
    677690
    678691        void postvisit( const ast::TraitInstType * ) {}
Note: See TracChangeset for help on using the changeset viewer.