Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Jun 2011 20:09:40 +0200
From:      Koop Mast <kwm@rainbow-runner.nl>
To:        Rainer Hurling <rhurlin@gwdg.de>
Cc:        ports@freebsd.org
Subject:   Re: math/ggobi: compile error with clang
Message-ID:  <4E038164.2070907@rainbow-runner.nl>
In-Reply-To: <4E037A4A.4000904@gwdg.de>
References:  <4E036F01.2020708@gwdg.de> <4E03725E.7070802@rainbow-runner.nl> <4E037A4A.4000904@gwdg.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On 6/23/2011 19:39 , Rainer Hurling wrote:
> On 23.06.2011 19:05 (UTC+1), Koop Mast wrote:
>> On 6/23/2011 18:51 , Rainer Hurling wrote:
>>> I just discovered, that math/ggobi does not compile with clang, see:
>>>
>>> http://pointyhat.freebsd.org/errorlogs/amd64-errorlogs/e.9-exp.20110616185105/ggobi-2.1.9.log 
>>>
>>>
>>>
>>> It seems, the main error is in 'line control' statement of
>>> src/ggobi-data.c, l.45
>>>
>>> #line 0 "data.gob"
>>> static void ggobi_data_class_init (GGobiDataClass * c) G_GNUC_UNUSED;
>>>
>>> The official cpp online docs on
>>> http://gcc.gnu.org/onlinedocs/cpp/Line-Control.html defines
>>>
>>> #line linenum
>>> linenum is a non-negative decimal integer constant. It specifies the
>>> line number which should be reported for the following line of input.
>>> Subsequent lines are counted from linenum.
>>>
>>> It seems gcc accepts the 0 (zero) as valid, whilst clang produces an
>>> error '#line directive requires a positive integer argument'.
>>>
>>> What is the meaning of line 0 in this context? At line 1 (the first
>>> line in src/data.gob) there is the initiation '%h{' for the whole file
>>> contents. Does 0 mean, take the whole file?
>>>
>>> Would it be correct to change value 0 into 1 (#line 1)? At least, gcc
>>> is able to build that and it seems to work fine.
>>>
>>> My system is compiled with gcc, so it would be nice, if someone would
>>> give it a try with clang.
>>>
>>> Many thanks in advance,
>>> Rainer Hurling
>>
>> I had the same problem with devel/gob2 ages ago. This following is the
>> solution I settled on. I don't know if this is correct or not but it
>> seems to work fine.
>> http://www.freebsd.org/cgi/cvsweb.cgi/~checkout~/ports/devel/gob2/files/patch-src_out.c?rev=1.1;content-type=text%2Fplain 
>>
>
> Koop, many thanks for the fast reaction. This is exactly what I did 
> (=changing 0 in 1), gcc accepted that and until now it seems to work.
>
> Does anybody knows if changing 0 into 1 is ok in this context?
>
> I am not able to test, if this works with clang. If someone is willing 
> to try, there is a diff attached.
>
> Rainer
>
>> -Koop
No port revision bump is needed here.

-Koop



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4E038164.2070907>