workaround for gcc 4.1.0 strict-aliasing bug
mysys/lf_alloc-pin.c: workaround for gcc 4.1.0 strict-aliasing bug. and yes, I mean a *bug* - as union (in alloc_free) is a documented way to access type-punned pointers. and it helps in newer gcc, but fails in 4.1.0
This commit is contained in:
parent
cf4aa88993
commit
10a2bac777
@ -320,7 +320,7 @@ static int match_pins(LF_PINS *el, void *addr)
|
|||||||
#define available_stack_size(CUR,END) (long) ((char*)(END) - (char*)(CUR))
|
#define available_stack_size(CUR,END) (long) ((char*)(END) - (char*)(CUR))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define next_node(P, X) (*((uchar **)(((uchar *)(X)) + (P)->free_ptr_offset)))
|
#define next_node(P, X) (*((uchar * volatile *)(((uchar *)(X)) + (P)->free_ptr_offset)))
|
||||||
#define anext_node(X) next_node(&allocator->pinbox, (X))
|
#define anext_node(X) next_node(&allocator->pinbox, (X))
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user