[Issue 14254] New: Append to upvalue in destructor segfaults when struct is CT-initialized

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14254

  Issue ID: 14254
   Summary: Append to upvalue in destructor segfaults when struct
is CT-initialized
   Product: D
   Version: D2
  Hardware: x86
OS: Linux
Status: NEW
  Severity: normal
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: jakobov...@gmail.com

The following segfaults in _d_arrayappendcTX:
---
unittest
{
int[] upvalue;

struct S
{
~this()
{ 
upvalue ~= 0; // segfault
}
}

struct Outer
{
S s2 = S();
}

{
Outer outer;
} // destructor called here
}
---
I guess either this code is accepts-invalid or some other bug.

--


[Issue 14198] [REG2.067a] Link failure with Variant

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14198

--- Comment #7 from github-bugzi...@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/646dc1969c78fdf43b981b973783efba08b11354
fix Issue 14198 - [REG2.067a] Link failure with Variant

https://github.com/D-Programming-Language/phobos/commit/8598139bde54ffa8e0888b965f11e3ac79914661
Merge pull request #3038 from WalterBright/fix14198

fix Issue 14198 - [REG2.067a] Link failure with Variant

--


[Issue 4650] Static data that must be scanned by the GC should be grouped

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=4650

--- Comment #10 from github-bugzi...@puremagic.com ---
Commit pushed to master at https://github.com/D-Programming-Language/druntime

https://github.com/D-Programming-Language/druntime/commit/19ea3e382ac92ee70faed9372e2eb42057548ac9
Merge pull request #1180 from rainers/gcranges_data_bss

Issue 4650 - only scan data and bss, not const

--


[Issue 14198] [REG2.067a] Link failure with Variant

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14198

github-bugzi...@puremagic.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--


[Issue 14198] [REG2.067a] Link failure with Variant

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14198

--- Comment #6 from Kenji Hara k.hara...@gmail.com ---
Created attachment 1480
  -- https://issues.dlang.org/attachment.cgi?id=1480action=edit
Reduced test case. Running ng.bat will reproduce link-failure.

(In reply to Kenji Hara from comment #1)
 Introduced in: https://github.com/D-Programming-Language/dmd/pull/4335

Sorry I was wrong. The issue commit that was introducing the change was in
Phobos repository.

https://github.com/D-Programming-Language/phobos/commit/a9d45235da6509e21450dea1825a5fa1dff9eed4#diff-54cf8402b22024ae667d4048a5126f0eL17

The commit has removed `import std.string;` from the module level scope in
std.array. Unfortunately it triggered a previously unknown forward reference
bug in compiler.

See also the minimized test case I attached.

--


[Issue 9449] Static arrays of 128bit types segfault on initialization. Incorrect calling of memset128ii.

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=9449

Temtaime temta...@gmail.com changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 CC||temta...@gmail.com
 Resolution|WORKSFORME  |---

--- Comment #34 from Temtaime temta...@gmail.com ---
Hi !
I've hit this bug with GIT HEAD dmd and vibe.d built with win32driver.

I've disassembled .exe and it crashes with movdqa, the address is misaligned.
I've changed movdqa opcode to movdqu in dmd's code and all works OK now.

--


[Issue 14198] [REG2.067a] Link failure with Variant

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14198

--- Comment #8 from github-bugzi...@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/77b9b31bb6484c87e45b1df787cd58a4452d05f2
fixup #3038 add reference to bugzilla issue 14198

https://github.com/D-Programming-Language/phobos/commit/74d2c8aa799297ef404055390cbf24c04c94248c
Merge pull request #3044 from MartinNowak/fixup3038

fixup #3038 add reference to bugzilla issue 14198

--


[Issue 14253] [REG2.067b3] std.traits.ParameterStorageClassTuple gives compiler errors when encountering 'return' functions

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14253

--- Comment #1 from Kapps opantm2+db...@gmail.com ---
Other std.traits functions will likely have to be updated to include 'return'
as well, such as functionAttributes.

--


[Issue 14255] New: Since DMD is used to build idgen, one can't have dmd.conf for dev and system wide.

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14255

  Issue ID: 14255
   Summary: Since DMD is used to build idgen, one can't have
dmd.conf for dev and system wide.
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: deadal...@gmail.com

A common practice is to have dmd.conf in the dev folder of dmd to be able to
use druntime and phobos in dev version rather than system ones (different
version can be incompatible).

Since system's dmd is used to build idgen, it is picking up the dev's dmd.conf
and fail miserably.

--


[Issue 14254] Append to upvalue in destructor segfaults when struct is CT-initialized

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14254

Jakob Ovrum jakobov...@gmail.com changed:

   What|Removed |Added

 OS|Linux   |All

--


[Issue 14254] Append to upvalue in destructor segfaults when struct is CT-initialized

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14254

Jakob Ovrum jakobov...@gmail.com changed:

   What|Removed |Added

   Hardware|x86 |All

--


[Issue 14256] New: Poor IO performance on 64-bit dmd 2.066 (OS X)

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14256

  Issue ID: 14256
   Summary: Poor IO performance on 64-bit dmd 2.066 (OS X)
   Product: D
   Version: unspecified
  Hardware: x86_64
OS: Mac OS X
Status: NEW
  Severity: normal
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: pmma...@gmail.com

I'm getting relatively poor I/O performance on medium to large text files in D
code compiled with DMD64 D Compiler v2.066 on OSX 10.10.2.

Below is an example D program and an equivalent Python program. The D code was
compiled with dmd -O -release -inline -m64.

The timings on my system, when iterating over a ~470Mb file (~3.6M lines) are
as follows:


// D times
real0m19.146s
user0m18.932s
sys 0m0.190s

# Python times
real0m1.544s
user0m1.062s
sys 0m0.479s



// D code
import std.stdio;
import std.string;

int main(string[] args)
{
  if (args.length  2) {
return 1;
  }
  auto infile = File(args[1]);
  uint linect = 0;
  foreach (line; infile.byLine())
linect += 1;
  writeln(There are: , linect,  lines.);
  return 0;
}


# Python code
import sys

if __name__ == __main__:
if (len(sys.argv)  2):
sys.exit()
infile = open(sys.argv[1])
linect = 0
for line in infile.readlines():
linect += 1
print There are %d lines % linect


This was originally asked on StackOverflow.  One of the respondents (username
Gassa) suggested that I file this as an issue here. See original exchange at:

http://stackoverflow.com/questions/28922323/improving-line-wise-i-o-operations-in-d

--


[Issue 14258] SIGSEGV in dpldocs

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14258

--- Comment #1 from Vladimir Panteleev thecybersha...@gmail.com ---
I think it's having trouble with this expansion:

LIX=$(LI $1)$(LIX $+)

Its usage might have been introduced here:

https://github.com/D-Programming-Language/phobos/commit/743303055d74cdd3e482a3af3e99af93755f3af6

--


[Issue 14257] New: ICE(backend/go.c) with large static foreach

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14257

  Issue ID: 14257
   Summary: ICE(backend/go.c) with large static foreach
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: sinkuup...@gmail.com

DMD fails to optimize code like the following, when foreach aggregate is
staticIota!(0, x = 100).

Reduced test case:
template TypeTuple(TList...)
{
alias TypeTuple = TList;
}

package template staticIota(int beg, int end)
{
static if (beg + 1 = end)
{
static if (beg = end)
{
alias staticIota = TypeTuple!();
}
else
{
alias staticIota = TypeTuple!(+beg);
}
}
else
{
enum mid = beg + (end - beg) / 2;
alias staticIota = TypeTuple!(staticIota!(beg, mid), staticIota!(mid,
end));
}
}

void test()
{
int row;

foreach (s; staticIota!(0, 100))
{
if (++row) row = 0;
}
}



$ dmd -O -c test.d
Internal error: backend/go.c 242

--


[Issue 14256] Poor IO performance on 64-bit dmd 2.066 (OS X)

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14256

--- Comment #1 from Paul M pmma...@gmail.com ---
For testing purposes, here is a link to a tarball of  file that I was using for
testing purposes:

ftp://flybase.net/genomes/Drosophila_melanogaster/dmel_r6.03_FB2014_06/gff/dmel-all-no-analysis-r6.03.gff.gz

When decompressed this gives a 471Mb file with 3615492 lines.

--


[Issue 14258] New: SIGSEGV in dpldocs

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14258

  Issue ID: 14258
   Summary: SIGSEGV in dpldocs
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: regression
  Priority: P1
 Component: websites
  Assignee: slud...@outerproduct.org
  Reporter: thecybersha...@gmail.com

Created attachment 1481
  -- https://issues.dlang.org/attachment.cgi?id=1481action=edit
gdb log

When attempting to build the docs from a non-interactive shell, using a clean
checkout and environment, dpldocs get stuck and eats all RAM.

I get a different result (a SIGSEGV) if I run it under GDB in an interactive
shell. See attached log.

I'm guessing it gets stuck on a recursive template expansion, or something?

This has been happening for a few weeks now, I think, and is currently blocking
updating dlang.org/library/ (I've been procrastinating investigating/filing
this).

--


[Issue 14259] New: rdmd: --build-only / -of / -od incompatible with --dry-run

2015-03-07 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14259

  Issue ID: 14259
   Summary: rdmd: --build-only / -of / -od incompatible with
--dry-run
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: minor
  Priority: P1
 Component: tools
  Assignee: nob...@puremagic.com
  Reporter: thecybersha...@gmail.com

rdmd tries to create .built (build witness) regardless of --dry-run.

--