浏览代码

Make NULL compatible with C23/C++

Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
Callum Farmer 2 年之前
父节点
当前提交
d0900861c2
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      inc/efidef.h

+ 8 - 0
inc/efidef.h

@@ -31,7 +31,15 @@ typedef unsigned char BOOLEAN;
 #endif
 #endif
 
 
 #ifndef NULL
 #ifndef NULL
+#if (defined(__cplusplus) && __cplusplus >= 201103L) || (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L)
+    #define NULL    nullptr
+#else
+#if !defined(__cplusplus)
     #define NULL    ((VOID *) 0)
     #define NULL    ((VOID *) 0)
+#else
+    #define NULL    0
+#endif
+#endif
 #endif
 #endif
 
 
 typedef UINTN           EFI_STATUS;
 typedef UINTN           EFI_STATUS;