File tree 5 files changed +6
-28
lines changed
test/libcxx/strings/basic.string/string.capacity
5 files changed +6
-28
lines changed Original file line number Diff line number Diff line change @@ -1044,7 +1044,7 @@ add_dependencies(cxx-headers generate-cxx-headers)
1044
1044
# It's important that the arch directory be included first so that its header files
1045
1045
# which interpose on the default include dir be included instead of the default ones.
1046
1046
target_include_directories (cxx-headers INTERFACE ${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}
1047
- ${LIBCXX_GENERATED_INCLUDE_DIR } )
1047
+ ${CMAKE_CURRENT_LIST_DIR } )
1048
1048
1049
1049
if (LIBCXX_INSTALL_HEADERS)
1050
1050
foreach (file ${files} )
Original file line number Diff line number Diff line change 174
174
// The implementation moved to the header, but we still export the symbols from
175
175
// the dylib for backwards compatibility.
176
176
# define _LIBCPP_ABI_DO_NOT_EXPORT_TO_CHARS_BASE_10
177
- // Save memory by providing the allocator more freedom to allocate the most
178
- // efficient size class by dropping the alignment requirements for std::string's
179
- // pointer from 16 to 8. This changes the output of std::string::max_size,
180
- // which makes it ABI breaking
181
- # define _LIBCPP_ABI_STRING_8_BYTE_ALIGNMENT
182
177
# elif _LIBCPP_ABI_VERSION == 1
183
178
# if !(defined(_LIBCPP_OBJECT_FORMAT_COFF) || defined(_LIBCPP_OBJECT_FORMAT_XCOFF))
184
179
// Enable compiling copies of now inline methods into the dylib to support
Original file line number Diff line number Diff line change @@ -1937,12 +1937,7 @@ private:
1937
1937
return (__s + (__a - 1 )) & ~(__a - 1 );
1938
1938
}
1939
1939
enum {
1940
- __alignment =
1941
- #ifdef _LIBCPP_ABI_STRING_8_BYTE_ALIGNMENT
1942
- 8
1943
- #else
1944
- 16
1945
- #endif
1940
+ __alignment = 8
1946
1941
};
1947
1942
static _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 size_type __recommend (size_type __s) _NOEXCEPT {
1948
1943
if (__s < __min_cap) {
Original file line number Diff line number Diff line change 17
17
18
18
#include " test_macros.h"
19
19
20
- // alignment of the string heap buffer is hardcoded to either 16 or 8
21
-
22
- const std::size_t alignment =
23
- #ifdef _LIBCPP_ABI_STRING_8_BYTE_ALIGNMENT
24
- 8 ;
25
- #else
26
- 16 ;
27
- #endif
20
+ // alignment of the string heap buffer is hardcoded to 8
21
+ const std::size_t alignment = 8 ;
28
22
29
23
int main (int , char **) {
30
24
std::string input_string;
Original file line number Diff line number Diff line change 17
17
18
18
#include " test_macros.h"
19
19
20
- // alignment of the string heap buffer is hardcoded to 16
21
-
22
- static const std::size_t alignment =
23
- #ifdef _LIBCPP_ABI_STRING_8_BYTE_ALIGNMENT
24
- 8 ;
25
- #else
26
- 16 ;
27
- #endif
20
+ // alignment of the string heap buffer is hardcoded to 8
21
+ static const std::size_t alignment = 8 ;
28
22
29
23
template <class = int >
30
24
TEST_CONSTEXPR_CXX20 void full_size () {
You can’t perform that action at this time.
0 commit comments