Changes in / [a2e758e:0b8bf27]


Ignore:
Location:
src/AST
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • src/AST/Attribute.cpp

    ra2e758e r0b8bf27  
    2828        auto end = name.find_last_not_of('_');
    2929        if ( begin == std::string::npos || end == std::string::npos ) return "";
    30 
     30       
    3131        // convert to lowercase
    3232        std::string ret;
  • src/AST/Attribute.hpp

    ra2e758e r0b8bf27  
    3030public:
    3131        std::string name;
    32         std::vector<ptr<Expr>> params;
     32        std::vector<ptr<Expr>> parameters;
    3333
    3434        Attribute( const std::string & name = "", std::vector<ptr<Expr>> && params = {})
    35         : name( name ), params( params ) {}
     35        : name( name ), parameters( params ) {}
    3636        virtual ~Attribute() = default;
    3737
  • src/AST/Convert.cpp

    ra2e758e r0b8bf27  
    11301130        const ast::Type * visit( const ast::FunctionType * node ) override final {
    11311131                auto ty = new FunctionType {
    1132                         cv( node ),
     1132                        cv( node ), 
    11331133                        (bool)node->isVarArgs
    11341134                };
     
    13281328                auto attr = new Attribute(
    13291329                        node->name,
    1330                         get<Expression>().acceptL(node->params)
     1330                        get<Expression>().acceptL(node->parameters)
    13311331                );
    13321332                this->node = attr;
     
    13381338                // TypeSubstitution is not a node in the old model, so the conversion result wouldn't fit in this->node.
    13391339                assert( 0 );
    1340                 (void)node;
    13411340                return nullptr;
    13421341        }
     
    14101409#       define GET_LABELS_V(labels) \
    14111410                to<std::vector>::from( make_labels( std::move( labels ) ) )
    1412 
     1411       
    14131412        static ast::CV::Qualifiers cv( Type * ty ) { return { ty->get_qualifiers().val }; }
    14141413
     
    15501549
    15511550        virtual void visit( TypeDecl * old ) override final {
    1552                 if ( inCache( old ) ) return;
     1551                if ( inCache( old ) ) return;   
    15531552                auto decl = new ast::TypeDecl{
    15541553                        old->location,
     
    15881587        virtual void visit( AsmDecl * old ) override final {
    15891588                auto decl = new ast::AsmDecl{
    1590                         old->location,
     1589                        old->location, 
    15911590                        GET_ACCEPT_1(stmt, AsmStmt)
    15921591                };
     
    21432142                        rslt = new ast::ConstantExpr(
    21442143                                old->location,
    2145                                 GET_ACCEPT_1(result, Type),
    2146                                 old->constant.get_value(),
     2144                                GET_ACCEPT_1(result, Type), 
     2145                                old->constant.get_value(), 
    21472146                                (double) old->constant.get_dval()
    21482147                        );
     
    21642163                        assert(!old->isType);
    21652164                        rslt = new ast::SizeofExpr(
    2166                                 old->location,
     2165                                old->location, 
    21672166                                GET_ACCEPT_1(expr, Expr)
    21682167                        );
     
    21712170                        assert(old->isType);
    21722171                        rslt = new ast::SizeofExpr(
    2173                                 old->location,
     2172                                old->location, 
    21742173                                GET_ACCEPT_1(type, Type)
    21752174                        );
     
    21852184                        assert(!old->isType);
    21862185                        rslt = new ast::AlignofExpr(
    2187                                 old->location,
     2186                                old->location, 
    21882187                                GET_ACCEPT_1(expr, Expr)
    21892188                        );
     
    21922191                        assert(old->isType);
    21932192                        rslt = new ast::AlignofExpr(
    2194                                 old->location,
     2193                                old->location, 
    21952194                                GET_ACCEPT_1(type, Type)
    21962195                        );
     
    22362235                                GET_ACCEPT_1(arg1, Expr),
    22372236                                GET_ACCEPT_1(arg2, Expr),
    2238                                 old->get_isAnd() ?
     2237                                old->get_isAnd() ? 
    22392238                                        ast::LogicalFlag::AndExpr :
    22402239                                        ast::LogicalFlag::OrExpr
  • src/AST/Expr.cpp

    ra2e758e r0b8bf27  
    345345}
    346346
    347 TupleAssignExpr::TupleAssignExpr(
     347TupleAssignExpr::TupleAssignExpr( 
    348348        const CodeLocation & loc, const Type * result, const StmtExpr * s )
    349349: Expr( loc, result ), stmtExpr() {
  • src/AST/Pass.impl.hpp

    ra2e758e r0b8bf27  
    18791879
    18801880        VISIT(
    1881                 maybe_accept( node, &Attribute::params );
     1881                maybe_accept( node, &Attribute::parameters );
    18821882        )
    18831883
  • src/AST/Print.cpp

    ra2e758e r0b8bf27  
    77// Print.cpp --
    88//
    9 // Author : Thierry Delisle
    10 // Created On : Tue May 21 16:20:15 2019
     9// Author           : Thierry Delisle
     10// Created On       : Tue May 21 16:20:15 2019
    1111// Last Modified By :
    1212// Last Modified On :
    13 // Update Count :
     13// Update Count     :
    1414//
    1515
     
    2121#include "Type.hpp"
    2222#include "TypeSubstitution.hpp"
    23 
    24 #include "Common/utility.h" // for group_iterate
    2523
    2624using namespace std;
     
    157155public:
    158156        virtual const ast::DeclWithType * visit( const ast::ObjectDecl * node ) {
    159                 if ( !node->name.empty() ) os << node->name << ": ";
     157                if (  !node->name.empty() ) os << node->name << ": ";
    160158
    161159                if ( node->linkage != Linkage::Cforall ) {
     
    638636
    639637        virtual const ast::Designation * visit( const ast::Designation * node ) {
    640                 if ( node->designators.empty() ) return node;
    641                 os << "... designated by: " << std::endl;
    642                 ++indent;
    643                 for ( const ast::Expr * d : node->designators ) {
    644                         os << indent;
    645                         d->accept( *this );
    646                         os << std::endl;
    647                 }
    648                 --indent;
    649638                return node;
    650639        }
    651640
    652641        virtual const ast::Init * visit( const ast::SingleInit * node ) {
    653                 os << "Simple Initializer: ";
    654                 node->value->accept( *this );
    655642                return node;
    656643        }
    657644
    658645        virtual const ast::Init * visit( const ast::ListInit * node ) {
    659                 os << "Compound initializer: " << std::endl;
    660                 ++indent;
    661                 for ( auto p : group_iterate( node->designations, node->initializers ) ) {
    662                         const ast::Designation * d = std::get<0>(p);
    663                         const ast::Init * init = std::get<1>(p);
    664                         os << indent;
    665                         init->accept( *this );
    666                         os << std::endl;
    667                         if ( ! d->designators.empty() ) {
    668                                 os << indent;
    669                                 d->accept( *this );
    670                         }
    671                 }
    672                 --indent;
    673646                return node;
    674647        }
    675648
    676649        virtual const ast::Init * visit( const ast::ConstructorInit * node ) {
    677                 os << "Constructor initializer: " << std::endl;
    678                 if ( node->ctor ) {
    679                         os << indent << "... initially constructed with ";
    680                         ++indent;
    681                         node->ctor->accept( *this );
    682                         --indent;
    683                 }
    684 
    685                 if ( node->dtor ) {
    686                         os << indent << "... destructed with ";
    687                         ++indent;
    688                         node->dtor->accept( *this );
    689                         --indent;
    690                 }
    691 
    692                 if ( node->init ) {
    693                         os << indent << "... with fallback C-style initializer: ";
    694                         ++indent;
    695                         node->init->accept( *this );
    696                         --indent;
    697                 }
    698650                return node;
    699651        }
    700652
    701653        virtual const ast::Attribute * visit( const ast::Attribute * node ) {
    702                 if ( node->empty() ) return node;
    703                 os << "Attribute with name: " << node->name;
    704                 if ( node->params.empty() ) return node;
    705                 os << " with parameters: " << std::endl;
    706                 ++indent;
    707                 printAll( node->params );
    708                 --indent;
    709654                return node;
    710655        }
  • src/AST/TypeSubstitution.hpp

    ra2e758e r0b8bf27  
    2525#include "Fwd.hpp"        // for UniqueId
    2626#include "ParseNode.hpp"
    27 #include "Type.hpp"
     27#include "Type.hpp"       
    2828#include "Common/SemanticError.h"  // for SemanticError
    2929#include "Visitor.hpp"
  • src/AST/porting.md

    ra2e758e r0b8bf27  
    110110
    111111## Specific Nodes ##
    112 `Attribute`
    113 * `parameters` => `params`
    114 
    115112`Decl`
    116113* `storageClasses` => `storage`
Note: See TracChangeset for help on using the changeset viewer.