---
name: "patscc"
section: "1"
platform: "linux"
package: "ats2-lang"
version: "0.4.2-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/patscc"
---

# patscc(1)

ATS2 compiler frontend

## NAME

patscc - ATS2 compiler frontend

## SYNOPSIS

**patscc** \[*options*\] *files*...

## DESCRIPTION

**patscc** is a frontend to the Postiats compiler **patsopt** for the ATS2 language.

## OPTIONS

**patscc** has a command-line option syntax in the style of **gcc** and accepts all the same options, many of them being passed directly to the **gcc** backend.  Here are summarized the non-**gcc** options.

- **-atsccomp \<command\>**

  Specify the name of the C compiler on the command line. Otherwise, use environment variable **ATSCCOMP** or the default. See further details on environment variables.

- **-cleanaft**

  Clean up incidental generated C files after compilation finishes.

- **--compile, -ccats**

  Only compile the given ATS source files into C files.

- **-DATS \<name\>\[=\<value\>\], -DDATS \<name\>\[=\<value\>\]**

  Define a name/value macro toplevel value in ATS. **-DDATS** also passes this option to the C compiler.

- **-IATS \<path\>, -IIATS \<path\>**

  Add a path to search for ATS files when doing static and dynamic loads. **-IIATS** also passes this path to the C compiler.

- **-fsats \<file\>, -fdats \<file\>**

  These indicate that the following file is a SATS or a DATS file. Unnecessary if standard filename extensions **.sats** or **.dats** are used.

- **--gline**

  Place line pragma information based on ATS source in the generated C code.

- **--typecheck, -tcats**

  Typecheck the given ATS source files, but go no further.

- **--version, -vats**

  Show ATS2/Postiats version and gcc version.

## ENVIRONMENT VARIABLES

- **PATSCCOMP, ATSCCOMP**

  Use the value of this environment variable as the command name of the C compiler. The default is **gcc -D\_XOPEN\_SOURCE -I${ATSHOME} -I${ATSHOME}/ccomp/runtime -L${ATSHOME}/ccomp/atslib/lib**

- **PATSHOME, ATSHOME**

  Use the value of this environment variable as the path to the ATS library installation. The default is distribution-specific.

- **PATSOPT, ATSOPT**

  Use the value of this environment variable as the command name of the ATS compiler. The default is **patsopt.**

## EXAMPLES

**patscc -o test -O3 test.dats**

Compile test.dats to an executable named test.  Tell **gcc** to use the third level of optimization.

**patscc -tcats test.dats**

Typecheck test.dats only.

**patscc -ccats test.dats**

Compile to C file test\_dats.c only.

**patscc -o test.o -c test.dats -cleanaft**

Compile test.dats to an object file named test.o, and delete intermediate C file.

## SEE ALSO

[**patsopt**(1)](/patsopt/1.md),\
 These programs are documented fully by **The ATS2/Postiats user's manual** available via the web at http://www.ats-lang.org/

## AUTHOR

patscc was written by Hongwei Xi.

This manual page was written by Matthew Danish \<mrd@debian.org\>, for the Debian project (and may be used by others).
