Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/GenPoly/Lvalue.cc

    r78cdb06 rb4f8808  
    6060                }
    6161
    62                 struct ReferenceConversions final : public WithStmtsToAdd, public WithGuards {
     62                struct ReferenceConversions final : public WithStmtsToAdd {
    6363                        Expression * postmutate( CastExpr * castExpr );
    6464                        Expression * postmutate( AddressExpr * addrExpr );
     
    7171
    7272                struct FixIntrinsicResult final : public WithGuards {
    73                         enum {
    74                                 NoSkip,
    75                                 Skip,
    76                                 SkipInProgress
    77                         } skip = NoSkip;
    78 
    79                         void premutate( AsmExpr * ) { GuardValue( skip ); skip = Skip; }
    80                         void premutate( ApplicationExpr * ) { GuardValue( skip ); skip = (skip == Skip) ? SkipInProgress : NoSkip; }
    81 
    82 
    8373                        Expression * postmutate( ApplicationExpr * appExpr );
    8474                        void premutate( FunctionDecl * funcDecl );
     
    172162
    173163                Expression * FixIntrinsicResult::postmutate( ApplicationExpr * appExpr ) {
    174                         if ( skip != SkipInProgress && isIntrinsicReference( appExpr ) ) {
     164                        if ( isIntrinsicReference( appExpr ) ) {
    175165                                // eliminate reference types from intrinsic applications - now they return lvalues
    176166                                ReferenceType * result = strict_dynamic_cast< ReferenceType * >( appExpr->result );
Note: See TracChangeset for help on using the changeset viewer.