cppgc: Use static_assert to force semi colon after macro
Bug: chromium:1056170 Change-Id: I1b6787ecea6ad58173a0bcc8e8d0862a5b19d299 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2199342 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Auto-Submit: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#67784}
This commit is contained in:
parent
bf251848b5
commit
81290c4851
@ -8,7 +8,6 @@
|
||||
#include <type_traits>
|
||||
|
||||
#include "cppgc/internal/api-constants.h"
|
||||
#include "cppgc/macros.h"
|
||||
#include "cppgc/platform.h"
|
||||
#include "cppgc/trace-trait.h"
|
||||
#include "cppgc/type-traits.h"
|
||||
@ -161,7 +160,7 @@ class GarbageCollectedMixin : public internal::GarbageCollectedBase {
|
||||
} \
|
||||
\
|
||||
private: \
|
||||
friend class internal::__thisIsHereToForceASemicolonAfterThisMacro
|
||||
static_assert(true, "Force semicolon.")
|
||||
|
||||
/**
|
||||
* Merge two or more Mixins into one.
|
||||
@ -185,7 +184,7 @@ class GarbageCollectedMixin : public internal::GarbageCollectedBase {
|
||||
} \
|
||||
\
|
||||
private: \
|
||||
friend class internal::__thisIsHereToForceASemicolonAfterThisMacro
|
||||
static_assert(true, "Force semicolon.")
|
||||
|
||||
} // namespace cppgc
|
||||
|
||||
|
@ -7,10 +7,6 @@
|
||||
|
||||
namespace cppgc {
|
||||
|
||||
namespace internal {
|
||||
class __thisIsHereToForceASemicolonAfterThisMacro {};
|
||||
} // namespace internal
|
||||
|
||||
// Use if the object is only stack allocated.
|
||||
#define CPPGC_STACK_ALLOCATED() \
|
||||
public: \
|
||||
@ -19,7 +15,7 @@ class __thisIsHereToForceASemicolonAfterThisMacro {};
|
||||
private: \
|
||||
void* operator new(size_t) = delete; \
|
||||
void* operator new(size_t, void*) = delete; \
|
||||
friend class internal::__thisIsHereToForceASemicolonAfterThisMacro
|
||||
static_assert(true, "Force semicolon.")
|
||||
|
||||
} // namespace cppgc
|
||||
|
||||
|
@ -9,7 +9,6 @@
|
||||
#include "cppgc/internal/compiler-specific.h"
|
||||
#include "cppgc/internal/prefinalizer-handler.h"
|
||||
#include "cppgc/liveness-broker.h"
|
||||
#include "cppgc/macros.h"
|
||||
|
||||
namespace cppgc {
|
||||
|
||||
@ -47,7 +46,7 @@ class PrefinalizerRegistration final {
|
||||
private: \
|
||||
CPPGC_NO_UNIQUE_ADDRESS internal::PrefinalizerRegistration<Class> \
|
||||
prefinalizer_dummy_{this}; \
|
||||
friend class internal::__thisIsHereToForceASemicolonAfterThisMacro
|
||||
static_assert(true, "Force semicolon.")
|
||||
|
||||
} // namespace cppgc
|
||||
|
||||
|
@ -12,6 +12,7 @@
|
||||
#include "include/cppgc/internal/gc-info.h"
|
||||
#include "include/cppgc/internal/persistent-node.h"
|
||||
#include "include/cppgc/liveness-broker.h"
|
||||
#include "include/cppgc/macros.h"
|
||||
#include "src/base/page-allocator.h"
|
||||
#include "src/heap/cppgc/heap-object-header.h"
|
||||
#include "src/heap/cppgc/marker.h"
|
||||
|
Loading…
Reference in New Issue
Block a user