Not sure if this is a rejects-valid or an accepts-invalid, since the spec isn't clear on how passing template alias parameters that refer to a function scope is supposed to work. The inconsistency, though, means at least one of these is wrong. import std.algorithm, std.array; void main() { uint[] arr = [1, 2, 3]; // Doesn't work with -inline auto res1 = array( map!((a) { return a == arr[0]; })(arr) ); // Works if the previous statement is commented out or -inline // is disabled. auto res2 = array( map!((uint a) { return a == arr[0]; })(arr) ); } Error message (version 2.048, only when -inline is enabled): test.d(8): Error: function D main is a nested function and cannot be accessed from array
This is an important issue, I hit it often.
*** This issue has been marked as a duplicate of issue 4841 ***
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル