Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Tuples/TupleExpansion.cc

    r4c8621ac rd5556a3  
    144144
    145145        Expression * MemberTupleExpander::mutate( UntypedMemberExpr * memberExpr ) {
    146                 if ( UntypedTupleExpr * tupleExpr = dynamic_cast< UntypedTupleExpr * > ( memberExpr->get_member() ) ) {
     146                if ( TupleExpr * tupleExpr = dynamic_cast< TupleExpr * > ( memberExpr->get_member() ) ) {
    147147                        Expression * aggr = memberExpr->get_aggregate()->clone()->acceptMutator( *this );
    148148                        // aggregate expressions which might be impure must be wrapped in unique expressions
     
    225225                                decl->get_parameters().push_back( tyParam );
    226226                        }
    227                         if ( tupleType->size() == 0 ) {
    228                                 // empty structs are not standard C. Add a dummy field to empty tuples to silence warnings when a compound literal Tuple0 is created.
    229                                 decl->get_members().push_back( new ObjectDecl( "dummy", DeclarationNode::NoStorageClass, LinkageSpec::C, nullptr, new BasicType( Type::Qualifiers(), BasicType::SignedInt ), nullptr ) );
    230                         }
    231227                        typeMap[mangleName] = decl;
    232228                        addDeclaration( decl );
     
    319315                        qualifiers &= type->get_qualifiers();
    320316                } // for
    321                 if ( exprs.empty() ) qualifiers = Type::Qualifiers();
    322317                return tupleType;
    323         }
    324 
    325         TypeInstType * isTtype( Type * type ) {
    326                 if ( TypeInstType * inst = dynamic_cast< TypeInstType * >( type ) ) {
    327                         if ( inst->get_baseType()->get_kind() == TypeDecl::Ttype ) {
    328                                 return inst;
    329                         }
    330                 }
    331                 return nullptr;
    332318        }
    333319
Note: See TracChangeset for help on using the changeset viewer.