Changeset ea6332d


Ignore:
Timestamp:
Aug 15, 2017, 11:59:15 AM (6 years ago)
Author:
Thierry Delisle <tdelisle@…>
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
Message:

Big header cleaning pass - commit 3

Location:
src
Files:
80 edited

Legend:

Unmodified
Added
Removed
  • src/GenPoly/ScrubTyVars.h

    rd180746 rea6332d  
    55// file "LICENCE" distributed with Cforall.
    66//
    7 // ScrubTyVars.h -- 
     7// ScrubTyVars.h --
    88//
    99// Author           : Richard C. Bilson
     
    1616#pragma once
    1717
    18 #include <assert.h>           // for assert
     18#include <cassert>            // for assert
    1919
    2020#include "GenPoly.h"          // for TyVarMap, isPolyType, isDynType
     
    6969                        // return dynamicOnly ? isDynType( ty, tyVars ) : isPolyType( ty, tyVars );
    7070                }
    71                
     71
    7272                /// Mutates (possibly generic) aggregate types appropriately
    7373                Type* mutateAggregateType( Type *ty );
    74                
     74
    7575                const TyVarMap *tyVars;  ///< Type variables to scrub
    7676                ScrubMode mode;          ///< which type variables to scrub? [FromMap]
  • src/InitTweak/FixGlobalInit.cc

    rd180746 rea6332d  
    1616#include "FixGlobalInit.h"
    1717
    18 #include <assert.h>                // for assert
     18#include <cassert>                 // for assert
    1919#include <stddef.h>                // for NULL
    2020#include <algorithm>               // for replace_if
  • src/Parser/ExpressionNode.cc

    rd180746 rea6332d  
    1414//
    1515
    16 #include <assert.h>                // for assert
     16#include <cassert>                 // for assert
    1717#include <stdio.h>                 // for sscanf, size_t
    1818#include <climits>                 // for LLONG_MAX, LONG_MAX, INT_MAX, UINT...
     
    7878                goto CLEANUP;
    7979        } // if
    80        
     80
    8181        if ( str[0] == '0' ) {                                                          // octal/hex constant ?
    8282                dec = false;
  • src/ResolvExpr/AdjustExprType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2021
    2122namespace ResolvExpr {
  • src/ResolvExpr/Alternative.cc

    rd180746 rea6332d  
    1515
    1616#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
    2026
    2127namespace ResolvExpr {
  • src/ResolvExpr/Alternative.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
     24class Expression;
    2225
    2326namespace ResolvExpr {
    2427        struct Alternative;
     28
    2529        typedef std::list< Alternative > AltList;
    2630
  • src/ResolvExpr/AlternativeFinder.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2526#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
    4747
    4848extern bool resolvep;
  • src/ResolvExpr/AlternativeFinder.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include <set>
     18#include <algorithm>                     // for copy
     19#include <list>                          // for list
     20#include <string>                        // for string
    1921
    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
     28namespace SymTab {
     29class Indexer;
     30}  // namespace SymTab
    2531
    2632namespace ResolvExpr {
  • src/ResolvExpr/AlternativePrinter.cc

    rd180746 rea6332d  
    1515
    1616#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
    2326
    2427namespace ResolvExpr {
  • src/ResolvExpr/AlternativePrinter.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include <iostream>
     18#include <iostream>          // for ostream
    1919
    20 #include "Alternative.h"
    21 #include "SymTab/Indexer.h"
     20#include "SymTab/Indexer.h"  // for Indexer
     21
     22class ExprStmt;
    2223
    2324namespace ResolvExpr {
  • src/ResolvExpr/CastCost.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2225
    2326
  • src/ResolvExpr/CommonType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1927
    2028
  • src/ResolvExpr/ConversionCost.cc

    rd180746 rea6332d  
    1515
    1616#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
    2128
    2229namespace ResolvExpr {
  • src/ResolvExpr/ConversionCost.h

    rd180746 rea6332d  
    55// file "LICENCE" distributed with Cforall.
    66//
    7 // ConversionCost.h -- 
     7// ConversionCost.h --
    88//
    99// Author           : Richard C. Bilson
     
    1616#pragma once
    1717
    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
     22namespace SymTab {
     23class Indexer;
     24}  // namespace SymTab
    2225
    2326namespace ResolvExpr {
     27class TypeEnvironment;
     28
    2429        class ConversionCost : public Visitor {
    2530          public:
    2631                ConversionCost( Type *dest, const SymTab::Indexer &indexer, const TypeEnvironment &env );
    27  
     32
    2833                Cost get_cost() const { return cost; }
    2934
  • src/ResolvExpr/CurrentObject.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1925#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
    2732
    2833#if 0
  • src/ResolvExpr/CurrentObject.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include <stack>
     18#include <list>   // for list
     19#include <stack>  // for stack
    1920
    20 #include "SynTree/SynTree.h"
    21 #include "SynTree/Expression.h"
     21class Designation;
     22class Type;
     23struct InitAlternative;
    2224
    2325namespace ResolvExpr {
  • src/ResolvExpr/FindOpenVars.cc

    rd180746 rea6332d  
    1515
    1616#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
    1924
    2025namespace ResolvExpr {
  • src/ResolvExpr/FindOpenVars.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include "Unify.h"
    19 #include "SynTree/SynTree.h"
     18#include "ResolvExpr/TypeEnvironment.h"  // for AssertionSet, OpenVarSet
     19
     20class Type;
    2021
    2122namespace ResolvExpr {
  • src/ResolvExpr/Occurs.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2222
    2323namespace ResolvExpr {
  • src/ResolvExpr/PolyCost.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2120
    2221namespace ResolvExpr {
  • src/ResolvExpr/PtrsAssignable.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2019
    2120
  • src/ResolvExpr/PtrsCastable.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2122
    2223
  • src/ResolvExpr/RenameVars.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1720
     21#include "Common/SemanticError.h"  // for SemanticError
    1822#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
    2327
    2428namespace ResolvExpr {
  • src/ResolvExpr/RenameVars.h

    rd180746 rea6332d  
    55// file "LICENCE" distributed with Cforall.
    66//
    7 // RenameVars.h -- 
     7// RenameVars.h --
    88//
    99// Author           : Richard C. Bilson
     
    1616#pragma once
    1717
    18 #include <list>
    19 #include <map>
    20 #include <string>
     18#include <list>               // for list
     19#include <map>                // for map
     20#include <string>             // for string
    2121
    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
    2424
    2525namespace ResolvExpr {
  • src/ResolvExpr/ResolveTypeof.cc

    rd180746 rea6332d  
    1515
    1616#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
     25namespace SymTab {
     26class Indexer;
     27}  // namespace SymTab
    2328
    2429namespace ResolvExpr {
  • src/ResolvExpr/ResolveTypeof.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include "SynTree/SynTree.h"
    19 #include "SymTab/Indexer.h"
     18class Type;
     19namespace SymTab {
     20class Indexer;
     21}  // namespace SymTab
    2022
    2123namespace ResolvExpr {
  • src/ResolvExpr/Resolver.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2230#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
    3741
    3842using namespace std;
  • src/ResolvExpr/Resolver.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include "SynTree/SynTree.h"
    19 #include "SymTab/Indexer.h"
     18#include <list>  // for list
     19
     20class ConstructorInit;
     21class Declaration;
     22class Expression;
     23class StmtExpr;
     24namespace SymTab {
     25class Indexer;
     26}  // namespace SymTab
    2027
    2128namespace ResolvExpr {
  • src/ResolvExpr/TypeEnvironment.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1924#include "TypeEnvironment.h"
    20 #include "SynTree/Type.h"
    21 #include "SynTree/TypeSubstitution.h"
    22 #include "Common/utility.h"
    2325
    2426namespace ResolvExpr {
  • src/ResolvExpr/TypeEnvironment.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
    2223
    23 #include "SynTree/SynTree.h"
    24 #include "SynTree/Type.h"
    25 #include "SynTree/TypeSubstitution.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
    2728
    2829namespace ResolvExpr {
  • src/ResolvExpr/Unify.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1934#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
     37namespace SymTab {
     38class Indexer;
     39}  // namespace SymTab
    2940
    3041// #define DEBUG
  • src/ResolvExpr/Unify.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
     24class Type;
     25class TypeInstType;
     26namespace SymTab {
     27class Indexer;
     28}  // namespace SymTab
    2629
    2730namespace ResolvExpr {
  • src/SynTree/AddStmtVisitor.cc

    rd180746 rea6332d  
    1515
    1616#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
    2123
    2224void AddStmtVisitor::visitStatementList( std::list< Statement* > &statements ) {
  • src/SynTree/AddStmtVisitor.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include <list>
     18#include <list>               // for list
    1919
    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
    2222
    2323class AddStmtVisitor : public Visitor {
  • src/SynTree/AddressExpr.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1922
    2023AddressExpr::AddressExpr( Expression *arg, Expression *_aname ) : Expression( _aname ), arg( arg ) {
  • src/SynTree/AggregateDecl.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2025
    2126
  • src/SynTree/ApplicationExpr.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1723
    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
    2429
    2530ParamEntry::ParamEntry( const ParamEntry &other ) :
  • src/SynTree/ArrayType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     23class Attribute;
    1924
    2025
  • src/SynTree/AttrType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     24class Attribute;
    1925
    2026
  • src/SynTree/Attribute.cc

    rd180746 rea6332d  
    1414//
    1515
    16 #include <cassert>
     16#include <ostream>           // for operator<<, ostream, basic_ostream, endl
    1717
    18 #include "Common/utility.h"
    1918#include "Attribute.h"
    20 #include "Expression.h"
     19#include "Common/utility.h"  // for cloneAll, deleteAll, printAll
     20#include "Expression.h"      // for Expression
    2121
    2222Attribute::Attribute( const Attribute &other ) : name( other.name ) {
  • src/SynTree/Attribute.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include "SynTree.h"
     18#include <iosfwd>  // for ostream
     19#include <list>    // for list
     20#include <string>  // for string, operator==
     21
     22class Expression;
    1923
    2024// GCC attribute
  • src/SynTree/BasicType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     22class Attribute;
    1823
    1924BasicType::BasicType( const Type::Qualifiers &tq, Kind bt, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), kind( bt ) {}
  • src/SynTree/CommaExpr.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1922
    2023CommaExpr::CommaExpr( Expression *arg1, Expression *arg2, Expression *_aname )
  • src/SynTree/CompoundStmt.cc

    rd180746 rea6332d  
    1414//
    1515
    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...
    2326
    2427using std::string;
  • src/SynTree/Constant.cc

    rd180746 rea6332d  
    1414//
    1515
    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<<
    1919
    2020#include "Constant.h"
    21 #include "Type.h"
     21#include "Type.h"    // for BasicType, Type, Type::Qualifiers, PointerType
    2222
    2323Constant::Constant( Type * type, std::string rep, unsigned long long val ) : type( type ), rep( rep ), val( val ) {}
  • src/SynTree/Constant.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
     24class Type;
    2125
    2226class Constant {
  • src/SynTree/DeclStmt.cc

    rd180746 rea6332d  
    55// file "LICENCE" distributed with Cforall.
    66//
    7 // DeclStmt.cc -- 
     7// DeclStmt.cc --
    88//
    99// Author           : Richard C. Bilson
     
    1414//
    1515
    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
    1924
    2025DeclStmt::DeclStmt( std::list<Label> labels, Declaration *decl ) : Statement( labels ), decl( decl ) {
  • src/SynTree/Declaration.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1822#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
    2427
    2528static UniqueId lastUniqueId = 0;
  • src/SynTree/Declaration.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
     31class AsmStmt;
     32class Attribute;
     33class CompoundStmt;
     34class ConstantExpr;
     35class Expression;
     36class Initializer;
     37class TypeDecl;
    2638
    2739class Declaration : public BaseSyntaxNode {
  • src/SynTree/DeclarationWithType.cc

    rd180746 rea6332d  
    1414//
    1515
    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...
    2025
    2126DeclarationWithType::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  
    1414//
    1515
    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
    3532
    3633
  • src/SynTree/Expression.h

    rd180746 rea6332d  
    1313// Update Count     : 44
    1414//
    15 
    1615#pragma once
    1716
    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
    2730
    2831/// Expression is the root type for all expressions
     
    5760
    5861struct ParamEntry;
     62
    5963typedef std::map< UniqueId, ParamEntry > InferredParams;
    6064
  • src/SynTree/FunctionDecl.cc

    rd180746 rea6332d  
    1414//
    1515
    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...
    1720
    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...
    2528
    2629extern bool translation_unit_nomain;
  • src/SynTree/FunctionType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1719
    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
     25class Attribute;
    2226
    2327FunctionType::FunctionType( const Type::Qualifiers &tq, bool isVarArgs, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), isVarArgs( isVarArgs ) {
  • src/SynTree/Initializer.cc

    rd180746 rea6332d  
    1515
    1616#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
    2026
    2127Designation::Designation( const std::list< Expression * > & designators ) : designators( designators ) {}
  • src/SynTree/Initializer.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include <cassert>
     18#include <iosfwd>            // for ostream
     19#include <list>              // for list, list<>::const_iterator, list<>::it...
    1920
    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
     25class Expression;
     26class Statement;
    2527
    2628// Designation: list of designator (NameExpr, VariableExpr, and ConstantExpr) expressions that specify an object being initialized.
  • src/SynTree/Mutator.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1722#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
     27class Constant;
     28class Subrange;
    2629
    2730Mutator::Mutator() {}
  • src/SynTree/Mutator.h

    rd180746 rea6332d  
    1313// Update Count     : 16
    1414//
    15 #include <cassert>
     15#pragma once
    1616
    17 #include "SynTree.h"
    18 #include "Common/SemanticError.h"
     17#include <cassert>                 // for assert
    1918
    20 #pragma once
     19#include "Common/SemanticError.h"  // for SemanticError
     20#include "SynTree/SynTree.h"       // for AST nodes
    2121
    2222class Mutator {
  • src/SynTree/NamedTypeDecl.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1924
    2025NamedTypeDecl::NamedTypeDecl( const std::string &name, Type::StorageClasses scs, Type *base )
  • src/SynTree/ObjectDecl.cc

    rd180746 rea6332d  
    1414//
    1515
    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...
    2327
    2428ObjectDecl::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  
    1414//
    1515
    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
     23class Attribute;
    1924
    2025PointerType::PointerType( const Type::Qualifiers &tq, Type *base, const std::list< Attribute * > & attributes )
  • src/SynTree/ReferenceToType.cc

    rd180746 rea6332d  
    1414//
    1515
    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==
    1821
    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
     27class Attribute;
    2428
    2529ReferenceToType::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  
    1414//
    1515
    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<<
    2630
    2731using std::string;
  • src/SynTree/Statement.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
     28class CatchStmt;
     29class ConstantExpr;
     30class Declaration;
     31class Expression;
     32class FinallyStmt;
    2533
    2634class Statement : public BaseSyntaxNode {
  • src/SynTree/TupleExpr.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    2229
    2330UntypedTupleExpr::UntypedTupleExpr( const std::list< Expression * > & exprs, Expression *_aname ) : Expression( _aname ), exprs( exprs ) {
  • src/SynTree/TupleType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     25class Attribute;
    2126
    2227TupleType::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  
    1414//
    1515
    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
    1820#include "Type.h"
    19 #include "Declaration.h"
    20 #include "Attribute.h"
    21 #include "InitTweak/InitTweak.h"
    22 #include "Common/utility.h"
    2321
    2422using namespace std;
  • src/SynTree/Type.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
    2329
    2430class Type : public BaseSyntaxNode {
  • src/SynTree/TypeDecl.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1922
    2023TypeDecl::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  
    1414//
    1515
    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
    1921
    2022TypeExpr::TypeExpr( Type *type ) : type( type ) {
  • src/SynTree/TypeSubstitution.cc

    rd180746 rea6332d  
    1414//
    1515
    16 #include "Type.h"
     16#include <ostream>  // for ostream, basic_ostream, operator<<, endl
     17
     18#include "Type.h"   // for TypeInstType, Type, StructInstType, UnionInstType
    1719#include "TypeSubstitution.h"
    1820
  • src/SynTree/TypeSubstitution.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
    2125
    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...
    2531
    2632class TypeSubstitution : public Mutator {
  • src/SynTree/TypeofType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     23class Attribute;
    1924
    2025TypeofType::TypeofType( const Type::Qualifiers &tq, Expression *expr, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), expr( expr ) {
  • src/SynTree/VarArgsType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     21class Attribute;
    1722
    1823VarArgsType::VarArgsType() : Type( Type::Qualifiers(), std::list< Attribute * >() ) {}
  • src/SynTree/VarExprReplacer.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1820#include "VarExprReplacer.h"
    1921
  • src/SynTree/VarExprReplacer.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    18 #include <map>
     18#include <map>                // for map, map<>::value_compare
    1919
    20 #include "SynTree/SynTree.h"
     20#include "SynTree/Visitor.h"  // for Visitor
     21
     22class DeclarationWithType;
     23class VariableExpr;
    2124
    2225/// Visitor that replaces the declarations that VariableExprs refer to, according to the supplied mapping
  • src/SynTree/Visitor.cc

    rd180746 rea6332d  
    1414//
    1515
    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
    1725#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
     27class Subrange;
    2428
    2529Visitor::Visitor() {}
  • src/SynTree/Visitor.h

    rd180746 rea6332d  
    1616#pragma once
    1717
    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
    2120
    2221class Visitor {
  • src/SynTree/VoidType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     21class Attribute;
    1722
    1823VoidType::VoidType( const Type::Qualifiers &tq, const std::list< Attribute * > & attributes ) : Type( tq, attributes ) {
  • src/SynTree/ZeroOneType.cc

    rd180746 rea6332d  
    1414//
    1515
    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
     21class Attribute;
    1722
    1823ZeroType::ZeroType() : Type( Type::Qualifiers(), std::list< Attribute * >() ) {}
Note: See TracChangeset for help on using the changeset viewer.