Changeset 1744e6d


Ignore:
Timestamp:
Aug 8, 2017, 8:10:23 PM (7 years ago)
Author:
Rob Schluntz <rschlunt@…>
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:
e25707d
Parents:
46adb83
Message:

Ignore reference types in specialize function checks

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/GenPoly/Specialize.cc

    r46adb83 r1744e6d  
    101101                        // conversion of 0 (null) to function type does not require tuple specialization
    102102                        if ( dynamic_cast< ZeroType * >( actualType ) ) return false;
    103                         FunctionType * aftype = getFunctionType( actualType );
    104                         assertf( aftype, "formal type is a function type, but actual type is not." );
     103                        FunctionType * aftype = getFunctionType( actualType->stripReferences() );
     104                        assertf( aftype, "formal type is a function type, but actual type is not: %s", toString( actualType ).c_str() );
    105105                        if ( fftype->get_parameters().size() != aftype->get_parameters().size() ) return true;
    106106                        for ( auto params : group_iterate( fftype->get_parameters(), aftype->get_parameters() ) ) {
Note: See TracChangeset for help on using the changeset viewer.