Markdown for LLMs
LDC-E0101 — A character the reader does not accept
The source Markdown for this article. Copy it into your assistant or download it as a text file.
# LDC-E0101 — A character the reader does not accept ## What it means Before the compiler understands a word of the package, it reads the file character by character. Most text passes through — letters, digits, punctuation the language defines. A character outside that alphabet stops the read at that exact spot: an emoji, a stray control byte, punctuation borrowed from prose. The fault is always at the reported position, never in the logic around it. Delete the character or retype it with the keyboard layout the file uses, and the read continues past it. ## Example ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; — ``` ## Fix ```law language "law.core" version "0.2"; package demo.diagnostics version "0.1.0"; namespace "urn:law:demo:diagnostics"; entity Applicant; ``` ## Engine message The engine reports this in its own wording: ```text example.law:5:1: error LDC-E0101: invalid character '—' ``` ## Related - [LDC-E0102](/diagnostics/LDC-E0102/) — an unfinished comment or string the reader cannot close.