/* loaded.c, a Unicon loadable external function tectonics: gcc -shared -fpic -o loaded.so loaded.c icall.h copied from unicon tree ipl/cfuncs */ #include #include "icall.h" int loaded(int argc, descriptor *argv) { #ifdef DEBUG /* look at count and the pointer */ printf("argc: %d, argv: %p\n", argc, argv); fflush(stdout); #endif /* Ensure an integer arg 1 */ if (argc < 1) { ArgError(argc, 101); } ArgInteger(1); #ifdef DEBUG /* show the operational step */ printf("argv[argc]: %ld\n", IntegerVal(argv[argc])); #endif RetInteger(IntegerVal(argv[argc]) * 2); }