RX0039

Domínio: Análise sintática

Mensagem de erro

o nome %s não localiza nada (%s)

Na mensagem, %s marca um valor que o motor preenche quando levanta o erro.

A história

Seu script usou um nome que o motor não encontrou em lugar nenhum, e ele parou antes de rodar. Vamos ver por quê. Durante o parse, o motor resolve cada nome expandindo-o para o nome completo, e o resultado só pode ser um de dois: ou o nome aponta para exatamente uma coordenada, e a referência vira essa coordenada, ou o nome não localiza nada, e isso é um erro de parse. É este último caso. O ponto central é que isso é uma recusa em tempo de compilação, e não uma surpresa no meio da execução. Quando o parser termina, nenhum nome sobrevive. Um nome sem resolução não tem em que se transformar, e procurá-lo depois seria a busca que a lei proíbe. A mensagem informa o nome e o escopo onde ele foi procurado: um nome simples alcança o próprio escopo e o módulo, e nada além disso. Exemplo: você escreve soma igual a total mais um, mas nunca declarou total. O motor aponta total. A correção é declarar o nome antes de usá-lo, ou corrigir o erro de digitação.

Texto do catálogo de erros do motor do Rush.