[Issue 18828] [-betterC] helpless error in object.d

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18828

--- Comment #9 from Mike Franklin  ---
A feeble attempt at a fix https://github.com/dlang/druntime/pull/2178

--


[Issue 15388] extern(C++) - typeof(null) should mangle as nullptr_t

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15388

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

   What|Removed |Added

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

--


[Issue 15388] extern(C++) - typeof(null) should mangle as nullptr_t

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=15388

--- Comment #3 from github-bugzi...@puremagic.com ---
Commit pushed to master at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/c38ae836e3ab171a0d543fb3eaf7ff94b199cee4
Fix issue 15388 - extern(C++) - typeof(null) should mangle as nullptr_t

--


[Issue 14536] Calling destroy() on a on an extern(C++) class causes a segfault

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=14536

--- Comment #4 from Manu  ---
I dun a fix: https://github.com/dlang/druntime/pull/2176
Depends on: https://github.com/dlang/dmd/pull/8224

--


[Issue 18761] Page for assumeUnique documentation displays incorrectly

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18761

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

   What|Removed |Added

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

--


[Issue 18761] Page for assumeUnique documentation displays incorrectly

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18761

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

https://github.com/dlang/dlang.org/commit/35d73468d444a81656b45f78247e62ce0bcfc7ee
Fix Issue 18761 - Use HTML to force a newline for DDox's macro processor

--


[Issue 18761] Page for assumeUnique documentation displays incorrectly

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18761

--- Comment #3 from Seb  ---
Fix: https://github.com/dlang/dlang.org/pull/2364

--


[Issue 18761] Page for assumeUnique documentation displays incorrectly

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18761

Seb  changed:

   What|Removed |Added

 Status|RESOLVED|REOPENED
 CC||greensunn...@gmail.com
 Resolution|MOVED   |---

--- Comment #2 from Seb  ---
Actually we can fix this without touching Ddox.

--


[Issue 18843] -deps -unittest causes cataclysmic memory usage

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18843

Seb  changed:

   What|Removed |Added

 CC||greensunn...@gmail.com

--- Comment #1 from Seb  ---
Please see and help out on https://github.com/dlang/dmd/pull/8124

--


[Issue 18828] [-betterC] helpless error in object.d

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18828

--- Comment #8 from Xavier Bigand  ---
dustmite with the --no-redirect option give me the output :
Loading ..\common\opengl_api\arb.d
Loading ..\common\opengl_api\constants.d
Loading ..\common\opengl_api\ext.d
Loading ..\common\opengl_api\functions.d
Loading ..\common\opengl_api\types.d
Loading ..\common\opengl_api\wgl.d
Loading ..\common\opengl_api\wglext.d
Loading ..\common\utils\ctfe.d
Loading ..\opengl32\.dub\dub.json
Loading ..\opengl32\dub.sdl
Loading ..\opengl32\dub.selections.json
Loading ..\opengl32\src\api_entry.d
Loading ..\opengl32\src\dll_entry.d
Loading ..\opengl32\src\forward_initialization.d
None =>
object.Exception@DustMite\dustmite.d(271): Initial test fails

0x00403B9B
0x00459407
0x00459389
0x00459224
0x00441478
0x76DE8484 in BaseThreadInitThunk
0x77E52EC0 in RtlValidSecurityDescriptor
0x77E52E90 in RtlValidSecurityDescriptor
No

--


[Issue 18843] New: -deps -unittest causes cataclysmic memory usage

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18843

  Issue ID: 18843
   Summary: -deps -unittest causes cataclysmic memory usage
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: default_357-l...@yahoo.de

In case you think I'm exaggerating:

echo 'import std.stdio; void main() { writeln("Hello World"); }' > helloworld.d
/usr/bin/time -v dmd -deps -unittest helloworld.d
[...]
User time (seconds): 27.24
[...]
Maximum resident set size (kbytes): 11550624

That's 11 gigabytes rss for Hello World.

The background issue is that -deps -unittest forces DMD to recurse into Phobos
unittests and all their imports, eventually semantically evaluating every
single unittest in Phobos.

Quickfur had a good proposal in https://github.com/dlang/phobos/pull/6159 ,
that may generalize to -deps: only consider files that are explicitly listed on
the command line. That may help.

--


[Issue 18828] [-betterC] helpless error in object.d

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18828

--- Comment #7 from Mike Franklin  ---
The problem is this code in object.d:

void destroy(T)(ref T obj) if (is(T == struct))
{
_destructRecurse(obj);
() @trusted {
auto buf = (cast(ubyte*) &obj)[0 .. T.sizeof];
auto init = cast(ubyte[])typeid(T).initializer();
if (init.ptr is null) // null ptr means initialize to 0s
buf[] = 0;
else
buf[] = init[];
} ();
}

The call to `typeid` needs to return a `TypeInfo` instance.  Is there a way to
get the initializer at compile-time without a runtime call to `typeid`?

--


[Issue 18828] [-betterC] helpless error in object.d

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18828

--- Comment #6 from Seb  ---
> object.Exception@DustMite\dustmite.d(271): Initial test fails (try using 
> --no-redirect for details)

Then use --no-direct (or the tester command in standalone) to see why it
failed.

--


[Issue 18828] [-betterC] helpless error in object.d

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18828

--- Comment #5 from Xavier Bigand  ---
Created attachment 1693
  --> https://issues.dlang.org/attachment.cgi?id=1693&action=edit
Complete project

I tried dustmite with the command line in a git bash window :
dustmite --force -no-redirect .. "dub build 2>&1 | grep -qF 'TypeInfo cannot be
used with -betterC'"

I am getting the error :
object.Exception@DustMite\dustmite.d(271): Initial test fails (try using
--no-redirect for details)

--


[Issue 18761] Page for assumeUnique documentation displays incorrectly

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18761

Simen Kjaeraas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 CC||simen.kja...@gmail.com
 Resolution|--- |MOVED

--- Comment #1 from Simen Kjaeraas  ---
This is an issue in ddox:
https://github.com/rejectedsoftware/ddox/issues/204

--


[Issue 18842] New: Wrong type for pointers to member functions

2018-05-08 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=18842

  Issue ID: 18842
   Summary: Wrong type for pointers to member functions
   Product: D
   Version: D2
  Hardware: All
   URL: http://dlang.org/
OS: All
Status: NEW
  Severity: normal
  Priority: P3
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: ajiesk...@gmail.com

When referencing a non-static member function without using an instance to that
type, the typecheck malfunctions:

import std.stdio;

struct IntPair
{   int a;
int b;

IntPair opBinary(string op)(IntPair other)
{   return IntPair
(   mixin("a " ~ op ~ " other.a"),
mixin("b " ~ op ~ " other.b")
);
}
}

void main()
{   auto val = IntPair(3, 10);

//One would think it works like this, does not compile
//IntPair function(ref IntPair, IntPair) fp = &IntPair.opBinary!"+";
//val.fp(val).writeln;

//this compiles and causes undefined behaviour.
IntPair function(IntPair) fp = &IntPair.opBinary!"+";
fp(val).writeln;

readln;
}

With D, of course you would prefer using lambdas in cases like this, and using
@safe prevents doing this. But I still see no reason why you should be able to
call a member funtion pointer without a member, but not with one.

--