Possible real source of problem: existing in code mixed
std:: structure templates instanting under pack pragma and out.
And this incompatible structure layouts wrongly mixed used by GCC.
So all std:: strcutures used moved out from pack pragma guards.
By unknown reason GCC generate wrong code for locale structures declared in header after pack pragma.
Signed-off-by: VladimirMangos <vladimir@getmangos.com>