Ignore:
Timestamp:
Sep 13, 2017, 2:34:55 PM (7 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
Children:
982832e
Parents:
9f5ecf5
Message:

Renamed safe_dynamic_cast to strict_dynamic_cast

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SymTab/Validate.cc

    r9f5ecf5 re3e16bc  
    486486                std::list< DeclarationWithType * > asserts;
    487487                for ( Declaration * decl : inst->baseTrait->members ) {
    488                         asserts.push_back( safe_dynamic_cast<DeclarationWithType *>( decl->clone() ) );
     488                        asserts.push_back( strict_dynamic_cast<DeclarationWithType *>( decl->clone() ) );
    489489                }
    490490                // substitute trait decl parameters for instance parameters
     
    530530                // need to carry over the 'sized' status of each decl in the instance
    531531                for ( auto p : group_iterate( traitDecl->get_parameters(), traitInst->get_parameters() ) ) {
    532                         TypeExpr * expr = safe_dynamic_cast< TypeExpr * >( std::get<1>(p) );
     532                        TypeExpr * expr = strict_dynamic_cast< TypeExpr * >( std::get<1>(p) );
    533533                        if ( TypeInstType * inst = dynamic_cast< TypeInstType * >( expr->get_type() ) ) {
    534534                                TypeDecl * formalDecl = std::get<0>(p);
     
    892892                        for ( size_t i = 0; paramIter != params->end(); ++paramIter, ++i ) {
    893893                                if ( i < args.size() ) {
    894                                         TypeExpr * expr = safe_dynamic_cast< TypeExpr * >( *std::next( args.begin(), i ) );
     894                                        TypeExpr * expr = strict_dynamic_cast< TypeExpr * >( *std::next( args.begin(), i ) );
    895895                                        sub.add( (*paramIter)->get_name(), expr->get_type()->clone() );
    896896                                } else if ( i == args.size() ) {
     
    962962                if ( retVals.size() > 1 ) {
    963963                        // generate a single return parameter which is the tuple of all of the return values
    964                         TupleType * tupleType = safe_dynamic_cast< TupleType * >( ResolvExpr::extractResultType( ftype ) );
     964                        TupleType * tupleType = strict_dynamic_cast< TupleType * >( ResolvExpr::extractResultType( ftype ) );
    965965                        // ensure return value is not destructed by explicitly creating an empty ListInit node wherein maybeConstruct is false.
    966966                        ObjectDecl * newRet = new ObjectDecl( "", Type::StorageClasses(), LinkageSpec::Cforall, 0, tupleType, new ListInit( std::list<Initializer*>(), noDesignators, false ) );
Note: See TracChangeset for help on using the changeset viewer.