mirror of
https://github.com/github/codeql.git
synced 2025-12-17 17:23:36 +01:00
69 lines
975 B
C++
69 lines
975 B
C++
namespace ambiguous {
|
|
class Duplicated {};
|
|
|
|
class Intermediate: public Duplicated {};
|
|
|
|
class C: protected Duplicated, public Intermediate {};
|
|
}
|
|
|
|
namespace chain {
|
|
class C {
|
|
public: static void pubC();
|
|
protected: static void protC();
|
|
private: static void priC();
|
|
};
|
|
|
|
class D: public C {
|
|
private: static void priD();
|
|
};
|
|
|
|
class E: protected D {};
|
|
|
|
class F: public E {};
|
|
}
|
|
|
|
namespace diamond {
|
|
class Top {
|
|
public: static void pub();
|
|
protected: static void prot();
|
|
};
|
|
|
|
class Left: private Top {};
|
|
|
|
class Right: public Top {};
|
|
|
|
class Bottom: public Left, protected Right {};
|
|
|
|
class Alone {
|
|
Alone();
|
|
};
|
|
}
|
|
|
|
namespace friend_class {
|
|
class A {
|
|
};
|
|
|
|
class B : private A {
|
|
friend class D1;
|
|
friend class D2;
|
|
|
|
public:
|
|
void fun() {};
|
|
};
|
|
|
|
class C : private B {
|
|
public:
|
|
void fun() {};
|
|
};
|
|
|
|
class D1 : private C {
|
|
public:
|
|
void fun() {};
|
|
};
|
|
|
|
class D2 : private B {
|
|
protected:
|
|
void fun() {};
|
|
};
|
|
}
|