Next: , Previous: , Up: External Calls   [Index]


14.3 Miscellaneous External Calls

INTERCAL-72 C-INTERCAL CLC-INTERCAL J-INTERCAL
no version 0.29+ no no

It is possible to specify other information to the external calls system by using the filename list after all the options are given. To be precise, certain filename patterns are recognised and used to change the options that are used to compile the externally-called files.

The ‘.c99’ extension is treated identically to ‘.c’, except that it causes the file with that extension to be preprocessed as C99 (the more modern version of the C standard, the older C89 is more common), and that all C files involved will be compiled and linked as C99. (This corresponds to -std=c99 in gcc.) Likewise, the ‘.c11’ extension can be used to indicate C11.

The ‘.a’ extension indicates that an object-code library should be linked in to the final program. This is most commonly used to link in the maths library libm.a and other such system libraries. If the filename is of the form ‘lib*.a’, then the file will be searched for in the standard directories for libraries on your system, and also where the C-INTERCAL libraries are stored (which may be the same place); otherwise, the current directory will be searched. (Specifying libm.a on the command line corresponds to passing -lm to gcc.)