http://d.puremagic.com/issues/show_bug.cgi?id=3395
Summary: Ambiguous array operations Product: D Version: 2.032 Platform: All URL: http://www.digitalmars.com/d/2.0/arrays.html OS/Version: All Status: NEW Keywords: spec Severity: enhancement Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: dfj1es...@sneakemail.com --- Comment #0 from Sobirari Muhomori <dfj1es...@sneakemail.com> 2009-10-14 01:15:48 PDT --- These expressions are ambiguous: --- a[].max(n); a[1..4].max(n); --- Does it mean calling the function on the slice or on each item in the slice? Possible solution is to change the meaning of empty square brackets from full slice to only a hint for array operation so that a[].max(n) is an array operation and a[1..4].max(n) is max(a[1..4],n). This also gives possibility to extend array operation to whole statement even if it's not an lvalue: --- printf("%.4f, ",a[]); becomes foreach(v;a)printf("%.4f, ",v); --- a[].max(n) and max(a[],n) become the same and unambiguous with other use cases. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------