Changeset ea6332d
- Timestamp:
- Aug 15, 2017, 11:59:15 AM (6 years ago)
- 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:
- be9288a
- Parents:
- d180746
- Location:
- src
- Files:
-
- 80 edited
Legend:
- Unmodified
- Added
- Removed
-
src/GenPoly/ScrubTyVars.h
rd180746 rea6332d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // ScrubTyVars.h -- 7 // ScrubTyVars.h -- 8 8 // 9 9 // Author : Richard C. Bilson … … 16 16 #pragma once 17 17 18 #include < assert.h>// for assert18 #include <cassert> // for assert 19 19 20 20 #include "GenPoly.h" // for TyVarMap, isPolyType, isDynType … … 69 69 // return dynamicOnly ? isDynType( ty, tyVars ) : isPolyType( ty, tyVars ); 70 70 } 71 71 72 72 /// Mutates (possibly generic) aggregate types appropriately 73 73 Type* mutateAggregateType( Type *ty ); 74 74 75 75 const TyVarMap *tyVars; ///< Type variables to scrub 76 76 ScrubMode mode; ///< which type variables to scrub? [FromMap] -
src/InitTweak/FixGlobalInit.cc
rd180746 rea6332d 16 16 #include "FixGlobalInit.h" 17 17 18 #include < assert.h>// for assert18 #include <cassert> // for assert 19 19 #include <stddef.h> // for NULL 20 20 #include <algorithm> // for replace_if -
src/Parser/ExpressionNode.cc
rd180746 rea6332d 14 14 // 15 15 16 #include < assert.h>// for assert16 #include <cassert> // for assert 17 17 #include <stdio.h> // for sscanf, size_t 18 18 #include <climits> // for LLONG_MAX, LONG_MAX, INT_MAX, UINT... … … 78 78 goto CLEANUP; 79 79 } // if 80 80 81 81 if ( str[0] == '0' ) { // octal/hex constant ? 82 82 dec = false; -
src/ResolvExpr/AdjustExprType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "typeops.h" 17 #include "SynTree/Type.h" 18 #include "TypeEnvironment.h" 19 #include "SymTab/Indexer.h" 16 #include "SymTab/Indexer.h" // for Indexer 17 #include "SynTree/Declaration.h" // for TypeDecl, TypeDecl::Kind::Ftype 18 #include "SynTree/Mutator.h" // for Mutator 19 #include "SynTree/Type.h" // for PointerType, TypeInstType, Type 20 #include "TypeEnvironment.h" // for EqvClass, TypeEnvironment 20 21 21 22 namespace ResolvExpr { -
src/ResolvExpr/Alternative.cc
rd180746 rea6332d 15 15 16 16 #include "Alternative.h" 17 #include "SynTree/Type.h" 18 #include "SynTree/Expression.h" 19 #include "Common/utility.h" 17 18 #include <ostream> // for operator<<, ostream, basic_o... 19 #include <string> // for operator<<, char_traits, string 20 21 #include "Common/utility.h" // for maybeClone 22 #include "ResolvExpr/Cost.h" // for Cost, Cost::zero, operator<< 23 #include "ResolvExpr/TypeEnvironment.h" // for TypeEnvironment 24 #include "SynTree/Expression.h" // for Expression 25 #include "SynTree/Type.h" // for Type 20 26 21 27 namespace ResolvExpr { -
src/ResolvExpr/Alternative.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <list> 19 #include "SynTree/SynTree.h" 20 #include "Cost.h" 21 #include "TypeEnvironment.h" 18 #include <iosfwd> // for ostream 19 #include <list> // for list 20 21 #include "Cost.h" // for Cost 22 #include "TypeEnvironment.h" // for TypeEnvironment 23 24 class Expression; 22 25 23 26 namespace ResolvExpr { 24 27 struct Alternative; 28 25 29 typedef std::list< Alternative > AltList; 26 30 -
src/ResolvExpr/AlternativeFinder.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <list> 17 #include <iterator> 18 #include <algorithm> 19 #include <functional> 20 #include <cassert> 21 #include <unordered_map> 22 #include <utility> 23 #include <vector> 24 16 #include <algorithm> // for copy 17 #include <cassert> // for safe_dynamic_cast, assert, assertf 18 #include <iostream> // for operator<<, cerr, ostream, endl 19 #include <iterator> // for back_insert_iterator, back_inserter 20 #include <list> // for _List_iterator, list, _List_const_... 21 #include <map> // for _Rb_tree_iterator, map, _Rb_tree_c... 22 #include <memory> // for allocator_traits<>::value_type 23 #include <utility> // for pair 24 25 #include "Alternative.h" // for AltList, Alternative 25 26 #include "AlternativeFinder.h" 26 #include "Alternative.h" 27 #include "Cost.h" 28 #include "typeops.h" 29 #include "Unify.h" 30 #include "RenameVars.h" 31 #include "SynTree/Type.h" 32 #include "SynTree/Declaration.h" 33 #include "SynTree/Expression.h" 34 #include "SynTree/Initializer.h" 35 #include "SynTree/Visitor.h" 36 #include "SymTab/Indexer.h" 37 #include "SymTab/Mangler.h" 38 #include "SynTree/TypeSubstitution.h" 39 #include "SymTab/Validate.h" 40 #include "Tuples/Tuples.h" 41 #include "Tuples/Explode.h" 42 #include "Common/utility.h" 43 #include "InitTweak/InitTweak.h" 44 #include "InitTweak/GenInit.h" 45 #include "ResolveTypeof.h" 46 #include "Resolver.h" 27 #include "Common/SemanticError.h" // for SemanticError 28 #include "Common/utility.h" // for deleteAll, printAll, CodeLocation 29 #include "Cost.h" // for Cost, Cost::zero, operator<<, Cost... 30 #include "InitTweak/InitTweak.h" // for getFunctionName 31 #include "RenameVars.h" // for RenameVars, global_renamer 32 #include "ResolveTypeof.h" // for resolveTypeof 33 #include "Resolver.h" // for resolveStmtExpr 34 #include "SymTab/Indexer.h" // for Indexer 35 #include "SymTab/Mangler.h" // for Mangler 36 #include "SymTab/Validate.h" // for validateType 37 #include "SynTree/Constant.h" // for Constant 38 #include "SynTree/Declaration.h" // for DeclarationWithType, TypeDecl, Dec... 39 #include "SynTree/Expression.h" // for Expression, CastExpr, NameExpr 40 #include "SynTree/Initializer.h" // for SingleInit, operator<<, Designation 41 #include "SynTree/SynTree.h" // for UniqueId 42 #include "SynTree/Type.h" // for Type, FunctionType, PointerType 43 #include "Tuples/Explode.h" // for explode 44 #include "Tuples/Tuples.h" // for isTtype, handleTupleAssignment 45 #include "Unify.h" // for unify 46 #include "typeops.h" // for adjustExprType, polyCost, castCost 47 47 48 48 extern bool resolvep; -
src/ResolvExpr/AlternativeFinder.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <set> 18 #include <algorithm> // for copy 19 #include <list> // for list 20 #include <string> // for string 19 21 20 #include "Alternative.h" 21 #include "Unify.h" 22 #include "SynTree/SynTree.h" 23 #include "SymTab/Indexer.h" 24 #include "SynTree/TypeSubstitution.h" 22 #include "Alternative.h" // for AltList, Alternative 23 #include "ResolvExpr/Cost.h" // for Cost, Cost::infinity 24 #include "ResolvExpr/TypeEnvironment.h" // for AssertionSet, OpenVarSet 25 #include "SynTree/Visitor.h" // for Visitor 26 #include "SynTree/SynTree.h" // for Visitor Nodes 27 28 namespace SymTab { 29 class Indexer; 30 } // namespace SymTab 25 31 26 32 namespace ResolvExpr { -
src/ResolvExpr/AlternativePrinter.cc
rd180746 rea6332d 15 15 16 16 #include "AlternativePrinter.h" 17 #include "AlternativeFinder.h" 18 #include "Alternative.h" 19 #include "SynTree/Statement.h" 20 #include "SynTree/Type.h" 21 #include "SynTree/Expression.h" 22 #include "Common/utility.h" 17 18 #include <list> // for _List_const_iterator, list<>... 19 20 #include "Alternative.h" // for AltList, Alternative 21 #include "AlternativeFinder.h" // for AlternativeFinder 22 #include "ResolvExpr/TypeEnvironment.h" // for TypeEnvironment 23 #include "SynTree/Expression.h" // for Expression 24 #include "SynTree/Statement.h" // for ExprStmt 25 #include "SynTree/Type.h" // for Type 23 26 24 27 namespace ResolvExpr { -
src/ResolvExpr/AlternativePrinter.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <iostream> 18 #include <iostream> // for ostream 19 19 20 #include "Alternative.h" 21 #include "SymTab/Indexer.h" 20 #include "SymTab/Indexer.h" // for Indexer 21 22 class ExprStmt; 22 23 23 24 namespace ResolvExpr { -
src/ResolvExpr/CastCost.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "typeops.h" 17 #include "Cost.h" 18 #include "ConversionCost.h" 19 #include "SynTree/Type.h" 20 #include "SynTree/Visitor.h" 21 #include "SymTab/Indexer.h" 16 #include <cassert> // for assert 17 18 #include "ConversionCost.h" // for ConversionCost 19 #include "Cost.h" // for Cost, Cost::infinity 20 #include "ResolvExpr/TypeEnvironment.h" // for TypeEnvironment, EqvClass 21 #include "SymTab/Indexer.h" // for Indexer 22 #include "SynTree/Declaration.h" // for TypeDecl, NamedTypeDecl 23 #include "SynTree/Type.h" // for PointerType, Type, TypeInstType 24 #include "typeops.h" // for typesCompatibleIgnoreQualifiers 22 25 23 26 -
src/ResolvExpr/CommonType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "typeops.h" 17 #include "SynTree/Type.h" 18 #include "Unify.h" 16 #include <cassert> // for safe_dynamic_cast 17 #include <map> // for _Rb_tree_const_iterator 18 #include <utility> // for pair 19 20 #include "ResolvExpr/TypeEnvironment.h" // for OpenVarSet, AssertionSet 21 #include "SymTab/Indexer.h" // for Indexer 22 #include "SynTree/Declaration.h" // for TypeDecl, NamedTypeDecl (ptr... 23 #include "SynTree/Type.h" // for BasicType, BasicType::Kind::... 24 #include "SynTree/Visitor.h" // for Visitor 25 #include "Unify.h" // for unifyExact, bindVar, WidenMode 26 #include "typeops.h" // for isFtype 19 27 20 28 -
src/ResolvExpr/ConversionCost.cc
rd180746 rea6332d 15 15 16 16 #include "ConversionCost.h" 17 #include "typeops.h" 18 #include "SynTree/Type.h" 19 #include "SynTree/Visitor.h" 20 #include "SymTab/Indexer.h" 17 18 #include <cassert> // for assert 19 #include <list> // for list, list<>::const_iterator 20 #include <string> // for operator==, string 21 22 #include "ResolvExpr/Cost.h" // for Cost 23 #include "ResolvExpr/TypeEnvironment.h" // for EqvClass, TypeEnvironment 24 #include "SymTab/Indexer.h" // for Indexer 25 #include "SynTree/Declaration.h" // for TypeDecl, NamedTypeDecl 26 #include "SynTree/Type.h" // for Type, BasicType, TypeInstType 27 #include "typeops.h" // for typesCompatibleIgnoreQualifiers 21 28 22 29 namespace ResolvExpr { -
src/ResolvExpr/ConversionCost.h
rd180746 rea6332d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // ConversionCost.h -- 7 // ConversionCost.h -- 8 8 // 9 9 // Author : Richard C. Bilson … … 16 16 #pragma once 17 17 18 #include "SynTree/Visitor.h" 19 #include "SymTab/Indexer.h" 20 #include "Cost.h" 21 #include "TypeEnvironment.h" 18 #include "Cost.h" // for Cost 19 #include "SynTree/Visitor.h" // for Visitor 20 #include "SynTree/SynTree.h" // for Visitor Nodes 21 22 namespace SymTab { 23 class Indexer; 24 } // namespace SymTab 22 25 23 26 namespace ResolvExpr { 27 class TypeEnvironment; 28 24 29 class ConversionCost : public Visitor { 25 30 public: 26 31 ConversionCost( Type *dest, const SymTab::Indexer &indexer, const TypeEnvironment &env ); 27 32 28 33 Cost get_cost() const { return cost; } 29 34 -
src/ResolvExpr/CurrentObject.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <stack> 17 #include <iostream> 18 16 #include <stddef.h> // for size_t 17 #include <cassert> // for assertf, assert, safe_dynamic_... 18 #include <iostream> // for ostream, operator<<, basic_ost... 19 #include <stack> // for stack 20 #include <string> // for string, operator<<, allocator 21 22 #include "Common/Indenter.h" // for Indenter, operator<< 23 #include "Common/SemanticError.h" // for SemanticError 24 #include "Common/utility.h" // for toString 19 25 #include "CurrentObject.h" 20 21 #include "Common/Indenter.h" 22 23 #include "SynTree/Declaration.h" 24 #include "SynTree/Initializer.h" 25 #include "SynTree/Type.h" 26 #include "SynTree/TypeSubstitution.h" 26 #include "SynTree/Constant.h" // for Constant 27 #include "SynTree/Declaration.h" // for ObjectDecl, Declaration, Struc... 28 #include "SynTree/Expression.h" // for InitAlternative, VariableExpr 29 #include "SynTree/Initializer.h" // for Designation, operator<< 30 #include "SynTree/Type.h" // for Type, StructInstType, UnionIns... 31 #include "SynTree/TypeSubstitution.h" // for TypeSubstitution 27 32 28 33 #if 0 -
src/ResolvExpr/CurrentObject.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <stack> 18 #include <list> // for list 19 #include <stack> // for stack 19 20 20 #include "SynTree/SynTree.h" 21 #include "SynTree/Expression.h" 21 class Designation; 22 class Type; 23 struct InitAlternative; 22 24 23 25 namespace ResolvExpr { -
src/ResolvExpr/FindOpenVars.cc
rd180746 rea6332d 15 15 16 16 #include "FindOpenVars.h" 17 #include "SynTree/Type.h" 18 #include "SynTree/Visitor.h" 17 18 #include <list> // for _List_const_iterator, list<>::const... 19 #include <map> // for map<>::mapped_type 20 21 #include "SynTree/Declaration.h" // for TypeDecl, DeclarationWithType (ptr ... 22 #include "SynTree/Type.h" // for Type, Type::ForallList, ArrayType 23 #include "SynTree/Visitor.h" // for Visitor 19 24 20 25 namespace ResolvExpr { -
src/ResolvExpr/FindOpenVars.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "Unify.h" 19 #include "SynTree/SynTree.h" 18 #include "ResolvExpr/TypeEnvironment.h" // for AssertionSet, OpenVarSet 19 20 class Type; 20 21 21 22 namespace ResolvExpr { -
src/ResolvExpr/Occurs.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <set> 17 #include < algorithm>18 #include <iterator> 19 #include "SynTree/Type.h" 20 #include "SynTree/Visitor.h" 21 #include "TypeEnvironment.h" 16 #include <set> // for set, _Rb_tree_const_iterator 17 #include <string> // for string 18 19 #include "SynTree/Type.h" // for TypeInstType, Type 20 #include "SynTree/Visitor.h" // for Visitor 21 #include "TypeEnvironment.h" // for EqvClass, TypeEnvironment 22 22 23 23 namespace ResolvExpr { -
src/ResolvExpr/PolyCost.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "typeops.h" 17 #include "SynTree/Type.h" 18 #include "SynTree/Visitor.h" 19 #include "SymTab/Indexer.h" 20 #include "TypeEnvironment.h" 16 #include "SymTab/Indexer.h" // for Indexer 17 #include "SynTree/Type.h" // for TypeInstType, Type 18 #include "SynTree/Visitor.h" // for Visitor 19 #include "TypeEnvironment.h" // for EqvClass, TypeEnvironment 21 20 22 21 namespace ResolvExpr { -
src/ResolvExpr/PtrsAssignable.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "typeops.h" 17 #include "SynTree/Type.h" 18 #include "SynTree/Declaration.h" 19 #include "SynTree/Visitor.h" 16 #include "ResolvExpr/TypeEnvironment.h" // for EqvClass, TypeEnvironment 17 #include "SynTree/Type.h" // for TypeInstType, Type, BasicType 18 #include "SynTree/Visitor.h" // for Visitor 20 19 21 20 -
src/ResolvExpr/PtrsCastable.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "typeops.h" 17 #include "SynTree/Type.h" 18 #include "SynTree/Declaration.h" 19 #include "SynTree/Visitor.h" 20 #include "SymTab/Indexer.h" 16 #include "ResolvExpr/TypeEnvironment.h" // for EqvClass, TypeEnvironment 17 #include "SymTab/Indexer.h" // for Indexer 18 #include "SynTree/Declaration.h" // for TypeDecl, TypeDecl::Kind::Ftype 19 #include "SynTree/Type.h" // for TypeInstType, Type, BasicType 20 #include "SynTree/Visitor.h" // for Visitor 21 #include "typeops.h" // for ptrsAssignable 21 22 22 23 -
src/ResolvExpr/RenameVars.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <sstream> 16 #include <ext/alloc_traits.h> // for __alloc_traits<>::value_type 17 #include <memory> // for allocator_traits<>::value_type 18 #include <sstream> // for operator<<, basic_ostream, ostring... 19 #include <utility> // for pair 17 20 21 #include "Common/SemanticError.h" // for SemanticError 18 22 #include "RenameVars.h" 19 #include "SynTree/ Visitor.h"20 #include "SynTree/ Type.h"21 #include "SynTree/ Declaration.h"22 #include "SynTree/ Expression.h"23 #include "SynTree/Declaration.h" // for DeclarationWithType, TypeDecl, Dec... 24 #include "SynTree/Expression.h" // for Expression 25 #include "SynTree/Type.h" // for Type, TypeInstType, TraitInstType 26 #include "SynTree/Visitor.h" // for acceptAll, maybeAccept 23 27 24 28 namespace ResolvExpr { -
src/ResolvExpr/RenameVars.h
rd180746 rea6332d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // RenameVars.h -- 7 // RenameVars.h -- 8 8 // 9 9 // Author : Richard C. Bilson … … 16 16 #pragma once 17 17 18 #include <list> 19 #include <map> 20 #include <string> 18 #include <list> // for list 19 #include <map> // for map 20 #include <string> // for string 21 21 22 #include "SynTree/SynTree.h" 23 #include "SynTree/Visitor.h" 22 #include "SynTree/SynTree.h" // for Visitor Nodes 23 #include "SynTree/Visitor.h" // for Visitor 24 24 25 25 namespace ResolvExpr { -
src/ResolvExpr/ResolveTypeof.cc
rd180746 rea6332d 15 15 16 16 #include "ResolveTypeof.h" 17 #include "Alternative.h" 18 #include "AlternativeFinder.h" 19 #include "Resolver.h" 20 #include "TypeEnvironment.h" 21 #include "SynTree/Expression.h" 22 #include "SynTree/Type.h" 17 18 #include <cassert> // for assert 19 20 #include "Resolver.h" // for resolveInVoidContext 21 #include "SynTree/Expression.h" // for Expression 22 #include "SynTree/Mutator.h" // for Mutator 23 #include "SynTree/Type.h" // for TypeofType, Type 24 25 namespace SymTab { 26 class Indexer; 27 } // namespace SymTab 23 28 24 29 namespace ResolvExpr { -
src/ResolvExpr/ResolveTypeof.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "SynTree/SynTree.h" 19 #include "SymTab/Indexer.h" 18 class Type; 19 namespace SymTab { 20 class Indexer; 21 } // namespace SymTab 20 22 21 23 namespace ResolvExpr { -
src/ResolvExpr/Resolver.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <iostream> 17 18 #include "Alternative.h" 19 #include "AlternativeFinder.h" 20 #include "CurrentObject.h" 21 #include "RenameVars.h" 16 #include <stddef.h> // for NULL 17 #include <cassert> // for safe_dynamic_cast, assert 18 #include <memory> // for allocator, allocator_traits<... 19 #include <tuple> // for get 20 21 #include "Alternative.h" // for Alternative, AltList 22 #include "AlternativeFinder.h" // for AlternativeFinder, resolveIn... 23 #include "Common/SemanticError.h" // for SemanticError 24 #include "Common/utility.h" // for ValueGuard, group_iterate 25 #include "CurrentObject.h" // for CurrentObject 26 #include "InitTweak/InitTweak.h" // for isIntrinsicSingleArgCallStmt 27 #include "RenameVars.h" // for RenameVars, global_renamer 28 #include "ResolvExpr/TypeEnvironment.h" // for TypeEnvironment 29 #include "ResolveTypeof.h" // for resolveTypeof 22 30 #include "Resolver.h" 23 #include "ResolveTypeof.h" 24 #include "typeops.h" 25 26 #include "SynTree/Expression.h" 27 #include "SynTree/Initializer.h" 28 #include "SynTree/Statement.h" 29 #include "SynTree/Type.h" 30 31 #include "SymTab/Autogen.h" 32 #include "SymTab/Indexer.h" 33 34 #include "Common/utility.h" 35 36 #include "InitTweak/InitTweak.h" 31 #include "SymTab/Autogen.h" // for SizeType 32 #include "SymTab/Indexer.h" // for Indexer 33 #include "SynTree/Declaration.h" // for ObjectDecl, TypeDecl, Declar... 34 #include "SynTree/Expression.h" // for Expression, CastExpr, InitExpr 35 #include "SynTree/Initializer.h" // for ConstructorInit, SingleInit 36 #include "SynTree/Statement.h" // for ForStmt, Statement, BranchStmt 37 #include "SynTree/Type.h" // for Type, BasicType, PointerType 38 #include "SynTree/TypeSubstitution.h" // for TypeSubstitution 39 #include "SynTree/Visitor.h" // for acceptAll, maybeAccept 40 #include "typeops.h" // for extractResultType 37 41 38 42 using namespace std; -
src/ResolvExpr/Resolver.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "SynTree/SynTree.h" 19 #include "SymTab/Indexer.h" 18 #include <list> // for list 19 20 class ConstructorInit; 21 class Declaration; 22 class Expression; 23 class StmtExpr; 24 namespace SymTab { 25 class Indexer; 26 } // namespace SymTab 20 27 21 28 namespace ResolvExpr { -
src/ResolvExpr/TypeEnvironment.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <algorithm> 17 #include <iterator> 18 16 #include <cassert> // for assert 17 #include <algorithm> // for copy, set_intersection 18 #include <iterator> // for ostream_iterator, insert_iterator 19 #include <utility> // for pair 20 21 #include "Common/utility.h" // for maybeClone 22 #include "SynTree/Type.h" // for Type, FunctionType, Type::Fora... 23 #include "SynTree/TypeSubstitution.h" // for TypeSubstitution 19 24 #include "TypeEnvironment.h" 20 #include "SynTree/Type.h"21 #include "SynTree/TypeSubstitution.h"22 #include "Common/utility.h"23 25 24 26 namespace ResolvExpr { -
src/ResolvExpr/TypeEnvironment.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <string> 19 #include <set> 20 #include <list> 21 #include <iostream> 18 #include <iostream> // for ostream 19 #include <list> // for list, list<>::iterator, list<>... 20 #include <map> // for map, map<>::value_compare 21 #include <set> // for set 22 #include <string> // for string 22 23 23 #include "SynTree/ SynTree.h"24 #include "SynTree/ Type.h"25 #include "SynTree/Type Substitution.h"26 #include "SynTree/ Declaration.h"24 #include "SynTree/Declaration.h" // for TypeDecl::Data, DeclarationWit... 25 #include "SynTree/SynTree.h" // for UniqueId 26 #include "SynTree/Type.h" // for Type, Type::ForallList 27 #include "SynTree/TypeSubstitution.h" // for TypeSubstitution 27 28 28 29 namespace ResolvExpr { -
src/ResolvExpr/Unify.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <set> 17 #include <memory> 18 16 #include <cassert> // for assertf, assert 17 #include <iterator> // for back_insert_iterator, back_inserter 18 #include <map> // for _Rb_tree_const_iterator, _Rb_tree_i... 19 #include <memory> // for unique_ptr, auto_ptr 20 #include <set> // for set 21 #include <string> // for string, operator==, operator!=, bas... 22 #include <utility> // for pair 23 24 #include "FindOpenVars.h" // for findOpenVars 25 #include "Parser/LinkageSpec.h" // for C 26 #include "SynTree/Constant.h" // for Constant 27 #include "SynTree/Declaration.h" // for TypeDecl, TypeDecl::Data, Declarati... 28 #include "SynTree/Expression.h" // for TypeExpr, Expression, ConstantExpr 29 #include "SynTree/Mutator.h" // for Mutator 30 #include "SynTree/Type.h" // for Type, TypeInstType, FunctionType 31 #include "SynTree/Visitor.h" // for Visitor 32 #include "Tuples/Tuples.h" // for isTtype 33 #include "TypeEnvironment.h" // for EqvClass, AssertionSet, OpenVarSet 19 34 #include "Unify.h" 20 #include "TypeEnvironment.h" 21 #include "typeops.h" 22 #include "FindOpenVars.h" 23 #include "SynTree/Visitor.h" 24 #include "SynTree/Type.h" 25 #include "SynTree/Declaration.h" 26 #include "SymTab/Indexer.h" 27 #include "Common/utility.h" 28 #include "Tuples/Tuples.h" 35 #include "typeops.h" // for flatten, occurs, commonType 36 37 namespace SymTab { 38 class Indexer; 39 } // namespace SymTab 29 40 30 41 // #define DEBUG -
src/ResolvExpr/Unify.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <map> 19 #include <list> 20 #include "SynTree/SynTree.h" 21 #include "SynTree/Type.h" 22 #include "SynTree/Declaration.h" 23 #include "SymTab/Indexer.h" 24 #include "TypeEnvironment.h" 25 #include "Common/utility.h" 18 #include <list> // for list 19 20 #include "Common/utility.h" // for deleteAll 21 #include "SynTree/Declaration.h" // for TypeDecl, TypeDecl::Data 22 #include "TypeEnvironment.h" // for AssertionSet, OpenVarSet 23 24 class Type; 25 class TypeInstType; 26 namespace SymTab { 27 class Indexer; 28 } // namespace SymTab 26 29 27 30 namespace ResolvExpr { -
src/SynTree/AddStmtVisitor.cc
rd180746 rea6332d 15 15 16 16 #include "AddStmtVisitor.h" 17 #include "Statement.h" 18 #include "Declaration.h" 19 #include "Expression.h" 20 #include "Common/utility.h" 17 18 #include "Common/SemanticError.h" // for SemanticError 19 #include "Declaration.h" // for Declaration 20 #include "Expression.h" // for Expression 21 #include "Statement.h" // for CompoundStmt, ForStmt, IfStmt, Sta... 22 #include "SynTree/Label.h" // for Label, noLabels 21 23 22 24 void AddStmtVisitor::visitStatementList( std::list< Statement* > &statements ) { -
src/SynTree/AddStmtVisitor.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <list> 18 #include <list> // for list 19 19 20 #include "SynTree/SynTree.h" 21 #include "SynTree/Visitor.h" 20 #include "SynTree/SynTree.h" // for Visitor Nodes 21 #include "SynTree/Visitor.h" // for Visitor 22 22 23 23 class AddStmtVisitor : public Visitor { -
src/SynTree/AddressExpr.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Expression.h" 17 #include "Type.h" 18 #include "Common/utility.h" 16 #include <ostream> // for ostream, operator<<, basic_ostream, endl 17 #include <string> // for operator<<, string 18 19 #include "Common/utility.h" // for maybeClone 20 #include "Expression.h" // for AddressExpr, Expression 21 #include "Type.h" // for PointerType, Type, Type::Qualifiers 19 22 20 23 AddressExpr::AddressExpr( Expression *arg, Expression *_aname ) : Expression( _aname ), arg( arg ) { -
src/SynTree/AggregateDecl.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Attribute.h" 18 #include "Type.h" 19 #include "Common/utility.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, basic_ostream, ostream 18 #include <string> // for operator<<, string, char_traits 19 20 #include "Attribute.h" // for Attribute 21 #include "Common/utility.h" // for printAll, cloneAll, deleteAll 22 #include "Declaration.h" // for AggregateDecl, TypeDecl, Declaration 23 #include "Parser/LinkageSpec.h" // for Spec, linkageName, Cforall 24 #include "Type.h" // for Type, Type::StorageClasses 20 25 21 26 -
src/SynTree/ApplicationExpr.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <cassert> 16 #include <cassert> // for safe_dynamic_cast, assert 17 #include <list> // for list 18 #include <map> // for _Rb_tree_const_iterator, map, map<>:... 19 #include <memory> // for unique_ptr 20 #include <ostream> // for operator<<, ostream, basic_ostream 21 #include <string> // for operator<<, string, char_traits 22 #include <utility> // for pair 17 23 18 #include "Expression.h" 19 #include "Declaration.h" 20 #include "Type.h" 21 #include "TypeSubstitution.h" 22 #include "Common/utility.h" 23 #include "ResolvExpr/typeops.h" 24 #include "Common/utility.h" // for maybeClone, cloneAll, deleteAll, pri... 25 #include "Declaration.h" // for Declaration 26 #include "Expression.h" // for ParamEntry, ApplicationExpr, Expression 27 #include "ResolvExpr/typeops.h" // for extractResultType 28 #include "Type.h" // for Type, PointerType, FunctionType 24 29 25 30 ParamEntry::ParamEntry( const ParamEntry &other ) : -
src/SynTree/ArrayType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 17 #include "Expression.h" 18 #include "Common/utility.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream 18 19 #include "Common/utility.h" // for maybeClone 20 #include "Expression.h" // for Expression 21 #include "Type.h" // for ArrayType, Type, Type::Qualifiers 22 23 class Attribute; 19 24 20 25 -
src/SynTree/AttrType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 17 #include "Expression.h" 18 #include "Common/utility.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream, basic_ostream 18 #include <string> // for char_traits, operator<<, string 19 20 #include "Common/utility.h" // for maybeClone 21 #include "Expression.h" // for Expression 22 #include "Type.h" // for AttrType, Type, Type::Qualifiers 23 24 class Attribute; 19 25 20 26 -
src/SynTree/Attribute.cc
rd180746 rea6332d 14 14 // 15 15 16 #include < cassert>16 #include <ostream> // for operator<<, ostream, basic_ostream, endl 17 17 18 #include "Common/utility.h"19 18 #include "Attribute.h" 20 #include "Expression.h" 19 #include "Common/utility.h" // for cloneAll, deleteAll, printAll 20 #include "Expression.h" // for Expression 21 21 22 22 Attribute::Attribute( const Attribute &other ) : name( other.name ) { -
src/SynTree/Attribute.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "SynTree.h" 18 #include <iosfwd> // for ostream 19 #include <list> // for list 20 #include <string> // for string, operator== 21 22 class Expression; 19 23 20 24 // GCC attribute -
src/SynTree/BasicType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <cassert> 17 #include "Type.h" 16 #include <cassert> // for assert 17 #include <list> // for list 18 #include <ostream> // for operator<<, ostream 19 20 #include "Type.h" // for BasicType, Type, BasicType::Kind, BasicType::Kind... 21 22 class Attribute; 18 23 19 24 BasicType::BasicType( const Type::Qualifiers &tq, Kind bt, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), kind( bt ) {} -
src/SynTree/CommaExpr.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Expression.h" 17 #include "Type.h" 18 #include "Common/utility.h" 16 #include <ostream> // for ostream, endl, operator<<, basic_ostream 17 #include <string> // for operator<<, string 18 19 #include "Common/utility.h" // for maybeClone 20 #include "Expression.h" // for CommaExpr, Expression 21 #include "Type.h" // for Type 19 22 20 23 CommaExpr::CommaExpr( Expression *arg1, Expression *arg2, Expression *_aname ) -
src/SynTree/CompoundStmt.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Statement.h" 17 #include "Common/utility.h" 18 #include <algorithm> 19 #include <functional> 20 #include "Expression.h" 21 #include "Declaration.h" 22 #include "SynTree/VarExprReplacer.h" 16 #include <cassert> // for assert, safe_dynamic_cast 17 #include <list> // for list, _List_const_iterator, lis... 18 #include <ostream> // for operator<<, ostream, basic_ostream 19 #include <string> // for operator==, string 20 21 #include "Common/utility.h" // for cloneAll, deleteAll, printAll 22 #include "Declaration.h" // for DeclarationWithType, Declaration 23 #include "Statement.h" // for CompoundStmt, Statement, DeclStmt 24 #include "SynTree/Label.h" // for Label 25 #include "SynTree/VarExprReplacer.h" // for VarExprReplacer, VarExprReplace... 23 26 24 27 using std::string; -
src/SynTree/Constant.cc
rd180746 rea6332d 14 14 // 15 15 16 #include < iostream>17 #include < list>18 #include <string> 16 #include <cassert> // for safe_dynamic_cast, assertf 17 #include <iostream> // for operator<<, ostream, basic_ostream 18 #include <string> // for to_string, string, char_traits, operator<< 19 19 20 20 #include "Constant.h" 21 #include "Type.h" 21 #include "Type.h" // for BasicType, Type, Type::Qualifiers, PointerType 22 22 23 23 Constant::Constant( Type * type, std::string rep, unsigned long long val ) : type( type ), rep( rep ), val( val ) {} -
src/SynTree/Constant.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "SynTree.h" 19 #include "Visitor.h" 20 #include "Mutator.h" 18 #include <iosfwd> // for ostream 19 #include <string> // for string 20 21 #include "Mutator.h" // for Mutator 22 #include "Visitor.h" // for Visitor 23 24 class Type; 21 25 22 26 class Constant { -
src/SynTree/DeclStmt.cc
rd180746 rea6332d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // DeclStmt.cc -- 7 // DeclStmt.cc -- 8 8 // 9 9 // Author : Richard C. Bilson … … 14 14 // 15 15 16 #include "Statement.h" 17 #include "Declaration.h" 18 #include "Common/utility.h" 16 #include <cassert> // for assert 17 #include <list> // for list 18 #include <ostream> // for operator<<, ostream 19 20 #include "Common/utility.h" // for maybeClone 21 #include "Declaration.h" // for Declaration 22 #include "Statement.h" // for DeclStmt, Statement 23 #include "SynTree/Label.h" // for Label 19 24 20 25 DeclStmt::DeclStmt( std::list<Label> labels, Declaration *decl ) : Statement( labels ), decl( decl ) { -
src/SynTree/Declaration.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <string> 17 #include <map> 16 #include <map> // for _Rb_tree_const_iterator, map<>::... 17 #include <ostream> // for ostream, operator<<, basic_ostre... 18 #include <string> // for string 19 #include <utility> // for pair 20 21 #include "Common/utility.h" // for maybeClone 18 22 #include "Declaration.h" 19 #include "Expression.h" 20 #include "Initializer.h" 21 #include "Type.h" 22 #include "Attribute.h" 23 #include "Common/utility.h" 23 #include "SynTree/BaseSyntaxNode.h" // for BaseSyntaxNode 24 #include "SynTree/Statement.h" // for AsmStmt 25 #include "SynTree/SynTree.h" // for UniqueId 26 #include "Type.h" // for Type, Type::StorageClasses 24 27 25 28 static UniqueId lastUniqueId = 0; -
src/SynTree/Declaration.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <string> 19 20 #include "BaseSyntaxNode.h" 21 #include "Mutator.h" 22 #include "Visitor.h" 23 #include "SynTree.h" 24 #include "Parser/LinkageSpec.h" 25 #include "Parser/ParseNode.h" 18 #include <cassert> // for assertf 19 #include <iosfwd> // for ostream 20 #include <list> // for list 21 #include <string> // for string, operator+, allocator, to_string 22 23 #include "BaseSyntaxNode.h" // for BaseSyntaxNode 24 #include "Mutator.h" // for Mutator 25 #include "Parser/LinkageSpec.h" // for Spec, Cforall 26 #include "Parser/ParseNode.h" // for DeclarationNode, DeclarationNode::Ag... 27 #include "SynTree.h" // for UniqueId 28 #include "SynTree/Type.h" // for Type, Type::StorageClasses, Type::Fu... 29 #include "Visitor.h" // for Visitor 30 31 class AsmStmt; 32 class Attribute; 33 class CompoundStmt; 34 class ConstantExpr; 35 class Expression; 36 class Initializer; 37 class TypeDecl; 26 38 27 39 class Declaration : public BaseSyntaxNode { -
src/SynTree/DeclarationWithType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Type.h" 18 #include "Attribute.h" 19 #include "Common/utility.h" 16 #include <list> // for list 17 #include <string> // for string 18 19 #include "Attribute.h" // for Attribute 20 #include "Common/utility.h" // for cloneAll, deleteAll, maybeClone 21 #include "Declaration.h" // for DeclarationWithType, Declaration 22 #include "Parser/LinkageSpec.h" // for Spec 23 #include "SynTree/Expression.h" // for ConstantExpr 24 #include "Type.h" // for Type, Type::FuncSpecifiers, Type::St... 20 25 21 26 DeclarationWithType::DeclarationWithType( const std::string &name, Type::StorageClasses scs, LinkageSpec::Spec linkage, const std::list< Attribute * > & attributes, Type::FuncSpecifiers fs ) -
src/SynTree/Expression.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <iostream> 17 #include <cassert> 18 #include <list> 19 #include <algorithm> 20 21 #include <iterator> 22 23 #include "Declaration.h" 24 #include "Expression.h" 25 #include "Initializer.h" 26 #include "Statement.h" 27 #include "Type.h" 28 #include "TypeSubstitution.h" 29 #include "VarExprReplacer.h" 30 31 #include "Common/utility.h" 32 #include "Common/PassVisitor.h" 33 34 #include "InitTweak/InitTweak.h" 16 #include "SynTree/Expression.h" 17 18 #include <cassert> // for assert, assertf 19 #include <iostream> // for ostream, operator<<, basic_ostream 20 #include <list> // for list, _List_iterator, list<>::co... 21 22 #include "Common/utility.h" // for maybeClone, cloneAll, deleteAll 23 #include "Declaration.h" // for ObjectDecl, DeclarationWithType 24 #include "Expression.h" // for Expression, ImplicitCopyCtorExpr 25 #include "InitTweak/InitTweak.h" // for getCallArg, getPointerBase 26 #include "Initializer.h" // for Designation, Initializer 27 #include "Statement.h" // for CompoundStmt, ExprStmt, Statement 28 #include "SynTree/BaseSyntaxNode.h" // for BaseSyntaxNode 29 #include "SynTree/Constant.h" // for Constant 30 #include "Type.h" // for Type, BasicType, Type::Qualifiers 31 #include "TypeSubstitution.h" // for TypeSubstitution 35 32 36 33 -
src/SynTree/Expression.h
rd180746 rea6332d 13 13 // Update Count : 44 14 14 // 15 16 15 #pragma once 17 16 18 #include <map> 19 #include <memory> 20 21 #include "BaseSyntaxNode.h" 22 #include "Constant.h" 23 #include "Mutator.h" 24 #include "SynTree.h" 25 #include "Visitor.h" 26 #include "Common/UniqueName.h" 17 #include <iosfwd> // for ostream 18 #include <list> // for list, list<>::iterator 19 #include <map> // for map, map<>::value_compare 20 #include <memory> // for allocator, unique_ptr 21 #include <string> // for string 22 23 #include "BaseSyntaxNode.h" // for BaseSyntaxNode 24 #include "Constant.h" // for Constant 25 #include "Initializer.h" // for Designation (ptr only), Initializer 26 #include "Mutator.h" // for Mutator 27 #include "SynTree.h" // for UniqueId 28 #include "Visitor.h" // for Visitor 29 27 30 28 31 /// Expression is the root type for all expressions … … 57 60 58 61 struct ParamEntry; 62 59 63 typedef std::map< UniqueId, ParamEntry > InferredParams; 60 64 -
src/SynTree/FunctionDecl.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <cassert> 16 #include <cassert> // for assert 17 #include <list> // for list 18 #include <ostream> // for operator<<, ostream, basic_ostream 19 #include <string> // for operator<<, string, char_traits, ope... 17 20 18 #include " Declaration.h"19 #include " Statement.h"20 #include " Type.h"21 #include " Attribute.h"22 #include " Common/utility.h"23 #include " InitTweak/InitTweak.h"24 #include " CodeGen/FixMain.h"21 #include "Attribute.h" // for Attribute 22 #include "CodeGen/FixMain.h" // for FixMain 23 #include "Common/utility.h" // for maybeClone, printAll 24 #include "Declaration.h" // for FunctionDecl, FunctionDecl::Parent 25 #include "Parser/LinkageSpec.h" // for Spec, linkageName, Cforall 26 #include "Statement.h" // for CompoundStmt 27 #include "Type.h" // for Type, FunctionType, Type::FuncSpecif... 25 28 26 29 extern bool translation_unit_nomain; -
src/SynTree/FunctionType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <algorithm> 16 #include <list> // for list 17 #include <ostream> // for operator<<, basic_ostream, ostream, endl 18 #include <string> // for operator<<, char_traits, string 17 19 18 #include "Type.h" 19 #include "Declaration.h" 20 #include "Common/utility.h" 21 #include "Tuples/Tuples.h" 20 #include "Common/utility.h" // for cloneAll, deleteAll, printAll 21 #include "Declaration.h" // for DeclarationWithType 22 #include "Tuples/Tuples.h" // for isTtype 23 #include "Type.h" // for FunctionType, Type, Type::Qualifiers 24 25 class Attribute; 22 26 23 27 FunctionType::FunctionType( const Type::Qualifiers &tq, bool isVarArgs, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), isVarArgs( isVarArgs ) { -
src/SynTree/Initializer.cc
rd180746 rea6332d 15 15 16 16 #include "Initializer.h" 17 #include "Expression.h" 18 #include "Statement.h" 19 #include "Common/utility.h" 17 18 #include <cassert> // for assertf 19 #include <ostream> // for ostream, operator<<, basic_ostream 20 #include <string> // for operator<<, string, char_traits 21 22 #include "Common/utility.h" // for maybeClone, cloneAll, deleteAll 23 #include "Expression.h" // for Expression 24 #include "Statement.h" // for Statement 25 #include "SynTree/BaseSyntaxNode.h" // for BaseSyntaxNode 20 26 21 27 Designation::Designation( const std::list< Expression * > & designators ) : designators( designators ) {} -
src/SynTree/Initializer.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <cassert> 18 #include <iosfwd> // for ostream 19 #include <list> // for list, list<>::const_iterator, list<>::it... 19 20 20 #include "BaseSyntaxNode.h" 21 #include "Mutator.h" 22 #include "SynTree.h" 23 #include "Type.h" 24 #include "Visitor.h" 21 #include "BaseSyntaxNode.h" // for BaseSyntaxNode 22 #include "Mutator.h" // for Mutator 23 #include "Visitor.h" // for Visitor 24 25 class Expression; 26 class Statement; 25 27 26 28 // Designation: list of designator (NameExpr, VariableExpr, and ConstantExpr) expressions that specify an object being initialized. -
src/SynTree/Mutator.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <cassert> 16 #include <cassert> // for assert 17 #include <list> // for list 18 19 #include "Declaration.h" // for ObjectDecl, Declaration, DeclarationWi... 20 #include "Expression.h" // for Expression, ConstantExpr, ConditionalExpr 21 #include "Initializer.h" // for ConstructorInit, Initializer, Designation 17 22 #include "Mutator.h" 18 #include "Initializer.h" 19 #include "Statement.h" 20 #include "Type.h" 21 #include "Declaration.h" 22 #include "Expression.h" 23 #include "Constant.h" 24 #include "Common/utility.h" 25 #include "TypeSubstitution.h" 23 #include "Statement.h" // for Statement, CatchStmt, AsmStmt, ForStmt 24 #include "Type.h" // for Type, Type::ForallList, AttrType, Arra... 25 #include "TypeSubstitution.h" // for TypeSubstitution 26 27 class Constant; 28 class Subrange; 26 29 27 30 Mutator::Mutator() {} -
src/SynTree/Mutator.h
rd180746 rea6332d 13 13 // Update Count : 16 14 14 // 15 # include <cassert>15 #pragma once 16 16 17 #include "SynTree.h" 18 #include "Common/SemanticError.h" 17 #include <cassert> // for assert 19 18 20 #pragma once 19 #include "Common/SemanticError.h" // for SemanticError 20 #include "SynTree/SynTree.h" // for AST nodes 21 21 22 22 class Mutator { -
src/SynTree/NamedTypeDecl.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Type.h" 18 #include "Common/utility.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream, basic_ostream 18 #include <string> // for operator<<, string, char_traits, ope... 19 20 #include "Common/utility.h" // for printAll, cloneAll, deleteAll, maybe... 21 #include "Declaration.h" // for NamedTypeDecl, DeclarationWithType 22 #include "Parser/LinkageSpec.h" // for Spec, Cforall, linkageName 23 #include "Type.h" // for Type, Type::StorageClasses 19 24 20 25 NamedTypeDecl::NamedTypeDecl( const std::string &name, Type::StorageClasses scs, Type *base ) -
src/SynTree/ObjectDecl.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Type.h" 18 #include "Initializer.h" 19 #include "Expression.h" 20 #include "Attribute.h" 21 #include "Common/utility.h" 22 #include "Statement.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream, basic_ostream 18 #include <string> // for operator<<, string, char_traits, ope... 19 20 #include "Attribute.h" // for Attribute 21 #include "Common/utility.h" // for maybeClone, printAll 22 #include "Declaration.h" // for ObjectDecl, ObjectDecl::Parent 23 #include "Expression.h" // for Expression 24 #include "Initializer.h" // for Initializer 25 #include "Parser/LinkageSpec.h" // for Spec, linkageName, Cforall 26 #include "Type.h" // for Type, Type::StorageClasses, Type::Fu... 23 27 24 28 ObjectDecl::ObjectDecl( const std::string &name, Type::StorageClasses scs, LinkageSpec::Spec linkage, Expression *bitfieldWidth, Type *type, Initializer *init, const std::list< Attribute * > attributes, Type::FuncSpecifiers fs ) -
src/SynTree/PointerType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 17 #include "Expression.h" 18 #include "Common/utility.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream 18 19 #include "Common/utility.h" // for maybeClone 20 #include "Expression.h" // for Expression 21 #include "Type.h" // for PointerType, Type, Type::Qualifiers 22 23 class Attribute; 19 24 20 25 PointerType::PointerType( const Type::Qualifiers &tq, Type *base, const std::list< Attribute * > & attributes ) -
src/SynTree/ReferenceToType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <string> 17 #include <cassert> 16 #include <stddef.h> // for NULL 17 #include <cassert> // for assert 18 #include <list> // for list, _List_const_iterator, list<>::cons... 19 #include <ostream> // for operator<<, basic_ostream, ostream, endl 20 #include <string> // for string, operator<<, char_traits, operator== 18 21 19 #include "Type.h" 20 #include "Declaration.h" 21 #include "Expression.h" 22 #include "TypeSubstitution.h" 23 #include "Common/utility.h" 22 #include "Common/utility.h" // for printAll, cloneAll, deleteAll 23 #include "Declaration.h" // for StructDecl, UnionDecl, EnumDecl, Declara... 24 #include "Expression.h" // for Expression 25 #include "Type.h" // for TypeInstType, StructInstType, UnionInstType 26 27 class Attribute; 24 28 25 29 ReferenceToType::ReferenceToType( const Type::Qualifiers &tq, const std::string &name, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), name( name ), hoistType( false ) { -
src/SynTree/Statement.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <functional> 17 #include <algorithm> 18 #include <iostream> 19 #include <list> 20 #include <cassert> 21 22 #include "Statement.h" 23 #include "Expression.h" 24 #include "Declaration.h" 25 #include "Common/SemanticError.h" 16 #include "SynTree/Statement.h" 17 18 #include <stddef.h> // for NULL 19 #include <cassert> // for assert, assertf 20 #include <iostream> // for operator<<, basic_ostream, endl 21 #include <list> // for list, list<>::const_iterator, _Lis... 22 #include <string> // for operator<<, string, char_traits 23 24 #include "Common/SemanticError.h" // for SemanticError 25 #include "Common/utility.h" // for maybeClone, cloneAll, deleteAll 26 #include "Declaration.h" // for Declaration 27 #include "Expression.h" // for Expression, ConstantExpr 28 #include "Statement.h" // for Statement, ForStmt, AsmStmt, Catch... 29 #include "SynTree/Label.h" // for Label, operator<< 26 30 27 31 using std::string; -
src/SynTree/Statement.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "BaseSyntaxNode.h" 19 #include "Label.h" 20 #include "Mutator.h" 21 #include "SynTree.h" 22 #include "Type.h" 23 #include "Visitor.h" 24 #include "Common/SemanticError.h" 18 #include <iosfwd> // for ostream 19 #include <list> // for list 20 #include <memory> // for allocator 21 22 #include "BaseSyntaxNode.h" // for BaseSyntaxNode 23 #include "Common/SemanticError.h" // for SemanticError 24 #include "Label.h" // for Label 25 #include "Mutator.h" // for Mutator 26 #include "Visitor.h" // for Visitor 27 28 class CatchStmt; 29 class ConstantExpr; 30 class Declaration; 31 class Expression; 32 class FinallyStmt; 25 33 26 34 class Statement : public BaseSyntaxNode { -
src/SynTree/TupleExpr.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Expression.h" 17 #include "Common/utility.h" 18 #include "Type.h" 19 #include "Declaration.h" 20 #include "Tuples/Tuples.h" 21 #include "VarExprReplacer.h" 16 #include <cassert> // for assert, safe_dynamic_cast, assertf 17 #include <iterator> // for next 18 #include <list> // for list, _List_iterator 19 #include <ostream> // for ostream, operator<<, basic_ostream, endl 20 #include <string> // for operator<<, string, char_traits 21 22 #include "Common/utility.h" // for cloneAll, deleteAll, printAll, toString 23 #include "Declaration.h" // for ObjectDecl 24 #include "Expression.h" // for Expression, TupleExpr, TupleIndexExpr 25 #include "SynTree/Label.h" // for Label, noLabels 26 #include "SynTree/Statement.h" // for CompoundStmt, DeclStmt, ExprStmt, Sta... 27 #include "Tuples/Tuples.h" // for makeTupleType 28 #include "Type.h" // for TupleType, Type 22 29 23 30 UntypedTupleExpr::UntypedTupleExpr( const std::list< Expression * > & exprs, Expression *_aname ) : Expression( _aname ), exprs( exprs ) { -
src/SynTree/TupleType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Initializer.h" 18 #include "Type.h" 19 #include "Common/utility.h" 20 #include "Parser/LinkageSpec.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream, basic_ostream 18 19 #include "Common/utility.h" // for cloneAll, deleteAll, printAll 20 #include "Declaration.h" // for Declaration, ObjectDecl 21 #include "Initializer.h" // for ListInit 22 #include "Parser/LinkageSpec.h" // for Cforall 23 #include "Type.h" // for TupleType, Type, Type::Qualifiers 24 25 class Attribute; 21 26 22 27 TupleType::TupleType( const Type::Qualifiers &tq, const std::list< Type * > & types, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), types( types ) { -
src/SynTree/Type.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "SynTree.h" 17 #include "Visitor.h" 16 #include "Attribute.h" // for Attribute 17 #include "Common/utility.h" // for cloneAll, deleteAll, printAll 18 #include "InitTweak/InitTweak.h" // for getPointerBase 19 #include "SynTree/BaseSyntaxNode.h" // for BaseSyntaxNode 18 20 #include "Type.h" 19 #include "Declaration.h"20 #include "Attribute.h"21 #include "InitTweak/InitTweak.h"22 #include "Common/utility.h"23 21 24 22 using namespace std; -
src/SynTree/Type.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "BaseSyntaxNode.h" 19 #include "Mutator.h" 20 #include "SynTree.h" 21 #include "Visitor.h" 22 #include <strings.h> // ffs 18 #include <strings.h> // for ffs 19 #include <cassert> // for assert, assertf 20 #include <list> // for list, _List_iterator 21 #include <ostream> // for ostream, operator<<, basic_ostream 22 #include <string> // for string 23 24 #include "BaseSyntaxNode.h" // for BaseSyntaxNode 25 #include "Common/utility.h" // for operator+ 26 #include "Mutator.h" // for Mutator 27 #include "SynTree.h" // for AST nodes 28 #include "Visitor.h" // for Visitor 23 29 24 30 class Type : public BaseSyntaxNode { -
src/SynTree/TypeDecl.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Type.h" 18 #include "Common/utility.h" 16 #include <ostream> // for ostream, operator<<, basic_ostream, basi... 17 #include <string> // for string, char_traits, operator+, operator<< 18 19 #include "Common/utility.h" // for maybeClone 20 #include "Declaration.h" // for TypeDecl, TypeDecl::Data, TypeDecl::Kind... 21 #include "Type.h" // for Type, Type::StorageClasses 19 22 20 23 TypeDecl::TypeDecl( const std::string &name, Type::StorageClasses scs, Type *type, Kind kind, Type * init ) : Parent( name, scs, type ), init( init ), sized( kind == Any || kind == Ttype ), kind( kind ) { -
src/SynTree/TypeExpr.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Expression.h" 17 #include "Type.h" 18 #include "Common/utility.h" 16 #include <iosfwd> // for ostream 17 18 #include "Common/utility.h" // for maybeClone 19 #include "Expression.h" // for TypeExpr, Expression 20 #include "Type.h" // for Type 19 21 20 22 TypeExpr::TypeExpr( Type *type ) : type( type ) { -
src/SynTree/TypeSubstitution.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 16 #include <ostream> // for ostream, basic_ostream, operator<<, endl 17 18 #include "Type.h" // for TypeInstType, Type, StructInstType, UnionInstType 17 19 #include "TypeSubstitution.h" 18 20 -
src/SynTree/TypeSubstitution.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <map> 19 #include <set> 20 #include <cassert> 18 #include <cassert> // for assert 19 #include <iosfwd> // for ostream 20 #include <list> // for list<>::iterator, _List_iterator 21 #include <map> // for _Rb_tree_iterator, map, map<>::val... 22 #include <set> // for set 23 #include <string> // for string, operator!= 24 #include <utility> // for pair 21 25 22 #include "SynTree/Mutator.h" 23 #include "SynTree/Declaration.h" 24 #include "SynTree/Expression.h" 26 #include "Common/SemanticError.h" // for SemanticError 27 #include "SynTree/Declaration.h" // for TypeDecl, Declaration (ptr only) 28 #include "SynTree/Expression.h" // for Expression (ptr only), NameExpr (p... 29 #include "SynTree/Mutator.h" // for Mutator 30 #include "SynTree/Type.h" // for Type, ArrayType (ptr only), BasicT... 25 31 26 32 class TypeSubstitution : public Mutator { -
src/SynTree/TypeofType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 17 #include "Expression.h" 18 #include "Common/utility.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream 18 19 #include "Common/utility.h" // for maybeClone 20 #include "Expression.h" // for Expression 21 #include "Type.h" // for TypeofType, Type, Type::Qualifiers 22 23 class Attribute; 19 24 20 25 TypeofType::TypeofType( const Type::Qualifiers &tq, Expression *expr, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), expr( expr ) { -
src/SynTree/VarArgsType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream 18 19 #include "Type.h" // for Type, VarArgsType, Type::Qualifiers 20 21 class Attribute; 17 22 18 23 VarArgsType::VarArgsType() : Type( Type::Qualifiers(), std::list< Attribute * >() ) {} -
src/SynTree/VarExprReplacer.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Declaration.h" 17 #include "Expression.h" 16 #include <iostream> // for operator<<, basic_ostream, ostream, basic_o... 17 18 #include "Declaration.h" // for operator<<, DeclarationWithType 19 #include "Expression.h" // for VariableExpr 18 20 #include "VarExprReplacer.h" 19 21 -
src/SynTree/VarExprReplacer.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include <map> 18 #include <map> // for map, map<>::value_compare 19 19 20 #include "SynTree/SynTree.h" 20 #include "SynTree/Visitor.h" // for Visitor 21 22 class DeclarationWithType; 23 class VariableExpr; 21 24 22 25 /// Visitor that replaces the declarations that VariableExprs refer to, according to the supplied mapping -
src/SynTree/Visitor.cc
rd180746 rea6332d 14 14 // 15 15 16 #include <cassert> 16 #include <cassert> // for assert 17 #include <list> // for list 18 19 #include "Constant.h" // for Constant 20 #include "Declaration.h" // for DeclarationWithType, ObjectDecl, Declaration 21 #include "Expression.h" // for Expression, ConstantExpr, ImplicitCopyCtorExpr 22 #include "Initializer.h" // for Initializer, Designation, ConstructorInit 23 #include "Statement.h" // for Statement, CatchStmt, AsmStmt, CompoundStmt 24 #include "Type.h" // for Type, Type::ForallList, AttrType, FunctionType 17 25 #include "Visitor.h" 18 #include "Initializer.h" 19 #include "Statement.h" 20 #include "Type.h" 21 #include "Declaration.h" 22 #include "Expression.h" 23 #include "Constant.h" 26 27 class Subrange; 24 28 25 29 Visitor::Visitor() {} -
src/SynTree/Visitor.h
rd180746 rea6332d 16 16 #pragma once 17 17 18 #include "SynTree.h" 19 #include "Common/SemanticError.h" 20 #include "Common/CompilerError.h" 18 #include "Common/SemanticError.h" // for SemanticError 19 #include "SynTree.h" // for AST nodes 21 20 22 21 class Visitor { -
src/SynTree/VoidType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream 18 19 #include "Type.h" // for VoidType, Type, Type::Qualifiers 20 21 class Attribute; 17 22 18 23 VoidType::VoidType( const Type::Qualifiers &tq, const std::list< Attribute * > & attributes ) : Type( tq, attributes ) { -
src/SynTree/ZeroOneType.cc
rd180746 rea6332d 14 14 // 15 15 16 #include "Type.h" 16 #include <list> // for list 17 #include <ostream> // for operator<<, ostream 18 19 #include "Type.h" // for Type, Type::Qualifiers, OneType, ZeroType 20 21 class Attribute; 17 22 18 23 ZeroType::ZeroType() : Type( Type::Qualifiers(), std::list< Attribute * >() ) {}
Note: See TracChangeset
for help on using the changeset viewer.