We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see ourdocumentation.
There was an error while loading.Please reload this page.
1 parent4e86a79 commit91a51bdCopy full SHA for 91a51bd
lib/acto.h
@@ -99,7 +99,7 @@ struct message_container;
99
* Implements empty base optimization.
100
*/
101
template<typename T>
102
-structmessage_container<T,false> : private T {
+structmessage_container<T,true> : private T {
103
constexprmessage_container(T&& t)
104
: T(std::move(t)) {
105
}
@@ -119,7 +119,7 @@ struct message_container<T, false> : private T {
119
* we need to store them as a field.
120
121
122
-structmessage_container<T,true> {
+structmessage_container<T,false> {
123
124
: value_(std::move(t)) {
125
@@ -138,7 +138,8 @@ struct message_container<T, true> {
138
};
139
140
141
-usingmessage_container_t = message_container<T, std::is_final<T>::value>;
+usingmessage_container_t =
142
+ message_container<T, std::is_empty<T>::value && !std::is_final<T>::value>;
143
144
145
structmsg_wrap_t