Created attachment 1064 [details] Files required to reproduce When compiling the attached code ( https://gist.github.com/7faf1013f81ea96bfb89 ), the following error is given: ---- serenity/core/Model.d(2): Error: static assert "Article(1): tuple((Article).id)" example/models/HomeModel.d(10): instantiated from here: SqlitePersister!(Article) ---- Note that the code requires the following directory/file layout: serenity ` core ` Model.d ` Controller.d example ` controllers ` HomeController.d ` models ` HomeModel.d And should be compiled with: dmd -c example/controllers/HomeController.d example/models/HomeModel.d
This is a forward reference bug. Workaround in core/Model.d: class SqlitePersister(T) { + static assert(T.sizeof); // force running semantic of T + // to resolve sizeof property static assert(T.tupleof.length > 0, T.stringof ~ `(` ~ (T.tupleof.length + '0') ~ `): ` ~ T.tupleof.stringof); }
https://github.com/D-Programming-Language/dmd/pull/595
https://github.com/D-Programming-Language/dmd/commit/39124548bdab79769afe5699c50fe6e79421bcda https://github.com/D-Programming-Language/dmd/commit/3d4b0b6d6f82bd03ce57e581cbe16e8fb4af0d7a
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル