Thread overview | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
May 05, 2011 [dmd-beta] dmd 1.068 beta | ||||
---|---|---|---|---|
| ||||
D2 beta will likely be tomorrow. http://ftp.digitalmars.com/dmd1beta.zip |
May 07, 2011 [dmd-beta] dmd 2.053 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Not sure if this is a regression or a bug fix, but: ----------------------------------- import std.algorithm; void main() { int foo(int i) { return i; } int[] arr; auto x = map!( (int a){return foo(a);} )(arr); } ----------------------------------- That worked in 2.052, but fails to compile in 2.053 beta with the message: test.d(8): Error: delegate std.algorithm.__dgliteral1 cannot access frame of function test.main.__dgliteral1 |
May 07, 2011 [dmd-beta] dmd 2.053 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | (Sorry if this appears on the list twice. I first sent it from an address at my domain, but my domain's in the middle of a DNS update so it's kinda screw ATM.) Not sure if this is a regression or a bug fix, but: ----------------------------------- import std.algorithm; void main() { int foo(int i) { return i; } int[] arr; auto x = map!( (int a){return foo(a);} )(arr); } ----------------------------------- That worked in 2.052, but fails to compile in 2.053 beta with the message: test.d(8): Error: delegate std.algorithm.__dgliteral1 cannot access frame of function test.main.__dgliteral1 |
May 07, 2011 [dmd-beta] dmd 2.053 beta (Stack Overflow) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | I'm getting a stack overflow with the 2.053 beta (Windows). This one's probably going to be a PITA to narrow down, if even possible, but here's what I know so far before trying to narrow anything: On the current trunk on SemiTwist D Tool (revision 220): http://www.dsource.org/projects/semitwist/browser/trunk svn co -r 220 http://svn.dsource.org/projects/semitwist/trunk SemiTwistDTools Building the unittest app will cause DMD to get a Stack Overflow in this new beta (works fine in 2.052). The cmd line sent to DMD is this: dmd -debug -g -unittest -wi -debug=SemiTwistDLib_unittest -Isrc -of"bin\semitwist-unittests-debug.exe" -I"src\semitwist\apps\tests\unittests" "src\semitwist\apps\tests\unittests\main.d" "src\semitwist\util\text.d" "src\semitwist\cmdlineparser.d" "src\semitwist\util\unittests.d" "src\semitwist\treeout.d" "src\semitwist\cmd\all.d" "src\semitwist\util\io.d" "src\semitwist\cmd\plain.d" "src\semitwist\util\os.d" "src\semitwist\util\ver.d" "src\semitwist\util\all.d" "D:\DevTool\dmd\bin\..\src\phobos\crc32.d" "src\semitwist\util\mixins.d" "src\semitwist\util\array.d" "src\semitwist\util\functional.d" "src\semitwist\util\ctfe.d" "src\semitwist\util\process.d" "src\semitwist\refbox.d" "src\semitwist\util\container.d" "src\semitwist\util\reflect.d" If I add the -v switch, here's the verbose output: binary D:\DevTool\dmd\bin\dmd.exe version v2.053 config D:\DevTool\dmd\bin\sc.ini parse main parse text parse cmdlineparser parse unittests parse treeout parse all parse io parse plain parse os parse ver parse all parse crc32 parse mixins parse array parse functional parse ctfe parse process parse refbox parse container parse reflect importall main import object (D:\DevTool\dmd\bin\..\src\druntime\import\object.di) import std.stdio (D:\DevTool\dmd\bin\..\src\phobos\std\stdio.d) import core.stdc.stdio (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\stdio.di) import core.stdc.config (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\config.di) import core.stdc.stddef (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\stddef.di) import core.stdc.stdarg (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\stdarg.di) import std.stdiobase (D:\DevTool\dmd\bin\..\src\phobos\std\stdiobase.d) import core.memory (D:\DevTool\dmd\bin\..\src\druntime\import\core\memory.di) import core.stdc.errno (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\errno.di) import core.stdc.stdlib (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\stdlib.di) import core.stdc.string (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\string.di) import core.stdc.wchar_ (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\wchar_.di) import core.stdc.time (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\time.di) import core.stdc.stdint (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\stdint.di) import core.stdc.signal (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\signal.di) import std.algorithm (D:\DevTool\dmd\bin\..\src\phobos\std\algorithm.d) import std.c.string (D:\DevTool\dmd\bin\..\src\phobos\std\c\string.d) import std.array (D:\DevTool\dmd\bin\..\src\phobos\std\array.d) import core.bitop (D:\DevTool\dmd\bin\..\src\druntime\import\core\bitop.di) import std.conv (D:\DevTool\dmd\bin\..\src\phobos\std\conv.d) import core.stdc.math (D:\DevTool\dmd\bin\..\src\druntime\import\core\stdc\math.di) import std.ctype (D:\DevTool\dmd\bin\..\src\phobos\std\ctype.d) import std.exception (D:\DevTool\dmd\bin\..\src\phobos\std\exception.d) import std.range (D:\DevTool\dmd\bin\..\src\phobos\std\range.d) import std.functional (D:\DevTool\dmd\bin\..\src\phobos\std\functional.d) import std.metastrings (D:\DevTool\dmd\bin\..\src\phobos\std\metastrings.d) import std.traits (D:\DevTool\dmd\bin\..\src\phobos\std\traits.d) import std.typetuple (D:\DevTool\dmd\bin\..\src\phobos\std\typetuple.d) import std.typecons (D:\DevTool\dmd\bin\..\src\phobos\std\typecons.d) import std.format (D:\DevTool\dmd\bin\..\src\phobos\std\format.d) import core.vararg (D:\DevTool\dmd\bin\..\src\druntime\import\core\vararg.di) import std.bitmanip (D:\DevTool\dmd\bin\..\src\phobos\std\bitmanip.d) import std.math (D:\DevTool\dmd\bin\..\src\phobos\std\math.d) import std.string (D:\DevTool\dmd\bin\..\src\phobos\std\string.d) import core.exception (D:\DevTool\dmd\bin\..\src\druntime\import\core\exception.di) import std.encoding (D:\DevTool\dmd\bin\..\src\phobos\std\encoding.d) import std.regex (D:\DevTool\dmd\bin\..\src\phobos\std\regex.d) import std.outbuffer (D:\DevTool\dmd\bin\..\src\phobos\std\outbuffer.d) import std.c.stdio (D:\DevTool\dmd\bin\..\src\phobos\std\c\stdio.d) import std.c.stdlib (D:\DevTool\dmd\bin\..\src\phobos\std\c\stdlib.d) import std.c.stdarg (D:\DevTool\dmd\bin\..\src\phobos\std\c\stdarg.d) import std.utf (D:\DevTool\dmd\bin\..\src\phobos\std\utf.d) import std.uni (D:\DevTool\dmd\bin\..\src\phobos\std\uni.d) import std.system (D:\DevTool\dmd\bin\..\src\phobos\std\system.d) import std.random (D:\DevTool\dmd\bin\..\src\phobos\std\random.d) import std.c.time (D:\DevTool\dmd\bin\..\src\phobos\std\c\time.d) import std.datetime (D:\DevTool\dmd\bin\..\src\phobos\std\datetime.d) import core.time (D:\DevTool\dmd\bin\..\src\druntime\import\core\time.di) import core.sys.windows.windows (D:\DevTool\dmd\bin\..\src\druntime\import\core\sys\windows\windows.di) import std.file (D:\DevTool\dmd\bin\..\src\phobos\std\file.d) import std.path (D:\DevTool\dmd\bin\..\src\phobos\std\path.d) import std.process (D:\DevTool\dmd\bin\..\src\phobos\std\process.d) import std.c.process (D:\DevTool\dmd\bin\..\src\phobos\std\c\process.d) import std.c.stddef (D:\DevTool\dmd\bin\..\src\phobos\std\c\stddef.d) import std.windows.syserror (D:\DevTool\dmd\bin\..\src\phobos\std\windows\syserror.d) import std.windows.charset (D:\DevTool\dmd\bin\..\src\phobos\std\windows\charset.d) import std.c.windows.windows (D:\DevTool\dmd\bin\..\src\phobos\std\c\windows\windows.d) import std.regexp (D:\DevTool\dmd\bin\..\src\phobos\std\regexp.d) import std.__fileinit (D:\DevTool\dmd\bin\..\src\phobos\std\__fileinit.d) import core.thread (D:\DevTool\dmd\bin\..\src\druntime\import\core\thread.di) import core.sync.mutex (D:\DevTool\dmd\bin\..\src\druntime\import\core\sync\mutex.di) import core.sync.exception (D:\DevTool\dmd\bin\..\src\druntime\import\core\sync\exception.di) import core.sys.windows.threadaux (D:\DevTool\dmd\bin\..\src\druntime\import\core\sys\windows\threadaux.di) import std.c.windows.winsock (D:\DevTool\dmd\bin\..\src\phobos\std\c\windows\winsock.d) import std.stdint (D:\DevTool\dmd\bin\..\src\phobos\std\stdint.d) import std.numeric (D:\DevTool\dmd\bin\..\src\phobos\std\numeric.d) import std.complex (D:\DevTool\dmd\bin\..\src\phobos\std\complex.d) import std.container (D:\DevTool\dmd\bin\..\src\phobos\std\container.d) import std.iterator (D:\DevTool\dmd\bin\..\src\phobos\std\iterator.d) import std.stream (D:\DevTool\dmd\bin\..\src\phobos\std\stream.d) import std.mmfile (D:\DevTool\dmd\bin\..\src\phobos\std\mmfile.d) import std.demangle (D:\DevTool\dmd\bin\..\src\phobos\std\demangle.d) import core.demangle (D:\DevTool\dmd\bin\..\src\druntime\import\core\demangle.di) import std.md5 (D:\DevTool\dmd\bin\..\src\phobos\std\md5.d) importall text importall cmdlineparser importall unittests importall treeout importall all importall io importall plain importall os importall ver importall all importall crc32 importall mixins importall array importall functional importall ctfe importall process importall refbox importall container importall reflect semantic main library advapi32.lib semantic text semantic cmdlineparser semantic unittests semantic treeout semantic all semantic io semantic plain semantic os semantic ver semantic all semantic crc32 semantic mixins semantic array semantic functional semantic ctfe semantic process semantic refbox semantic container semantic reflect semantic2 main semantic2 text semantic2 cmdlineparser semantic2 unittests semantic2 treeout semantic2 all semantic2 io semantic2 plain semantic2 os semantic2 ver semantic2 all semantic2 crc32 semantic2 mixins semantic2 array semantic2 functional semantic2 ctfe semantic2 process semantic2 refbox semantic2 container semantic2 reflect semantic3 main semantic3 text Stack overflow Don't know if that helps. Probably not. I'll see if I can narrow it down, but being a stack overflow, I don't know: Maybe it's infinite recursion somewhere, or maybe the stack just isn't big enough. |
May 07, 2011 [dmd-beta] dmd 2.053 beta (Stack Overflow) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky | To narrow it down, start with reducing the number of modules passed to the unittest command.
On 5/7/2011 1:59 AM, Nick Sabalausky wrote:
> I'm getting a stack overflow with the 2.053 beta (Windows). This one's probably going to be a PITA to narrow down, if even possible, but here's what I know so far before trying to narrow anything:
>
> On the current trunk on SemiTwist D Tool (revision 220):
> http://www.dsource.org/projects/semitwist/browser/trunk
> svn co -r 220 http://svn.dsource.org/projects/semitwist/trunk SemiTwistDTools
>
> Building the unittest app will cause DMD to get a Stack Overflow in this new beta (works fine in 2.052). The cmd line sent to DMD is this:
>
> dmd -debug -g -unittest -wi -debug=SemiTwistDLib_unittest -Isrc -of"bin\semitwist-unittests-debug.exe" -I"src\semitwist\apps\tests\unittests" "src\semitwist\apps\tests\unittests\main.d" "src\semitwist\util\text.d" "src\semitwist\cmdlineparser.d" "src\semitwist\util\unittests.d" "src\semitwist\treeout.d" "src\semitwist\cmd\all.d" "src\semitwist\util\io.d" "src\semitwist\cmd\plain.d" "src\semitwist\util\os.d" "src\semitwist\util\ver.d" "src\semitwist\util\all.d" "D:\DevTool\dmd\bin\..\src\phobos\crc32.d" "src\semitwist\util\mixins.d" "src\semitwist\util\array.d" "src\semitwist\util\functional.d" "src\semitwist\util\ctfe.d" "src\semitwist\util\process.d" "src\semitwist\refbox.d" "src\semitwist\util\container.d" "src\semitwist\util\reflect.d"
>
|
May 07, 2011 [dmd-beta] dmd 2.053 beta (Stack Overflow) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | Ok, here's a minimal test case: string[] foo(string[] a) { a[0] = a[0][0..$]; return a; } enum var = foo([""]); > dmd test.d Stack overflow From: "Walter Bright" <walter at digitalmars.com> > To narrow it down, start with reducing the number of modules passed to the unittest command. > > On 5/7/2011 1:59 AM, Nick Sabalausky wrote: >> I'm getting a stack overflow with the 2.053 beta (Windows). This one's probably going to be a PITA to narrow down, if even possible, but here's what I know so far before trying to narrow anything: >> >> On the current trunk on SemiTwist D Tool (revision 220): >> http://www.dsource.org/projects/semitwist/browser/trunk >> svn co -r 220 http://svn.dsource.org/projects/semitwist/trunk >> SemiTwistDTools >> >> Building the unittest app will cause DMD to get a Stack Overflow in this new beta (works fine in 2.052). The cmd line sent to DMD is this: >> >> dmd -debug -g -unittest -wi -debug=SemiTwistDLib_unittest -Isrc -of"bin\semitwist-unittests-debug.exe" >> -I"src\semitwist\apps\tests\unittests" >> "src\semitwist\apps\tests\unittests\main.d" "src\semitwist\util\text.d" >> "src\semitwist\cmdlineparser.d" "src\semitwist\util\unittests.d" >> "src\semitwist\treeout.d" "src\semitwist\cmd\all.d" >> "src\semitwist\util\io.d" "src\semitwist\cmd\plain.d" >> "src\semitwist\util\os.d" "src\semitwist\util\ver.d" >> "src\semitwist\util\all.d" "D:\DevTool\dmd\bin\..\src\phobos\crc32.d" >> "src\semitwist\util\mixins.d" "src\semitwist\util\array.d" >> "src\semitwist\util\functional.d" "src\semitwist\util\ctfe.d" >> "src\semitwist\util\process.d" "src\semitwist\refbox.d" >> "src\semitwist\util\container.d" "src\semitwist\util\reflect.d" >> > _______________________________________________ > dmd-beta mailing list > dmd-beta at puremagic.com > http://lists.puremagic.com/mailman/listinfo/dmd-beta |
May 07, 2011 [dmd-beta] dmd 2.053 beta (Stack Overflow) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Nick Sabalausky |
On 5/7/2011 7:20 PM, Nick Sabalausky wrote:
> Ok, here's a minimal test case:
>
> string[] foo(string[] a)
> {
> a[0] = a[0][0..$];
> return a;
> }
> enum var = foo([""]);
>
>> dmd test.d
> Stack overflow
>
Thanks!
|
May 09, 2011 [dmd-beta] dmd 2.053 beta (Stack Overflow) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | This is a CTFE bug, I'll get onto it (sorry, I was very busy this past weekend).
On 8 May 2011 05:18, Walter Bright <walter at digitalmars.com> wrote:
>
>
> On 5/7/2011 7:20 PM, Nick Sabalausky wrote:
>>
>> Ok, here's a minimal test case:
>>
>> string[] foo(string[] a)
>> {
>> ? a[0] = a[0][0..$];
>> ? return a;
>> }
>> enum var = foo([""]);
>>
>>> dmd test.d
>>
>> Stack overflow
>>
>
> Thanks!
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
|
May 08, 2011 [dmd-beta] dmd 2.053 beta (Stack Overflow) | ||||
---|---|---|---|---|
| ||||
Posted in reply to Don Clugston |
On 5/8/2011 10:07 PM, Don Clugston wrote:
> (sorry, I was very busy this past weekend).
No prob, I'm working on the other beta problems.
|
May 08, 2011 [dmd-beta] dmd 1.068 beta | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On 5/5/2011 10:12 PM, Walter Bright wrote:
> D2 beta will likely be tomorrow.
>
> http://ftp.digitalmars.com/dmd1beta.zip
There were a flurry of bugs reported here over the last week. It'd be good to get them in bugzilla so that they're all accounted for. Obviously those that have been fixed already don't need to be filed. :)
Thanks,
Brad
|
Copyright © 1999-2021 by the D Language Foundation