Changeset 9feb34b


Ignore:
Timestamp:
Mar 29, 2023, 11:07:03 AM (2 years ago)
Author:
Andrew Beach <ajbeach@…>
Branches:
ADT, ast-experimental, master
Children:
afdb74b
Parents:
60380a1
Message:

Moved toString and toCString to a new header. Updated includes. cassert was somehow getting instances of toString before but that stopped working so I embedded the new smaller include.

Location:
src
Files:
1 added
27 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified src/CodeGen/CodeGenerator.cc

    r60380a1 r9feb34b  
    1717#include <cassert>                   // for assert, assertf
    1818#include <list>                      // for _List_iterator, list, list<>::it...
     19#include <sstream>                   // for stringstream
    1920
    2021#include "AST/Decl.hpp"              // for DeclWithType
    2122#include "Common/UniqueName.h"       // for UniqueName
    22 #include "Common/utility.h"          // for CodeLocation, toString
    2323#include "GenType.h"                 // for genType
    2424#include "InitTweak/InitTweak.h"     // for getPointerBase
  • TabularUnified src/Common/DeclStats.cpp

    r60380a1 r9feb34b  
    2323#include <iostream>
    2424#include <map>
     25#include <sstream>
    2526#include <unordered_map>
    2627#include <unordered_set>
  • TabularUnified src/Common/ResolvProtoDump.cpp

    r60380a1 r9feb34b  
    1919#include <iostream>
    2020#include <set>
     21#include <sstream>
    2122#include <unordered_set>
    2223
     
    2627#include "AST/Type.hpp"
    2728#include "CodeGen/OperatorTable.h"
    28 #include "Common/utility.h"
    2929
    3030namespace {
  • TabularUnified src/Common/module.mk

    r60380a1 r9feb34b  
    5252        Common/Stats/Time.cc \
    5353        Common/Stats/Time.h \
     54        Common/ToString.hpp \
    5455        Common/UniqueName.cc \
    5556        Common/UniqueName.h \
  • TabularUnified src/Common/utility.h

    r60380a1 r9feb34b  
    2222#include <list>
    2323#include <memory>
    24 #include <sstream>
    2524#include <string>
    2625#include <type_traits>
     
    143142        dst.swap( src );
    144143}
    145 
    146 template < typename T >
    147 void toString_single( std::ostream & os, const T & value ) {
    148         os << value;
    149 }
    150 
    151 template < typename T, typename... Params >
    152 void toString_single( std::ostream & os, const T & value, const Params & ... params ) {
    153         os << value;
    154         toString_single( os, params ... );
    155 }
    156 
    157 template < typename ... Params >
    158 std::string toString( const Params & ... params ) {
    159         std::ostringstream os;
    160         toString_single( os, params... );
    161         return os.str();
    162 }
    163 
    164 #define toCString( ... ) toString( __VA_ARGS__ ).c_str()
    165144
    166145template< typename... Args >
  • TabularUnified src/ControlStruct/ExceptDeclNew.cpp

    r60380a1 r9feb34b  
    1515
    1616#include "ExceptDecl.h"
     17
     18#include <sstream>
    1719
    1820#include "AST/Decl.hpp"
  • TabularUnified src/ControlStruct/MLEMutator.cc

    r60380a1 r9feb34b  
    2525#include <memory>                          // for allocator_traits<>::value_...
    2626
    27 #include "Common/utility.h"                // for toString, operator+
     27#include "Common/ToString.hpp"             // for toString
    2828#include "ControlStruct/LabelGenerator.h"  // for LabelGenerator
    2929#include "MLEMutator.h"
  • TabularUnified src/GenPoly/Box.cc

    r60380a1 r9feb34b  
    3131#include "Common/SemanticError.h"        // for SemanticError
    3232#include "Common/UniqueName.h"           // for UniqueName
    33 #include "Common/utility.h"              // for toString
     33#include "Common/ToString.hpp"           // for toCString
    3434#include "FindFunction.h"                // for findFunction, findAndReplace...
    3535#include "GenPoly/ErasableScopedMap.h"   // for ErasableScopedMap<>::const_i...
  • TabularUnified src/GenPoly/Lvalue.cc

    r60380a1 r9feb34b  
    1717#include <string>                        // for string
    1818
     19#include "Common/ToString.hpp"           // for toCString
    1920#include "Common/UniqueName.h"
    2021#include "Common/PassVisitor.h"
  • TabularUnified src/GenPoly/LvalueNew.cpp

    r60380a1 r9feb34b  
    2525#include "AST/Pass.hpp"
    2626#include "Common/SemanticError.h"      // for SemanticWarning
     27#include "Common/ToString.hpp"         // for toCString
    2728#include "Common/UniqueName.h"         // for UniqueName
    2829#include "GenPoly/GenPoly.h"           // for genFunctionType
  • TabularUnified src/InitTweak/FixInit.cc

    r60380a1 r9feb34b  
    3232#include "Common/PassVisitor.h"        // for PassVisitor, WithStmtsToAdd
    3333#include "Common/SemanticError.h"      // for SemanticError
     34#include "Common/ToString.hpp"         // for toCString
    3435#include "Common/UniqueName.h"         // for UniqueName
    35 #include "Common/utility.h"            // for CodeLocation, ValueGuard, toSt...
    3636#include "FixGlobalInit.h"             // for fixGlobalInit
    3737#include "GenInit.h"                   // for genCtorDtor
  • TabularUnified src/InitTweak/FixInitNew.cpp

    r60380a1 r9feb34b  
    2020#include "Common/PassVisitor.h"        // for PassVisitor, WithStmtsToAdd
    2121#include "Common/SemanticError.h"      // for SemanticError
     22#include "Common/ToString.hpp"         // for toCString
    2223#include "Common/UniqueName.h"         // for UniqueName
    23 #include "Common/utility.h"            // for CodeLocation, ValueGuard, toSt...
    2424#include "FixGlobalInit.h"             // for fixGlobalInit
    2525#include "GenInit.h"                   // for genCtorDtor
  • TabularUnified src/InitTweak/GenInit.cc

    r60380a1 r9feb34b  
    3131#include "Common/PassVisitor.h"        // for PassVisitor, WithGuards, WithShort...
    3232#include "Common/SemanticError.h"      // for SemanticError
     33#include "Common/ToString.hpp"         // for toCString
    3334#include "Common/UniqueName.h"         // for UniqueName
    3435#include "Common/utility.h"            // for ValueGuard, maybeClone
  • TabularUnified src/Parser/parser.yy

    r60380a1 r9feb34b  
    4444
    4545#include <cstdio>
     46#include <sstream>
    4647#include <stack>
    4748using namespace std;
  • TabularUnified src/ResolvExpr/Candidate.cpp

    r60380a1 r9feb34b  
    1717
    1818#include <iostream>
     19#include <sstream>
    1920
    2021#include "AST/Print.hpp"
     
    4445        sorted.reserve(cands.size());
    4546        for(const auto & c : cands) {
    46                 std::stringstream ss;
     47                std::ostringstream ss;
    4748                print( ss, *c, indent );
    4849                sorted.push_back(ss.str());
  • TabularUnified src/ResolvExpr/Resolver.cc

    r60380a1 r9feb34b  
    3939#include "AST/Type.hpp"
    4040#include "Common/Eval.h"                 // for eval
     41#include "Common/Iterate.hpp"            // for group_iterate
    4142#include "Common/PassVisitor.h"          // for PassVisitor
    4243#include "Common/SemanticError.h"        // for SemanticError
    4344#include "Common/Stats/ResolveTime.h"    // for ResolveTime::start(), ResolveTime::stop()
    44 #include "Common/utility.h"              // for ValueGuard, group_iterate
     45#include "Common/ToString.hpp"           // for toCString
    4546#include "InitTweak/GenInit.h"
    4647#include "InitTweak/InitTweak.h"         // for isIntrinsicSingleArgCallStmt
  • TabularUnified src/SymTab/FixFunction.cc

    r60380a1 r9feb34b  
    2121#include "AST/Pass.hpp"
    2222#include "AST/Type.hpp"
    23 #include "Common/utility.h"       // for maybeClone, copy
     23#include "Common/utility.h"       // for copy
    2424#include "SynTree/Declaration.h"  // for FunctionDecl, ObjectDecl, Declarati...
    2525#include "SynTree/Expression.h"   // for Expression
  • TabularUnified src/SymTab/Mangler.cc

    r60380a1 r9feb34b  
    2424#include "CodeGen/OperatorTable.h"       // for OperatorInfo, operatorLookup
    2525#include "Common/PassVisitor.h"
     26#include "Common/ToString.hpp"           // for toCString
    2627#include "Common/SemanticError.h"        // for SemanticError
    27 #include "Common/utility.h"              // for toString
    2828#include "ResolvExpr/TypeEnvironment.h"  // for TypeEnvironment
    2929#include "SynTree/LinkageSpec.h"         // for Spec, isOverridable, AutoGen, Int...
  • TabularUnified src/SymTab/Validate.cc

    r60380a1 r9feb34b  
    5555#include "Common/ScopedMap.h"          // for ScopedMap
    5656#include "Common/SemanticError.h"      // for SemanticError
     57#include "Common/ToString.hpp"         // for toCString
    5758#include "Common/UniqueName.h"         // for UniqueName
    58 #include "Common/utility.h"            // for operator+, cloneAll, deleteAll
     59#include "Common/utility.h"            // for cloneAll, deleteAll
    5960#include "CompilationState.h"          // skip some passes in new-ast build
    6061#include "Concurrency/Keywords.h"      // for applyKeywords
  • TabularUnified src/SymTab/ValidateType.cc

    r60380a1 r9feb34b  
    1818#include "CodeGen/OperatorTable.h"
    1919#include "Common/PassVisitor.h"
     20#include "Common/ToString.hpp"
    2021#include "SymTab/FixFunction.h"
    2122#include "SynTree/Declaration.h"
  • TabularUnified src/SynTree/Type.cc

    r60380a1 r9feb34b  
    1616
    1717#include "Attribute.h"                // for Attribute
     18#include "Common/ToString.hpp"        // for toCString
    1819#include "Common/utility.h"           // for cloneAll, deleteAll, printAll
    1920#include "InitTweak/InitTweak.h"      // for getPointerBase
     
    105106int Type::referenceDepth() const { return 0; }
    106107
     108AggregateDecl * Type::getAggr() const {
     109        assertf( false, "Non-aggregate type: %s", toCString( this ) );
     110}
     111
    107112TypeSubstitution Type::genericSubstitution() const { assertf( false, "Non-aggregate type: %s", toCString( this ) ); }
    108113
  • TabularUnified src/SynTree/Type.h

    r60380a1 r9feb34b  
    2424#include "BaseSyntaxNode.h"  // for BaseSyntaxNode
    2525#include "Common/Iterate.hpp"// for operator+
    26 #include "Common/utility.h"  // for toCString
    2726#include "Mutator.h"         // for Mutator
    2827#include "SynTree.h"         // for AST nodes
     
    186185        virtual bool isComplete() const { return true; }
    187186
    188         virtual AggregateDecl * getAggr() const { assertf( false, "Non-aggregate type: %s", toCString( this ) ); }
     187        virtual AggregateDecl * getAggr() const;
    189188
    190189        virtual TypeSubstitution genericSubstitution() const;
  • TabularUnified src/Validate/FixQualifiedTypes.cpp

    r60380a1 r9feb34b  
    1616#include "Validate/FixQualifiedTypes.hpp"
    1717
     18#include "AST/LinkageSpec.hpp"             // for Linkage
    1819#include "AST/Pass.hpp"
    1920#include "AST/TranslationUnit.hpp"
     21#include "Common/ToString.hpp"             // for toString
     22#include "SymTab/Mangler.h"                // for Mangler
    2023#include "Validate/NoIdSymbolTable.hpp"
    21 #include "SymTab/Mangler.h"            // for Mangler
    22 #include "AST/LinkageSpec.hpp"                     // for Linkage
    2324
    2425namespace Validate {
  • TabularUnified src/Validate/ForallPointerDecay.cpp

    r60380a1 r9feb34b  
    2222#include "CodeGen/OperatorTable.h"
    2323#include "Common/CodeLocation.h"
     24#include "Common/ToString.hpp"
    2425#include "SymTab/FixFunction.h"
    2526
  • TabularUnified src/Validate/HandleAttributes.cc

    r60380a1 r9feb34b  
    1919#include "Common/Eval.h"
    2020#include "Common/PassVisitor.h"
     21#include "Common/ToString.hpp"
    2122#include "Common/SemanticError.h"
    2223#include "ResolvExpr/Resolver.h"
  • TabularUnified src/Validate/HoistStruct.cpp

    r60380a1 r9feb34b  
    1616#include "Validate/HoistStruct.hpp"
    1717
     18#include <sstream>
     19
    1820#include "AST/Pass.hpp"
    1921#include "AST/TranslationUnit.hpp"
    20 #include "Common/utility.h"
    2122
    2223namespace Validate {
  • TabularUnified src/include/cassert

    r60380a1 r9feb34b  
    2020#include_next <cassert>
    2121
    22 #include <string>
    23 
    24 template < typename ... Params >
    25 std::string toString( const Params & ... params );
     22#include "Common/ToString.hpp"
    2623
    2724#ifdef NDEBUG
Note: See TracChangeset for help on using the changeset viewer.