Jump to page: 1 2
Thread overview
[dmd-beta] dmd 1.068 beta
May 06, 2011
Walter Bright
[dmd-beta] dmd 2.053 beta
May 07, 2011
Nick Sabalausky
May 07, 2011
Nick Sabalausky
[dmd-beta] dmd 2.053 beta (Stack Overflow)
May 07, 2011
Nick Sabalausky
May 07, 2011
Walter Bright
May 08, 2011
Nick Sabalausky
May 08, 2011
Walter Bright
May 09, 2011
Don Clugston
May 09, 2011
Walter Bright
May 09, 2011
Don Clugston
May 09, 2011
Brad Roberts
May 09, 2011
Nick Sabalausky
May 05, 2011
D2 beta will likely be tomorrow.

http://ftp.digitalmars.com/dmd1beta.zip
May 07, 2011
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
(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
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
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
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

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
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

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
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

« First   ‹ Prev
1 2