Erros do Compilador Rust
Explore os 80 códigos de erro de Erros do Compilador Rust com causas, soluções e exemplos.
E0308E0308 — Tipos Incompatíveis
O tipo esperado não corresponde ao tipo real fornecido.
E0382E0382 — Uso de Valor Movido
Um valor é utilizado após ter sido movido para outra variável ou função.
E0502E0502 — Não É Possível Emprestar como Mutável Porque Também Foi Emprestado como Imutável
Um valor não pode ser emprestado de forma mutável enquanto um empréstimo imutável ainda está ativo.
E0597E0597 — Valor Emprestado Não Vive por Tempo Suficiente
Uma referência sobrevive aos dados para os quais aponta.
E0277E0277 — Trait Não Satisfeito
Um tipo não implementa um trait obrigatório.
E0599E0599 — Nenhum Método Chamado X Encontrado para o Tipo
O método não existe no tipo fornecido, ou o trait necessário não está no escopo.
E0425E0425 — Não É Possível Encontrar o Valor Neste Escopo
Um identificador é utilizado mas não está definido no escopo atual.
E0433E0433 — Falha ao Resolver Caminho de Módulo
O caminho de módulo usado em uma instrução use ou caminho de tipo não pode ser resolvido.
E0106E0106 — Especificador de Tempo de Vida Ausente
Uma referência na assinatura de uma função ou em uma struct está sem um parâmetro de tempo de vida.
E0015E0015 — Chamadas em Constantes São Limitadas
Uma função não-const é chamada em um contexto de expressão constante.
E0658E0658 — Recurso Instável Utilizado
Um recurso ainda não estabilizado no Rust está sendo usado sem o feature gate.
E0609E0609 — Nenhum Campo Chamado X no Tipo
A struct ou union não possui um campo com o nome fornecido.
E0614E0614 — Não É Possível Desreferenciar o Tipo
O operador de desreferência (*) é usado em um tipo que não implementa Deref.
E0499E0499 — Não É Possível Emprestar como Mutável Mais de Uma Vez
Um valor é emprestado de forma mutável mais de uma vez ao mesmo tempo.
E0503E0503 — Não É Possível Usar o Valor Porque Foi Emprestado de Forma Mutável
Um valor não pode ser usado enquanto está sendo emprestado de forma mutável por outra variável.
E0505E0505 — Não É Possível Mover Conteúdo Emprestado
Um valor é movido enquanto ainda está sendo referenciado por um empréstimo.
E0507E0507 — Não É Possível Mover Valor de Referência Emprestada
Você está tentando mover um valor para fora de uma referência, o que deixaria a referência pendente.
E0515E0515 — Não É Possível Retornar Referência para Variável Local
Uma função tenta retornar uma referência para um valor criado dentro dela.
E0432E0432 — Importação Não Resolvida
O módulo ou item referenciado em uma instrução use não pode ser encontrado.
E0412E0412 — Tipo Não Encontrado Neste Escopo
Um nome de tipo é usado mas não está definido nem importado no escopo atual.
E0423E0423 — Era Esperado um Valor, Foi Encontrado um Tipo
Um nome de tipo é usado onde se esperava um valor.
E0424E0424 — Era Esperado um Valor, Foi Encontrado self
A palavra-chave self é usada fora do contexto de um método ou função associada.
E0369E0369 — Operador Não Pode Ser Aplicado ao Tipo
Um operador binário é usado com tipos que não o suportam.
E0384E0384 — Não é Possível Atribuir Duas Vezes a uma Variável Imutável
Uma variável está sendo reatribuída, mas não foi declarada como mutável.
- E0061 — Número Incorreto de Argumentos
- E0063 — Campos Faltando na Struct
- E0107 — Número Incorreto de Argumentos de Tipo
- E0117 — Apenas Traits Definidas no Crate Atual Podem Ser Implementadas para Tipos
- E0119 — Implementações de Trait Conflitantes
- E0133 — Chamada a Função Unsafe Requer Bloco unsafe
- E0152 — Item de Linguagem Duplicado
- E0200 — Trait Unsafe Requer impl unsafe
- E0252 — Nome Já Importado
- E0255 — Conflito de Nome com Importação
- E0271 — Incompatibilidade de Tipo em Tipo Associado
- E0282 — Anotações de Tipo Necessárias
- E0283 — Implementação de Trait Ambígua
- E0310 — O Tipo Pode Não Viver Tempo Suficiente
- E0317 — O if Pode Estar Faltando uma Cláusula else
- E0373 — Closure Pode Sobreviver à Variável Capturada
- E0392 — Parâmetro de Tipo ou Lifetime Não Utilizado
- E0404 — Trait Esperado, Tipo Encontrado
- E0405 — Trait Não Encontrada Neste Escopo
- E0428 — Definição Duplicada
- E0463 — Crate Não Encontrado
- E0520 — Especialização de Trait é Instável
- E0596 — Não é Possível Tomar Empréstimo Mutável
- E0600 — Não é Possível Aplicar Operador Unário
- E0601 — Função main Não Encontrada
- E0603 — Item Privado Acessado Fora de Seu Escopo
- E0621 — Lifetime Explícito Necessário
- E0308 — Tipos Incompatíveis nos Braços do Match
- E0716 — Valor Temporário Descartado Enquanto Emprestado
- E0728 — await em Função Não-Async
- Panic — unwrap() Chamado em None ou Err
- Panic — Índice Fora dos Limites
- Panic — Overflow de Inteiro
- Panic — Estouro de Pilha
- Clippy — Return Desnecessário
- Clippy — Let e Return
- Clippy — Imports Não Utilizados
- Clippy — Clone em Tipo Copy
- Clippy — Uso de Unwrap
- Aviso de Código Morto
- Aviso de Variável Não Utilizada
- Aviso de Mut Não Utilizado
- E0046 — Implementações de Métodos do Trait Ausentes
- E0053 — Assinatura de Método Incompatível
- E0277 — Tipo Não Implementa Send
- E0277 — Tipo Não Implementa Sized
- E0277 — Tipo Não Implementa Iterator
- E0308 — Tipo de Retorno de Closure Incompatível
- E0562 — impl Trait Não Permitido Nesta Posição
- E0308 — Tipo de Result Incompatível
- E0277 — Tipo Não Implementa o Trait Fn
- Panic — Divisão por Zero
- Panic — Índice de Slice Fora do Intervalo
- Clippy — map().unwrap_or() Pode Ser Simplificado
- Clippy — match de Um Braço Pode Ser if-let
- Clippy — Closure Redundante