Files
android_external_libcxx/include
Eric Fiselier e7f8cd476d [libc++] Shrink variant's index type when possible
Summary:
Currently `std::variant` always uses an unsigned int to store the variant index. However this isn't nessesary and causes `std::variant` to be larger than it needs to be in most cases.

This patch changes the index type to be `unsigned char` when possible, and `unsigned short` or `unsigned int` otherwise, depending on the size (Although it's questionable if it's even possible to create a variant with 65535 elements.

Unfortunately this change is an ABI break, and as such is only enabled in ABI v2.

Reviewers: mpark

Reviewed By: mpark

Subscribers: cfe-commits

Differential Revision: https://reviews.llvm.org/D40210

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@318621 91177308-0d34-0410-b5e6-96231b3b80d8
2017-11-19 04:19:44 +00:00
..
2017-08-18 12:57:36 +00:00
2017-11-14 11:14:25 +00:00
2011-10-17 20:05:10 +00:00
2011-10-17 20:05:10 +00:00
2015-10-08 20:37:11 +00:00
2015-10-08 20:37:44 +00:00
2011-10-17 20:05:10 +00:00
2011-10-17 20:05:10 +00:00
2015-10-08 20:41:26 +00:00
2011-10-17 20:05:10 +00:00
2011-10-17 20:05:10 +00:00
2011-10-17 20:05:10 +00:00
2011-10-17 20:05:10 +00:00
2011-10-17 20:05:10 +00:00
2015-10-09 19:57:37 +00:00
2017-06-01 02:29:37 +00:00
2016-10-10 15:56:01 +00:00
2016-02-20 00:16:41 +00:00
2017-06-01 02:29:37 +00:00
2017-05-31 22:14:05 +00:00
2011-10-17 20:05:10 +00:00
2015-10-09 19:57:37 +00:00