diff options
| author | Douglas Gregor <dgregor@apple.com> | 2010-02-25 22:29:57 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2010-02-25 22:29:57 +0000 |
| commit | 6f5f642ca23fcadeec4e658b6d990bed7626789e (patch) | |
| tree | 4a1706f2cfc56d76486be0f903dcddf43102865f /llvm/docs/ProgrammersManual.html | |
| parent | 9e3b3a3bbec814334e5d8c792ee6f5a034838d9b (diff) | |
| download | bcm5719-llvm-6f5f642ca23fcadeec4e658b6d990bed7626789e.tar.gz bcm5719-llvm-6f5f642ca23fcadeec4e658b6d990bed7626789e.zip | |
When computing the composite pointer type for relational comparisons,
equality comparisons, and conditional operators, produce a composite
pointer type with the appropriate additional "const" qualifiers if the
pointer types would otherwise be incompatible. This is a small
extension (also present in GCC and EDG in a slightly different form)
that permits code like:
void** i; void const** j;
i == j;
with the following extwarn:
t.cpp:5:5: warning: comparison of distinct pointer types ('void **' and
'void const **') uses non-standard composite pointer type
'void const *const *' [-pedantic]
i == j;
~ ^ ~
Fixes PR6346, and I'll be filing a core issue about this with the C++
committee.
llvm-svn: 97177
Diffstat (limited to 'llvm/docs/ProgrammersManual.html')
0 files changed, 0 insertions, 0 deletions

