define NULL as nullptr when used in C++11 or later

This should be safer for casting and more compatible with existing code
bases that wrongly assume it must be defined as a pointer.
This commit is contained in:
Ismael Luceno
2021-11-29 17:45:21 -05:00
committed by Rich Felker
parent 8274aaaaa1
commit 98e688a9da
8 changed files with 24 additions and 8 deletions
+3 -1
View File
@@ -7,7 +7,9 @@ extern "C" {
#include <features.h>
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -1,7 +1,9 @@
#ifndef _STDDEF_H
#define _STDDEF_H
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -25,7 +25,9 @@ extern "C" {
#include <bits/alltypes.h>
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -7,7 +7,9 @@ extern "C" {
#include <features.h>
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -7,7 +7,9 @@ extern "C" {
#include <features.h>
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -7,7 +7,9 @@ extern "C" {
#include <features.h>
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -15,7 +15,9 @@ extern "C" {
#define SEEK_CUR 1
#define SEEK_END 2
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)
+3 -1
View File
@@ -38,7 +38,9 @@ extern "C" {
#define WCHAR_MIN (-1-0x7fffffff+L'\0')
#endif
#ifdef __cplusplus
#if __cplusplus >= 201103L
#define NULL nullptr
#elif defined(__cplusplus)
#define NULL 0L
#else
#define NULL ((void*)0)