This worked in 2.055 but not with git dmd: struct File { void write(S...)(S args) { } } void dump(void delegate(string) d) { } void save() { auto o = File(); dump(&o.write!string); } $ dmd test.d DMD v2.056 DEBUG dustmite.d(15): Error: expected 1 function arguments, not 0 dustmite.d(15): Error: o.write() is not an lvalue dustmite.d(15): Error: function dustmite.dump (void delegate(string) d) is not callable using argument types (void*) dustmite.d(15): Error: cannot implicitly convert expression (&o.write()) of type void* to void delegate(string)
Introduced in 2f37b7d according to git bisect.
> Introduced in 2f37b7d according to git bisect. It is a bug of TemplateInstance::needsTypeInference that surfaced by that commit. https://github.com/D-Programming-Language/dmd/pull/465
https://github.com/D-Programming-Language/dmd/commit/9845d16592d057d11cbebf5a5be705f7f8051c2a https://github.com/D-Programming-Language/dmd/commit/deb82d39d12b325118372c1cf8c7634c0597e43e
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル