nullability.c
792 Bytes
// RUN: %clang_cc1 -fsyntax-only -std=c99 -Wno-nullability-declspec -pedantic %s -verify
_Nonnull int *ptr; // expected-warning{{type nullability specifier '_Nonnull' is a Clang extension}}
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wnullability-extension"
_Nonnull int *ptr2; // no-warning
#pragma clang diagnostic pop
#if !__has_feature(nullability)
# error Nullability should always be supported
#endif
#if !__has_feature(nullability_on_arrays)
# error Nullability on array parameters should always be supported
#endif
#if !__has_extension(nullability)
# error Nullability should always be supported as an extension
#endif
#if !__has_extension(nullability_on_arrays)
# error Nullability on array parameters should always be supported as an extension
#endif