[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] possible minor changes to code
From: |
Thomas Preud'homme |
Subject: |
Re: [Tinycc-devel] possible minor changes to code |
Date: |
Sun, 09 Mar 2014 21:36:29 +0800 |
User-agent: |
KMail/4.11.5 (Linux/2.6.38-ac2-ac100; KDE/4.11.5; armv7l; ; ) |
Le samedi 8 mars 2014, 13:41:44 Carlos Montiers a écrit :
> Thanks for comments and patch.
>
> About tccgen line 2271:
> if (t & (VT_DEFSIGN | VT_UNSIGNED))
> pstrcat(buf, buf_size, "unsigned ");
> else if (t & VT_DEFSIGN)
> pstrcat(buf, buf_size, "signed ");
>
> I remember that the warning was that the line: "else if (t &
> VT_DEFSIGN)" should always false.
Oh, I thought it was proposing to replace one by the other. It's indeed an
error, one of mine again :-(
>
> About spawnvp, I found it compiling with tiny c.
> I compare the definitions of mingw and tinyc of spawnvp and are differents:
>
>
> tcc\include\process.h
> Line 168: intptr_t __cdecl spawnvp(int,const char *_Filename,char *const
> _ArgList[]);
> Line 169: intptr_t __cdecl spawnvpe(int,const char *_Filename,char *const
> _ArgList[],char *const _Env[]);
>
> mingw\include\process.h
> Line 161: _CRTIMP intptr_t __cdecl __MINGW_NOTHROW spawnvp (int, const
> char*, const char* const*);
> Line 162: _CRTIMP intptr_t __cdecl __MINGW_NOTHROW spawnvpe (int, const
> char*, const char* const*, const char* const*);
>
> The mingw include the _CRTIMP definition and tiny c not (tiny c include it
> in other similars like _spawnvp or _wspawnvp).
> The mingw definition as third argument is:
> const char* const*
> unlike tiny c that is:
> char *const _ArgList[]
Hence the error. Grischka, is it something we should change?
>
> I suspect that tiny c definition here maybe is wrong because the third
> argument for function _spawnvp is const char *const *
> here the differene is more clear:
>
> tcc\include\process.h
> Line 64: _CRTIMP intptr_t __cdecl _spawnvp(int _Mode,const char
> *_Filename,const char *const *_ArgList);
> Line 168: intptr_t __cdecl spawnvp(int,const char *_Filename,char *const
> _ArgList[]);
>
> Carlos
Thanks again.
Tom