mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
Bug#42733: Type-punning warnings when compiling MySQL --
strict aliasing violations. Post-merge fix: include my_compiler.h before my_attribute.h as the latter will undef __attribute__ if the compiler is not GCC. Based on the compiler version, in my_compiler.h we know for sure whether the aligned attribute is supported. Furthermore, undefining attribute might cause bugs if some system header uses it. include/my_compiler.h: Drop aligned attribute support from Sun Studio C++ compiler as its not clear exactly which version of it supports the attribute.
This commit is contained in:
parent
f317d3a6fb
commit
d7944b621e
3 changed files with 4 additions and 4 deletions
|
@ -42,7 +42,7 @@
|
||||||
|
|
||||||
/* Oracle Solaris Studio */
|
/* Oracle Solaris Studio */
|
||||||
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
||||||
# if (__SUNPRO_C >= 0x590) || (__SUNPRO_CC >= 0x590)
|
# if __SUNPRO_C >= 0x590
|
||||||
# define MY_ALIGN_EXT
|
# define MY_ALIGN_EXT
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
|
@ -124,4 +124,6 @@ struct my_aligned_storage
|
||||||
|
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
|
#include <my_attribute.h>
|
||||||
|
|
||||||
#endif /* MY_COMPILER_INCLUDED */
|
#endif /* MY_COMPILER_INCLUDED */
|
||||||
|
|
|
@ -623,7 +623,7 @@ typedef unsigned short ushort;
|
||||||
#define my_const_cast(A) (A)
|
#define my_const_cast(A) (A)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include <my_attribute.h>
|
#include <my_compiler.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Wen using the embedded library, users might run into link problems,
|
Wen using the embedded library, users might run into link problems,
|
||||||
|
|
|
@ -16,8 +16,6 @@
|
||||||
#ifndef _spatial_h
|
#ifndef _spatial_h
|
||||||
#define _spatial_h
|
#define _spatial_h
|
||||||
|
|
||||||
#include <my_compiler.h>
|
|
||||||
|
|
||||||
#ifdef HAVE_SPATIAL
|
#ifdef HAVE_SPATIAL
|
||||||
|
|
||||||
const uint SRID_SIZE= 4;
|
const uint SRID_SIZE= 4;
|
||||||
|
|
Loading…
Add table
Reference in a new issue