Re: [PATCH] media/i2c: ths8200: fix build failure with gcc 4.5.4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Oct 13, 2013 at 02:55:49PM +0200, Gianluca Gennari wrote:
> Il 13/10/2013 13:16, Russell King - ARM Linux ha scritto:
> > On Sun, Oct 13, 2013 at 12:36:07PM +0200, Gianluca Gennari wrote:
> >> Il 13/10/2013 12:13, Russell King - ARM Linux ha scritto:
> >>> v3.12-rc fails to build with this error:
> >>>
> >>> drivers/media/i2c/ths8200.c:49:2: error: unknown field 'bt' specified in initializer
> >>> drivers/media/i2c/ths8200.c:50:3: error: field name not in record or union initializer
> >>> drivers/media/i2c/ths8200.c:50:3: error: (near initialization for 'ths8200_timings_cap.reserved')
> >>> drivers/media/i2c/ths8200.c:51:3: error: field name not in record or union initializer
> >>> drivers/media/i2c/ths8200.c:51:3: error: (near initialization for 'ths8200_timings_cap.reserved')
> >>> ...
> >>>
> >>> with gcc 4.5.4.  This error was not detected in builds prior to v3.12-rc.
> >>> This patch fixes this.
> >>
> >> Hi Russel,
> >> this error is already fixed by this patch:
> >>
> >> https://patchwork.linuxtv.org/patch/20002/
> >>
> >> that has been already accepted and is queued for kernel 3.12.
> > 
> > It would be a good idea to have the comment updated - given that gcc 4.5.4
> > also has a problem, it's not only a problem for gcc < 4.4.6 as that patch
> > claims.
> > 
> 
> Yep, the fact is that there are 2 different compatibility problems:
> - gcc < 4.4.6 requires additional curly brackets to initialize anonymous
> structs (see v4l2-dv-timings.h);

gcc 4.5.4 also requires that - merely adding the initializer for
.reserved doesn't fix it on this gcc version (it continues to
complain about "unknown field 'bt'").

> - some gcc version requires that structure members are initialized in
> the same order they are defined, even if you specify the member name;
> 
> The second issue is the one you are facing, but I don't know how to
> track it down to a specific gcc version. If you can get the exact
> version number and provide a patch, you're welcome!

The exact version number is gcc 4.5.4.  It's the released 4.5.4 version
built straight from the FSF's gcc-core-4.5.4.tar.bz2.
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux