Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/CodeGen/CodeGenerator.cc

    rdd020c0 r3a5131ed  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Fri Mar  3 21:18:47 2017
    13 // Update Count     : 465
     12// Last Modified On : Thu Feb 16 14:56:29 2017
     13// Update Count     : 418
    1414//
    1515
     
    134134
    135135                handleStorageClass( functionDecl );
    136                 DeclarationNode::print_FuncSpec( output, functionDecl->get_funcSpec() );
    137 
     136                if ( functionDecl->get_isInline() ) {
     137                        output << "inline ";
     138                } // if
     139                if ( functionDecl->get_isNoreturn() ) {
     140                        output << "_Noreturn ";
     141                } // if
    138142                output << genType( functionDecl->get_functionType(), mangleName( functionDecl ), pretty );
    139143
     
    831835        }
    832836
     837
    833838        void CodeGenerator::visit( ReturnStmt * returnStmt ) {
    834839                output << "return ";
     
    894899        }
    895900
    896         void CodeGenerator::handleStorageClass( DeclarationWithType * decl ) {
     901        void CodeGenerator::handleStorageClass( Declaration * decl ) {
    897902                switch ( decl->get_storageClass() ) {
    898                         //output << DeclarationNode::storageClassNames[decl->get_storageClass()] << ' ';
    899903                  case DeclarationNode::Extern:
    900904                        output << "extern ";
     
    909913                        output << "register ";
    910914                        break;
     915                  case DeclarationNode::Inline:
     916                        output << "inline ";
     917                        break;
     918                  case DeclarationNode::Fortran:
     919                        output << "fortran ";
     920                        break;
     921                  case DeclarationNode::Noreturn:
     922                        output << "_Noreturn ";
     923                        break;
    911924                  case DeclarationNode::Threadlocal:
    912                         output << "_Thread_local ";
    913                         break;
     925                        output << "_Thread_local ";
     926                        break;
    914927                  case DeclarationNode::NoStorageClass:
    915928                        break;
    916                   default:
    917                         assert( false );
    918929                } // switch
    919         } // CodeGenerator::handleStorageClass
     930        }
    920931
    921932        std::string genName( DeclarationWithType * decl ) {
Note: See TracChangeset for help on using the changeset viewer.