Avisos do compilador Microsoft C/C++ C5200 a C5399
Os artigos desta seção descrevem as mensagens de aviso do compilador do Microsoft C/C++ de C5200 a C5399.
Importante
Os compiladores e ferramentas de build do Visual Studio podem relatar muitos tipos de erros e avisos. Depois que um erro ou aviso for encontrado, as ferramentas de build poderão fazer suposições sobre a intenção do código e tentar continuar, para que mais problemas possam ser relatados ao mesmo tempo. Se as ferramentas fizerem a suposição errada, erros ou avisos posteriores poderão não se aplicar ao seu projeto. Quando você corrige problemas em seu projeto, sempre comece com o primeiro erro ou aviso relatado e recompile com frequência. Uma correção pode fazer com que muitos erros subsequentes desapareçam.
Para obter ajuda em uma mensagem de diagnóstico específica no Visual Studio, selecione-a na janela Saída e pressione a tecla F1. O Visual Studio abre a página de documentação desse erro, se houver uma. Você também pode usar a ferramenta de pesquisa na parte superior da página para encontrar artigos sobre erros ou avisos específicos. Ou navegue pela lista de erros e avisos por ferramenta e digite no sumário nesta página.
Observação
Nem todos os erros ou avisos do Visual Studio estão documentados. Em muitos casos, a mensagem de diagnóstico fornece todas as informações que estão disponíveis. Se você chegou a esta página ao usar F1 e acha que a mensagem de erro ou aviso precisa de explicações adicionais, informe-nos. Você pode usar os botões de comentários nesta página para registrar um problema de documentação no GitHub. Se você achar que o erro ou o aviso está errado ou encontrou outro problema com o conjunto de ferramentas, relate um problema de produto no site da Developer Community. Você também pode enviar comentários e inserir bugs no IDE. No Visual Studio, vá para a barra de menus e escolha Ajuda > Enviar Comentários > Relatar um Problema ou envie uma sugestão usando Ajuda > Enviar Comentários > Enviar uma Sugestão. Foram criados alguns tópicos de erro do compilador que não são emitidos pelo compilador e agora redirecionam para esta página.
Você pode encontrar assistência adicional para erros e avisos nos fóruns Perguntas e respostas do Microsoft Learn. Alternativamente, pesquise o número do erro ou aviso no site da Developer Community do Visual Studio C++. Você também pode pesquisar o Stack Overflow para encontrar soluções.
Para obter links para ajuda adicional e recursos da comunidade, confira Ajuda e Comunidade do Visual C++.
Mensagens de aviso
Aviso | Mensagem |
---|---|
Aviso do compilador (nível 1) C5200 | recurso 'feature-name' requer o sinalizador do compilador 'option-name' |
Aviso do compilador (nível 1) C5201 | uma declaração de módulo pode aparecer somente no início de uma unidade de tradução, a menos que um fragmento de módulo global seja usado |
Aviso do compilador (nível 1) C5202 | um fragmento de módulo global pode conter somente diretivas de pré-processador |
Aviso do compilador (nível 1) C5203 | um nome declarador entre parênteses após 'explicit' será considerado um especificador explícito no C++20 |
Aviso do compilador (nível 3, desativado) C5204 | 'type-name': a classe tem funções virtuais, mas o destruidor trivial não é virtual; instâncias de objetos derivados dessa classe podem não ser destruídas corretamente |
Aviso do compilador (nível 4) C5205 | a exclusão de uma classe abstrata 'type-name' que tem um destruidor não virtual resulta em comportamento indefinido |
Aviso do compilador (nível 3) C5206 | os tipos de retorno deduzidos para corrotinas são uma extensão não padrão |
Aviso do compilador (nível 1) C5207 | o requisito simples declara a validade da expressão 'e->id '. Você quis dizer '{ e } -> id '? Você pode suprimir o aviso usando '{ e->id } ' |
Aviso do compilador (nível 1) C5208 | a classe sem nome usada no nome de typedef não pode declarar membros que não sejam classes de membro, enumerações de membro ou membros de dados não estáticos |
Aviso do compilador (nível 1) C5209 | A sintaxe do C++20 para uma captura de inicialização foi alterada para '& ...opt identifier initializer' |
Aviso do compilador (nível 1) C5210 | 'name' não é uma referência de unidade de cabeçalho válida e será ignorada |
Aviso do compilador (nível 1) C5212 | 'name' não é uma referência nomeada válida e será tratada como referência para o arquivo |
Aviso do compilador (nível 1) C5213 | A referência nomeada 'name' é tratada como uma partição nomeada, mas o nome não foi especificado e será tratada como referência para o arquivo |
Aviso do compilador (nível 4, desativado) C5214 | a aplicação de 'modifier' a um operando com um tipo qualificado volátil foi preterido em C++20 |
Aviso do compilador (nível 4, desativado) C5215 | 'name' um parâmetro de função com um tipo qualificado volátil, foi preterido em C++20 |
Aviso do compilador (nível 4, desativado) C5216 | 'name', um tipo de retorno qualificado volátil, foi preterido no C++20 |
Aviso do compilador (nível 4, desativado) C5217 | uma declaração de associação estruturada que inclui volátil foi preterida em C++20 |
Aviso do compilador (nível 1) C5218 | a destruição de delete pode não se comportar conforme o previsto quando os switches sem conformidade '/Zc:sizedDealloc- ' ou '/Zc:alignedNew- ' são usados |
Aviso do compilador (nível 2, desativado) C5219 | conversão implícita de 'type-1' para 'type-2'. Possível perda de dados |
Aviso do compilador (nível 4, desativado) C5220 | 'name': um membro de dados não estático com um tipo qualificado como volátil não implica mais que o compilador gerou construtores de cópia/movimentação e que os operadores de atribuição de cópia/movimentação não são triviais |
Aviso do compilador (nível 1) C5221 | xfg::rename foi preterido. |
Aviso do compilador (nível 3) C5222 | 'attribute-name': todos os nomes de atributo sem escopo estão reservados para padronização futura |
Aviso do compilador (nível 3) C5223 | todos os nomes de atributo no namespace do atributo 'msvc' são reservados para a implementação |
Aviso do compilador (nível 3) C5224 | todos os nomes de atributo no namespace do atributo 'namespace-name' são reservados para padronização futura |
Aviso do compilador (nível 1) C5225 | 'symbol': a função embutida exportada definida em um fragmento do módulo privado é uma extensão não padrão |
Aviso do compilador (nível 1) C5226 | 'symbol': o modelo exportado definido no fragmento do módulo privado não tem nenhuma instanciação acessível |
Aviso do compilador (nível 4) C5227 | extensão não padrão, 'symbol' foi resolvido para 'value', que não fica visível com /permissive- ativado. |
Aviso do compilador (nível 4) C5228 | extensão não padrão, 'identifier' foi resolvido para um membro de uma base dependente. Essa pesquisa não é permitida em /permissive- . |
Aviso do compilador (nível 4) C5229 | extensão não padrão. A função friend oculta 'function-name' foi encontrada pela pesquisa de nome, o que não é permitido em /permissive- . |
Aviso do compilador C5230 | extensão não padrão, 'identifier' foi resolvido como 'symbol-1' em /permissive . Sob /permissive- , ele resolveria 'symbol-2'. |
Aviso do compilador (nível 3) C5231 | a expressão 'co_await promise.final_suspend() ' não pode ser de lançamento |
Aviso do compilador (nível 1) C5232 | no C++20, essa comparação chama 'name' recursivamente |
Aviso do compilador (nível 4, desativado) C5233 | a captura de lambda explícita 'identifier' não é usada |
Aviso do compilador (nível 1) C5234 | erro do sistema de arquivos: 'filename' não é um nome de cabeçalho válido. Ignorando |
Aviso do compilador (nível 1) C5235 | Erro de análise de JSON: message; ignorando 'filename' |
Aviso do compilador (nível 1) C5236 | JSON malformado: message; ignorando 'filename' |
Aviso do compilador (nível 1) C5237 | não é possível resolver a entrada da unidade de cabeçalho 'name' para um arquivo de cabeçalho em 'filename'; ignorando a entrada |
Aviso do compilador (nível 1) C5238 | erro do sistema de arquivos: não é possível abrir 'filename' para leitura; ignorando |
Aviso do compilador (nível 4) C5239 | 'symbol': função potencialmente perigosa chamada a partir de uma função declarada __declspec(nothrow) . O comportamento indefinido poderá ocorrer se for lançada uma exceção. |
Aviso do compilador (nível 4) C5240 | 'attribute-name': o atributo foi ignorado nesta posição sintática |
Aviso do compilador (nível 1) C5241 | o uso de '/exportHeader ' como o nome do cabeçalho de pesquisa foi preterido; prefira '/headerName:name value=filename' |
Aviso do compilador (nível 1) C5242 | erro de sintaxe no pragma 'identifier' |
Aviso do compilador (nível 1, desativado) C5243 | 'type-name': usar uma classe 'class-name' incompleta pode causar uma possível violação da regra de definição devido à limitação de ABI |
Aviso do compilador (nível 1) C5244 | '#include <filename>' no âmbito do módulo 'module-name-1' parece errôneo. Considere mover essa diretiva antes da declaração do módulo ou substitua a inclusão textual por 'import <module-name-2>;'. |
Aviso do compilador (nível 4, desativado) C5245 | 'function': a função não referenciada com vinculação interna foi removida |
Aviso do compilador (nível 1, desativado) C5246 | 'member': a inicialização de um subobjeto deve ser colocada entre chaves |
Aviso do compilador (nível 1, desativado) C5247 | A seção 'section-name' é reservada para inicialização dinâmica C++. A criação manual da seção interferirá na inicialização dinâmica do C++ e pode levar a um comportamento indefinido |
Aviso do compilador (nível 1, desativado) C5248 | A seção 'section-name' é reservada para inicialização dinâmica C++. As variáveis colocadas manualmente na seção podem ser otimizadas e sua ordem em relação aos inicializadores dinâmicos gerados pelo compilador não é especificada. |
Aviso do compilador (nível 1, desativado) C5249 | 'bitfield' do tipo 'enumeration_name' nomeou enumeradores com valores que não podem ser representados na largura de campo de bit fornecida de 'bitfield_width'. |
Aviso do compilador (nível 3, desativado) C5250 | 'function_name': função intrínseca não declarada. |
Aviso do compilador (nível 4, desativado) C5251 | nome-do-segmento alterado após incluir cabeçalho |
Aviso do compilador (nível 4) C5252 | Vários tipos diferentes resultaram no mesmo hash de tipo XFG valor-do-hash; o PDB só registrará informações para um deles |
Aviso do compilador (nível 4) C5253 | um lambda não local não pode ter um padrão de captura |
Aviso do compilador (nível 4, desativado) C5254 | o recurso de linguagem 'terse static assert' requer o sinalizador do compilador '/std:c++17' |
Aviso do compilador (nível 3) C5255 | caractere bidirecional não terminado encontrado: 'U+XXXX' |
Aviso do compilador (nível 1, desativado) C5256 | 'enumeração':uma declaração não definidora de uma enumeração com um tipo subjacente fixo só é permitida como uma declaração autônoma |
Aviso do compilador (nível 1 ou 4) C5257 | 'enumeração': enumeração foi declarada anteriormente sem um tipo subjacente fixo |
Aviso do compilador (nível 4, desativado) C5258 | A captura explícita de 'símbolo' não é necessária para esse uso |
Aviso do compilador (nível 4, desativado) C5259 | 'specialized-type': especialização explícita requer 'modelo <>' |
Aviso do compilador (nível 1) C5260 | A variável constante 'variable-name' tem um vínculo interno em um contexto de arquivo de cabeçalho incluído, mas um vínculo externo no contexto de unidade de cabeçalho importado; considere declará-lo 'embutido' também se ele for compartilhado entre unidades de tradução, ou 'estático' para expressar a intenção de usá-lo localmente nesta unidade de tradução |
Aviso do compilador (nível 2) C5261 | nenhum tipo inteiro pode representar todos os valores de enumerador na enumeração 'nome_da_enumeração' |
Aviso do compilador (nível 1, erro, desligado) C5262 | Aqui ocorre uma queda implícita; você está perdendo uma instrução de interrupção? Use [[fallthrough]] quando uma instrução break for intencionalmente omitida entre os casos |
Aviso do compilador (nível 4, desativado) C5263 | Chamar 'std::move ' em um objeto temporário impede a elisão de cópia |
Aviso do compilador (nível 4, desativado) C5264 | 'variable-name': a variável 'const' não é usada |
Aviso do compilador (nível 1) C5265 | não é possível abrir o caminho 'caminho' da pesquisa |
Aviso do compilador (nível 4, desativado) C5266 | O qualificador 'const' no tipo de retorno não tem efeito |
Aviso do compilador C5267 | a definição implícita do construtor de cópia/operador de atribuição para 'tipo' foi preterida porque ele possui um operador de atribuição/construtor de cópia fornecido pelo usuário. |
Aviso do compilador (nível 1) C5268 | Falha ao alocar a memória no endereço fixo 0xendereço. Use /Yb para especificar uma base de endereços específica se forem necessários arquivos .pch idênticos em bits. |
Aviso do compilador (nível 1) C5269 | Falha ao alocar a memória PCH no endereço fixo 0xendereço. Use /Ym para especificar uma base de endereços específica se forem necessários arquivos .pch idênticos em bits. |
Aviso do compilador (nível 3) C5270 | 'valor' não é permitido para a opção 'nome do parâmetro'; os valores permitidos são: lista de valores |
Aviso do compilador (nível 4) C5271 | O assembly importado anteriormente 'assembly1' tem o mesmo nome do assembly 'assembly2' que está sendo importado. Isso é intencional? |
Aviso do compilador (nível 1) C5272 | gerar um objeto de tipo não copiável 'tipo' não é o padrão. Se uma cópia for necessária no runtime, ela será feita como se fosse por memcpy . |
Aviso do compilador (nível 1) C5273 | alteração de comportamento: _Alignas não é mais ignorado no tipo anônimo (os membros promovidos serão alinhados) |
Aviso do compilador (nível 1) C5274 | alteração de comportamento: _Alignas não se aplica mais ao tipo 'tipo' (aplica-se apenas a objetos de dados declarados) |
Aviso do compilador (erro) C5275 | Assembly de fachada 'nome' está sendo importado em '/clr '; opção '/clr:netcore ' ausente? |
Aviso do compilador (nível 1, erro) C5300 | '#pragma omp atomic': o operando esquerdo de operador deve corresponder ao lado esquerdo da expressão de atribuição |
Aviso do compilador (nível 1) C5301 | '#pragma omp for': 'índice-do-loop' aumenta enquanto a condição do loop usa 'comparação'; loop não terminal? |
Aviso do compilador (nível 1) C5302 | '#pragma omp for': 'índice-do-loop' diminui enquanto a condição do loop usa 'comparação'; loop não terminal? |
Aviso do compilador (nível 1) C5303 | A função marcada com [[msvc::intrinsic]] não resultou em uma conversão sem operações. |
Aviso do compilador (nível 1) C5304 | Uma declaração designada pela declaração de uso 'nome1' exportada deste módulo tem vinculação interna e o uso desse nome fora do módulo é mal-formado; considere declarar 'nome2' 'inline ' para usá-lo fora deste módulo |
Aviso do compilador (nível 1) C5305 | 'nome': uma declaração de instanciação explícita que segue uma definição de instanciação explícita é ignorada |
Confira também
Compilador C/C++ e erros e avisos de ferramentas de compilação
Avisos do Compilador C4000 - C5999