http://d.puremagic.com/issues/show_bug.cgi?id=5039
Summary: Cannot use invariant() with auto methods Product: D Version: D2 Platform: x86 OS/Version: Windows Status: NEW Severity: minor Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: ah0801...@yahoo.com --- Comment #0 from Austin Hastings <ah0801...@yahoo.com> 2010-10-11 01:04:38 PDT --- This code: ========== module scratch; class C { int x; invariant() { assert( x < int.max ); } auto foo() { return x; } } ========= Reports this error: $ dmd scratch.d scratch.d(10): Error: function scratch.C.foo post conditions are not supported if the return type is inferred Removing the invariant eliminates the error message. Converting the 'auto' to an explicit return type eliminates the error message. Given that the compiler must eventually figure out the return type of the method, I have no idea why this error is occurring. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------