Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 Aug 2015 20:22:47 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        Carlos Jacobo Puga Medina <cpm@fbsd.es>, "freebsd-ports@freebsd.org" <freebsd-ports@freebsd.org>
Subject:   Re: lang/tcc unusable
Message-ID:  <55C005D7.3050103@FreeBSD.org>
In-Reply-To: <1438644237.7343.13.camel@fbsd.es>
References:  <1438633579.6572.13.camel@fbsd.es> <55BFD033.8070507@FreeBSD.org> <1438634467.7343.2.camel@fbsd.es> <55BFDCA0.8040006@FreeBSD.org> <1438638022.7343.7.camel@fbsd.es> <55BFEAAA.4070008@FreeBSD.org> <1438644237.7343.13.camel@fbsd.es>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On 08/03/2015 19:23, Carlos Jacobo Puga Medina wrote:
> El lun, 03-08-2015 a las 18:26 -0400, Jung-uk Kim escribió:
>> On 08/03/2015 17:40, Carlos Jacobo Puga Medina wrote:
>>> El lun, 03-08-2015 a las 17:26 -0400, Jung-uk Kim escribió:
>>>> On 08/03/2015 16:41, Carlos Jacobo Puga Medina wrote:
>>>>> El lun, 03-08-2015 a las 16:33 -0400, Jung-uk Kim 
>>>>> escribió:
>>>>> 
>>>>> Hi Jung-uk,
>>>>>> On 08/03/2015 16:26, Carlos Jacobo Puga Medina wrote:
>>>>>>> Hi people,
>>>>>>> 
>>>>>>> Recently I added amd64 support to TinyCC, but I 
>>>>>>> encounter the following problem trying to compile a 
>>>>>>> simple code.
>>>>>>> 
>>>>>>> #include <stdio.h>
>>>>>>> 
>>>>>>> int main(){ printf("hello, world!\n); return 0; }
>>>>>>> 
>>>>>>> % tcc -o hello hello.c In file included from
>>>>>>> hello.c:1: /usr/include/stdio.h:63: error: ';' expected
>>>>>>> (got "va_list")
>>>>>>> 
>>>>>>> I guess that some change introduced in 'stdio.h' causes
>>>>>>> this weird behaviour. Last time that TCC worked fine
>>>>>>> was on FreeBSD 9.1 -RELEASE/i386.
>>>>>>> 
>>>>>>> Also I reported this problem in the tinycc-devel 
>>>>>>> mailing list [1]
>>>>>>> 
>>>>>>> Any thoughts?
>>>>>> 
>>>>>> I haven't tried tcc but '"' is missing for the printf().
>>>>> 
>>>>> Yes, it was a typo here :)
>>>> 
>>>> It seems it's a known tcc bug:
>>>> 
>>>> http://savannah.nongnu.org/bugs/?30966
>>>> 
>>> 
>>> Is there something that we can do about it?
>>> 
>>> Thanks for pointing me, jkim@
>> 
>> It seems there is no easy way to fix this problem without 
>> touching src tree, e.g.,
>> 
>> --- sys/x86/include/_types.h	(revision 286256) +++ 
>> sys/x86/include/_types.h	(working copy) @@ -152,7 +152,7 @@ */ 
>> #ifdef __GNUCLIKE_BUILTIN_VARARGS typedef	__builtin_va_list 
>> __va_list;	/* internally known to gcc */ -#elif defined(lint) 
>> +#elif defined(__TINYC__) || defined(lint) typedef	char * 
>> __va_list;	/* pretend */ #endif #if 
>> defined(__GNUC_VA_LIST_COMPATIBILITY) &&
>> !defined(__GNUC_VA_LIST) \
>> 
> 
> If you need doing some changes into the src tree.

https://svnweb.freebsd.org/changeset/base/286265

> So, what do you recommend in such case? Would it be much trouble 
> add the necessary changes to run TCC again? Furthermore, TinyCC 
> developer has ignored this issue completely.

The only hack I see is defining __va_list as a macro from libtcc.c but
it is ugly.

Jung-uk Kim
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBCAAGBQJVwAXXAAoJEHyflib82/FGLOwH/3HxMqLqt/G6thF5DqTQsqA+
PoHwp3Qdvkwx9Z/LjjLQlyrtZMSXSBfKv0IisZlblaFqkV0p8rnC/X+hpHhtTm4I
6inQyI36zwCRr3aD31hvRWpeYpjjZSJotsTbvmb4+cvjw4nSyJ43lBcomAyGx9dW
0lDrxVDzUvyVpBqYMGOgp6IvaDpyo2YF8yanpKD1vksdzDi2KvyvkRQx9/3VLu8A
OJla4pluo2Q83wQmRZqJZIu5eqgYQCdI/2ETiV4bVWLarQRkdwWHgjwt2LqQEciE
ZNIGKhFUBDXhXjuw0ND+UofQrt9IZtmNRRYX6LoaDuTdhazlDQKsq/opCHGYVsI=
=bbog
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?55C005D7.3050103>