---
title: MARKLESS_SUBMODULE_UNSUPPORTED
description: "TSRX submodules are not supported by this host yet: a Markless compiler error."
sidebar: { hidden: true }
search: { keywords: ["SUBMODULE_UNSUPPORTED","submodule unsupported","markless error"] }
pagination: false
---

**Error** from the compiler, while it builds your `.tsrx` files.

## What happened

Markless prints the message, the reason, and a suggestion:

```text
MARKLESS_SUBMODULE_UNSUPPORTED: module-block
TSRX defines submodule syntax but defers boundary semantics to the host. Until markless implements splitting, treating this as supported would silently ship server-intended code to the client.
Move the code into a separate module with a string import specifier, or wait for the submodule host boundary decision in specs/framework/08-deferred-decisions.md.
https://markless.dev/errors/MARKLESS_SUBMODULE_UNSUPPORTED
```

## How to fix it

Start with the suggestion in the message above.

This page has no guide yet. [Help write it](/contributing/improve-these-docs).

## Where it comes from

`@markless/compiler` raises this code. Source:

- [packages/compiler/src/passes/semantic-graph/diagnostics.ts](https://github.com/compiled-run/markless/blob/main/packages/compiler/src/passes/semantic-graph/diagnostics.ts)

Read [how to read a Markless error](/tooling/diagnostics), or go back to [all error codes](/errors).
