Changeset 5af7306 for src/SymTab


Ignore:
Timestamp:
Apr 23, 2018, 4:46:43 PM (6 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
new-env, with_gc
Children:
2efe4b8
Parents:
fb97252f
Message:

Assorted bug fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SymTab/Validate.cc

    rfb97252f r5af7306  
    4848#include "CodeGen/CodeGenerator.h"     // for genName
    4949#include "CodeGen/OperatorTable.h"     // for isCtorDtor, isCtorDtorAssign
     50#include "Common/GC.h"                 // for new_static_root, register_static_root
    5051#include "Common/PassVisitor.h"        // for PassVisitor, WithDeclsToAdd
    5152#include "Common/ScopedMap.h"          // for ScopedMap
     
    673674                        // grab and remember declaration of size_t
    674675                        SizeType = eliminator.pass.typedefNames["size_t"].first->get_base()->clone();
     676                        GC::get().register_static_root( SizeType );
    675677                } else {
    676678                        // xxx - missing global typedef for size_t - default to long unsigned int, even though that may be wrong
    677679                        // eventually should have a warning for this case.
    678                         SizeType = new BasicType( Type::Qualifiers(), BasicType::LongUnsignedInt );
     680                        SizeType =
     681                                new_static_root<BasicType>( Type::Qualifiers(), BasicType::LongUnsignedInt );
    679682                }
    680683                filter( translationUnit, isTypedef );
Note: See TracChangeset for help on using the changeset viewer.