Re: typesafe symbols for C

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

 



On 31 January 2011 09:38, Andrew Haley wrote:
> On 01/29/2011 08:51 PM, Enrico Weigelt wrote:
>>
>> * Jonathan Wakely<jwakely.gcc@xxxxxxxxx>  wrote:
>>>
>>> On 3 January 2011 05:37, Enrico Weigelt wrote:
>>>>
>>>> Hi folks,
>>>>
>>>>
>>>> is it somehow possible to let the C-compiler include some type
>>>> information into symbol names (as IMHO done for C++) ?
>>>
>>> I don't think so.
>>
>> hmm. where should I start if I wanted to add that ?
>>
>>>> If not, what would have to be done for that ?
>>>
>>> Use a C++ compiler.
>>
>> hmm, maybe that's worth a try, but I doubt that all plain-C code
>> will compile fine then.
>
> It will be very close.  One really good use of C++ is as C with
> type-safe linkage.

Annex C of the C++ standard lists incompatibilities between C and C++.

Among the commonly-used C features which won't work in C++ are:

Implicit conversions from integer types to enum types.

Implicit conversions from void* to other pointer types, which most
often causes problems in malloc statements:

Valid in C but not in C++:
    char* buf = malloc(sz);
Valid in C and C++:
    char* buf = (char*) malloc(sz);

C++ has additional keywords, so 'new' is not a valid identifier in C++



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux