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

Re: Bug#303725: specter: FTBFS (amd64/gcc-4.0): syntax error before '{' token



On Fri, Apr 08, 2005 at 07:23:52PM +0200, Verdan wrote:
> Hello
> 
> > With the attached patch 'specter' can be compiled
> > on amd64 using gcc-4.0.
> 
> It's not so easy. It was done that way to allow specter compile on gcc
> 2.95. This patch makes it impossible, so I hesitate to apply it.

How is it relevant to the Debian package ?

> Moreover fourth version of gcc is really experimental, and if I had to
> choose specter compiling on 4 or 2.95 version I would choose 2.95.
> For telling truth I don't know what to do now; upstream doesn't aprove
> this patch and won't include it in 1.4pre2 version of specter.
> I consider setting ,,wontfix'' tag.
> What do You think about that ?

Debian packages are not required to build with gcc 2.95.
They are not required either to build with gcc 4.0 for sarge, but will
be for etch. It is a better policy to be proactive than to wait until 
problems do happen.

Moreover fixing this bug means fixing compilation with gcc-4.0, not 
applying the patch provided by the submitter. If the patch has issues
you can reject it, and work with the submitter to write a better one.

Furthermore, there is no technical reason why the patch cannot work with
both 4.0 and 2.95. At worse a bit of cpp magic will fix that.

In the case at hand you could add a macro ENTRY like

#ifdef __GNUC__ 
#if __GNUC__ >= 4
#define ENTRY(base,name,dat) .base.name.dat = dat
#else
#define ENTRY(base,name,dat) .base.{name.dat = dat}
#endif
#endif

and replace 
.value{.ptr = static_values.if_modified_since }}
by
ENTRY(value,ptr,static_values.if_modified_since)

Cheers,
-- 
Bill. <ballombe@debian.org>

Imagine a large red swirl here.



Reply to: