[Issue 5006] 'pure' unenforced in a nested function
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sun Oct 31 15:53:50 PDT 2010
http://d.puremagic.com/issues/show_bug.cgi?id=5006
Lewis <lewis1711 at gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |lewis1711 at gmail.com
OS/Version|Windows |Linux
Severity|normal |major
--- Comment #4 from Lewis <lewis1711 at gmail.com> 2010-10-31 15:52:50 PDT ---
I can confirm this bug.
It especially annoying because if you copypasta the bit on pure functionns
straight out of TDPL it *will compile*, when the comment says it shouldn't.
import std.stdio;
void main()
{
pure bool leapYear(uint y)
{
auto result = (y % 4) == 0 && (y % 100 || (y % 400) == 0);
if (result) writeln(y, " is a leap year!"); // Error!
// Cannot call impure function writeln from pure function!
return result;
}
leapYear(1);
}
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list