RX0155

Domínio: Execução

Mensagem de erro

process.done / process.await pede uma leitura, e %s não é uma: %s

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

A história

Você pediu a process ponto done, ou a process ponto await, que esperassem algo que não é uma leitura de outro processo, e o motor recusou. Vamos entender. Essas duas linhas perguntam sobre uma leitura da struct de um gtr, como p ponto total, onde p é o endereço do processo e total é o nome do campo. O leitor do fedex responde com o valor ou com uma de suas palavras: not ponto yet, permission ponto denied ou gone. O argumento é um ponto adiado: a expressão fica sem avaliar, e a linha a pergunta ao fedex. Se a expressão não faz nenhuma leitura assim, por exemplo um literal, um nome local ou um cálculo, não existe nada a concluir nem a aguardar. O motor não responde true sobre algo que nunca foi de ninguém entregar: ele recusa. A mensagem traz a expressão escrita e a forma pedida. Exemplo: process ponto await de um número, em vez de p ponto total. A correção: escreva, dentro do done ou await, uma leitura qualificada de um processo, no formato endereço ponto campo.

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