Resultados da pesquisa a pedido "strict-aliasing"

4 a resposta

união para uint32_t e uint8_t [4] comportamento indefinido? [duplicado]

Esta questão já tem uma resposta aqui:Finalidade das Uniões em C e C ++ 14 respostasNos comentários deesta resposta Diz-se que seria um comportamento indefin...

8 a resposta

aliasing e alinhamento estritos

Preciso de uma maneira segura de alternar entre tipos arbitrários de POD, em conformidade com a ISO-C ++ 11, considerando explicitamente os itens 3.10 / 10 e 3.11 do n3242 ou posterior. Há muitas perguntas sobre aliasing estrito aqui, a maioria ...

5 a resposta

Aviso de "cancelamento de referência de ponteiro puncionado por tipo quebrará regras de alias estritas"

Eu uso um código onde eu converter um enum * para int *. Algo assim: enum foo { ... } ... foo foobar; int *pi = reinterpret_cast<int*>(&foobar);Ao compilar o código (g ++ 4.1.2), recebo a seguinte mensagem de aviso: dereferencing type-punned ...

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 ...

3 a resposta

gcc: Como usar o __attribute ((__ may_alias__)) corretamente para evitar o aviso de "exclusão do ponteiro puncionado por tipo"

Eu tenho algum código que usa punção de tipo para evitar ter que chamar o membro de "objeto" construtor e destruidor, a menos que / até que seja realmente necessário usar o objet Funciona bem, mas no g ++ 4.4.3, recebo este temido aviso do ...

1 a resposta

A herança via desenrolamento viola a regra estrita de aliasing?

Eu tenho um struct X que herda de struct Base. No entanto, na minha configuração atual, devido ao alinhamento, o tamanho de X é 24B: typedef struct { double_t a; int8_t b; } Base; typedef struct { Base base; int8_t c; } X;Para economizar ...

5 a resposta

Pode um alias de estrutura seu próprio membro inicial e único?

Por exemplo, esse código é válido ou invoca um comportamento indefinido violando as regras de alias?

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, ...

1 a resposta

Um ponteiro std :: byte tem as mesmas implicações de alias do char *?

As regras estritas de aliasing de C ++ (e C) incluem que umchar* eunsigned char* pode usar qualquer outro ponteiro. AFAIK não existe uma regra análoga parauint8_t*. Assim, minha pergunta: quais são as regras de alias para ...

1 a resposta

Como implementar "_mm_storeu_epi64" sem problemas de alias?

(Nota: embora esta pergunta seja sobre "armazenamento", o caso "carregar" tem os mesmos problemas e é perfeitamente simétrico.) Os intrínsecos SSE fornecem uma_mm_storeu_pd [http://msdn.microsoft.com/en-us/library/7ek6y8w1(v=vs.90).aspx]função ...