diff options
author | Sergei Golubchik <serg@mysql.com> | 2008-10-21 20:10:49 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mysql.com> | 2008-10-21 20:10:49 +0200 |
commit | a58d20053dbd9192905bb4525f089a32f16b88f5 (patch) | |
tree | a66fe1250952b215446ba4d41adb700fc3880f95 /include | |
parent | f8fc47f062c0b30ecf491cd1e4e9eeba84565044 (diff) | |
download | mariadb-git-a58d20053dbd9192905bb4525f089a32f16b88f5.tar.gz |
win32: compilation failures, maria.test failure
include/my_global.h:
enable compile_time_assert for all compilers
include/waiting_threads.h:
1. don't #extern "C" system includes, they don't like it.
2. remove any padding from WT_RESOURCE_ID structure - we want
to compare it with memcmp
mysys/waiting_threads.c:
assert that WT_RESOURCE_ID can be compared with memcmp
and has no random padding bytes
Diffstat (limited to 'include')
-rw-r--r-- | include/my_global.h | 2 | ||||
-rw-r--r-- | include/waiting_threads.h | 9 |
2 files changed, 7 insertions, 4 deletions
diff --git a/include/my_global.h b/include/my_global.h index 6970fa5a0b6..c350982fbb0 100644 --- a/include/my_global.h +++ b/include/my_global.h @@ -478,7 +478,7 @@ C_MODE_END #include <assert.h> /* an assert that works at compile-time. only for constant expression */ -#ifndef __GNUC__ +#ifdef _some_old_compiler_that_does_not_understand_the_construct_below_ #define compile_time_assert(X) do { } while(0) #else #define compile_time_assert(X) \ diff --git a/include/waiting_threads.h b/include/waiting_threads.h index 0df17a47c61..322b5972ec0 100644 --- a/include/waiting_threads.h +++ b/include/waiting_threads.h @@ -19,10 +19,10 @@ #include <my_global.h> #include <my_sys.h> -C_MODE_START - #include <lf.h> +C_MODE_START + typedef struct st_wt_resource_id WT_RESOURCE_ID; typedef struct st_wt_resource_type { @@ -30,10 +30,13 @@ typedef struct st_wt_resource_type { const void *(*make_key)(WT_RESOURCE_ID *id, uint *len); } WT_RESOURCE_TYPE; +/* we want to compare this struct with memcmp, make it packed */ +#pragma pack(push,1) struct st_wt_resource_id { - WT_RESOURCE_TYPE *type; ulonglong value; + WT_RESOURCE_TYPE *type; }; +#pragma pack(pop) #define WT_WAIT_STATS 24 #define WT_CYCLE_STATS 32 |