diff --git a/test/dylib/dylib.c b/test/dylib/dylib.c index 2fd67b712133e745bcbb2ff7508ed077797c4377..e702a7a1a8abba8307750ad76d7bf5301ca8b499 100644 --- a/test/dylib/dylib.c +++ b/test/dylib/dylib.c @@ -1,15 +1,18 @@ #include <stdio.h> #include <stdarg.h> +int b = 1; +int c = 2; + int dynamic_function_a(void) { printf("This is dynamic function a.\n"); - return 1; + return 0; } int dynamic_function_b(char *b, int n, ...) { int i = 0; va_list ap; - printf("This is dynamic function %s\n", b); + printf("This is dynamic function %s.\n", b); va_start(ap, n); for (i; i<n; i++) { @@ -20,3 +23,10 @@ int dynamic_function_b(char *b, int n, ...) { va_end(ap); return n-i; } + +int dynamic_function_c(int a) { + int d = 0; + printf("This is dynamic function c.\n"); + d = a - b - c; + return d; +} diff --git a/test/dylib/dylib.h b/test/dylib/dylib.h index ee0f5885d45694b86e1ccbdeed8ca2ff4b8d49e7..329d167d0bf597f4e394e2b4f9475b62d20c6056 100644 --- a/test/dylib/dylib.h +++ b/test/dylib/dylib.h @@ -2,4 +2,5 @@ #define _DYLIB_H int dynamic_function_a(void); int dynamic_function_b(char *b, int n, ...); +int dynamic_function_c(int a); #endif // _DYLIB_H diff --git a/test/dylib/dylib_test.c b/test/dylib/dylib_test.c index 2b564ddaa5ab327e719de819e8b6ad6a6d894c02..761bdd0749828ecd12b563f8d47f6a1e05637117 100644 --- a/test/dylib/dylib_test.c +++ b/test/dylib/dylib_test.c @@ -2,5 +2,9 @@ #include "dylib.h" int main() { - return dynamic_function_b("b", 2, "a", "b"); + int ret = 0; + ret += dynamic_function_a(); + ret += dynamic_function_b("b", 2, "a", "b"); + ret += dynamic_function_c(3); + return ret; }