Changeset 8135d4c for src/SymTab


Ignore:
Timestamp:
Aug 22, 2017, 7:31:52 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:
9aaac6e9
Parents:
fc56cdbf (diff), b3d413b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' into references

Location:
src/SymTab
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • src/SymTab/Autogen.cc

    rfc56cdbf r8135d4c  
    1616#include "Autogen.h"
    1717
     18#include <cstddef>                 // for NULL
    1819#include <algorithm>               // for count_if
    1920#include <cassert>                 // for safe_dynamic_cast, assert, assertf
     
    2122#include <list>                    // for list, _List_iterator, list<>::iter...
    2223#include <set>                     // for set, _Rb_tree_const_iterator
     24#include <utility>                 // for pair
    2325#include <vector>                  // for vector
    2426
  • src/SymTab/Autogen.h

    rfc56cdbf r8135d4c  
    1717
    1818#include <cassert>                // for assert
    19 #include <iterator>               // for back_insert_iterator, back_inserter
    20 #include <list>                   // for list
    21 #include <string>                 // for string, operator==
     19#include <string>                 // for string
    2220
    2321#include "Common/UniqueName.h"    // for UniqueName
    2422#include "InitTweak/InitTweak.h"  // for InitExpander
    25 #include "Parser/LinkageSpec.h"   // for C
    2623#include "SynTree/Constant.h"     // for Constant
    27 #include "SynTree/Declaration.h"  // for ObjectDecl, Declaration (ptr only)
    28 #include "SynTree/Expression.h"   // for UntypedExpr, NameExpr, VariableExpr
    29 #include "SynTree/Initializer.h"  // for SingleInit
    30 #include "SynTree/Label.h"        // for Label, noLabels
    31 #include "SynTree/Statement.h"    // for Statement (ptr only), CompoundStmt
     24#include "SynTree/Declaration.h"  // for DeclarationWithType, ObjectDecl
     25#include "SynTree/Expression.h"   // for NameExpr, ConstantExpr, UntypedExpr...
    3226#include "SynTree/Type.h"         // for Type, ArrayType, Type::Qualifiers
     27
     28class CompoundStmt;
     29class Statement;
    3330
    3431namespace SymTab {
  • src/SymTab/FixFunction.cc

    rfc56cdbf r8135d4c  
    2020#include "Common/utility.h"       // for maybeClone
    2121#include "SynTree/Declaration.h"  // for FunctionDecl, ObjectDecl, Declarati...
     22#include "SynTree/Expression.h"   // for Expression
    2223#include "SynTree/Type.h"         // for ArrayType, PointerType, Type, Basic...
    2324
  • src/SymTab/Indexer.cc

    rfc56cdbf r8135d4c  
    1010// Created On       : Sun May 17 21:37:33 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Mar 30 16:38:47 2017
    13 // Update Count     : 19
     12// Last Modified On : Thu Aug 17 16:08:40 2017
     13// Update Count     : 20
    1414//
    1515
     
    355355        }
    356356
     357        void Indexer::visit( IfStmt *ifStmt ) {
     358            // for statements introduce a level of scope
     359            enterScope();
     360            Visitor::visit( ifStmt );
     361            leaveScope();
     362        }
     363
     364        void Indexer::visit( ForStmt *forStmt ) {
     365            // for statements introduce a level of scope
     366            enterScope();
     367            Visitor::visit( forStmt );
     368            leaveScope();
     369        }
     370
     371        void Indexer::visit( CatchStmt *catchStmt ) {
     372                // catch statements introduce a level of scope (for the caught exception)
     373                enterScope();
     374                Visitor::visit( catchStmt );
     375                leaveScope();
     376        }
    357377
    358378        void Indexer::visit( ApplicationExpr *applicationExpr ) {
     
    558578                leaveScope();
    559579        }
    560 
    561         void Indexer::visit( ForStmt *forStmt ) {
    562             // for statements introduce a level of scope
    563             enterScope();
    564             Visitor::visit( forStmt );
    565             leaveScope();
    566         }
    567 
    568 
    569580
    570581        void Indexer::lookupId( const std::string &id, std::list< DeclarationWithType* > &out ) const {
  • src/SymTab/Indexer.h

    rfc56cdbf r8135d4c  
    1010// Created On       : Sun May 17 21:38:55 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sat Jul 22 09:46:34 2017
    13 // Update Count     : 7
     12// Last Modified On : Thu Aug 17 16:09:12 2017
     13// Update Count     : 8
    1414//
    1515
     
    4545
    4646                virtual void visit( CompoundStmt *compoundStmt );
     47                virtual void visit( IfStmt *ifStmt );
     48                virtual void visit( ForStmt *forStmt );
     49                virtual void visit( CatchStmt *catchStmt );
    4750
    4851                virtual void visit( ApplicationExpr *applicationExpr );
     
    8184                virtual void visit( StructInstType *contextInst );
    8285                virtual void visit( UnionInstType *contextInst );
    83 
    84                 virtual void visit( ForStmt *forStmt );
    8586
    8687                // when using an indexer manually (e.g., within a mutator traversal), it is necessary to tell the indexer
  • src/SymTab/Mangler.cc

    rfc56cdbf r8135d4c  
    2020#include <iterator>                 // for ostream_iterator, back_insert_ite...
    2121#include <list>                     // for _List_iterator, list, _List_const...
    22 #include <string>                   // for string, operator<<, basic_string
     22#include <string>                   // for string, char_traits, operator<<
    2323
    2424#include "CodeGen/OperatorTable.h"  // for OperatorInfo, operatorLookup
     25#include "Common/SemanticError.h"   // for SemanticError
    2526#include "Common/utility.h"         // for toString
    2627#include "Parser/LinkageSpec.h"     // for Spec, isOverridable, AutoGen, Int...
  • src/SymTab/Validate.cc

    rfc56cdbf r8135d4c  
    4040#include "Validate.h"
    4141
     42#include <cassert>                     // for assertf, assert
    4243#include <cstddef>                     // for size_t
    43 #include <algorithm>                   // for move, transform
    44 #include <cassert>                     // for safe_dynamic_cast, assertf
    45 #include <iterator>                    // for back_inserter, inserter, back_...
    46 #include <list>                        // for list, _List_iterator, list<>::...
    47 #include <map>                         // for _Rb_tree_iterator, map, map<>:...
    48 #include <memory>                      // for unique_ptr, allocator
    49 #include <string>                      // for string, operator+, operator==
    50 #include <tuple>                       // for get
    51 #include <utility>                     // for pair, make_pair
    52 
    53 #include "AddVisit.h"                  // for addVisit
    54 #include "Autogen.h"                   // for SizeType, autogenerateRoutines
     44#include <list>                        // for list
     45#include <string>                      // for string
     46#include <utility>                     // for pair
     47
    5548#include "CodeGen/CodeGenerator.h"     // for genName
    5649#include "CodeGen/OperatorTable.h"     // for isCtorDtor, isCtorDtorAssign
    5750#include "Common/PassVisitor.h"        // for PassVisitor, WithDeclsToAdd
    58 #include "Common/ScopedMap.h"          // for ScopedMap<>::const_iterator
     51#include "Common/ScopedMap.h"          // for ScopedMap
    5952#include "Common/SemanticError.h"      // for SemanticError
    6053#include "Common/UniqueName.h"         // for UniqueName
    6154#include "Common/utility.h"            // for operator+, cloneAll, deleteAll
    62 #include "Concurrency/Keywords.h"      // for applyKeywords, implementMutexF...
     55#include "Concurrency/Keywords.h"      // for applyKeywords
    6356#include "FixFunction.h"               // for FixFunction
    6457#include "Indexer.h"                   // for Indexer
    65 #include "InitTweak/InitTweak.h"       // for isCtorDtor, isCtorDtorAssign
    66 #include "Parser/LinkageSpec.h"        // for C, Cforall
    67 #include "ResolvExpr/typeops.h"        // for extractResultType, typesCompat...
    68 #include "SynTree/Attribute.h"         // for Attribute
     58#include "InitTweak/InitTweak.h"       // for isCtorDtorAssign
     59#include "Parser/LinkageSpec.h"        // for C
     60#include "ResolvExpr/typeops.h"        // for typesCompatible
     61#include "SymTab/AddVisit.h"           // for addVisit
     62#include "SymTab/Autogen.h"            // for SizeType
     63#include "SynTree/Attribute.h"         // for noAttributes, Attribute
    6964#include "SynTree/Constant.h"          // for Constant
    70 #include "SynTree/Declaration.h"       // for EnumDecl, StructDecl, UnionDecl
    71 #include "SynTree/Expression.h"        // for TypeExpr, CompoundLiteralExpr
    72 #include "SynTree/Initializer.h"       // for ListInit, Initializer, noDesig...
    73 #include "SynTree/Mutator.h"           // for mutateAll, Mutator
    74 #include "SynTree/Statement.h"         // for CompoundStmt, DeclStmt, Return...
    75 #include "SynTree/Type.h"              // for Type, TypeInstType, TraitInstType
    76 #include "SynTree/TypeSubstitution.h"  // for TypeSubstitution, applySubstit...
    77 #include "SynTree/Visitor.h"           // for acceptAll, Visitor
     65#include "SynTree/Declaration.h"       // for ObjectDecl, DeclarationWithType
     66#include "SynTree/Expression.h"        // for CompoundLiteralExpr, Expressio...
     67#include "SynTree/Initializer.h"       // for ListInit, Initializer
     68#include "SynTree/Label.h"             // for operator==, Label
     69#include "SynTree/Mutator.h"           // for Mutator
     70#include "SynTree/Type.h"              // for Type, TypeInstType, EnumInstType
     71#include "SynTree/TypeSubstitution.h"  // for TypeSubstitution
     72#include "SynTree/Visitor.h"           // for Visitor
     73
     74class CompoundStmt;
     75class ReturnStmt;
     76class SwitchStmt;
     77
    7878
    7979#define debugPrint( x ) if ( doDebug ) { std::cout << x; }
Note: See TracChangeset for help on using the changeset viewer.