cdisp12.c
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C语言 代码 · 共 718 行 · 第 1/2 页
C
718 行
#include "fail.h"
#include <string.h>
void *operator new( unsigned, void *p )
{
return p;
}
#pragma inline_depth(0)
struct B3;
B3 *B3_OK;
void set_B3( B3 *p )
{
if( B3_OK ) {
if( B3_OK != p ) fail(__LINE__);
}
B3_OK = p;
}
struct E9;
E9 *E9_OK;
void set_E9( E9 *p )
{
if( E9_OK ) {
if( E9_OK != p ) fail(__LINE__);
}
E9_OK = p;
}
struct A1 {
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
};
struct A2 {
int __u;
virtual void foo() {}
virtual void bar() {}
};
struct B3 : A1, A2 {
int __u;
virtual void foo() { if( this != B3_OK ) fail(__LINE__); }
B3() {
B3 *p = this;
set_B3( p );
A2 *pA2 = this;
pA2->foo();
}
};
struct B4 {
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
};
struct C5 : B4, B3 {
int __u;
C5() {
B3 *p = this;
set_B3( p );
A2 *pA2 = this;
pA2->foo();
}
};
struct C6 {
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
};
struct D7 : C6, C5 {
int __u;
D7() {
B3 *p = this;
set_B3( p );
A2 *pA2 = this;
pA2->foo();
}
};
struct E8 {
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
};
void hook() {
static int h;
++h;
}
struct E9 : virtual D7 {
int __u;
virtual void __u() {}
virtual void foo() { if( this != E9_OK ) fail(__LINE__); }
E9() {
E9 *p = this;
set_E9( p );
A2 *pA2 = this;
hook();
pA2->foo();
B3 *pB3 = this;
pB3->foo();
}
};
struct F10 {
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
};
struct F11 : E8, E9 {
int __u;
virtual void __u() {}
F11() {
E9 *p = this;
set_E9( p );
A2 *pA2 = this;
pA2->foo();
}
};
struct G12 {
int __u;
virtual void __u() {}
};
struct G13 : F10, F11 {
G13() {
E9 *p = this;
set_E9( p );
A2 *pA2 = this;
pA2->foo();
}
int __u;
virtual void __u() {}
int __u;
virtual void __u() {}
virtual void __u() {}
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
int __u;
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
virtual void __u() {}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?