diff options
Diffstat (limited to 'man/1/limbo')
| -rw-r--r-- | man/1/limbo | 218 |
1 files changed, 218 insertions, 0 deletions
diff --git a/man/1/limbo b/man/1/limbo new file mode 100644 index 00000000..63b7e945 --- /dev/null +++ b/man/1/limbo @@ -0,0 +1,218 @@ +.TH LIMBO 1E +.SH NAME +limbo \- Limbo compiler +.SH SYNOPSIS +.EX +limbo [ \f2option ...\fP ] [ \f2file ...\fP ] +.EE +.SH DESCRIPTION +.B Limbo +compiles the named Limbo +.I files +into machine-independent object files for the Dis virtual machine. +Depending on the options, the compiler may create output +files or write information to its standard output. +Conventional files and their extensions include the following. +.TP 10 +.IB file .b +Limbo source file. +.TP +.IB file .dis +Object code for the Dis virtual machine. +.TP +.IB file .m +Limbo source file for +.B module +declarations. +.TP +.IB file .s +Assembly code. +.TP +.IB file .sbl +Symbolic debugging information. +.PP +With no options, +.B limbo +produces a +.B \&.dis +file for each +source file. +.PP +The compiler options are: +.TP 1i +.B -a +Print on standard output +type definitions and call frames +useful for writing C language implementations of Limbo modules. +Suppresses normal output file generation. +.TP +.B -C +Mark the Dis object file to prevent run-time compilation. +.TP +.B -c +Mark the Dis object file to guarantee run-time compilation. +.TP +.BI -D " flags" +Turn on debugging +.IR flags . +Flags include +.B A +for arrays, +.B a +for +.B alt +statements, +.B b +for booleans, +.B C +for +.B case +body statements, +.B c +for +.B case +statements, +.B D +for use descriptors, +.B d +for declarations, +.B e +for expressions, +.B E +for extended expressions, +.B F +for function information, +.B f +for constant folding, +.B m +for modules, +.B n +for +.B nil +references, +.B P +for program counter manipulations, +.B r +for reference types, +.B S +for type signatures, +.B s +for a code generation summary, +.B T +for tuples, +.B t +for type checking, +and +.B v +for variable initialization. +.TP +.B -e +Increase the number of errors the compiler will report before exiting. +.TP +.B -G +Annotate assembly language output with debugging information. +A no-op unless +.B -S +is set. +.TP +.B -g +Generate debugging information for the input files and place it in a file +named by stripping any trailing +.B \&.b +from the input file name and appending +.BR .sbl . +.TP +.B -i +Disable inlining of functions. Currently functions containing a +single return statement or two return statements and an if clause are candidates for inlining. +.TP +.BI \-I " dir" +An +.B include +file whose name does not begin with slash +is sought first relative to the working directory, +regardless of the source +.I file +argument. +If this fails, +.B limbo +sequences through directories named in +.B \-I +options, +then searches in +.BR /module . +An +.B include +file contains Limbo source code, normally holding one or more +.B module +declarations. +.TP +.BI \-o " obj" +Place output in file +.I obj +(allowed only if there is a single input +.IR file ). +The output file will hold either object or assembly code, +depending on +.BR \-S . +Default is to take the last element of the input file name, +strip any trailing +.BR .b , +and append +.B .dis +for object code and +.B .s +for assembly code. +Thus, the default output file for +.B dir/mod.b +would be +.BR mod.dis . +.TP +.B \-S +Create assembly language output instead of object code. +.TP +\f5\-T\fP\ \f2module +Print on standard output C stub functions, +useful for implementing Limbo modules in the C language for linkage +with the interpreter. +.TP +\f5\-t\fP\ \f2module +Print on standard output +a table of runtime functions, +to link C language implementations of modules with the Limbo interpreter. +Suppresses normal output file generation. +.TP +.B \-w +Print warning messages about unused variables, etc. +More \f5w\fP's (e.g., \f5\-ww\fP) increase the pedantry of the checking. +.PP +.SH FILES +.TF /module +.TP +.B /module +directory for Limbo +.B include +modules +.SH SOURCE +.TF /appl/limbo +.TP +.B /appl/limbo +compiler source in Limbo +.TP +.B /limbo +compiler source in C for host +.SH "SEE ALSO" +.IR asm (1), +.IR emu (1), +.IR mk (10.1), +.IR intro (2), +.IR sys-intro (2), +.IR tk (2) +.PP +``The Limbo Programming Language'' +.br +``Program Development in Inferno'' +.br +``A Descent into Limbo'' +.br +in Volume 2. |
