Changeset 69bafd2 for src/AST/porting.md
- Timestamp:
- May 15, 2019, 3:57:26 PM (5 years ago)
- 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. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/porting.md
r9e1d485 r69bafd2 10 10 ## Visitors ## 11 11 * `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` 13 13 * `PassVisitor` is replaced with `ast::Pass` 14 14 … … 26 26 `clone` is private to `Node` now 27 27 * 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); 29 33 30 34 All leaves of the `Node` inheritance tree are now declared `final` … … 170 174 171 175 `AttrType` 172 * did not port due to (likely) disuse173 * best guess at use (from printing code) is deprecated handling for attributes176 * did not port due to deprecation of feature 177 * feature is `type@thing` e.g. `int@MAX` 174 178 175 179 [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.