Re: A: a new bug to old plain C

Andrey Tarasevich via Gcc-help <[email protected]>
Newsgroups gmane.comp.gcc.help
Message-ID <[email protected]>
> I am an experienced person and when I'm going to make "Foo**" -> "const Foo * 
> const * const" conversion, I do clearly understand what I am doing.

In order to signal the compiler that "you clearly understand what you are doing" 
in this particular situation you have to use an explicit cast. Using casts to 
perform "I know what I'm doing" conversions is common practice and common 
knowledge. This how it has always been in C. There are lots and lots of 
conversions in C that are only available through _explicit_ _casts_ to people 
who "clearly understand what they are doing".

Without an explicit cast you are at the mercy of the formal rules of the 
language. And the formal rules of the language wrt to this specific conversion 
have already been explained to you repeatedly.

As it has been explained you repeatedly that there's no such thing as conversion 
to `const Foo * const * const` in C, since there are no `const` Rvalues in C. 
Seeing that you refuse to grasp the fairly obvious concepts behind this simple 
fact, it immediately casts doubt on your claim that you "understand what you 
are doing". At least in realm of C language.

-- 
Best regards,
Andrey
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.