[Issue 20036] COFF: missing relocations in large object files

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20036

--- Comment #1 from Dlang Bot  ---
@rainers created dlang/dmd pull request #10153 "Issue 20036 - COFF: missing
relocations in large object files" mentioning this issue:

- Issue 20036 - COFF: missing relocations in large object files

  more than 65535 relocations must be encoded in the first relocation

https://github.com/dlang/dmd/pull/10153

--


[Issue 20036] New: COFF: missing relocations in large object files

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20036

  Issue ID: 20036
   Summary: COFF: missing relocations in large object files
   Product: D
   Version: D2
  Hardware: x86_64
OS: Windows
Status: NEW
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: r.sagita...@gmx.de

If an COFF object file section has more than 65535 relocations, only a part of
them are actually written to the object file:


__gshared int x = 7;
__gshared int*[7] px = 

void main()
{
foreach(p; px)
assert(p && *p == 7);
}

Building on Windows with -m64 or -32mscoff causes the assertion to fail.

--


[Issue 20035] [ICE] Segmentation fault in ExpressionPrettyPrintVisitor::visit(IntegerExp*) at dmd/hdrgen.d:1775

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20035

Iain Buclaw  changed:

   What|Removed |Added

 CC||ibuc...@gdcproject.org

--- Comment #1 from Iain Buclaw  ---
__c_wchar_t is a special enum.  The same also happens if aliasing __c_long or
__c_long_double.

--


[Issue 20035] New: [ICE] Segmentation fault in ExpressionPrettyPrintVisitor::visit(IntegerExp*) at dmd/hdrgen.d:1775

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20035

  Issue ID: 20035
   Summary: [ICE] Segmentation fault in
ExpressionPrettyPrintVisitor::visit(IntegerExp*) at
dmd/hdrgen.d:1775
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: critical
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: ibuc...@gdcproject.org

// dmd -vcg-ast
enum __c_wchar_t : dchar;
alias wchar_t = __c_wchar_t;

T[] values(T)()
{
T[] values;
values ~= T();
return values;
}

void main()
{
values!wchar_t;
}

--


[Issue 20034] [Reg 2.087.0] hashOf of a non-scalar enum doesn't compile

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20034

--- Comment #1 from Radu Racariu  ---
Addressed in https://github.com/dlang/druntime/pull/2670

--


[Issue 20034] New: [Reg 2.087.0] hashOf of a non-scalar enum doesn't compile

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20034

  Issue ID: 20034
   Summary: [Reg 2.087.0] hashOf of a non-scalar enum doesn't
compile
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: regression
  Priority: P1
 Component: druntime
  Assignee: nob...@puremagic.com
  Reporter: radu.raca...@gmail.com

The following:
```
import std.stdio;

enum Algo
{
a = "foo",
b = "bar",
c = "baz"
}

void main()
{
writeln(hashOf(Algo.a, 1));
}
```

Produces an error:
/dlang/dmd/linux/bin64/../../src/druntime/import/core/internal/hash.d(135):
Error: undefined identifier e_val, did you mean variable val?
onlineapp.d(14): Error: template instance `core.internal.hash.hashOf!(Algo)`
error instantiating

--


[Issue 20009] isForwardRange doesn't work with alias range this or inheritance

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20009

--- Comment #4 from shove  ---
(In reply to Ali Ak from comment #3)
> Why mark this invalid? Are interfaces and alias this'd ranges not supposed
> to work?

Misread the title and misoperate it. I'm sorry.

--


[Issue 20009] isForwardRange doesn't work with alias range this or inheritance

2019-07-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20009

Ali Ak  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 Resolution|INVALID |---

--- Comment #3 from Ali Ak  ---
Why mark this invalid? Are interfaces and alias this'd ranges not supposed to
work?

--