Skip to content

Debugging Workflow

Back to Error Reference

Overview

A step-by-step approach to resolving compilation failures:

  1. Compile with full diagnostics:

    bash
    neo-solc contract.sol -I devpack --json-errors --json-warnings -o build/ 2>diag.jsonl
  2. Fix highest-severity errors first. Parse errors (E1xxx) block all later stages. Fix them before addressing semantic errors.

  3. Address semantic errors (E2xxx). These are type and scope issues in your Solidity code.

  4. Review codegen errors (E3xxx). These usually indicate unsupported EVM features that need refactoring for NeoVM.

  5. Run with manifest safety flags:

    bash
    neo-solc contract.sol -I devpack \
      --deny-wildcard-permissions \
      --deny-wildcard-contracts \
      -o build/
  6. Validate with Neo-Express smoke tests before deploying to testnet or mainnet.

TIP

Use -v (verbose) to see optimization statistics and IR details. This can help diagnose unexpected bytecode size or behavior.

MIT Licensed