Improve VK_MAKE_VERSION and VK_BIT macros
authorPyry Haulos <phaulos@google.com>
Fri, 8 Apr 2016 00:10:27 +0000 (17:10 -0700)
committerPyry Haulos <phaulos@google.com>
Sun, 10 Apr 2016 00:14:11 +0000 (17:14 -0700)
VK_MAKE_VERSION was causing int->uint conversion warnings.

Put arguments inside parenthesis to make evaluation unambiguous.

Change-Id: Ia47efdf77789905f4c45a551c08eb0ff3496c556

external/vulkancts/framework/vulkan/vkDefs.hpp

index 4a8d574..6d1bccb 100644 (file)
@@ -49,8 +49,8 @@ struct NAME {                                                                                 \
 };                                                                                                             \
 } // pt
 
-#define VK_MAKE_VERSION(MAJOR, MINOR, PATCH)   ((MAJOR << 22) | (MINOR << 12) | PATCH)
-#define VK_BIT(NUM)                                                            (1<<NUM)
+#define VK_MAKE_VERSION(MAJOR, MINOR, PATCH)   (((deUint32)(MAJOR) << 22u) | ((deUint32)(MINOR) << 12u) | (deUint32)(PATCH))
+#define VK_BIT(NUM)                                                            (1u<<(deUint32)(NUM))
 
 #define VK_CHECK(EXPR)                                                 vk::checkResult((EXPR), #EXPR, __FILE__, __LINE__)
 #define VK_CHECK_MSG(EXPR, MSG)                                        vk::checkResult((EXPR), MSG, __FILE__, __LINE__)