[Issue 1076] New: by using scope(exit) tail recursion ain't working
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Mar 21 09:11:21 PDT 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1076
Summary: by using scope(exit) tail recursion ain't working
Product: D
Version: 1.009
Platform: PC
OS/Version: Windows
Status: NEW
Severity: normal
Priority: P2
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: davidl at 126.com
int i;
int scp( int n ){
if( n==0 ) return 0;
// scope(exit) printf("%d",n);
scope(exit) i++;
return scp(n-1);
}
void main() {
scp(40000);
printf(`%d`,i);
}
//stack overflow
change scope(exit) i++; by i++; then tail recursion works fine
--
More information about the Digitalmars-d-bugs
mailing list