diff --git a/lib/wp/debug.h b/lib/wp/debug.h
index 2d1e41641d84c5587db1d8b45a0e7f6da6e3e1df..d57d6e380c8da12d6b7197e1afc43b10c3213adb 100644
--- a/lib/wp/debug.h
+++ b/lib/wp/debug.h
@@ -39,6 +39,8 @@ void wp_log_structured_standard (const gchar *log_domain,
         G_STRINGIFY (__LINE__), G_STRFUNC, type, object, __VA_ARGS__); \
 })
 
+#define wp_critical(...) \
+    wp_log (G_LOG_LEVEL_CRITICAL, 0, NULL, __VA_ARGS__)
 #define wp_warning(...) \
     wp_log (G_LOG_LEVEL_WARNING, 0, NULL, __VA_ARGS__)
 #define wp_message(...) \
@@ -50,6 +52,8 @@ void wp_log_structured_standard (const gchar *log_domain,
 #define wp_trace(...) \
     wp_log (WP_LOG_LEVEL_TRACE, 0, NULL, __VA_ARGS__)
 
+#define wp_critical_object(object, ...)  \
+    wp_log (G_LOG_LEVEL_CRITICAL, G_TYPE_FROM_INSTANCE (object), object, __VA_ARGS__)
 #define wp_warning_object(object, ...)  \
     wp_log (G_LOG_LEVEL_WARNING, G_TYPE_FROM_INSTANCE (object), object, __VA_ARGS__)
 #define wp_message_object(object, ...)  \
@@ -61,6 +65,8 @@ void wp_log_structured_standard (const gchar *log_domain,
 #define wp_trace_object(object, ...)  \
     wp_log (WP_LOG_LEVEL_TRACE, G_TYPE_FROM_INSTANCE (object), object, __VA_ARGS__)
 
+#define wp_critical_boxed(type, object, ...) \
+    wp_log (G_LOG_LEVEL_CRITICAL, type, object, __VA_ARGS__)
 #define wp_warning_boxed(type, object, ...) \
     wp_log (G_LOG_LEVEL_WARNING, type, object, __VA_ARGS__)
 #define wp_message_boxed(type, object, ...) \