diff --git a/include/vk_debug_report_lunarg.h b/include/vk_debug_report_lunarg.h
index af4dc84..633b50d 100644
--- a/include/vk_debug_report_lunarg.h
+++ b/include/vk_debug_report_lunarg.h
@@ -157,7 +157,7 @@
             return "Unhandled VkObjectType";
     }
 }
-#define DEBUG_REPORT_EXTENSION_NAME "DEBUG_REPORT"
+#define VK_DEBUG_REPORT_EXTENSION_NAME "DEBUG_REPORT"
 
 VK_DEFINE_NONDISP_HANDLE(VkDbgMsgCallback)
 
diff --git a/layers/vk_layer_logging.h b/layers/vk_layer_logging.h
index f2952e9..b81a5e5 100644
--- a/layers/vk_layer_logging.h
+++ b/layers/vk_layer_logging.h
@@ -91,7 +91,7 @@
     memset(debug_data, 0, sizeof(debug_report_data));
     for (uint32_t i = 0; i < extension_count; i++) {
         /* TODO: Check other property fields */
-        if (strcmp(ppEnabledExtensions[i], DEBUG_REPORT_EXTENSION_NAME) == 0) {
+        if (strcmp(ppEnabledExtensions[i], VK_DEBUG_REPORT_EXTENSION_NAME) == 0) {
             debug_data->g_DEBUG_REPORT = true;
         }
     }
diff --git a/layers/vk_layer_msg.h b/layers/vk_layer_msg.h
index 3b08a2c..9eb2fc8 100644
--- a/layers/vk_layer_msg.h
+++ b/layers/vk_layer_msg.h
@@ -38,7 +38,7 @@
 {
     for (uint32_t i = 0; i < extension_count; i++) {
         /* TODO: Check other property fields */
-        if (strcmp(ppEnabledExtensionNames[i], DEBUG_REPORT_EXTENSION_NAME) == 0) {
+        if (strcmp(ppEnabledExtensionNames[i], VK_DEBUG_REPORT_EXTENSION_NAME) == 0) {
             g_DEBUG_REPORT = true;
         }
     }
diff --git a/loader/debug_report.c b/loader/debug_report.c
index 5ef5c49..4ee3a3c 100644
--- a/loader/debug_report.c
+++ b/loader/debug_report.c
@@ -43,7 +43,7 @@
 
 static const struct loader_extension_property debug_report_extension_info = {
     .info =  {
-        .extName = DEBUG_REPORT_EXTENSION_NAME,
+        .extName = VK_DEBUG_REPORT_EXTENSION_NAME,
         .specVersion = VK_DEBUG_REPORT_EXTENSION_VERSION,
         },
     .origin = VK_EXTENSION_ORIGIN_LOADER,
@@ -62,7 +62,7 @@
     ptr_instance->debug_report_enabled = false;
 
     for (uint32_t i = 0; i < pCreateInfo->extensionCount; i++) {
-        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], DEBUG_REPORT_EXTENSION_NAME) == 0) {
+        if (strcmp(pCreateInfo->ppEnabledExtensionNames[i], VK_DEBUG_REPORT_EXTENSION_NAME) == 0) {
             ptr_instance->debug_report_enabled = true;
             return;
         }
diff --git a/tests/layer_validation_tests.cpp b/tests/layer_validation_tests.cpp
index 658216f..84dc7b4 100644
--- a/tests/layer_validation_tests.cpp
+++ b/tests/layer_validation_tests.cpp
@@ -150,7 +150,7 @@
         std::vector<const char *> instance_extension_names;
         std::vector<const char *> device_extension_names;
 
-        instance_extension_names.push_back(DEBUG_REPORT_EXTENSION_NAME);
+        instance_extension_names.push_back(VK_DEBUG_REPORT_EXTENSION_NAME);
         /*
          * Since CreateDbgMsgCallback is an instance level extension call
          * any extension / layer that utilizes that feature also needs
