Changeset e874605 for src/ResolvExpr


Ignore:
Timestamp:
Oct 28, 2022, 3:11:57 PM (3 years ago)
Author:
JiadaL <j82liang@…>
Branches:
ADT, ast-experimental, master
Children:
93d2219
Parents:
77de429
Message:

Add class InlineValueDecl, which is a Declaration class that works as a placeholder for aggregration value inherited from other aggregration. Disable inline value overwrite.

Location:
src/ResolvExpr
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/CommonType.cc

    r77de429 re874605  
    991991                                add_qualifiers( result, type2->qualifiers );
    992992                        } else {
    993                                 // xxx - does unifying a ref with typed enumInst makes sense?
    994993                                if (!dynamic_cast<const ast::EnumInstType *>(type2))
    995994                                        result = commonType( type2, ref, tenv, need, have, open, widen, symtab );
     
    10101009
    10111010                void postvisit( const ast::EnumInstType * enumInst ) {
    1012                         // reuse BasicType/EnumInstType common type by swapping
    1013                         // xxx - is this already handled by unify?
    10141011                        if (!dynamic_cast<const ast::EnumInstType *>(type2))
    10151012                                result = commonType( type2, enumInst, tenv, need, have, open, widen, symtab);
  • src/ResolvExpr/ConversionCost.cc

    r77de429 re874605  
    720720                costCalc( baseType, dst, srcIsLvalue, symtab, env );
    721721        } else {
    722                 (void)enumInstType;
    723722                static ast::ptr<ast::BasicType> integer = { new ast::BasicType( ast::BasicType::SignedInt ) };
    724723                cost = costCalc( integer, dst, srcIsLvalue, symtab, env );
Note: See TracChangeset for help on using the changeset viewer.