Man page - lfortran(1)

Packages contains this manual

Manual

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
SUBCOMMANDS
SEE ALSO

NAME

LFortran - modern interactive LLVM-based Fortran compiler

SYNOPSIS

lfortran OPTIONS [files...] [SUBCOMMAND]

DESCRIPTION

LFortran is a modern interactive Fortran compiler based on LLVM.

OPTIONS

-h, --help: Print this help message and exit

-S: Emit assembly, do not assemble or link

-c: Compile and assemble, do not link

-o TEXT: Specify the file to place the compiler’s output into

-v: Be more verbose

-E: Preprocess only; do not compile, assemble, or link

-l TEXT ...: Link library option

-L TEXT ...: Library path option

-I TEXT ...: Include path

-J TEXT: Where to save mod files

-g: Compile with debugging information

--debug-with-line-column: Convert the linear location info into line + column in the debugging information

-D TEXT ...: Define <macro>=<value> (or 1 if <value> omitted)

--version: Display compiler version information

-W TEXT ...: Linker flags

-f TEXT ...: All -f* flags (only -fPIC supported for now)

--cpp: Enable C preprocessing

--fixed-form: Use fixed form Fortran source parsing

--fixed-form-infer: Use heuristics to infer if a file is in fixed form

--no-prescan: Turn off prescan

--show-prescan: Show tokens for the given file and exit

--show-tokens: Show tokens for the given file and exit

--show-ast: Show AST for the given file and exit

--show-asr: Show ASR for the given file and exit

--with-intrinsic-mods: Show intrinsic modules in ASR

--show-ast-f90: Show Fortran from AST for the given file and exit

--no-color: Turn off colored AST/ASR

--no-indent: Turn off Indented print ASR/AST

--tree: Tree structure print ASR/AST

--json: Print ASR/AST Json format

--no-loc: Skip location information in ASR/AST Json format

--visualize: Print ASR/AST Visualization

--pass TEXT: Apply the ASR pass and show ASR (implies –show-asr)

--skip-pass TEXT: Skip an ASR pass in the default pipeline

--show-llvm: Show LLVM IR for the given file and exit

--show-cpp: Show C++ translation source for the given file and exit

--show-c: Show C translation source for the given file and exit

--show-asm: Show assembly for the given file and exit

--show-wat: Show WAT (WebAssembly Text Format) and exit

--show-julia: Show Julia translation source for the given file and exit

--show-fortran: Show Fortran translation source for the given file and exit

--show-stacktrace: Show internal stacktrace on compiler errors

--symtab-only: Only create symbol tables in ASR (skip executable stmt)

--time-report: Show compilation time report

--static: Create a static executable

--no-warnings: Turn off all warnings

--no-error-banner: Turn off error banner

--error-format TEXT=human: Control how errors are produced (human, short)

--backend TEXT=llvm: Select a backend (llvm, cpp, x86, wasm, fortran)

--openmp: Enable OpenMP

--generate-object-code: Generate object code into .o files

--rtlib: Include the full runtime library in the LLVM output

--use-loop-variable-after-loop: Allow using loop variable after the loop

--fast: Best performance (disable strict standard compliance)

--link-with-gcc: Calls GCC for linking instead of clang

--target TEXT: Generate code for the given target

--print-targets: Print the registered targets

--implicit-typing: Allow implicit typing

--implicit-interface: Allow implicit interface

--implicit-argument-casting: Allow implicit argument casting

--print-leading-space: Print leading white space if format is unspecified

--interactive-parse: Use interactive parse

--verbose: Print debugging statements

--dump-all-passes: Apply all the passes and dump the ASR into a file

--dump-all-passes-fortran: Apply all passes and dump the ASR after each pass into a Fortran file

--cumulative: Apply all the passes cumulatively till the given pass

--realloc-lhs: Reallocate left-hand side automatically

--module-mangling: Mangles the module name

--global-mangling: Mangles all the global symbols

--intrinsic-mangling: Mangles all the intrinsic symbols

--all-mangling: Mangles all possible symbols

--bindc-mangling: Mangles functions with ABI bind(c)

--apply-fortran-mangling: Mangle symbols with Fortran supported syntax

--mangle-underscore: Mangles with underscore

--legacy-array-sections: Enables passing array items as sections if required

--ignore-pragma: Ignores all the pragmas

--stack-arrays: Allocate memory for arrays on stack

SUBCOMMANDS

fmt: Format Fortran source files.

kernel: Run in Jupyter kernel mode.

mod: Fortran mod file utilities.

pywrap: Python wrapper generator

SEE ALSO

For more information, visit the official LFortran documentation at https://docs.lfortran.org/.