1 // RUN: %clang_cc1 -fsyntax-only -verify %s
4 class Derived1
: public Base
{ };
5 class Derived2
: public Base
{ };
7 void f0(volatile Base
*b
, Derived1
*d1
, const Derived2
*d2
) {
14 if (d1
>= d2
) // expected-error{{comparison of distinct}}
18 void f1(volatile Base
*b
, Derived1
*d1
, const Derived2
*d2
) {
25 if (d1
== d2
) // expected-error{{comparison of distinct}}
30 int ptrcmp1(void *a
, int *b
) {
33 int ptrcmp2(long *a
, int *b
) {
34 return a
< b
; // expected-error{{distinct}}
37 // PR5509 - Multi-level pointers
40 typedef IntPtr
*IntPtrPtr
;
41 typedef IntPtr
const *IntPtrConstPtr
;
48 typedef double Matrix4
[4][4];
50 bool f(Matrix4 m1
, const Matrix4 m2
) {
55 bool f1(bool b
, void **p
, const void **q
) {