[Issue 17767] Dmd can't link recast.d, Gdc can't compile it and Ldc can perfectly compile it.

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17767

--- Comment #2 from ecstatic.coder  ---
Indeed...

I've downloaded the version on gdcproject.org, but same result... 

$ ./gdc --version

gdc (gdcproject.org 20161225-v2.068.2_gcc6) 6.3.0
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

$ ./gdc -m64 recast.d

recast.d:1:0: internal compiler error: in get_symbol_decl, at d/d-decls.cc:136
 /*

Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.

And couldn't install gdc via your PPA, it says there is not support for
Xenial...

--


[Issue 17767] Dmd can't link recast.d, Gdc can't compile it and Ldc can perfectly compile it.

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17767

Iain Buclaw  changed:

   What|Removed |Added

 CC||ibuc...@gdcproject.org

--- Comment #1 from Iain Buclaw  ---
(In reply to ecstatic.coder from comment #0)
> Created attachment 1655 [details]
> 
> $ gdc --version
> 
> gdc (Ubuntu 5.4.1-2ubuntu1~16.04) 5.4.1 20160904
> Copyright (C) 2015 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> $ gdc -m64 recast.d
> 
> recast.d:1:0: internal compiler error: in toSymbol, at d/d-decls.cc:75
>  /*
>  ^
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See  for instructions.
> 


That function doesn't exist anymore, or even that file.  Care to try a newer
version?

--


[Issue 17769] New: dmd accepts conversion from shared(int)* to int* when value comes from method

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17769

  Issue ID: 17769
   Summary: dmd accepts conversion from shared(int)* to int* when
value comes from method
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Keywords: accepts-invalid
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: ag0ae...@gmail.com


struct S()
{
shared(int)* method() { return ptr; }
shared(int)* ptr;
}

void main()
{
S!() s;
int* foo = s.method(); /* accepted; should be rejected */
}


These variations are correctly rejected:


auto foo = s.method();
int* bar = foo; // rejected as expected
int* baz = s.ptr; // ditto


--


[Issue 17768] Compile time reflection is missing for module/namespace(c++)/mixin names

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17768

Илья Ярошенко  changed:

   What|Removed |Added

   Keywords||C++

--


[Issue 17768] New: Compile time reflection is missing for module/namespace(c++)/mixin names

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17768

  Issue ID: 17768
   Summary: Compile time reflection is missing for
module/namespace(c++)/mixin names
   Product: D
   Version: D2
  Hardware: All
OS: All
Status: NEW
  Severity: normal
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: ilyayaroshe...@gmail.com

Hi,

Could Dlang get something like that please:

__traits(isModule, M)   //for module M;
__traits(isMixinScope, S);  //for mixin Foo S;
__traits(isCppNamespace, N) //for extern(C++, N){}

For module I found ugly and probably not universal workaround:
enum isModule(alias M) = __traits(compiles, { mixin(`import ` ~
fullyQualifiedName!M ~ `;`); });

Current problem is that I need to distinguish С++ namespaces and D mixin
scopes.

(working on automated C++/Cython bindings generator).

Best regards,
Ilya

--


[Issue 17766] Wrong choice of generic mutable/const/immutable methods

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17766

ag0ae...@gmail.com changed:

   What|Removed |Added

   Keywords||wrong-code
 CC||ag0ae...@gmail.com

--


[Issue 17767] Dmd can't link recast.d, Gdc can't compile it and Ldc can perfectly compile it.

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17767

ecstatic.coder  changed:

   What|Removed |Added

Summary|Dmd and Gdc report an   |Dmd can't link recast.d,
   |internal error in the   |Gdc can't compile it and
   |compiler when compiling |Ldc can perfectly compile
   |recast.d, but Ldc can   |it.
   |perfectly compile it.   |

--


[Issue 17767] New: Dmd and Gdc report an internal error in the compiler when compiling recast.d, but Ldc can perfectly compile it.

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17767

  Issue ID: 17767
   Summary: Dmd and Gdc report an internal error in the compiler
when compiling recast.d, but Ldc can perfectly compile
it.
   Product: D
   Version: D2
  Hardware: x86_64
OS: Linux
Status: NEW
  Severity: major
  Priority: P1
 Component: dmd
  Assignee: nob...@puremagic.com
  Reporter: ecstatic.co...@gmail.com

Created attachment 1655
  --> https://issues.dlang.org/attachment.cgi?id=1655=edit
standalone D file which crashes the Dmd and Gdc compilers

Dmd and Gdc report an internal error in the compiler when compiling recast.d,
but Ldc can perfectly compile it.

https://github.com/senselogic/RECAST/blob/master/recast.d

$ dmd --version

DMD64 D Compiler v2.075.1
Copyright (c) 1999-2017 by Digital Mars written by Walter Bright
eric@ENVY17 ~/data/WORK/PROJECT/TOOL/RECAST $ dmd -m64 recast.d
recast.o : Dans la fonction «
_D3std4conv17__T6toImplTAyaTsZ6toImplFNaNbNeskE3std5ascii10LetterCaseZAya » :
recast.d:(.text._D3std4conv17__T6toImplTAyaTsZ6toImplFNaNbNeskE3std5ascii10LetterCaseZAya[_D3std4conv17__T6toImplTAyaTsZ6toImplFNaNbNeskE3std5ascii10LetterCaseZAya]+0x5f)
: référence indéfinie vers «
_D3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6Result
»
recast.o : Dans la fonction «
_D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa
» :
recast.d:(.text._D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa[_D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa]+0xd)
: référence indéfinie vers «
_D3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6Result6lengthMFNaNbNdNiNfZm
»
recast.d:(.text._D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa[_D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa]+0x4f)
: référence indéfinie vers «
_D3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6Result5emptyMFNaNbNdNiNfZb
»
recast.d:(.text._D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa[_D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa]+0x5c)
: référence indéfinie vers «
_D3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6Result5frontMFNaNbNdNiNfZa
»
recast.d:(.text._D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa[_D3std5array96__T5arrayTS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZ5arrayFNaNbNfS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6ResultZAa]+0x9f)
: référence indéfinie vers «
_D3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6Result8popFrontMFNaNbNiNfZv
»
recast.o : Dans la fonction «
_D3std4conv17__T6toImplTAyaTiZ6toImplFNaNbNeikE3std5ascii10LetterCaseZAya » :
recast.d:(.text._D3std4conv17__T6toImplTAyaTiZ6toImplFNaNbNeikE3std5ascii10LetterCaseZAya[_D3std4conv17__T6toImplTAyaTiZ6toImplFNaNbNeikE3std5ascii10LetterCaseZAya]+0x5e)
: référence indéfinie vers «
_D3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZS3std4conv47__T7toCharsVii10TaVE3std5ascii10LetterCasei1TiZ7toCharsFNaNbNiNfiZ6Result
»
recast.o : Dans la fonction «
_D3std4conv17__T6toImplTAyaThZ6toImplFNaNbNehkE3std5ascii10LetterCaseZAya » :
recast.d:(.text._D3std4conv17__T6toImplTAyaThZ6toImplFNaNbNehkE3std5ascii10LetterCaseZAya[_D3std4conv17__T6toImplTAyaThZ6toImplFNaNbNehkE3std5ascii10LetterCaseZAya]+0x60)
: référence indéfinie vers «

[Issue 17762] Cannot compile with clean DMD.

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17762

--- Comment #5 from Vincent  ---
(In reply to Rainer Schuetze from comment #4)
> BTW: I don't think there is an infected Visual D installer anywhere

It was long time ago, maybe 2-3 years. But it doesn't eliminate the fact of
infection. Anyway I don't see any reason to discuss viruses, while REAL REQUEST
was about COMPILATION. Rainer, sources are useless if they are not compillable.
If you have time/wish, please update "build from sources" page, so people can
follow instruction and build add-in w/o any stupid issues. Sources itself is
fine, we just need missed packages.

--


[Issue 17761] dmd 2.075.1 creates object files that can't be linked by ld.bfd

2017-08-20 Thread via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=17761

Ketmar Dark  changed:

   What|Removed |Added

 CC||ket...@ketmar.no-ip.org

--