Bug#841316: gcc: the last 6.2.0-7 broke the virtualbox build

2016-10-19 Thread Matthias Klose
clone 841316 -1
reassign -1 src:virtualbox
retitle -1 invalid code in virtualbox sources
severity 841316 important
forwarded 841316 https://gcc.gnu.org/PR78039
forcemerge 841292 841316
thanks

This code will be rejected with GCC 7; there is still discussion upstream how
much to revert in this backport to GCC 6.



Bug#841316: gcc: the last 6.2.0-7 broke the virtualbox build

2016-10-19 Thread James Cowgill
Hi,

On Wed, 19 Oct 2016 14:47:48 + (UTC) Gianfranco Costamagna
 wrote:
> Source: gcc
> Version: 6.2.0-7
> Severity: serious
> 
> As said, I built virtualbox correctly with 6.2.0-6 and then uploaded on 
> unstable.
> The new gcc 6.2.0-7 broke the build with the following error:
[...]
> /usr/include/x86_64-linux-gnu/sys/inotify.h:34:13: error: flexible array 
> member 'inotify_event::name' not at end of 'struct InotifyEventWithName'

Relevant parts:

cdefs.h
---
# define __flexarr  []

inotify.h

/* Structure describing an inotify event.  */
struct inotify_event
{
  int wd;   /* Watch descriptor.  */
  uint32_t mask;/* Watch mask.  */
  uint32_t cookie;  /* Cookie to synchronize two events.  */
  uint32_t len; /* Length (including NULs) of name.  */
  char name __flexarr;  /* Name.  */
};

HostDnsServiceLinux.cpp:

struct InotifyEventWithName
{
struct inotify_event e;
char name[NAME_MAX];
};

While I do not know if this is a GCC bug or not, doing the above is a
bit dodgy (and prohibited by C99). What is the offset of
InotifyEventWithName::name supposed to be (given sizeof(inotify_event)
is undefined)?

This report has some info about GCC 6 changes in this regard:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69550

Since it's closed as WONTFIX, I expect this will not be changed in gcc.

Thanks,
James




signature.asc
Description: OpenPGP digital signature


Bug#841316: gcc: the last 6.2.0-7 broke the virtualbox build

2016-10-19 Thread Gianfranco Costamagna
Source: gcc
Version: 6.2.0-7
Severity: serious

As said, I built virtualbox correctly with 6.2.0-6 and then uploaded on 
unstable.
The new gcc 6.2.0-7 broke the build with the following error:


kmk_builtin_rm -f -- /«PKGBUILDDIR»/out/obj/VBoxVMM/dtrace/dtrace/VBoxVMM.h.dep 
/«PKGBUILDDIR»/out/obj/VBoxVMM/dtrace/dtrace/VBoxVMM.h
/«PKGBUILDDIR»/out/obj/VBoxTpG/VBoxTpG -64 -h --host-64-bit  --ring-3-context 
-o "/«PKGBUILDDIR»/out/obj/VBoxVMM/dtrace/dtrace/VBoxVMM.h" -s 
"/«PKGBUILDDIR»/src/VBox/VMM/VBoxVMM.d"
kBuild: Generating VBoxDD - 
/«PKGBUILDDIR»/out/obj/VBoxDD/dtrace/dtrace/VBoxDD.h from 
/«PKGBUILDDIR»/src/VBox/Devices/build/VBoxDD.d
kmk_builtin_rm -f -- /«PKGBUILDDIR»/out/obj/VBoxDD/dtrace/dtrace/VBoxDD.h.dep 
/«PKGBUILDDIR»/out/obj/VBoxDD/dtrace/dtrace/VBoxDD.h
/«PKGBUILDDIR»/out/obj/VBoxTpG/VBoxTpG -64 -h --host-64-bit  --ring-3-context 
-o "/«PKGBUILDDIR»/out/obj/VBoxDD/dtrace/dtrace/VBoxDD.h" -s 
"/«PKGBUILDDIR»/src/VBox/Devices/build/VBoxDD.d"
VBoxTpG: warning: Please avoid using the type 'unsigned int' for probe 
arguments!
VBoxTpG: warning: Please avoid using the type 'unsigned int' for probe 
arguments!
VBoxTpG: warning: Please avoid using the type 'unsigned int' for probe 
arguments!
VBoxTpG: warning: Please avoid using the type 'unsigned int' for probe 
arguments!
VBoxTpG: warning: Please avoid using the type 'unsigned int' for probe 
arguments!
kBuild: Installing VBoxOGLcrutil => 
/«PKGBUILDDIR»/out/bin/additions/VBoxOGLcrutil.so 
kmk_builtin_install --hard-link-files-when-possible-- 
/«PKGBUILDDIR»/out/obj/VBoxOGLcrutil/VBoxOGLcrutil.so 
/«PKGBUILDDIR»/out/bin/additions/VBoxOGLcrutil.so
kBuild: Linking VBoxOGLerrorspu => 
/«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/VBoxOGLerrorspu.so
kmk_builtin_rm -f -- /«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/VBoxOGLerrorspu.dep 
/«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/VBoxOGLerrorspu.so  
/«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/VBoxOGLerrorspu.map 
gcc -shared-fPIC  -Wl,-z,noexecstack,-z,relro -Wl,--as-needed 
-m64   -o /«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/VBoxOGLerrorspu.so 
-Wl,-soname=VBoxOGLerrorspu.so 
/«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/gen/VBoxOGLgen/errorspu.o 
/«PKGBUILDDIR»/out/obj/VBoxOGLerrorspu/error/errorspu_init.o 
/«PKGBUILDDIR»/out/bin/additions/VBoxOGLcrutil.so   
/«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   
/«PKGBUILDDIR»/out/lib/additions/VBoxGuestR3LibShared.a   
/«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   -lpthread   -lrt   
-lm   -ldl 
kBuild: Linking VBoxOGL => /«PKGBUILDDIR»/out/obj/VBoxOGL/VBoxOGL.so
kmk_builtin_rm -f -- /«PKGBUILDDIR»/out/obj/VBoxOGL/VBoxOGL.dep 
/«PKGBUILDDIR»/out/obj/VBoxOGL/VBoxOGL.so  
/«PKGBUILDDIR»/out/obj/VBoxOGL/VBoxOGL.map 
gcc -shared-fPIC -Wl,-z,nodelete  -Wl,-z,noexecstack,-z,relro 
-Wl,--as-needed -Wl,-e,LibMain -m64   -o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/VBoxOGL.so -Wl,-soname=libGL.so.1 
/«PKGBUILDDIR»/out/obj/VBoxOGL/load.o /«PKGBUILDDIR»/out/obj/VBoxOGL/stub.o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/context.o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/gen/VBoxOGLgen/getprocaddress.o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/gen/VBoxOGLgen/NULLfuncs.o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/gen/VBoxOGLgen/tsfuncs.o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/glx.o /«PKGBUILDDIR»/out/obj/VBoxOGL/xfont.o 
/«PKGBUILDDIR»/out/obj/VBoxOGL/gen/VBoxOGLgen/linux_exports.o 
/«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   
/«PKGBUILDDIR»/out/lib/additions/VBoxGuestR3LibShared.a   
/«PKGBUILDDIR»/out/bin/additions/VBoxOGLcrutil.so   
/«PKGBUILDDIR»/out/lib/additions/VBoxOGLspuload.a   -lXcomposite   -lXdamage   
-lXfixes   -lXext   /«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   
/«PKGBUILDDIR»/out/lib/additions/VBoxGuestR3LibShared.a   
/«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   -lpthread   -lrt   
-lm   -ldl 
/usr/bin/ld: warning: cannot find entry symbol LibMain; defaulting to 
00058030
kBuild: Linking VBoxOGLarrayspu => 
/«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/VBoxOGLarrayspu.so
kmk_builtin_rm -f -- /«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/VBoxOGLarrayspu.dep 
/«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/VBoxOGLarrayspu.so  
/«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/VBoxOGLarrayspu.map 
gcc -shared-fPIC  -Wl,-z,noexecstack,-z,relro -Wl,--as-needed 
-m64   -o /«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/VBoxOGLarrayspu.so 
-Wl,-soname=VBoxOGLarrayspu.so 
/«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/array/arrayspu.o 
/«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/array/arrayspu_config.o 
/«PKGBUILDDIR»/out/obj/VBoxOGLarrayspu/array/arrayspu_init.o 
/«PKGBUILDDIR»/out/bin/additions/VBoxOGLcrutil.so   
/«PKGBUILDDIR»/out/lib/additions/VBoxOGLspuload.a   
/«PKGBUILDDIR»/out/lib/additions/VBoxOGLcrstate.a   
/«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   
/«PKGBUILDDIR»/out/lib/additions/VBoxGuestR3LibShared.a   
/«PKGBUILDDIR»/out/lib/additions/RuntimeGuestR3Shared.a   -lpthread   -lrt   
-lm   -ldl 
kBuild: Linking VBoxOGLpassthroughspu =>