aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickanchors_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/quick/items/qquickanchors_p.h')
-rw-r--r--src/quick/items/qquickanchors_p.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/quick/items/qquickanchors_p.h b/src/quick/items/qquickanchors_p.h
index 0e02d80ae8..f00b8b5ba7 100644
--- a/src/quick/items/qquickanchors_p.h
+++ b/src/quick/items/qquickanchors_p.h
@@ -89,7 +89,14 @@ public:
QQuickAnchors(QQuickItem *item, QObject *parent=0);
virtual ~QQuickAnchors();
- enum Anchor {
+ enum Anchor
+#if defined(Q_CC_CLANG) || !defined(Q_CC_GNU) // meaning: clang and msvc, but NOT gcc proper (because, you know, Q_CC_CLANG implies Q_CC_GNU)
+ // Not specifying the enum base type will have MSVC 'interpret' it as signed instead of an unsigned bit-field.
+ // However, specifying the enum base type breaks many GCCs, which complain that it can't store all values in a 7 bit bitfield.
+ : uint
+#endif
+ {
+ InvalidAnchor = 0x0,
LeftAnchor = 0x01,
RightAnchor = 0x02,
TopAnchor = 0x04,