http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53094
Bug #: 53094 Summary: vector literal Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: marc.gli...@normalesup.org Hello, VECTOR_TYPE should be a literal type in C++11, so we can have for instance: constexpr __m128i v = { 1, 0 }; constexpr __m128i s = v + v; Once PR c++/51033 is fixed, ideally, the following would also work: constexpr long long i = v[1]; constexpr __m128i w = __builtin_shuffle (m, m); but I guess this can be made in several steps as long as the compiler doesn't ICE on those.