| using namespace emscripten; | |
| __attribute__((constructor)) | |
| void malloc_in_static_constructor(void) { | |
| // Malloc different sizes in AOT generation mode and normal mode to test | |
| // that method pointers still work correctly. | |
| EM_ASM( | |
| if (typeof InvokerFunctions == 'undefined') { | |
| _malloc(10); | |
| } else { | |
| _malloc(100); | |
| } | |
| ); | |
| } | |
| class Foo { | |
| public: | |
| void go() {} | |
| }; | |
| int main() { | |
| printf("done\n"); | |
| } | |
| EMSCRIPTEN_BINDINGS(xxx) { | |
| class_<Foo>("Foo") | |
| .function("go", &Foo::go); | |
| } | |