Resultados da pesquisa a pedido "strict-aliasing"

2 a resposta

Polimorfismo OO em C, aliasing issues?

Eu e um colega estamos tentando alcançar uma hierarquia de classes polimórfica simples. Estamos trabalhando em um sistema incorporado e estamos restritos a usar apenas um compilador C. Temos uma idéia básica de design que compila sem avisos ...

2 a resposta

Usando conversões de ponteiro para armazenar / converter valores: Estou violando a regra estrita de alias?

A questão refere-se aesta postagem [https://stackoverflow.com/a/29213705/2436175]. Alguns usuários autorizados declararam que o seguinte código quebraregras estritas de alias [https://stackoverflow.com/q/98650/2436175]. #include ...

5 a resposta

Problemas de aliasing podem ser evitados com variáveis const

Minha empresa usa um servidor de mensagens que envia uma mensagem para umconst char* e o lança no tipo de mensagem. Fiquei preocupado com isso depois de perguntaressa questão [https://stackoverflow.com/q/28697626/2642059]. Não estou ciente de ...

1 a resposta

É UB jogar fora const e ler valor? [duplicado]

Esta pergunta já tem uma resposta aqui: A remoção de const de um ponteiro para const obedece estritamente alias em C e se refere ao mesmo ...

4 a resposta

Digite puncionando uma estrutura em C e C ++ por meio de uma união

Eu compilei isso no gcc e no g ++ com pedante e não recebo um aviso em nenhum deles: #include <stdio.h> #include <stdlib.h> #include <string.h> struct a { struct a *next; int i; }; struct b { struct b *next; int i; }; struct c { int x, x2, ...

2 a resposta

Mais uma vez: regra estrita de alias e char *

Quanto mais leio, mais confuso fico. A última pergunta das relacionadas é a mais próxima da minha, mas fiquei confuso com todas as palavras sobre a vida útil do objeto e principalmente - é bom ler apenas ou não. Para ir direto ao ponto. ...

3 a resposta

Aliasing Arrays através de estruturas

Estou lendo o parágrafo 7 de 6.5 na ISO / IEC 9899: TC2. Aceita o acesso do valor a um objeto através de: um tipo agregado ou união que inclui um dos tipos mencionados acima entre seus membros (incluindo, recursivamente, um membro de uma união ...

2 a resposta

Isso realmente quebra as regras de alias estrito?

Ao compilar esse código de exemplo usando g ++, recebo este aviso: aviso: desmarcando o ponteiro puncionado por tipo violará regras de alias estrito[-Wstrict-aliasing] O código: #include <iostream> int main() { alignas(int) char ...

3 a resposta

O uso desse ponteiro causa uma desoptimização estranha no loop quente

Recentemente, deparei-me com uma estranha desoptimização (ou melhor, perdi uma oportunidade de otimização). Considere esta função para descompactar com eficiência matrizes de números inteiros de 3 bits a números inteiros de 8 bits. Descompacta ...

1 a resposta

apelido estrito em C

Pergunta sobre punição de tipo: por que esse código quebra regras estritas de alias: int main() { int a = 1; short j; printf("%i\n", j = *((short*)&a)); return 0; }e isso não é: int main() { int a = 1; short j; int *p; p=&a; printf("%i\n", j = ...