Resultados da pesquisa a pedido "strict-aliasing"

3 a resposta

O cancelamento da referência ao ponteiro puncionado por tipo quebrará regras de alias estrito

Usei o seguinte trecho de código para ler dados de arquivos como parte de um programa maior. double data_read(FILE *stream,int code) { char data[8]; switch(code) { case 0x08: return (unsigned char)fgetc(stream); case 0x09: return ...

4 a resposta

Essa regra de aliasing estrita de quebra de ponteiro?

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

6 a resposta

Reutilizando um buffer flutuante para dobras sem comportamento indefinido

Em uma função específica do C ++, por acaso tenho um ponteiro para um grande buffer de flutuadores que quero usar temporariamente para armazenar metade do número de duplas. Existe um método para usar esse buffer como espaço temporário para ...

3 a resposta

Buffers de memória compartilhada em C ++ sem violar regras estritas de alias

Eu estou lutando com a implementação de um buffer de memória compartilhada sem quebrar as regras de aliasing rigorosas do C99.Suponha que eu tenha algum códi...

2 a resposta

Quando char * é seguro para aliasing estrito de ponteiro?

Eu tenho tentado entender as regras estritas de aliasing que se aplicam ao ponteiro de char. Aqui [http://cellperformance.beyond3d.com/articles/2006/06/understanding-strict-aliasing.html#cast_to_char_pointer] isto é afirmado: Sempre se presume ...

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

22 a resposta

What is the strict aliasing rule

Quando perguntar sobreomportamento indefinido comum em C [https://stackoverflow.com/questions/98340/what-are-the-common-u ndefinedunspecified-behavior-for-c-that-you-run-into], almas mais esclarecidas do que referi à regra estrita de alia Do que ...

4 a resposta

Como converter sockaddr_storage e evitar violações de regras de alias restritas

2 a resposta

É uma violação estrita de aliasing alias a struct como seu primeiro membro?

Código de amostra: struct S { int x; }; int func() { S s{2}; return (int &)s; // Equivalent to *reinterpret_cast<int *>(&s) }Eu acredito que isso é comum e considerado aceitável. O padrão garante que não haja preenchimento inicial na estrutura. ...