Changeset 055b562 for src/ResolvExpr


Ignore:
Timestamp:
Apr 10, 2019, 3:18:03 PM (6 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
ADT, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
7889f14
Parents:
7a63486
Message:

fix to last

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/ResolvExpr/TypeEnvironment.cc

    r7a63486 r055b562  
    430430                                        class1->set_type( common );
    431431                                }
    432                                 class1->data.isComplete = data.isComplete;
     432                                class1->data.isComplete |= data.isComplete;
    433433                                env.erase( class2 );
    434434                        } else return false;
     
    438438                                class1->vars.insert( class2->vars.begin(), class2->vars.end() );
    439439                                class1->allowWidening = widen1;
    440                                 class1->data.isComplete = data.isComplete;
     440                                class1->data.isComplete |= data.isComplete;
    441441                                env.erase( class2 );
    442442                        } else {
    443443                                class2->vars.insert( class1->vars.begin(), class1->vars.end() );
    444444                                class2->allowWidening = widen2;
    445                                 class2->data.isComplete = data.isComplete;
     445                                class2->data.isComplete |= data.isComplete;
    446446                                env.erase( class1 );
    447447                        } // if
     
    450450                        class1->vars.insert( var2->get_name() );
    451451                        class1->allowWidening = widen1;
    452                         class1->data.isComplete = data.isComplete;
     452                        class1->data.isComplete |= data.isComplete;
    453453                } else if ( class2 != env.end() ) {
    454454                        // var1 unbound, add to class2
    455455                        class2->vars.insert( var1->get_name() );
    456456                        class2->allowWidening = widen2;
    457                         class2->data.isComplete = data.isComplete;
     457                        class2->data.isComplete |= data.isComplete;
    458458                } else {
    459459                        // neither var bound, create new class
Note: See TracChangeset for help on using the changeset viewer.