WABT(1)

WABT(1) | General Commands Manual | WABT(1)

# NAME

`wat-desugar` — parse .wat text form and print canonical flat format

# SYNOPSIS

`wat-desugar` | [options] file

# DESCRIPTION

`wat-desugar` Parses .wat text form as supported by the spec interpreter (s-expressions, flat syntax, or mixed) and prints "canonical" flat format.

The options are as follows:

`--help`
  Print this help message
`--version`
  Print version information
`-o`, `--output=FILE`
  Output file for the formatted file
`--debug-parser`
  Turn on debugging the parser of wat files
`-f`, `--fold-exprs`
  Write folded expressions where possible
`--inline-exports`
  Write all exports inline
`--inline-imports`
  Write all imports inline
`--enable-exceptions`
  Enable Experimental exception handling
`--disable-mutable-globals`
  Disable Import/export mutable globals
`--disable-saturating-float-to-int`
  Disable Saturating float-to-int operators
`--disable-sign-extension`
  Disable Sign-extension operators
`--disable-simd`
  Disable SIMD support
`--enable-threads`
  Enable Threading support
`--enable-function-references`
  Enable Typed function references
`--disable-multi-value`
  Disable Multi-value
`--enable-tail-call`
  Enable Tail-call support
`--disable-bulk-memory`
  Disable Bulk-memory operations
`--disable-reference-types`
  Disable Reference types (externref)
`--enable-annotations`
  Enable Custom annotation syntax
`--enable-code-metadata`
  Enable Code metadata
`--enable-gc`
  Enable Garbage collection
`--enable-memory64`
  Enable 64-bit memory
`--enable-multi-memory`
  Enable Multi-memory
`--enable-extended-const`
  Enable Extended constant expressions
`--enable-all`
  Enable all features
`--generate-names`
  Give auto-generated names to non-named functions, types, etc.

# EXAMPLES

Write output to stdout

`$ wat-desugar test.wat`

Write output to test2.wat

`$ wat-desugar test.wat -o test2.wat`

Generate names for indexed variables

`$ wat-desugar --generate-names test.wat`

# SEE ALSO

wasm-decompile(1), wasm-interp(1), wasm-objdump(1), wasm-stats(1), wasm-strip(1), wasm-validate(1), wasm2c(1), wasm2wat(1), wast2json(1), wat2wasm(1), spectest-interp(1)

# BUGS

If you find a bug, please report it at
https://github.com/WebAssembly/wabt/issues.

September 23, 2025 | Debian