/* very simple testcase/experiment for weak symbols. */ extern int bar; int foo(void) { return 1; } #pragma weak weak_in_main int weak_in_main(void) { return 3; } int main() { int i; int cErrors = 0; i = foo(); if (i != 1) { printf("foo -> %d expected 1\n", i); cErrors++; } i = doo(); if (i != -2) { printf("doo -> %d expected -2\n", i); cErrors++; } if (bar != -1) { printf("bar == %d expected -1\n", bar); cErrors++; } i = weak_in_main(); if (i != -3) { printf("weak_in_main == %d expected -3\n", i); cErrors++; } return cErrors; }