https://issues.dlang.org/show_bug.cgi?id=23598
Walter Bright <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #4 from Walter Bright <[email protected]> --- Doing a shrink on the test case: alias aliases(a...) = a; template sort(alias f, a...) { static if (a.length > 0) { alias x = f!(a[0]); alias sort = a; } else alias sort = a; } alias SortedItems = sort!(isDependencyOf, String); enum isDependencyOf(Item) = Item.DirectDependencies.length == 0; struct String { alias DirectDependencies = aliases!(); enum l = SortedItems.length; // no property `length` } If SortedItems is moved last, it compiles successfully. --
