?? kext11.c
字號(hào):
/* APPLE LOCAL file ptmf casts --bowdidge *//* In gcc-4.0 and beyond, kexts are not permitted to cast pointer-to-member- functions into pointer-to-functions. These casts should be flagged as a hard error if -fapple-kext is an option for the compile. -fpermissive shouldn't permit this, either. This checks for OSMemberFunctionCast in the error message because the error advises developers to use that function to replace these casts. Radar 4025923, gcc-4.0 should ban kexts from doing ptmf to ptf conversions without OSMemberFunctionCast*//* { dg-do compile { target powerpc*-apple-darwin* } } *//* { dg-options "-S -static -fapple-kext -fpermissive -fno-exceptions" } */typedef int(*INT_FUNC_INT)(int);class Superclass {public: /* In 3.3, this would get the foo function for the class of "this". In 4.0, it gets the foo function for Superclass. */ virtual int init(void) {_myFunc = (INT_FUNC_INT)&Superclass::foo;}; /* { dg-error "OSMemberFunctionCast" } */ INT_FUNC_INT _myFunc; virtual int foo(int i) { return 2;};};class Subclass : public Superclass { public: virtual int foo(int) { return 1;};};main(int argc, char **argv) { Superclass sup; Subclass sub; sup.init(); sup.foo(1); sub.init(); sub.foo(1);}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -