Opened 8 years ago

Closed 5 years ago

#10031 closed Bugs (fixed)

clang-3.5 with -Wall -Werror fails to build with uuid

Reported by: jim.king@… Owned by: Andy Tompkins
Milestone: Boost 1.59.0 Component: uuid
Version: Boost 1.56.0 Severity: Problem
Keywords: uuid register deprecated Cc: simon.sasburg@…

Description

In file included from /usr/include/boost-1_56/boost/uuid/uuid.hpp:203: /usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:42:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm = uuids::detail::load_unaligned_si128(data);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:53:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_this = uuids::detail::load_unaligned_si128(data);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:54:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_rhs = uuids::detail::load_unaligned_si128(rhs.data);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:61:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_left = uuids::detail::load_unaligned_si128(lhs.data);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:62:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_right = uuids::detail::load_unaligned_si128(rhs.data);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:64:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_cmp = _mm_cmpeq_epi32(mm_left, mm_right);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:74:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_left = uuids::detail::load_unaligned_si128(lhs.data);

/usr/include/boost-1_56/boost/uuid/detail/uuid_x86.hpp:75:5: error: 'register' storage class specifier is deprecated [-Werror,-Wdeprecated-register]

register m128i mm_right = uuids::detail::load_unaligned_si128(rhs.data);

8 errors generated.

Removing the "register" keyword in all the above cases resolves the issue for me.

# clang --version Ubuntu clang version 3.5.0-1~exp1 (trunk) (based on LLVM 3.5.0) Target: x86_64-pc-linux-gnu Thread model: posix

Change History (4)

comment:1 by simon.sasburg@…, 8 years ago

Cc: simon.sasburg@… added

comment:2 by robindegen@…, 8 years ago

This is still an issue in 1.57.0. With a normal compile it generates 8 warnings aswell.

comment:3 by James E. King, III <jking@…>, 5 years ago

This was resolved in boost-1.59 and should be marked as such.

comment:4 by Michael Caisse, 5 years ago

Milestone: To Be DeterminedBoost 1.59.0
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.