Resultados de la búsqueda a petición "strict-aliasing"

2 la respuesta

Uso de conversiones de puntero para almacenar / emitir valores: ¿Estoy rompiendo la estricta regla de alias?

La pregunta se relaciona conesta publicación [https://stackoverflow.com/a/29213705/2436175]. Algunos usuarios autorizados declararon que el siguiente código se rompe estrictas reglas de alias ...

6 la respuesta

gcc, alias estricto y historias de terror

Engcc-estricto-aliasing-y-casting-through-a-union [https://stackoverflow.com/questions/2906365/gcc-strict-aliasing-and-casting-through-a-union] Le pregunté si alguien había encontrado problemas con los castigos sindicales a través de punteros. ...

2 la respuesta

Alias de puntero estricto: ¿el acceso a través de un puntero / referencia 'volátil' es una solución?

En los talones deun problema específico [https://stackoverflow.com/questions/2980920/strict-pointer-aliasing-any-solution-for-a-specific-problem/2981505#2981505] , una respuesta propia y comentarios al respecto, me gustaría entender si es ...

2 la respuesta

OO Polimorfismo en C, ¿problemas de alias?

Un colega y yo estamos tratando de lograr una jerarquía de clases polimórfica simple. Estamos trabajando en un sistema embebido y estamos restringidos a usar solo un compilador de C. Tenemos una idea de diseño básica que se compila ...

4 la respuesta

malloc-free-malloc y alias estricto

He estado tratando de entender un aspecto particular del alias estricto recientemente, y creo que he hecho el fragmento de código interesante más pequeño posible. (¡Interesante para mí, eso es!) Actualización: según las respuestas hasta ahora, ...

3 la respuesta

Desreferenciar el puntero de tipo punteado romperá las reglas de alias estricto

Usé el siguiente código para leer datos de archivos como parte de un programa más grande. double data_read(FILE *stream,int code) { char data[8]; switch(code) { case 0x08: return (unsigned char)fgetc(stream); case 0x09: return ...

2 la respuesta

Es una violación de alias estricta alias una estructura como su primer miembro?

Código de muestra struct S { int x; }; int func() { S s{2}; return (int &)s; // Equivalent to *reinterpret_cast<int *>(&s) } Creo que esto es común y se considera aceptable. El estándar garantiza que no hay relleno inicial en la estructura. Sin ...

2 la respuesta

¿Da a los datos un tipo efectivo cuenta como un efecto secundario?

Supongamos que tengo una porción de datos asignados dinámicamente: void* allocate (size_t n) { void* foo = malloc(n); ... return foo; } Deseo utilizar los datos señalados porfoo como tipo especial,type_t. Pero quiero hacer esto más tarde, y no ...

6 la respuesta

Reutilizando un búfer flotante para dobles sin comportamiento indefinido

En una función particular de C ++, resulta que tengo un puntero a un gran búfer de flotantes que quiero usar temporalmente para almacenar la mitad de la cantidad de dobles. ¿Existe un método para usar este búfer como espacio reutilizable para ...

3 la respuesta

Is std :: memcpy entre diferentes tipos trivialmente copiables comportamiento indefinido?

He estado usandostd::memcpy evitar aliasing estricto por mucho tiempo Por ejemplo, inspeccionar unfloat, me gustaest [https://stackoverflow.com/a/17790026/8157187]: float f = ...; uint32_t i; static_assert(sizeof(f)==sizeof(i)); ...