summaryrefslogtreecommitdiffstats
path: root/Source/JavaScriptCore/wtf/PageAllocation.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/JavaScriptCore/wtf/PageAllocation.h')
-rw-r--r--Source/JavaScriptCore/wtf/PageAllocation.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/Source/JavaScriptCore/wtf/PageAllocation.h b/Source/JavaScriptCore/wtf/PageAllocation.h
index 232cd20..ad3d217 100644
--- a/Source/JavaScriptCore/wtf/PageAllocation.h
+++ b/Source/JavaScriptCore/wtf/PageAllocation.h
@@ -85,10 +85,17 @@ public:
{
}
- using PageBlock::operator bool;
using PageBlock::size;
using PageBlock::base;
+#ifndef __clang__
+ using PageBlock::operator bool;
+#else
+ // FIXME: This is a workaround for <rdar://problem/8876150>, wherein Clang incorrectly emits an access
+ // control warning when a client tries to use operator bool exposed above via "using PageBlock::operator bool".
+ operator bool() const { return PageBlock::operator bool(); }
+#endif
+
static PageAllocation allocate(size_t size, OSAllocator::Usage usage = OSAllocator::UnknownUsage, bool writable = true, bool executable = false)
{
ASSERT(isPageAligned(size));