Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/InitTweak/FixInit.cc

    r698ec72 r29bc63e  
    5858#include "SynTree/TypeSubstitution.h"  // for TypeSubstitution, operator<<
    5959#include "SynTree/Visitor.h"           // for acceptAll, maybeAccept
    60 #include "Tuples/Tuples.h"             // for isTtype
    6160
    6261bool ctordtorp = false; // print all debug
     
    368367                }
    369368
    370                 bool ResolveCopyCtors::skipCopyConstruct( Type * type ) {
    371                         return dynamic_cast< VarArgsType * >( type ) || dynamic_cast< ReferenceType * >( type ) || GenPoly::getFunctionType( type ) || Tuples::isTtype( type );
    372                 }
     369                bool ResolveCopyCtors::skipCopyConstruct( Type * type ) { return ! isConstructable( type ); }
    373370
    374371                Expression * ResolveCopyCtors::makeCtorDtor( const std::string & fname, ObjectDecl * var, Expression * cpArg ) {
     
    819816                                        assert( ! ctorInit->get_ctor() || ! ctorInit->get_init() );
    820817                                        Statement * dtor = ctorInit->get_dtor();
     818                                        // don't need to call intrinsic dtor, because it does nothing, but
     819                                        // non-intrinsic dtors must be called
    821820                                        if ( dtor && ! isIntrinsicSingleArgCallStmt( dtor ) ) {
    822                                                 // don't need to call intrinsic dtor, because it does nothing, but
    823                                                 // non-intrinsic dtors must be called
     821                                                // set dtor location to the object's location for error messages
     822                                                ctorInit->dtor->location = objDecl->location;
    824823                                                reverseDeclOrder.front().push_front( objDecl );
    825824                                        } // if
Note: See TracChangeset for help on using the changeset viewer.