null1.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 45 行

C
45
字号
// { dg-do link  }#include <cstddef>void g(int) {}void g(long) {}extern void g(void*);template <int I>void h() {}void k(int) {}template <class T>void l(T);template <>void l(int) {}template <>void l(long) {}int main(){  int i = NULL; // { dg-warning "" } converting NULL to non-pointer type  float z = NULL; // { dg-warning "" } converting NULL to non-pointer type  int a[2];  i != NULL; // { dg-warning "" } NULL used in arithmetic  NULL != z; // { dg-warning "" } NULL used in arithmetic  k != NULL; // No warning: decay conversion  NULL != a; // Likewise.  -NULL;     // { dg-warning "" } converting NULL to non-pointer type  +NULL;     // { dg-warning "" } converting NULL to non-pointer type  ~NULL;     // { dg-warning "" } converting NULL to non-pointer type  a[NULL] = 3; // { dg-warning "" } converting NULL to non-pointer-type  i = NULL;  // { dg-warning "" } converting NULL to non-pointer type  z = NULL;  // { dg-warning "" } converting NULL to non-pointer type  k(NULL);   // { dg-warning "" } converting NULL to int  g(NULL);   // { dg-warning "" } converting NULL to int  h<NULL>(); // No warning: NULL bound to integer template parameter  l(NULL);   // { dg-warning "" } converting NULL to int  NULL && NULL; // No warning: converting NULL to bool is OK}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?