mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +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 */
|
||||
#elif defined(__SUNPRO_C) || defined(__SUNPRO_CC)
|
||||
# if (__SUNPRO_C >= 0x590) || (__SUNPRO_CC >= 0x590)
|
||||
# if __SUNPRO_C >= 0x590
|
||||
# define MY_ALIGN_EXT
|
||||
# endif
|
||||
|
||||
|
@ -124,4 +124,6 @@ struct my_aligned_storage
|
|||
|
||||
#endif /* __cplusplus */
|
||||
|
||||
#include <my_attribute.h>
|
||||
|
||||
#endif /* MY_COMPILER_INCLUDED */
|
||||
|
|
|
@ -623,7 +623,7 @@ typedef unsigned short ushort;
|
|||
#define my_const_cast(A) (A)
|
||||
#endif
|
||||
|
||||
#include <my_attribute.h>
|
||||
#include <my_compiler.h>
|
||||
|
||||
/*
|
||||
Wen using the embedded library, users might run into link problems,
|
||||
|
|
|
@ -16,8 +16,6 @@
|
|||
#ifndef _spatial_h
|
||||
#define _spatial_h
|
||||
|
||||
#include <my_compiler.h>
|
||||
|
||||
#ifdef HAVE_SPATIAL
|
||||
|
||||
const uint SRID_SIZE= 4;
|
||||
|
|
Loading…
Reference in a new issue