Ignore:
Timestamp:
Nov 15, 2023, 5:01:36 PM (5 months ago)
Author:
Andrew Beach <ajbeach@…>
Branches:
master
Children:
f22b170b
Parents:
45a091b
Message:

Major round of clean-up in the GenPoly? directory.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/GenPoly/Lvalue.h

    r45a091b rb8b5535  
    55// file "LICENCE" distributed with Cforall.
    66//
    7 // Lvalue.h --
     7// Lvalue.h -- Clean up lvalues and remove references.
    88//
    99// Author           : Richard C. Bilson
     
    1616#pragma once
    1717
    18 #include <list>  // for list
    19 
    20 class Declaration;
    21 class Expression;
    2218namespace ast {
    2319        class Expr;
     
    2622
    2723namespace GenPoly {
    28         /// replaces return type of `lvalue T` with `T*`, along with appropriate address-of and dereference operators
    29         void convertLvalue( std::list< Declaration* >& translationUnit );
    30         void convertLvalue( ast::TranslationUnit & translationUnit );
    3124
    32         /// true after reference types have been eliminated from the source code. After this point, reference types should not be added to the AST.
    33         bool referencesPermissable();
     25/// Replaces return type of `T&` with `T*`, along with appropriate address-of and dereference operators.
     26void convertLvalue( ast::TranslationUnit & translationUnit );
    3427
    35         /// applies transformations that allow GCC to accept more complicated lvalue expressions, e.g. &(a, b)
    36         Expression * generalizedLvalue( Expression * expr );
    37         ast::Expr const * generalizedLvalue( ast::Expr const * expr );
     28/// Returns true until reference types have been eliminated from the source code. After this point, reference types should not be added to the AST.
     29bool referencesPermissable();
     30
     31/// Applies transformations that allow GCC to accept more complicated lvalue expressions, e.g. &(a, b).
     32ast::Expr const * generalizedLvalue( ast::Expr const * expr );
     33
    3834} // namespace GenPoly
    3935
Note: See TracChangeset for help on using the changeset viewer.