lang/tcc unusable
Jung-uk Kim
jkim at FreeBSD.org
Tue Aug 4 00:22:48 UTC 2015
-----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-----
More information about the freebsd-ports
mailing list