[Issue 13138] add peek/poke as compiler intrinsics

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13138

--- Comment #2 from Walter Bright  ---
See also:

http://wiki.dlang.org/DIP20 Volatile read/write intrinsics

http://wiki.dlang.org/DIP62 Volatile type qualifier for unoptimizable variables
in embedded programming

DIP20 is more or less what this peek/poke proposal does.

--


[Issue 10911] std.net.curl.HTTP: should allow user code to indicate content type of POST data

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=10911

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from hst...@quickfur.ath.cx ---
PR has been merged. Yay!

--


[Issue 12858] Document opEquals usage in AAs

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12858

Kenji Hara  changed:

   What|Removed |Added

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

--


[Issue 12858] Document opEquals usage in AAs

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12858

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

https://github.com/D-Programming-Language/dlang.org/commit/ff01a723e4eedd468bbbde45f21341534bc1ec89
Merge pull request #612 from schveiguy/fix12858

Issue 12858:  Document opEquals usage in AAs

--


[Issue 13012] Open bugs chart is missing from http://dlang.org/bugstats.php

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13012

Kenji Hara  changed:

   What|Removed |Added

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

--


[Issue 13012] Open bugs chart is missing from http://dlang.org/bugstats.php

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13012

hst...@quickfur.ath.cx changed:

   What|Removed |Added

   Keywords||pull

--- Comment #3 from hst...@quickfur.ath.cx ---
Should be fixed in next website update.

--


[Issue 13012] Open bugs chart is missing from http://dlang.org/bugstats.php

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13012

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

https://github.com/D-Programming-Language/dlang.org/commit/363c12c31790c1750c313fdd67b5e5e6577dae71
Merge pull request #614 from quickfur/issue13012

Fix broken bug graph image on bugstats.php

--


[Issue 13113] cannot build druntime's gc.d with -debug=INVARIANT, bad @nogc inference?

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13113

Kenji Hara  changed:

   What|Removed |Added

   Severity|major   |regression

--- Comment #9 from Kenji Hara  ---
(In reply to Rainer Schuetze from comment #8)
> > So, the original issue is not a compiler regression. It was introduced by 
> > druntime change in Gcx class invariant code.
> 
> I cannot test the current gc.d code with dmd 2.065 because of other changes,
> but the reduced test case works with that version. Isn't this a regression
> for user code, too?

OK... make sense.

So, I'd propose that direct invariant calls in constructor and destructor
should bypass attribute enforcement. 

https://github.com/D-Programming-Language/dmd/pull/3775

Of course it is debatable behavior, but attribute enforcement does not work _at
all_ on virtual invariant calls in normal member functions, so the change
itself would not make things much worse.

--


[Issue 12762] Missing documentation for std.range.SearchPolicy.linear

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12762

--- Comment #2 from hst...@quickfur.ath.cx ---
P.S. Just for the record, here's how to build the docs:
1) git clone the dlang.org repo from github, say into /path/to/d/dlang.org
(assuming phobos lives in /path/to/d/phobos)
2) cd /path/to/d/dlang.org ; make -f posix.mak html  # this creates html and
css files in /path/to/d/dlang.org/web
3) cp -rp web ../  # copy docs to /path/to/d/web, just because that's where the
phobos makefile expects it to be
4) cd ../phobos ; make -f posix.mak html  # this will generate the phobos docs
into /path/to/d/web
5) copy /path/to/d/web to your web folder and point your browser there.

--


[Issue 12762] Missing documentation for std.range.SearchPolicy.linear

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12762

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |WORKSFORME

--- Comment #1 from hst...@quickfur.ath.cx ---
Actually, this is because dlang.org hasn't been updated with the latest Phobos
docs yet. I just built the Phobos docs from git HEAD locally, and 'linear' is
properly documented as expected. Probably this disparity will be reconciled
when 2.066 is released. :)

--


[Issue 13109] -run and -lib dmd flags conflict

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13109

--- Comment #3 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/f9d90b0bfe7a4c92dc4f684c5324ee6bdd7097d9
Merge pull request #3751 from lionello/fix13109

Issue 13109 - Show error on conflicting args -lib and -run

--


[Issue 13082] Spurious error message with failed call to class ctor

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13082

--- Comment #3 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/fb2c3b640eb4ea06e7d8874c3dec5bdc6c213727
Merge pull request #3734 from 9rnsr/fix13082

Issue 13082 - Spurious error message with failed call to class ctor

--


[Issue 7068] copying array of pointers calls memset instead of memcpy with -d

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=7068

--- Comment #3 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/a694824566a027308c3a32c8bf9c9bc7bc9f84ea
Merge pull request #3746 from Safety0ff/test7068

Add regression test for bug 7068.

--


[Issue 13127] Cannot deduce function with int[][] argument and "in" parameter

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13127

--- Comment #4 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/32c6023151021798cce0c33f447ed6b2c11cae50
Merge pull request #3763 from 9rnsr/fix13127

[REG2.066a] Issue 13127 - Cannot deduce function with int[][] argument and "in"
parameter

--


[Issue 11066] Spurious warning 'statement is not reachable' with -profile

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11066

--- Comment #5 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/d30cd0004d94d23c3880492f85f859b999618082
Merge pull request #3737 from 9rnsr/fix11066

Issue 11066 - Spurious warning 'statement is not reachable' with -profile

--


[Issue 13131] [2.066-b3] dmd: glue.c:1492: unsigned int totym(Type*): Assertion `0' failed.

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13131

--- Comment #4 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/b18fb12450211a6570c9f1a0710438570e1cdfeb
Merge pull request #3764 from 9rnsr/fix13131

Issue 13131 - [2.066-b3] dmd: glue.c:1492: unsigned int totym(Type*): Assertion
`0' failed.

--


[Issue 13135] IFTI fails on partially qualified argument in some cases

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13135

Kenji Hara  changed:

   What|Removed |Added

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

--- Comment #1 from Kenji Hara  ---
(In reply to Denis Shelomovskij from comment #0)
> This code should compile:
> ---
> alias A = int[];
> 
> void f(T)(const(T), const(T)*) { }
> 
> void main()
> {
> A a;
> f!A(a, &a); // ok
> f(a, &a); // fails
> }
> ---
> main.d(9): Error: template main.f cannot deduce function from argument types
> !()(int[], int[]*), candidates are:
> main.d(3):main.f(T)(const(T), const(T)*)
> ---

It's timely fixed in https://github.com/D-Programming-Language/dmd/pull/3763

--


[Issue 13127] Cannot deduce function with int[][] argument and "in" parameter

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13127

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

https://github.com/D-Programming-Language/dmd/commit/37394d0a44e72ee76c03cbc03b569af4c037d47c
fix Issue 13127 - Cannot deduce function with int[][] argument and "in"
parameter

https://github.com/D-Programming-Language/dmd/commit/1b128e85fe8f8879237dd11c53a865de12f739dc
Merge pull request #3763 from 9rnsr/fix13127

[REG2.066a] Issue 13127 - Cannot deduce function with int[][] argument and "in"
parameter

--


[Issue 13098] std.path functions no longer works with DirEntry

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13098

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

https://github.com/D-Programming-Language/phobos/commit/ec44674a1f988b8028c479577b681c31964f3f77
Merge pull request #2324 from MartinNowak/fix13098

[REG2.066a] Issue 13098 - std.path functions no longer works with DirEntry

https://github.com/D-Programming-Language/phobos/commit/24bdbfb9eb588b19c7e03e9b09c252609249a76b
Merge pull request #2333 from 9rnsr/fix13098

[REG2.066a] Remained fix for issue 13098 - isValidFilename and alias this

--


[Issue 4144] Better line number of semicolon expected errors

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=4144

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--


[Issue 13138] add peek/poke as compiler intrinsics

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13138

--- Comment #1 from Walter Bright  ---
https://github.com/D-Programming-Language/druntime/pull/892
https://github.com/D-Programming-Language/dmd/pull/3773

--


[Issue 13138] New: add peek/poke as compiler intrinsics

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13138

  Issue ID: 13138
   Summary: add peek/poke as compiler intrinsics
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: bugzi...@digitalmars.com

in order to support volatile access for memory mapped I/O.

--


[Issue 13060] @nogc reading an associative array

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13060

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--


[Issue 13007] Wrong x86 code: long negate

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13007

safety0ff.bugz  changed:

   What|Removed |Added

   Keywords||wrong-code
 CC||safety0ff.b...@gmail.com

--


[Issue 13117] Executable size of hello world explodes from 472K to 2.7M

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13117

Martin Nowak  changed:

   What|Removed |Added

 CC||c...@dawg.eu

--- Comment #6 from Martin Nowak  ---
Only happens with ld.bfd (my version is 2.23.2). For some reason the output
file contains a single RWE segment with .text and .bss.
This also only happens with the libphobos2.a of the distributed binary. I
cannot reproduce the issue when building libphobos2.a myself.

--


[Issue 13098] std.path functions no longer works with DirEntry

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13098

Kenji Hara  changed:

   What|Removed |Added

 Status|REOPENED|RESOLVED
 Resolution|--- |FIXED

--


[Issue 13098] std.path functions no longer works with DirEntry

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13098

--- 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/35f1c347be326f6ac19118fd2b30f4eef5d76264
Remained fix for issue 13098 - isValidFilename and alias this

https://github.com/D-Programming-Language/phobos/commit/8e9a7fea1f5a98bef61b9e97c4b8e09d141082c5
Merge pull request #2333 from 9rnsr/fix13098

[REG2.066a] Remained fix for issue 13098 - isValidFilename and alias this

--


[Issue 13023] optimizer produces wrong code for comparision and division of ulong

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13023

safety0ff.bugz  changed:

   What|Removed |Added

 CC||safety0ff.b...@gmail.com

--- Comment #1 from safety0ff.bugz  ---
This looks like another REX issue, dmd is comparing 4 bytes instead of 8
against zero. The lower 4 bytes of (1UL<<32)*2/2 are all zero.

--


[Issue 13101] Cherry-picks for v2.066.0-b4

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13101

Andrew Edwards  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |WONTFIX

--- Comment #6 from Andrew Edwards  ---
B4 binaries prepared and uploaded to ftp.digitalmars.com.

--


[Issue 13137] New: Cherry-picks for v2.066.0-b5

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13137

  Issue ID: 13137
   Summary: Cherry-picks for v2.066.0-b5
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: critical
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: edwards...@gmail.com

Identify all regression fixes to be cherry-picked for v2.066.0-b5.

--


[Issue 13136] Optimize double lookup from if (v in assocArray) { return assocArray[v]; }

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13136

bearophile_h...@eml.cc changed:

   What|Removed |Added

 CC||bearophile_h...@eml.cc

--- Comment #1 from bearophile_h...@eml.cc ---
(In reply to Mark Isaacson from comment #0)

> He suggested that I post an enhancement request to make these compile to
> equivalent code.

Note that LDC already performs this optimization.

--


[Issue 13136] New: Optimize double lookup from if (v in assocArray) { return assocArray[v]; }

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13136

  Issue ID: 13136
   Summary: Optimize double lookup from if (v in assocArray) {
return assocArray[v]; }
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: marki...@umich.edu

Andrei just informed me that I was wrong in assuming that the compiler would
optimize out the double lookup performed by:

if (v in assocArray) { return assocArray[v]; }

And that I should instead use:

if (auto valuePtr = v in assocArray) { return *valuePtr; }

He suggested that I post an enhancement request to make these compile to
equivalent code. Personally I'm a fan of the former approach as I find it to be
a bit cleaner.

--


[Issue 13131] [2.066-b3] dmd: glue.c:1492: unsigned int totym(Type*): Assertion `0' failed.

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13131

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

https://github.com/D-Programming-Language/dmd/commit/1bf1759a887faf366d2d3ba3f7d6e3f22d0a36a6
fix Issue 13131 - [2.066-b3] dmd: glue.c:1492: unsigned int totym(Type*):
Assertion `0' failed.

https://github.com/D-Programming-Language/dmd/commit/433e4d73663fa49a3ef5d192a753a982bd1e98e1
Merge pull request #3764 from 9rnsr/fix13131

Issue 13131 - [2.066-b3] dmd: glue.c:1492: unsigned int totym(Type*): Assertion
`0' failed.

--


[Issue 13129] Equality between compatible but differently typed associative arrays

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13129

--- Comment #3 from hst...@quickfur.ath.cx ---
I know, I'm just saying, don't expect it to be fixed anytime soon. It's a bit
sad for me, esp. since the last time I tried to implement a library AA, this is
already supported. :-/

--


[Issue 13129] Equality between compatible but differently typed associative arrays

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13129

--- Comment #2 from bearophile_h...@eml.cc ---
(In reply to hsteoh from comment #1)
> I don't see this fixed anytime in the near future. :-(

This is a low-priority enhancement request.

--


[Issue 12754] MAC link error for template to static value

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12754

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--


[Issue 2043] Closure outer variables in nested blocks are not allocated/instantiated correctly.

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=2043

Artem Borisovskiy  changed:

   What|Removed |Added

 CC||kolo...@bk.ru
   Severity|normal  |major

--- Comment #9 from Artem Borisovskiy  ---
I write a simple app that reads a binary log file, decrypts the messages in
parrallel and prints them when all the decrypting threads are finished. Here's
a piece of my code:

--
auto workers = new ThreadGroup;
int i;
foreach (group; logEntries.chunks(averageChunkSize)) () {
auto data = group;
auto ii = i;
auto workerThread = new Thread(
{
writefln("[%s] %s", ii, data.length);
});
workers.add(workerThread);
workerThread.start;
++i;
}();
workers.joinAll;
--

As you can see, I tried to use hack from the code above, but it didn't help
until I created "data" and "ii" variables. Just using "i" and "group" gives
wrong results, just as described by Bruno. The same code works perfectly in
Java, and it should in D, because it's the way closures work.

Please, fix this bug, it's real PITA and it's 6 years old after all.

--


[Issue 13135] New: IFTI fails on partially qualified argument in some cases

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13135

  Issue ID: 13135
   Summary: IFTI fails on partially qualified argument in some
cases
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Keywords: rejects-valid
  Severity: normal
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: verylonglogin@gmail.com

This code should compile:
---
alias A = int[];

void f(T)(const(T), const(T)*) { }

void main()
{
A a;
f!A(a, &a); // ok
f(a, &a); // fails
}
---
main.d(9): Error: template main.f cannot deduce function from argument types
!()(int[], int[]*), candidates are:
main.d(3):main.f(T)(const(T), const(T)*)
---

--


[Issue 12379] Add toFile function which writes its first argument to a file

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12379

Vladimir Panteleev  changed:

   What|Removed |Added

 Depends on||13009

--


[Issue 13009] inout overload conflicts with non-inout when used via alias this

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13009

Vladimir Panteleev  changed:

   What|Removed |Added

 Blocks||12379

--


[Issue 13066] pure core.stdc.stdio.sprintf

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13066

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--- Comment #1 from hst...@quickfur.ath.cx ---
The problem is that the compiler has no way to verify that sprintf is pure. (In
fact, I have doubts whether it is truly pure! You'll be shocked at what C
library implementations do under the hood.)

--


[Issue 13031] `continue` with label causes compiler to think code after loop can be executed

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13031

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--


[Issue 12762] Missing documentation for std.range.SearchPolicy.linear

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12762

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--


[Issue 13023] optimizer produces wrong code for comparision and division of ulong

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13023

hst...@quickfur.ath.cx changed:

   What|Removed |Added

   Keywords||wrong-code
 CC||hst...@quickfur.ath.cx

--


[Issue 13129] Equality between compatible but differently typed associative arrays

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13129

hst...@quickfur.ath.cx changed:

   What|Removed |Added

 CC||hst...@quickfur.ath.cx

--- Comment #1 from hst...@quickfur.ath.cx ---
This doesn't look likely to be fixable until AA's are fully implemented as a
library type. The problem is that the current implementation is keyed on
TypeInfo's, and given two arbitrary TypeInfo's it's not obvious how to
determine whether the underlying types are implicitly convertible to each
other. Maybe there's some obvious way that I missed, but as of now, I don't see
this fixed anytime in the near future. :-(

--


[Issue 13134] New: Lexically first `private` function overload makes all overloads `private`

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13134

  Issue ID: 13134
   Summary: Lexically first `private` function overload makes all
overloads `private`
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Keywords: rejects-valid
  Severity: major
  Priority: P1
 Component: DMD
  Assignee: nob...@puremagic.com
  Reporter: verylonglogin@gmail.com

This code should compile:
---
module foo;

// void f(int,int) { } // uncomment to remove error
private void f(int) { }
void f() { }
---
import foo;

void main()
{
f();
}
---
main.d(5): Error: module main function foo.f is private
---

--


[Issue 11355] Copy through alias this with @disabled this(this)

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11355

Nick Treleaven  changed:

   What|Removed |Added

   Keywords||accepts-invalid

--


[Issue 13025] Tools repository does not build on Ubuntu

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13025

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

https://github.com/D-Programming-Language/druntime/commit/7502b0dc1e03743e725dbbb81e7e187e6f6b34fe
Merge pull request #889 from MartinNowak/fix13025

fix Issue 13025 - Tools repository does not build on Ubuntu

--


[Issue 13114] old opCmp requirement for AA keys should be detected for classes

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13114

--- Comment #4 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/b742abf6321f3fedc11d8c5f87b3b6310695a228
Merge pull request #3757 from 9rnsr/fix13114

Issue 13114 - old opCmp requirement for AA keys should be detected for classes

--


[Issue 12958] core.checkedint.mulu is broken

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12958

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

https://github.com/D-Programming-Language/druntime/commit/e2c9626e0668bdce88a2ec44034bbb1ed1528c61
Merge pull request #890 from klickverbot/fix-checkedint-umul

Fix issue 12958 - core.checkedint.mulu is broken.

--


[Issue 12989] Wrong x86_64 code for delegate return when compiled as lib (-lib)

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12989

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

https://github.com/D-Programming-Language/dmd/commit/cf55d684e39e959e449c02258d945225d56063b8
Merge pull request #3735 from WalterBright/fix12989

fix Issue 12989 - Wrong x86_64 code for delegate return when compiled as...

https://github.com/D-Programming-Language/dmd/commit/e7c1ba5a75d09945bd3be3cbe185e816a7fd6283
Merge pull request #3739 from WalterBright/fix12989-2

2nd try at fix Issue 12989

--


[Issue 13102] Cannot parse 184467440737095516153.6L

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13102

--- Comment #4 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/1e95e25d7c5f5bdac312139e53594419896238bb
Merge pull request #3753 from WalterBright/fix13102

[REG2.065] Issue 13102 - Cannot parse 184467440737095516153.6L

--


[Issue 13132] ICE on interface AA key

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13132

--- Comment #3 from github-bugzi...@puremagic.com ---
Commit pushed to 2.066 at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/77b9089129f6eeed5093d0a73a63b2915bea07e8
Merge pull request #3762 from 9rnsr/fix13132

[REG2.066a] Issue 13132 - ICE on interface AA key

--


[Issue 13133] New: Using "git describe --abbrev=0 tag^" to obtain previous dmd may identify incorrect version

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13133

  Issue ID: 13133
   Summary: Using "git describe --abbrev=0 tag^" to obtain
previous dmd may identify incorrect version
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: critical
  Priority: P1
 Component: installer
  Assignee: nob...@puremagic.com
  Reporter: edwards...@gmail.com

If a repo received zero updates between multiple tags, the previous parent is
considered the last tag receiving update.

e.g., running git describe --abbrev=0 v2.066.0-b3^ on the installer repo yields
v2.066.0-b1 because there were no changes in the branch between b1, b2 and b3. 

Running the same command on the dmd repo however, yields v2.066.0-b2. This
occurs because there were changes between picked after both the b1 and b2 tags.

Need to run this command on the dmd repo or find a better way.

--


[Issue 13101] Cherry-picks for v2.066.0-b4

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13101

--- Comment #5 from Andrew Edwards  ---
Cherry-picks for this B4 submitted via the following pull requests:

https://github.com/D-Programming-Language/dmd/pull/3765
https://github.com/D-Programming-Language/druntime/pull/891
https://github.com/D-Programming-Language/installer/pull/96

--


[Issue 11946] "need 'this' to access member" when passing field to template parameter

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11946

--- Comment #45 from Kenji Hara  ---
(In reply to timon.gehr from comment #44)
> For one thing, what if I want to make some members of my template scope static
> and not others?
> 
> class C{
> int x;
> template T(alias a){
> int foo(){ return x; }
> static int bar(int y){ return a(y); }
> }
> }
> 
> Just because I don't want bar to be a member function of class C, with the
> new behaviour I now _also_ disable local instantiation. What is this?

foo will become member function, and bar will become static member function.

void main()
{
C c = new C();
c.x = 5;
static int g(int n) { return n*10; }
assert(c.T!g.foo() == 5);   // foo is member function
assert(C.T!g.bar(2) == 20); // bar is static member function
}

--


[Issue 5909] Allow implicit conversion of hex strings to immutable(ubyte)[] and immutable(ubyte[N]) or turn them into ubyte array literals

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=5909

bearophile_h...@eml.cc changed:

   What|Removed |Added

Summary|Allow implicit conversion   |Allow implicit conversion
   |of hex strings to   |of hex strings to
   |immutable(ubyte)[] and  |immutable(ubyte)[] and
   |immutable(ubyte[N]) |immutable(ubyte[N]) or turn
   ||them into ubyte array
   ||literals

--


[Issue 11946] "need 'this' to access member" when passing field to template parameter

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11946

timon.g...@gmx.ch changed:

   What|Removed |Added

 CC||timon.g...@gmx.ch

--- Comment #44 from timon.g...@gmx.ch ---
(In reply to Kenji Hara from comment #21)
> (In reply to comment #20)
> > (In reply to comment #19)
> > > Maybe you're misunderstanding the effect of 'static' attribute.
> > > As far as I know, it means that:
> > 
> > I think I understand how it works now. But I don't think this is how it 
> > SHOULD
> > work, because it is not intuitive. No other programming language does this, 
> > and
> > no one expects it to act like this. So I think it is a limitation imposed by
> > implementation detail that needs to be fixed.
> 
> I think it is enough reasonable definition because:
> 1. Currently dmd works that way.

That's basically diametrally opposed to how such things should be argued.

> 2. It is consistent definition and allow such the code in comment#1.
> ...

No, it is not a "consistent" definition, see below. Also, the code in comment#1
is ugly.

> Anyway, can you agree that the OP code needs fixup with 2.065 and this issue
> should me marked as INVALID?

I don't think this issue is invalid.

(In reply to Kenji Hara from comment #43)
> (In reply to Walter Bright from comment #41)
> > But D already has the notion of doing a "local instantiation" of a global
> > template, if an alias parameter is a local symbol - see hasNestedArgs().
> 
> Right, but if an instantiation is determined to "local instantiation",
> compiler cannot "unlocalize" it automatically.
> 
> ---
> To me current behavior is solid designed and more useful than old one.
> ...

I'm sorry, but the current behaviour is an ugly patchwork.
Even if there is value in explicit 'unlocalization' (which I am not convinced
of), introducing/moving around subtle and completely ad-hoc distinctions
barring any sound motivation like that is not going to fly. For one thing, what
if I want to make some members of my template scope static and not others?

class C{
int x;
template T(alias a){
int foo(){ return x; }
static int bar(int y){ return a(y); }
}
}

Just because I don't want bar to be a member function of class C, with the new
behaviour I now _also_ disable local instantiation. What is this?

I also think that 'mangleof' shouldn't influence the design of this feature in
the slightest, forward references need an orthogonal and well-founded design
anyway.

--


[Issue 13113] cannot build druntime's gc.d with -debug=INVARIANT, bad @nogc inference?

2014-07-15 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=13113

--- Comment #8 from Rainer Schuetze  ---
> So, the original issue is not a compiler regression. It was introduced by 
> druntime change in Gcx class invariant code.

I cannot test the current gc.d code with dmd 2.065 because of other changes,
but the reduced test case works with that version. Isn't this a regression for
user code, too?

--