Skip to content

Diagnostics

Every diagnostic the q64 toolchain emits has a stable code. The compiler points each error at docs.q64.dev/diagnostics/<CODE>, and q64 explain <code> prints the same information in your terminal — all from one registry.

CodeSubsystemSeverityMessage
LEX010Lexicalerrorstray carriage return
LEX020Lexicalerrorunknown string-literal prefix
LEX021Lexicalerrorunexpected & in type position
LEX030Lexicalerrorunterminated string literal
LEX031Lexicalerrorchar literals are not supported
LEX040Lexicalerrorunexpected character
PAR040Parsererrorgeneric vs less-than ambiguity
NAM001Nameserrorunknown module
NAM002Nameserrorimport path escapes qube
NAM003Nameserrorwildcard import is forbidden
NAM004Nameserrorselective import combined with alias
NAM005Nameserrorname collision in import scope
NAM006Nameserrorname is private to its qube
NAM007Nameserrorsub-module not re-exported
NAM008Nameserrorre-export cycle
NAM009Nameserrorblock pub form is forbidden
NAM010Nameserrorunknown name in source module
NAM011Nameserrordash in bare module path
TYP042Type checkingerrorimplicit numeric conversion is forbidden
TYP047Type checkingerroroptional type not narrowed
TYP051Type checkingerrorinteger used as bool
TYP061Type checkingerrorwrong number of call arguments
TYP062Type checkingerrornon-exhaustive match
TYP300Type checkingerrortry requires Result return type
TYP305Type checkingerrorpostfix ? is not an error operator
TYP306Type checkingerrorpanic payload does not fit Panic
TYP350Type checkingerrorlambda needs an expected function type
TYP351Type checkingerrorlambda arity mismatch
TYP207Type checkingerrorface is not dyn-safe
TYP200Type checkingerrortype does not fit face
TYP201Type checkingerrorwrong fit form for single-param face
TYP202Type checkingerrorwrong fit form for multi-param face
ENV050Capabilitieserrormain Form 2 ends without return
ENV052Capabilitieserrormain signature mismatch
ENV056Capabilitieserrorenv reference from @pure function
ENV055Capabilitieserrorwith_capabilities(use:) field not on Env
TYP102Type checkingerrormissing required generic argument
TYP108Type checkingerrornon-default generic parameter after a default
EFF120Effectserrorcontradictory effects declared
EFF160Effectserror@cancel without ctx parameter
EFF140Effectserroruser effect shadows a core marker
EFF141Effectserrorinvalid effect name
REG020Regionserrorlinear pointer in @managed struct
CONC050Concurrencyerrorchannel policy required
CONC053Concurrencyerrorfor x in rx over cancel-aware receiver without ctx
CONC020Concurrencyerrortell on a reply-bearing handler
STR060Streamserror@realtime × |> effect violation
STR020Streamserrordataflow type mismatch in pipeline
STR051Streamserrorpre() on Event<T>
REG040Regionserrorregion exited with live allocations
REG050Regionserrorunknown transfer verb