Changeset 1cbca6e for src/SymTab


Ignore:
Timestamp:
Oct 7, 2015, 12:38:48 PM (9 years ago)
Author:
Rob Schluntz <rschlunt@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
Children:
1521de20
Parents:
02e5ab6
Message:

check length, etc. in unification of arrays, switch typedef equality for typesCompatible

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SymTab/Validate.cc

    r02e5ab6 r1cbca6e  
    5454#include "MakeLibCfa.h"
    5555#include "TypeEquality.h"
     56#include "ResolvExpr/typeops.h"
    5657
    5758#define debugPrint( x ) if ( doDebug ) { std::cout << x; }
     
    851852                        Type * t1 = tyDecl->get_base();
    852853                        Type * t2 = typedefNames[ tyDecl->get_name() ].first->get_base();
    853                         if ( ! typeEquals( t1, t2, true ) ) {
     854                        if ( ! ResolvExpr::typesCompatible( t1, t2, Indexer() ) ) {
    854855                                throw SemanticError( "cannot redefine typedef: " + tyDecl->get_name() );
    855856                        }
Note: See TracChangeset for help on using the changeset viewer.