[Bug c/20230] GCC generates non-compliant warnings for qualifier promotion

kmk at ssl dot org gcc-bugzilla@gcc.gnu.org
Mon Feb 28 06:35:00 GMT 2005


------- Additional Comments From kmk at ssl dot org  2005-02-27 21:37 -------
1. A pointer is a derived type.

2. A derived type is not qualified by the qualifiers (if any) of the type from
which it is derived.

3. For any qualifier q, a POINTER to a non-q-qualified type may be converted to
a pointer to the q-qualified version of the type. [emphasis mine; note that a
pointer is, by itself, a derived type which does not inherit any qualifiers---so
what]

4. A pointer to a pointer is itself a pointer.

5. The C standard, unlike C++, does not further restrict qualifier promotion of
multi-level pointers---in fact, it is completely silent on the issue.

6. By (3), above, the left-hand side of a pointer assignment can be converted so
that all qualifiers match.

I ask again: where is the problem?

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20230



More information about the Gcc-bugs mailing list