D front end implementation
Jacob Carlborg via Digitalmars-d
digitalmars-d at puremagic.com
Wed Nov 16 10:17:07 PST 2016
On 2016-11-16 01:11, Timon Gehr wrote:
> Yup. There are many features missing that are quite easy to implement
> but require work, and a few that are somewhat messy to specify (e.g.
> 'protected'). An incomplete list:
>
> * UDA's
> * Built-in members (init, stringof, min, max, ...)
> * various forms of import statements
> - static, selective, renaming, ...
> * Initialization of union fields
> * anonymous structs & unions
> - Analysis & Lowering
> * additional import paths & implicit object.d
> * implicit inheritance from Object
> * version declarations
> * Associative arrays/Associative array literals
> * module declarations
> * (implicit) super constructor calls
> - default constructor call insertion
> - flow analysis
> * Destructor and postblit calls
> - use flow analysis to optimize moves
> * with statements
> * associative arrays
> * foreach statements
> - automatic decoding for string types
> - foreach over associative arrays
> - foreach over delegates
> - foreach over AliasSeq
> * pattern matching in old-style template constraints
> * explicit casts from/to class references
> - eg. to/from void* and to bool
> * try-catch-finally statements
> * scope guards
> * initialization crossing check
> * multi-argument struct constructors.
> * struct postblit & destructors
> * finish operator overloading support
> * opDispatch
> * member alias declarations aliasing members
> - correctly provide a this pointer
> * visibility
> - package, protected
> * alias this
Is it "only" semantic analysis that is missing for these features or
lexing and/or parsing as well?
--
/Jacob Carlborg
More information about the Digitalmars-d
mailing list