Я обновил свои macOS и xcode до последней версии всего за 2 дня go, и у меня разболелась голова из-за огромного количества ошибок компиляции, которые он показывает для всех различных программ.
Я использую ./configure && make && make install команды для компиляции и установки.
Большинство ошибок / предупреждений происходят из-за отсутствия предупреждений спецификатора типа обнуляемости, но в конце они заканчиваются ошибками. Например, команда make
для PHP 7.4.5 генерирует 696266 строк предупреждений и ошибок, вот последние 266 строк:
/usr/local/include/signal.h:83:41: note: insert '_Nullable' if the pointer may be null
int pthread_sigmask(int, const sigset_t *, sigset_t *) __DARWIN_ALIAS(pthread_sigmask);
^
_Nullable
/usr/local/include/signal.h:83:41: note: insert '_Nonnull' if the pointer should never be null
int pthread_sigmask(int, const sigset_t *, sigset_t *) __DARWIN_ALIAS(pthread_sigmask);
^
_Nonnull
/usr/local/include/signal.h:83:53: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int pthread_sigmask(int, const sigset_t *, sigset_t *) __DARWIN_ALIAS(pthread_sigmask);
^
/usr/local/include/signal.h:83:53: note: insert '_Nullable' if the pointer may be null
int pthread_sigmask(int, const sigset_t *, sigset_t *) __DARWIN_ALIAS(pthread_sigmask);
^
_Nullable
/usr/local/include/signal.h:83:53: note: insert '_Nonnull' if the pointer should never be null
int pthread_sigmask(int, const sigset_t *, sigset_t *) __DARWIN_ALIAS(pthread_sigmask);
^
_Nonnull
/usr/local/include/signal.h:84:43: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigaction(int, const struct sigaction * __restrict,
^
/usr/local/include/signal.h:84:43: note: insert '_Nullable' if the pointer may be null
int sigaction(int, const struct sigaction * __restrict,
^
_Nullable
/usr/local/include/signal.h:84:43: note: insert '_Nonnull' if the pointer should never be null
int sigaction(int, const struct sigaction * __restrict,
^
_Nonnull
/usr/local/include/signal.h:85:23: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
struct sigaction * __restrict);
^
/usr/local/include/signal.h:85:23: note: insert '_Nullable' if the pointer may be null
struct sigaction * __restrict);
^
_Nullable
/usr/local/include/signal.h:85:23: note: insert '_Nonnull' if the pointer should never be null
struct sigaction * __restrict);
^
_Nonnull
/usr/local/include/signal.h:86:24: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigaddset(sigset_t *, int);
^
/usr/local/include/signal.h:86:24: note: insert '_Nullable' if the pointer may be null
int sigaddset(sigset_t *, int);
^
_Nullable
/usr/local/include/signal.h:86:24: note: insert '_Nonnull' if the pointer should never be null
int sigaddset(sigset_t *, int);
^
_Nonnull
/usr/local/include/signal.h:87:31: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
^
/usr/local/include/signal.h:87:31: note: insert '_Nullable' if the pointer may be null
int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
^
_Nullable
/usr/local/include/signal.h:87:31: note: insert '_Nonnull' if the pointer should never be null
int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
^
_Nonnull
/usr/local/include/signal.h:87:53: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
^
/usr/local/include/signal.h:87:53: note: insert '_Nullable' if the pointer may be null
int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
^
_Nullable
/usr/local/include/signal.h:87:53: note: insert '_Nonnull' if the pointer should never be null
int sigaltstack(const stack_t * __restrict, stack_t * __restrict) __DARWIN_ALIAS(sigaltstack) __WATCHOS_PROHIBITED __TVOS_PROHIBITED;
^
_Nonnull
/usr/local/include/signal.h:88:24: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigdelset(sigset_t *, int);
^
/usr/local/include/signal.h:88:24: note: insert '_Nullable' if the pointer may be null
int sigdelset(sigset_t *, int);
^
_Nullable
/usr/local/include/signal.h:88:24: note: insert '_Nonnull' if the pointer should never be null
int sigdelset(sigset_t *, int);
^
_Nonnull
/usr/local/include/signal.h:89:26: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigemptyset(sigset_t *);
^
/usr/local/include/signal.h:89:26: note: insert '_Nullable' if the pointer may be null
int sigemptyset(sigset_t *);
^
_Nullable
/usr/local/include/signal.h:89:26: note: insert '_Nonnull' if the pointer should never be null
int sigemptyset(sigset_t *);
^
_Nonnull
/usr/local/include/signal.h:90:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigfillset(sigset_t *);
^
/usr/local/include/signal.h:90:25: note: insert '_Nullable' if the pointer may be null
int sigfillset(sigset_t *);
^
_Nullable
/usr/local/include/signal.h:90:25: note: insert '_Nonnull' if the pointer should never be null
int sigfillset(sigset_t *);
^
_Nonnull
/usr/local/include/signal.h:94:32: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigismember(const sigset_t *, int);
^
/usr/local/include/signal.h:94:32: note: insert '_Nullable' if the pointer may be null
int sigismember(const sigset_t *, int);
^
_Nullable
/usr/local/include/signal.h:94:32: note: insert '_Nonnull' if the pointer should never be null
int sigismember(const sigset_t *, int);
^
_Nonnull
/usr/local/include/signal.h:96:25: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigpending(sigset_t *);
^
/usr/local/include/signal.h:96:25: note: insert '_Nullable' if the pointer may be null
int sigpending(sigset_t *);
^
_Nullable
/usr/local/include/signal.h:96:25: note: insert '_Nonnull' if the pointer should never be null
int sigpending(sigset_t *);
^
_Nonnull
/usr/local/include/signal.h:97:37: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
^
/usr/local/include/signal.h:97:37: note: insert '_Nullable' if the pointer may be null
int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
^
_Nullable
/usr/local/include/signal.h:97:37: note: insert '_Nonnull' if the pointer should never be null
int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
^
_Nonnull
/usr/local/include/signal.h:97:60: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
^
/usr/local/include/signal.h:97:60: note: insert '_Nullable' if the pointer may be null
int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
^
_Nullable
/usr/local/include/signal.h:97:60: note: insert '_Nonnull' if the pointer should never be null
int sigprocmask(int, const sigset_t * __restrict, sigset_t * __restrict);
^
_Nonnull
/usr/local/include/signal.h:100:31: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigsuspend(const sigset_t *) __DARWIN_ALIAS_C(sigsuspend);
^
/usr/local/include/signal.h:100:31: note: insert '_Nullable' if the pointer may be null
int sigsuspend(const sigset_t *) __DARWIN_ALIAS_C(sigsuspend);
^
_Nullable
/usr/local/include/signal.h:100:31: note: insert '_Nonnull' if the pointer should never be null
int sigsuspend(const sigset_t *) __DARWIN_ALIAS_C(sigsuspend);
^
_Nonnull
/usr/local/include/signal.h:101:28: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
^
/usr/local/include/signal.h:101:28: note: insert '_Nullable' if the pointer may be null
int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
^
_Nullable
/usr/local/include/signal.h:101:28: note: insert '_Nonnull' if the pointer should never be null
int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
^
_Nonnull
/usr/local/include/signal.h:101:46: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
^
/usr/local/include/signal.h:101:46: note: insert '_Nullable' if the pointer may be null
int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
^
_Nullable
/usr/local/include/signal.h:101:46: note: insert '_Nonnull' if the pointer should never be null
int sigwait(const sigset_t * __restrict, int * __restrict) __DARWIN_ALIAS_C(sigwait);
^
_Nonnull
/usr/local/include/signal.h:103:39: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
void psignal(unsigned int, const char *);
^
/usr/local/include/signal.h:103:39: note: insert '_Nullable' if the pointer may be null
void psignal(unsigned int, const char *);
^
_Nullable
/usr/local/include/signal.h:103:39: note: insert '_Nonnull' if the pointer should never be null
void psignal(unsigned int, const char *);
^
_Nonnull
/usr/local/include/signal.h:106:31: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigvec(int, struct sigvec *, struct sigvec *);
^
/usr/local/include/signal.h:106:31: note: insert '_Nullable' if the pointer may be null
int sigvec(int, struct sigvec *, struct sigvec *);
^
_Nullable
/usr/local/include/signal.h:106:31: note: insert '_Nonnull' if the pointer should never be null
int sigvec(int, struct sigvec *, struct sigvec *);
^
_Nonnull
/usr/local/include/signal.h:106:48: warning: pointer is missing a nullability type specifier (_Nonnull, _Nullable, or _Null_unspecified) [-Wnullability-completeness]
int sigvec(int, struct sigvec *, struct sigvec *);
^
/usr/local/include/signal.h:106:48: note: insert '_Nullable' if the pointer may be null
int sigvec(int, struct sigvec *, struct sigvec *);
^
_Nullable
/usr/local/include/signal.h:106:48: note: insert '_Nonnull' if the pointer should never be null
int sigvec(int, struct sigvec *, struct sigvec *);
^
_Nonnull
In file included from /tmp/php-7.4.5/ext/intl/intl_convertcpp.cpp:22:
In file included from /tmp/php-7.4.5/main/php.h:33:
In file included from /tmp/php-7.4.5/Zend/zend.h:356:
/tmp/php-7.4.5/Zend/zend_operators.h:110:18: error: expected unqualified-id
if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) {
^
/tmp/php-7.4.5/main/php_config.h:2333:26: note: expanded from macro 'zend_finite'
#define zend_finite std::isfinite
^
/usr/local/include/math.h:155:5: note: expanded from macro 'isfinite'
( sizeof(x) == sizeof(float) ? __inline_isfinitef((float)(x)) \
^
In file included from /tmp/php-7.4.5/ext/intl/intl_convertcpp.cpp:22:
In file included from /tmp/php-7.4.5/main/php.h:33:
In file included from /tmp/php-7.4.5/Zend/zend.h:356:
/tmp/php-7.4.5/Zend/zend_operators.h:110:48: error: expected unqualified-id
if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) {
^
/tmp/php-7.4.5/main/php_config.h:2331:25: note: expanded from macro 'zend_isnan'
#define zend_isnan std::isnan
^
/usr/local/include/math.h:165:5: note: expanded from macro 'isnan'
( sizeof(x) == sizeof(float) ? __inline_isnanf((float)(x)) \
^
In file included from /tmp/php-7.4.5/ext/intl/intl_convertcpp.cpp:22:
In file included from /tmp/php-7.4.5/main/php.h:33:
In file included from /tmp/php-7.4.5/Zend/zend.h:356:
/tmp/php-7.4.5/Zend/zend_operators.h:121:18: error: expected unqualified-id
if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) {
^
/tmp/php-7.4.5/main/php_config.h:2333:26: note: expanded from macro 'zend_finite'
#define zend_finite std::isfinite
^
/usr/local/include/math.h:155:5: note: expanded from macro 'isfinite'
( sizeof(x) == sizeof(float) ? __inline_isfinitef((float)(x)) \
^
In file included from /tmp/php-7.4.5/ext/intl/intl_convertcpp.cpp:22:
In file included from /tmp/php-7.4.5/main/php.h:33:
In file included from /tmp/php-7.4.5/Zend/zend.h:356:
/tmp/php-7.4.5/Zend/zend_operators.h:121:48: error: expected unqualified-id
if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) {
^
/tmp/php-7.4.5/main/php_config.h:2331:25: note: expanded from macro 'zend_isnan'
#define zend_isnan std::isnan
^
/usr/local/include/math.h:165:5: note: expanded from macro 'isnan'
( sizeof(x) == sizeof(float) ? __inline_isnanf((float)(x)) \
^
26 warnings and 17 errors generated.
make: *** [ext/intl/intl_convertcpp.lo] Error 1
Я PHP разработчик и я ./configure && make && make install
нуб. Я ценю любого, кто может помочь.