Changeset 8a4e472 for src/ControlStruct


Ignore:
Timestamp:
Dec 4, 2023, 4:39:47 PM (22 months ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
master
Children:
ebadb5d
Parents:
2f8d351 (diff), 539a8c8 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

Location:
src/ControlStruct
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • src/ControlStruct/ExceptDecl.h

    r2f8d351 r8a4e472  
    1616#pragma once
    1717
    18 #include <list>  // for list
    19 
    20 class Declaration;
    21 
    2218namespace ast {
    2319        class TranslationUnit;
     
    2521
    2622namespace ControlStruct {
     23
    2724/// Unfold exception declarations into raw structure declarations.
    2825/// Also builds vtable declarations and converts vtable types.
    29 void translateExcept( std::list< Declaration *> & translationUnit );
    3026void translateExcept( ast::TranslationUnit & translationUnit );
     27
    3128}
  • src/ControlStruct/ExceptTranslate.cpp

    r2f8d351 r8a4e472  
    2626namespace {
    2727
    28         typedef std::list<ast::CatchClause*> CatchList;
    29 
    30         void appendDeclStmt( ast::CompoundStmt * block, ast::DeclWithType * item ) {
    31                 block->push_back(new ast::DeclStmt(block->location, item));
    32         }
     28typedef std::list<ast::CatchClause*> CatchList;
     29
     30void appendDeclStmt( ast::CompoundStmt * block, ast::DeclWithType * item ) {
     31        block->push_back( new ast::DeclStmt( block->location, item ) );
     32}
    3333
    3434class TranslateThrowsCore final : public ast::WithGuards {
  • src/ControlStruct/ExceptTranslate.h

    r2f8d351 r8a4e472  
    1616#pragma once
    1717
    18 #include <list>  // for list
    19 
    20 class Declaration;
    2118namespace ast {
    2219        class TranslationUnit;
     
    2421
    2522namespace ControlStruct {
    26         void translateThrows( std::list< Declaration *> & translationUnit );
    27         void translateThrows( ast::TranslationUnit & transUnit );
    28         /* Replaces all throw & throwResume statements with function calls.
    29          * These still need to be resolved, so call this before the reslover.
    30          */
    3123
    32         void translateTries( std::list< Declaration *> & translationUnit );
    33         void translateTries( ast::TranslationUnit & transUnit );
    34         /* Replaces all try blocks (and their many clauses) with function definitions and calls.
    35          * This uses the exception built-ins to produce typed output and should take place after
    36          * the resolver. It also produces virtual casts and should happen before they are expanded.
    37          */
     24void translateThrows( ast::TranslationUnit & transUnit );
     25/* Replaces all throw & throwResume statements with function calls.
     26 * These still need to be resolved, so call this before the reslover.
     27 */
     28
     29void translateTries( ast::TranslationUnit & transUnit );
     30/* Replaces all try blocks (and their many clauses) with function definitions and calls.
     31 * This uses the exception built-ins to produce typed output and should take place after
     32 * the resolver. It also produces virtual casts and should happen before they are expanded.
     33 */
     34
    3835}
    3936
Note: See TracChangeset for help on using the changeset viewer.