[Issue 15177] New: mixin + traits issue with 2.069 beta 1

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15177

  Issue ID: 15177
   Summary: mixin + traits issue with 2.069 beta 1
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: tri...@katamail.com

Created attachment 1555
  --> https://issues.dlang.org/attachment.cgi?id=1555=edit
Source code. Test it running 'dub'.

I get a strange error with dmd 2.069 b1.
I can't understand what happen exactly but apparently traits allMember return
an unrelated symbol.

I reduced code using dustmite and manually. 

Attached code compile for me using dmd 2.068 on linux x64. 

Using dmd 2.069 b1 it fails:
source/tests/utils.d-mixin-13(13): Error: undefined identifier
'_D32TypeInfo_S7asserts12AssertResult6__initZ'

--


[Issue 12558] try/catch allows implicit catching of Errors without specifying any Exception type

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12558

--- Comment #12 from Andrej Mitrovic  ---
I'll recreate the pull today or tomorrow.

I'll do the same for the other stale pulls of mine in the coming days.

--


[Issue 15176] [REG2.069.0-b1] ICE(glue.c):separate compilation with -inline crash in glue.c

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15176

Kenji Hara  changed:

   What|Removed |Added

   Keywords||pull
   Hardware|x86 |All
Summary|[REG2.069b1]|[REG2.069.0-b1]
   |ICE(glue.c):separate|ICE(glue.c):separate
   |compilation with -inline|compilation with -inline
   |crash in glue.c |crash in glue.c
 OS|Windows |All

--- Comment #2 from Kenji Hara  ---
https://github.com/D-Programming-Language/dmd/pull/5170

--


[Issue 7066] You can redefine .init and .stringof without error

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=7066

--- Comment #8 from Sobirari Muhomori  ---
(In reply to timon.gehr from comment #6)
> It would be better to have a specific feature here though. E.g. 
> 
> struct S{ @disable init; }

struct S{ @disable void init(); } ?

--


[Issue 15178] New: "Try D" widget on homepage mangles Unicode

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15178

  Issue ID: 15178
   Summary: "Try D" widget on homepage mangles Unicode
   Product: D
   Version: D2
  Hardware: x86
OS: Windows
Status: NEW
  Severity: normal
  Priority: P1
 Component: dlang.org
  Assignee: nob...@puremagic.com
  Reporter: drthing...@msn.com

If I run this sample on the websites "Try D" widget:

// Sort lines
import std.stdio;
import std.array;
import std.algorithm;

void main()
{
stdin
.byLine(KeepTerminator.yes)
.map!(a => a.idup)
.array
.sort
.copy(stdout.lockingTextWriter());
}

with this data:

fish
こんにちは
学生
Pūkeko
salami
Tent
Patrick
Python

I get the following:

P\u016bkeko
Patrick
Python
Tent
\u3053\u3093\u306b\u3061\u306f
\u5b66\u751f
fish
salami

--


[Issue 7066] You can redefine .init and .stringof without error

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=7066

Sobirari Muhomori  changed:

   What|Removed |Added

   See Also||https://issues.dlang.org/sh
   ||ow_bug.cgi?id=14237

--


[Issue 14237] Compiler should reject attempts to (re)define .init

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14237

Sobirari Muhomori  changed:

   What|Removed |Added

   See Also||https://issues.dlang.org/sh
   ||ow_bug.cgi?id=7066

--


[Issue 15167] [REG2.069-devel] conflicting error with repeated alias declaration

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15167

--- Comment #5 from Kenji Hara  ---
(In reply to Kenji Hara from comment #3)
> Because today, two different alias declarations aliasing an identical type
> are allowed if they're accessed beyond the import boundaries.

Identical symbol aliases are also allowed via imports. So, I think the
following case would also need to be supported.

int a15167;
alias Var15167 = a15167;
alias Var15167 = a15167;

void f15167() {}
alias Foo15167 = f15167;
alias Func15167 = Foo15167;
alias Func15167 = f15167;

--


[Issue 15177] mixin + traits issue with 2.069 beta 1

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15177

Martin Nowak  changed:

   What|Removed |Added

 CC||c...@dawg.eu
   Severity|enhancement |regression

--


[Issue 14413] Spurious newline in ddoc JSON output for multiple successive line doc comments

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14413

Martin Nowak  changed:

   What|Removed |Added

 CC||c...@dawg.eu

--- Comment #8 from Martin Nowak  ---
Well http://dlang.org/ddoc clearly states

/// This is a one line documentation comment.

/** So is this. */

and

Multiple documentation comments applying to the same declaration are
concatenated.

So whatever method is used to concat multiple comments (and adding a '\n'
between them seems sensible) should be used consistently.

--


[Issue 15176] [REG2.069.0-b1] ICE(glue.c):separate compilation with -inline crash in glue.c

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15176

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

https://github.com/D-Programming-Language/dmd/commit/b8a39668047c89a65c39daf77a9c0be37f1bc1c2
fix Issue 15176 - ICE(glue.c):separate compilation with -inline crash in glue.c

https://github.com/D-Programming-Language/dmd/commit/f09bb06de426cce424968d45a325f9253ce762e0
Merge pull request #5170 from 9rnsr/fix15176

[REG2.069.0-b1] Issue 15176 - ICE(glue.c):separate compilation with -inline
crash in glue.c

--


[Issue 15179] New: Local imports cause outer imports to be excluded from overload set

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15179

  Issue ID: 15179
   Summary: Local imports cause outer imports to be excluded from
overload set
   Product: D
   Version: D2
  Hardware: x86
OS: Windows
Status: NEW
  Severity: regression
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: jesse.k.phillip...@gmail.com

This very basic program built with 2.067 and does not compile with 2.068.2:




import std.conv;

void main() {
import core.time;
"7".to!uint;
}
-

test.d(5): Error: template core.time.to cannot deduce function from argument
types !(uint)(string), candidates are:
C:\opt\dmd\windows\bin\..\..\src\druntime\import\core\time.d(1934):   
core.time.to(string units, T, D)(D td) if (is
(_Unqual!D == TickDuration) && (units == "seconds" || units == "msecs" || units
== "usecs" || units == "hnsecs" || units
 == "nsecs"))

--


[Issue 15167] [REG2.069-devel] conflicting error with repeated alias declaration

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15167

--- Comment #7 from Walter Bright  ---
(In reply to Kenji Hara from comment #5)
> (In reply to Kenji Hara from comment #3)
> > Because today, two different alias declarations aliasing an identical type
> > are allowed if they're accessed beyond the import boundaries.
> 
> Identical symbol aliases are also allowed via imports.

That's right, and that must be supported, because one doesn't necessarily
control the declarations in imports.

> So, I think the
> following case would also need to be supported.
> 
> int a15167;
> alias Var15167 = a15167;
> alias Var15167 = a15167;
> 
> void f15167() {}
> alias Foo15167 = f15167;
> alias Func15167 = Foo15167;
> alias Func15167 = f15167;

I don't believe that follows, and I can't think of a valid use case for it that
doesn't look like a bug. Note that one does always control the declarations
within a module, so there's no reason to allow this.

--


[Issue 15167] [REG2.069-devel] conflicting error with repeated alias declaration

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15167

--- Comment #6 from Kenji Hara  ---
(In reply to Martin Nowak from comment #0)
> version (X86_64)
> alias ulong CARD64;
> 
> static if (true)
> alias ulong CARD64;

@Martin Is there any reasons that you cannot remove the alias repetition?
Currently any identical aliases of unoverloadable entities (type, and
unoverloadable symbols - variable, module, package, import, template and
instance) just always conflict in a scope.

--


[Issue 15167] [REG2.069-devel] conflicting error with repeated alias declaration

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15167

--- Comment #8 from Kenji Hara  ---
(In reply to Walter Bright from comment #7)
> Note that one does always control the
> declarations within a module, so there's no reason to allow this.

Make sense to me. I'll close my PR, and wait the answer for my comment #6
question.

--


[Issue 15179] Local imports cause outer imports to be excluded from overload set

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15179

Kenji Hara  changed:

   What|Removed |Added

  Component|dmd |druntime
   Hardware|x86 |All
 OS|Windows |All

--- Comment #1 from Kenji Hara  ---
This is caused by druntime change.

1. Local import does not make overload sets with the symbols come from outer
imports. About that there's no specification and implementation change in
2.068.

2. In 2.068, a free function 'to' is added to core.time module.

https://github.com/D-Programming-Language/druntime/pull/1190

In the test code, it's hiding std.conv.to function and compilation fails.

--


[Issue 15177] [REG2.069.0-b1] mixin + traits issue with 2.069 beta 1

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15177

Kenji Hara  changed:

   What|Removed |Added

   Keywords||pull, rejects-valid
   Hardware|x86_64  |All
Summary|mixin + traits issue with   |[REG2.069.0-b1] mixin +
   |2.069 beta 1|traits issue with 2.069
   ||beta 1
 OS|Linux   |All

--- Comment #1 from Kenji Hara  ---
https://github.com/D-Programming-Language/dmd/pull/5172

--


[Issue 15179] Local imports cause outer imports to be excluded from overload set

2015-10-08 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15179

Steven Schveighoffer  changed:

   What|Removed |Added

 CC||schvei...@yahoo.com

--- Comment #2 from Steven Schveighoffer  ---
See my comments in the forum. I feel like this is really an issue that should
be fixed in the compiler.

http://forum.dlang.org/post/mv7dla$ib1$1...@digitalmars.com

--