Thread overview
The build is broken when using gcc 6
Oct 27, 2016
deadalnix
Oct 27, 2016
Stefam Koch
Oct 27, 2016
Stefan Koch
Oct 27, 2016
mogu
Oct 27, 2016
Stefan Koch
Oct 27, 2016
deadalnix
Oct 27, 2016
Stefan Koch
Oct 27, 2016
deadalnix
Oct 28, 2016
Stefan Koch
Oct 27, 2016
H. S. Teoh
October 27, 2016
$ make -f posix.mak
make -C src -f posix.mak
make[1]: Entering directory '/home/deadalnix/d/dmd/src'
no cpu specified, assuming X86
  (CC)  BACK_OBJS  backend/cg87.c
c++ -c -Wno-deprecated -Wstrict-aliasing -fno-exceptions -fno-rtti -D__pascal= -DMARS=1 -DTARGET_LINUX=1 -DDM_TARGET_CPU_X86=1 -m64 -Iroot -Itk -Ibackend -I. -DDMDV2=1 -MMD -MF cg87.deps backend/cg87.c
backend/cg87.c: In function ‘unsigned char loadconst(elem*, int)’:
backend/cg87.c:716:46: error: narrowing conversion of ‘238’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
         {0xEE,0xE8,0xEB,0xE9,0xEA,0xEC,0xED,0};
                                              ^
backend/cg87.c:716:46: error: narrowing conversion of ‘232’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
backend/cg87.c:716:46: error: narrowing conversion of ‘235’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
backend/cg87.c:716:46: error: narrowing conversion of ‘233’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
backend/cg87.c:716:46: error: narrowing conversion of ‘234’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
backend/cg87.c:716:46: error: narrowing conversion of ‘236’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
backend/cg87.c:716:46: error: narrowing conversion of ‘237’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
posix.mak:445: recipe for target 'cg87.o' failed
make[1]: *** [cg87.o] Error 1
make[1]: Leaving directory '/home/deadalnix/d/dmd/src'
posix.mak:8: recipe for target 'all' failed
make: *** [all] Error 2

$ c++ -v
Using built-in specs.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 6.2.0-6' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 6.2.0 20161010 (Debian 6.2.0-6)

You'll ask me, why isn't this going in a bug report ? Well => https://forum.dlang.org/post/zttkvpmlvkujsjdrakkl@forum.dlang.org
October 27, 2016
On Thursday, 27 October 2016 at 02:26:36 UTC, deadalnix wrote:
> $ make -f posix.mak
> make -C src -f posix.mak
> make[1]: Entering directory '/home/deadalnix/d/dmd/src'
> no cpu specified, assuming X86
>   (CC)  BACK_OBJS  backend/cg87.c
> c++ -c -Wno-deprecated -Wstrict-aliasing -fno-exceptions -fno-rtti -D__pascal= -DMARS=1 -DTARGET_LINUX=1 -DDM_TARGET_CPU_X86=1 -m64 -Iroot -Itk -Ibackend -I. -DDMDV2=1 -MMD -MF cg87.deps backend/cg87.c
> backend/cg87.c: In function ‘unsigned char loadconst(elem*, int)’:
> backend/cg87.c:716:46: error: narrowing conversion of ‘238’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
>          {0xEE,0xE8,0xEB,0xE9,0xEA,0xEC,0xED,0};
>                                               ^
> backend/cg87.c:716:46: error: narrowing conversion of ‘232’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
> backend/cg87.c:716:46: error: narrowing conversion of ‘235’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
> backend/cg87.c:716:46: error: narrowing conversion of ‘233’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
> backend/cg87.c:716:46: error: narrowing conversion of ‘234’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
> backend/cg87.c:716:46: error: narrowing conversion of ‘236’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
> backend/cg87.c:716:46: error: narrowing conversion of ‘237’ from ‘int’ to ‘char’ inside { } [-Wnarrowing]
> posix.mak:445: recipe for target 'cg87.o' failed
> make[1]: *** [cg87.o] Error 1
> make[1]: Leaving directory '/home/deadalnix/d/dmd/src'
> posix.mak:8: recipe for target 'all' failed
> make: *** [all] Error 2
>
> $ c++ -v
> Using built-in specs.
> COLLECT_GCC=c++
> COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/6/lto-wrapper
> Target: x86_64-linux-gnu
> Configured with: ../src/configure -v --with-pkgversion='Debian 6.2.0-6' --with-bugurl=file:///usr/share/doc/gcc-6/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-6 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-6-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-6-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-6-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
> Thread model: posix
> gcc version 6.2.0 20161010 (Debian 6.2.0-6)
>
> You'll ask me, why isn't this going in a bug report ? Well => https://forum.dlang.org/post/zttkvpmlvkujsjdrakkl@forum.dlang.org

Trivial.
Fix is comeing.
October 27, 2016
On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:

> Trivial.
> Fix is comeing.

Okay it was less trivial then it should have been.
Great job gcc.
October 27, 2016
On Thursday, 27 October 2016 at 04:33:30 UTC, Stefan Koch wrote:
> On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:
>
>> Trivial.
>> Fix is comeing.
>
> Okay it was less trivial then it should have been.
> Great job gcc.

-Wno-narrowing does not cover all g++ tasks.
October 27, 2016
On Thursday, 27 October 2016 at 04:39:03 UTC, mogu wrote:
> On Thursday, 27 October 2016 at 04:33:30 UTC, Stefan Koch wrote:
>> On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:
>>
>>> Trivial.
>>> Fix is comeing.
>>
>> Okay it was less trivial then it should have been.
>> Great job gcc.
>
> -Wno-narrowing does not cover all g++ tasks.

It does not need to, I fixed it properly.
October 26, 2016
On Thu, Oct 27, 2016 at 04:33:30AM +0000, Stefan Koch via Digitalmars-d wrote:
> On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:
> 
> > Trivial.
> > Fix is comeing.
> 
> Okay it was less trivial then it should have been.
> Great job gcc.

I complained about this a few months ago and was basically told to suck it up and go away. Glad to see I wasn't the idiot I was told I was.

Lately I found out about a more reliable way to detect gcc version:

	gcc -dumpversion

This should be much easier to parse, and much more reliable to test, than trying to parse the output of `gcc --version` from inside a makefile.


T

-- 
If it tastes good, it's probably bad for you.
October 27, 2016
On Thursday, 27 October 2016 at 04:41:38 UTC, Stefan Koch wrote:
> On Thursday, 27 October 2016 at 04:39:03 UTC, mogu wrote:
>> On Thursday, 27 October 2016 at 04:33:30 UTC, Stefan Koch wrote:
>>> On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:
>>>
>>>> Trivial.
>>>> Fix is comeing.
>>>
>>> Okay it was less trivial then it should have been.
>>> Great job gcc.
>>
>> -Wno-narrowing does not cover all g++ tasks.
>
> It does not need to, I fixed it properly.

I tested your patch and it looks like it works. You should make a PR.
October 27, 2016
On Thursday, 27 October 2016 at 05:15:26 UTC, deadalnix wrote:
> On Thursday, 27 October 2016 at 04:41:38 UTC, Stefan Koch wrote:
>> On Thursday, 27 October 2016 at 04:39:03 UTC, mogu wrote:
>>> On Thursday, 27 October 2016 at 04:33:30 UTC, Stefan Koch wrote:
>>>> On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:
>>>>
>>>>> Trivial.
>>>>> Fix is comeing.
>>>>
>>>> Okay it was less trivial then it should have been.
>>>> Great job gcc.
>>>
>>> -Wno-narrowing does not cover all g++ tasks.
>>
>> It does not need to, I fixed it properly.
>
> I tested your patch and it looks like it works. You should make a PR.

https://github.com/dlang/dmd/pull/6215
PR is open.
Pending review and merge.
Although if you ask me this is a no-brainer.
October 27, 2016
On Thursday, 27 October 2016 at 05:25:49 UTC, Stefan Koch wrote:
> On Thursday, 27 October 2016 at 05:15:26 UTC, deadalnix wrote:
>> On Thursday, 27 October 2016 at 04:41:38 UTC, Stefan Koch wrote:
>>> On Thursday, 27 October 2016 at 04:39:03 UTC, mogu wrote:
>>>> On Thursday, 27 October 2016 at 04:33:30 UTC, Stefan Koch wrote:
>>>>> On Thursday, 27 October 2016 at 02:36:13 UTC, Stefam Koch wrote:
>>>>>
>>>>>> Trivial.
>>>>>> Fix is comeing.
>>>>>
>>>>> Okay it was less trivial then it should have been.
>>>>> Great job gcc.
>>>>
>>>> -Wno-narrowing does not cover all g++ tasks.
>>>
>>> It does not need to, I fixed it properly.
>>
>> I tested your patch and it looks like it works. You should make a PR.
>
> https://github.com/dlang/dmd/pull/6215
> PR is open.
> Pending review and merge.
> Although if you ask me this is a no-brainer.

It's now merged, thanks Stefan.
October 28, 2016
On Thursday, 27 October 2016 at 23:49:49 UTC, deadalnix wrote:
> On Thursday, 27 October 2016 at 05:25:49 UTC, Stefan Koch wrote:

>> https://github.com/dlang/dmd/pull/6215
>> PR is open.
>> Pending review and merge.
>> Although if you ask me this is a no-brainer.
>
> It's now merged, thanks Stefan.

No problem, when I just saw you replied I feared you had found another issue :)
Glad I could help.