Changeset 69bafd2 for src/AST/porting.md


Ignore:
Timestamp:
May 15, 2019, 3:57:26 PM (5 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
ADT, arm-eh, ast-experimental, cleanup-dtors, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
3648d98
Parents:
9e1d485 (diff), be567e9 (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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/AST/porting.md

    r9e1d485 r69bafd2  
    1010## Visitors ##
    1111* `Visitor` and `Mutator` are combined into a single `ast::Visitor` class
    12   * Base nodes now override `Node* accept( Visitor& v ) = 0` with, e.g. `Stmt* accept( Visitor& v ) override = 0`
     12  * Base nodes now override `const Node * accept( Visitor & v ) const = 0` with, e.g. `const Stmt * accept( Visitor & v ) const override = 0`
    1313* `PassVisitor` is replaced with `ast::Pass`
    1414
     
    2626`clone` is private to `Node` now
    2727* still needs to be overriden to return appropriate type
    28   * e.g. `private: virtual Stmt* clone() const override = 0;`
     28  * e.g. `private: virtual Stmt * clone() const override = 0;`
     29  * because friendship is not inherited, all implementations of clone need
     30      /// Must be copied in ALL derived classes
     31      template<typename node_t>
     32      friend auto mutate(const node_t * node);
    2933
    3034All leaves of the `Node` inheritance tree are now declared `final`
     
    170174
    171175`AttrType`
    172 * did not port due to (likely) disuse
    173   * best guess at use (from printing code) is deprecated handling for attributes
     176* did not port due to deprecation of feature
     177  * feature is `type@thing` e.g. `int@MAX`
    174178
    175179[1] https://gcc.gnu.org/onlinedocs/gcc-9.1.0/gcc/Type-Attributes.html#Type-Attributes
Note: See TracChangeset for help on using the changeset viewer.