[Issue 15099] C++ projects depend on D projects?

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15099

--- Comment #1 from Manu  ---
**VS2013, VD 0.3.42

--


[Issue 15098] New: C++ nameslace problems

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15098

  Issue ID: 15098
   Summary: C++ nameslace problems
   Product: D
   Version: D2
  Hardware: x86_64
OS: Windows
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: turkey...@gmail.com

Getting this error a lot:

  Error: namespace ud.kernel.kernel.ud conflicts with import
ud.kernel.kernel.ud at udKernel\src\ud\kernel\kernel.d(3)

This code:

  module ud.kernel.kernel;
  import ud.kernel.component;
  extern(C++, ud):
  class Kernel
  {
...
  }

It seems the problem is that the root of the D namespace is 'ud', but my C++
namespace is also 'ud', and this doesn't seem to be acceptable.

If I remove `ud.` from the D namespace, the errors stop.
I think this is valid code, there are no guarantees that my C++ namespace is
not the same as the root D namespace, infact it seems highly likely to me.

--


[Issue 15098] C++ nameslace problems

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15098

Marco Leise  changed:

   What|Removed |Added

 CC||marco.le...@gmx.de

--- Comment #1 from Marco Leise  ---
I guess one can argue that there is no need to name the D package exactly after
the C++ namespace. Maybe by convention a '_cpp' could always be appended or you
could change the D package name to 'unlimited_detail', because two letter
variable names are shunned upon anyways. Let's see what the compiler devs say
why it is this way.

--


[Issue 14886] [REG2.066] std.parallelism.parallel with large static array seems to hang compile

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14886

--- Comment #7 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/51ecaf8e47c82f41115cc1d59c6ed384e234eb60
fix Issue 14886 - std.parallelism.parallel with large static array seems to
hang compile

Add ArrayLiteralExp.basis for repeated array literal elements.

https://github.com/D-Programming-Language/dmd/commit/a492f916d022698edb025c4b206ad1af75e0913d
Merge pull request #5085 from 9rnsr/fix14886

[REG2.066] Issue 14886 - std.parallelism.parallel with large static array seems
to hang compile

--


[Issue 15097] namespace

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15097

Marco Leise  changed:

   What|Removed |Added

 CC||marco.le...@gmx.de

--- Comment #2 from Marco Leise  ---
Well, you just created an empty namespace

--


[Issue 15099] New: C++ projects depend on D projects?

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15099

  Issue ID: 15099
   Summary: C++ projects depend on D projects?
   Product: D
   Version: D2
  Hardware: x86_64
OS: Windows
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: visuald
  Assignee: nob...@puremagic.com
  Reporter: turkey...@gmail.com

I have started running into cases where I have C++ projects which depend on D
static lib's.
In the solution dependency configuration, I can configure the C++ exe project
to depend on the VisualD project, but that doesn't setup for automatic linkage
of the lib like C++ lib projects.

Is it possible for VisualD static lib projects to automatically link to C++ exe
projects like usual C++ solutions?

It seems that when I build the C++ exe project, even though the solution see's
a dependency on the VD project, it doesn't actually trigger a rebuild of the D
project, I need to manually right-click and build the VD project to cause it to
be built.

--


[Issue 15092] [ICE] Assertion failed: (type->ty != Tstruct || ((TypeStruct *)type)->sym == this), function semantic, file struct.c, line 936.

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15092

Sobirari Muhomori  changed:

   What|Removed |Added

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

--


[Issue 11260] Assertion `type->ty != Tstruct || ((TypeStruct *)type)->sym == this' failed

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11260

Sobirari Muhomori  changed:

   What|Removed |Added

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

--


[Issue 15092] New: [ICE] Assertion failed: (type->ty != Tstruct || ((TypeStruct *)type)->sym == this), function semantic, file struct.c, line 936.

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15092

  Issue ID: 15092
   Summary: [ICE] Assertion failed: (type->ty != Tstruct ||
((TypeStruct *)type)->sym == this), function semantic,
file struct.c, line 936.
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Keywords: ice-on-invalid-code
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: dfj1es...@sneakemail.com

class A
{
struct B
{
}

struct B
{
}
}

Assertion failed: (type->ty != Tstruct || ((TypeStruct *)type)->sym == this),
function semantic, file struct.c, line 936.

--


[Issue 7625] inlining only works with explicit else branch

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=7625

--- Comment #5 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/f5261a2a978831e10a2ff36d3e342770f846dd1b
fix Issue 7625 - inlining only works with explicit else branch

https://github.com/D-Programming-Language/dmd/commit/26bd7451bf69051d7662f807978441cf1eefeb2f
Merge pull request #4919 from WalterBright/fix7625

fix Issue 7625 - inlining only works with explicit else branch

--


[Issue 7625] inlining only works with explicit else branch

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=7625

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

   What|Removed |Added

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

--


[Issue 15096] New: std.range.array cannot be instantiated for pointers to ranges

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15096

  Issue ID: 15096
   Summary: std.range.array cannot be instantiated for pointers to
ranges
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: normal
  Priority: P1
 Component: phobos
  Assignee: nob...@puremagic.com
  Reporter: initrd...@gmail.com

std.range.array throws a compiler error when used with a pointer to an input
range. This is because `isIterable` returns false for pointers to input ranges.

A possible simple fix: in std.range.array's template constraints, change
`isIterable!Range` to `(isIterable!Range || isInputRange!Range)`.
Alternatively, make pointers to input ranges iterable.

Test code:

import std.range;
import std.traits;

struct MyRange {
enum front = 123;
enum empty = true;
void popFront() {}
}

pragma(msg, isInputRange!(MyRange));
pragma(msg, isInputRange!(MyRange*));
pragma(msg, isIterable!(MyRange*));
pragma(msg, (new MyRange()).array);

Output:

$ rdmd -main ~/test.d
true
true
false
/home/col/test.d(14): Error: template std.array.array cannot deduce
function from argument types !()(MyRange*), candidates are:
/usr/include/dmd/phobos/std/array.d(89):   
std.array.array(Range)(Range r) if (isIterable!Range && !isNarrowString!Range
&& !isInfinite!Range)
/usr/include/dmd/phobos/std/array.d(191):   
std.array.array(String)(String str) if (isNarrowString!String)
/home/col/test.d(14):while evaluating pragma(msg, (new
MyRange).array)
Failed: ["dmd", "-main", "-v", "-o-", "/home/col/test.d", "-I/home/col"]

--


[Issue 12233] Attempting to use TypeInfo.init results in a compiler error due to lack of 'this'.

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=12233

Alex Parrill  changed:

   What|Removed |Added

 CC||initrd...@gmail.com

--- Comment #1 from Alex Parrill  ---
Just ran into this with `CommonType!(TypeInfo, TypeInfo)` returning
`const(void)[]`.

--


[Issue 15097] New: namespace

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15097

  Issue ID: 15097
   Summary: namespace
   Product: D
   Version: D2
  Hardware: x86_64
OS: Windows
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: turkey...@gmail.com

--


[Issue 15097] namespace

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15097

Manu  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |INVALID

--- Comment #1 from Manu  ---
Sorry, I pressed enter and the web form decided to submit!

--


[Issue 15093] New: optimize slist_reset

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15093

  Issue ID: 15093
   Summary: optimize slist_reset
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: enhancement
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: c...@dawg.eu

When compiling multilibs a lot of time (sometimes up 8%) is spent in
slist_reset.
We should perform resetting of symbols that are used in another object lazily.
One way to implement this would be to use monotonically increasing the symbol
numbers (Sxtrnum) and checking whether the numer belongs to the curren object
before using a symbol.
Another solution that might already help is to reset the symbols directly after
usage.

--


[Issue 15094] New: __traits(getMember) fails when the source is a struct/class field

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15094

  Issue ID: 15094
   Summary: __traits(getMember) fails when the source is a
struct/class field
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: initrd...@gmail.com

Attempting to use `__traits(getMember)` with a sub-struct/field fails with a
`need 'this'` error.

Example code:


import std.stdio;

struct Foo {
int i;
}

struct Bar {
Foo foo;
}

void main() {
Bar bar;
writeln(__traits(getMember, bar.foo, "i"));
}

Output:

$ rdmd ~/test.d
/home/col/test.d(14): Error: need 'this' for 'i' of type 'int'
Failed: ["dmd", "-v", "-o-", "/home/col/test.d", "-I/home/col"]

It's possible, but annoying, to work around this by storing a local pointer to
the field first.

auto foo = 
writeln(__traits(getMember, foo, "i"));

--


[Issue 15085] std.datetime unittest fail due to missing TZname

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15085

Jonathan M Davis  changed:

   What|Removed |Added

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

--


[Issue 15085] std.datetime unittest fail due to missing TZname

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15085

--- Comment #1 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/e3a239e79a7d0283210ad004260111c480d0fe8d
Fix for issue# 15085: Microsoft changed their timezone names again.

https://github.com/D-Programming-Language/phobos/commit/c5c6400f1b8375a1db696827a9b5933478150795
Merge pull request #3667 from jmdavis/issue15085

Fix for issue# 15085: Microsoft changed their timezone names again.

--


[Issue 15095] Malformed URL in documentation link

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15095

--- Comment #3 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/0bff377c061406bf6bbb63a6e1df010d9f00fb13
fix issue 15095

Add underscores to prevent auto formatting of parameter name "format".

https://github.com/D-Programming-Language/phobos/commit/796771a27f1f12ad8f2d3a2ab66ec5b480c5779d
Merge pull request #3668 from aG0aep6G/15095

fix issue 15095

--


[Issue 15095] Malformed URL in documentation link

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15095

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

   What|Removed |Added

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

--


[Issue 15087] DDoc: Add function attributes section for templates

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15087

Steven Schveighoffer  changed:

   What|Removed |Added

 CC||schvei...@yahoo.com

--- Comment #4 from Steven Schveighoffer  ---
A template's inferred attributes can change with the wind, if something it
calls changes, or something passed changes. This would be a maintenance
nightmare if it's manually updated.

What I would suggest is possibly in examples, the compiler can add an
additional comment when generating ddoc of what attributes were inferred.

In other words, you could put:

foo(a, b, c) // sig...

where the compiler would allow a click on "sig..." to show the full signature
of foo used by this call.

This would also be backwards compatible (albeit confusing)

--


[Issue 15095] Malformed URL in documentation link

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15095

--- Comment #4 from ag0ae...@gmail.com ---
Thanks for reporting, earthfront. The codebase has been fixed. It will take
some time for the fix to make its way to the site, though.

The docs for the current development version
() will be fixed whenever the site is
updated the next time.

The docs for the latest release () will be fixed with
the 2.069 release.

--


[Issue 15095] New: Malformed URL in documentation link

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15095

  Issue ID: 15095
   Summary: Malformed URL in documentation link
   Product: D
   Version: D2
  Hardware: All
OS: Linux
Status: NEW
  Severity: minor
  Priority: P1
 Component: dlang.org
  Assignee: nob...@puremagic.com
  Reporter: earthfront+dlangbugtrac...@gmail.com

Malformed link under the "readf" section of the std.stdio documentation page.

http://dlang.org/phobos/std_stdio.html#.File.readf


It's the second link in that section, italicized: 
http://dlang.org/phobos/std_%3Ci%3Eformat%3C/i%3E.html#formattedRead

Leads to 404 on Chrome under Ubuntu 12.04. 

Perhaps an issue with DDoc? There might be more instances of this hiding.

--


[Issue 15095] Malformed URL in documentation link

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15095

--- Comment #1 from earthfront  ---
First link under that section has the same issue.

--


[Issue 15095] Malformed URL in documentation link

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15095

ag0ae...@gmail.com changed:

   What|Removed |Added

   Keywords||pull
 CC||ag0ae...@gmail.com
   Assignee|nob...@puremagic.com|ag0ae...@gmail.com
 OS|Linux   |All

--- Comment #2 from ag0ae...@gmail.com ---
https://github.com/D-Programming-Language/phobos/pull/3668

--


[Issue 11529] Unclear error message when rvalue is passed as `ref'

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11529

Sobirari Muhomori  changed:

   What|Removed |Added

   Keywords||diagnostic

--


[Issue 15091] Error passing lambda to std.algorithm.sorting.sort

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15091

Sobirari Muhomori  changed:

   What|Removed |Added

   Keywords||diagnostic

--


[Issue 11529] Unclear error message when rvalue is passed as `ref'

2015-09-21 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=11529

--- Comment #2 from Sobirari Muhomori  ---
It's also a problem for functions with many parameters to determine, which
parameter was passed with a wrong argument.

--