#nasm #linter #error #nasm-assembly

app naslint

A NASM linter which enforces a basic style guide to your (NASM) assembly

7 releases

0.0.22 Feb 15, 2021
0.0.21 Feb 15, 2021

#931 in Development tools

MIT license

1.5K SLoC


A code linter for NASM code


  • TAB replacement
  • Comment alignment
  • Dead code warnings (Unstable)
  • Whitespace management (WIP)


Using Cargo

cargo install naslint

Other installation methods coming soon


Dead Code Checking

Dead Code checking in action


Basic usage:

naslint -i /path/to/file.asm

Using unstable options:

NASLint may contain unstable content for specific versions, to make use of options marked as unstable, the -Z flag must be present in the command

naslint -i /path/to/file.asm -Z --check-dead

In the above example, we enable the unstable options flag, and gain access to the dead code checking methods of the program. If the -Z flag was not included, the program would throw an error.


Platform Support:

NASLint should be able to compile to any target which has support from the Rust programming language, but certain features require the environment to be one supported by the NASM compiler itself. Please keep this in mind when installing

Language Support

Currently NASLint only supports NASM syntax Assembly files, but in the future I hope to be able to enable more compatibility for other Assembly syntax types.

Feedback And Suggestions

If you have any feedback or suggestions, or you want to report a bug, please open an issue with an appropriate title and labels


Contributions should follow the Rust code of conduct, at a minimum.


The software within this repository is dual licensed under Apache 2.0 and MIT. Any contributions of source code are hereby licensed under Apache 2.0 and MIT unless otherwise specified.


~186K SLoC