Skip to content

Commit 81179dc

Browse files
committed
fixup!
1 parent 27ff173 commit 81179dc

File tree

2 files changed

+25
-18
lines changed
  • lldb
    • packages/Python/lldbsuite/test/make/libcxx-simulators-common
    • test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string

2 files changed

+25
-18
lines changed

lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77
namespace std {
88
namespace __lldb {
99

10+
#if __has_cpp_attribute(msvc::no_unique_address)
11+
#define _LLDB_NO_UNIQUE_ADDRESS [[msvc::no_unique_address]]
12+
#elif __has_cpp_attribute(no_unique_address)
13+
#define _LLDB_NO_UNIQUE_ADDRESS [[__no_unique_address__]]
14+
#endif
15+
1016
#if COMPRESSED_PAIR_REV == 0 // Post-c88580c layout
1117
struct __value_init_tag {};
1218
struct __default_init_tag {};
@@ -55,7 +61,7 @@ class __compressed_pair : private __compressed_pair_elem<_T1, 0>,
5561
#elif COMPRESSED_PAIR_REV == 1
5662
// From libc++ datasizeof.h
5763
template <class _Tp> struct _FirstPaddingByte {
58-
[[no_unique_address]] _Tp __v_;
64+
_LLDB_NO_UNIQUE_ADDRESS _Tp __v_;
5965
char __first_padding_byte_;
6066
};
6167

@@ -75,29 +81,30 @@ template <class _ToPad> class __compressed_pair_padding {
7581
};
7682

7783
#define _LLDB_COMPRESSED_PAIR(T1, Initializer1, T2, Initializer2) \
78-
[[__gnu__::__aligned__(alignof(T2))]] [[no_unique_address]] T1 Initializer1; \
79-
[[no_unique_address]] __compressed_pair_padding<T1> __padding1_; \
80-
[[no_unique_address]] T2 Initializer2; \
81-
[[no_unique_address]] __compressed_pair_padding<T2> __padding2_;
84+
[[__gnu__::__aligned__( \
85+
alignof(T2))]] _LLDB_NO_UNIQUE_ADDRESS T1 Initializer1; \
86+
_LLDB_NO_UNIQUE_ADDRESS __compressed_pair_padding<T1> __padding1_; \
87+
_LLDB_NO_UNIQUE_ADDRESS T2 Initializer2; \
88+
_LLDB_NO_UNIQUE_ADDRESS __compressed_pair_padding<T2> __padding2_;
8289

8390
#define _LLDB_COMPRESSED_TRIPLE(T1, Initializer1, T2, Initializer2, T3, \
8491
Initializer3) \
8592
[[using __gnu__: __aligned__(alignof(T2)), \
86-
__aligned__(alignof(T3))]] [[no_unique_address]] T1 Initializer1; \
87-
[[no_unique_address]] __compressed_pair_padding<T1> __padding1_; \
88-
[[no_unique_address]] T2 Initializer2; \
89-
[[no_unique_address]] __compressed_pair_padding<T2> __padding2_; \
90-
[[no_unique_address]] T3 Initializer3; \
91-
[[no_unique_address]] __compressed_pair_padding<T3> __padding3_;
93+
__aligned__(alignof(T3))]] _LLDB_NO_UNIQUE_ADDRESS T1 Initializer1; \
94+
_LLDB_NO_UNIQUE_ADDRESS __compressed_pair_padding<T1> __padding1_; \
95+
_LLDB_NO_UNIQUE_ADDRESS T2 Initializer2; \
96+
_LLDB_NO_UNIQUE_ADDRESS __compressed_pair_padding<T2> __padding2_; \
97+
_LLDB_NO_UNIQUE_ADDRESS T3 Initializer3; \
98+
_LLDB_NO_UNIQUE_ADDRESS __compressed_pair_padding<T3> __padding3_;
9299
#elif COMPRESSED_PAIR_REV == 2
93100
#define _LLDB_COMPRESSED_PAIR(T1, Name1, T2, Name2) \
94-
[[no_unique_address]] T1 Name1; \
95-
[[no_unique_address]] T2 Name2
101+
_LLDB_NO_UNIQUE_ADDRESS T1 Name1; \
102+
_LLDB_NO_UNIQUE_ADDRESS T2 Name2
96103

97104
#define _LLDB_COMPRESSED_TRIPLE(T1, Name1, T2, Name2, T3, Name3) \
98-
[[no_unique_address]] T1 Name1; \
99-
[[no_unique_address]] T2 Name2; \
100-
[[no_unique_address]] T3 Name3
105+
_LLDB_NO_UNIQUE_ADDRESS T1 Name1; \
106+
_LLDB_NO_UNIQUE_ADDRESS T2 Name2; \
107+
_LLDB_NO_UNIQUE_ADDRESS T3 Name3
101108
#endif
102109
} // namespace __lldb
103110
} // namespace std

lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ template <class _CharT, class _Traits, class _Allocator> class basic_string {
9292
#ifdef NON_STANDARD_PADDING
9393
unsigned char __padding[sizeof(value_type) - 1];
9494
#else
95-
[[no_unique_address]] __padding<sizeof(value_type) - 1> __padding_;
95+
_LLDB_NO_UNIQUE_ADDRESS __padding<sizeof(value_type) - 1> __padding_;
9696
#endif
9797

9898
#ifdef BITMASKS
@@ -162,7 +162,7 @@ template <class _CharT, class _Traits, class _Allocator> class basic_string {
162162
#ifdef NON_STANDARD_PADDING
163163
unsigned char __padding[sizeof(value_type) - 1];
164164
#else // !NON_STANDARD_PADDING
165-
[[no_unique_address]] __padding<sizeof(value_type) - 1> __padding_;
165+
_LLDB_NO_UNIQUE_ADDRESS __padding<sizeof(value_type) - 1> __padding_;
166166
#endif // NON_STANDARD_PADDING
167167

168168
#endif // SHORT_UNION

0 commit comments

Comments
 (0)