← Commit list

4ad87f2cb8

Viktor Szakats
Viktor Szakats
2025-12-21
SUCCESS Duration: 260s

Subject

checksrc: ensure using `ifdef`/`ifndef` when possible, fix fallouts

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

lib/amigaos.c+1 -1
@@ -30,7 +30,7 @@
#include "amigaos.h"
#ifdef HAVE_PROTO_BSDSOCKET_H
-# if defined(__amigaos4__)
+# ifdef __amigaos4__
# include <bsdsocket/socketbasetags.h>
# elif !defined(USE_AMISSL)
# include <amitcp/socketbasetags.h>
lib/setopt.c+1 -1
@@ -521,7 +521,7 @@ static CURLcode setopt_bool(struct Curl_easy *data, CURLoption option,
case CURLOPT_HTTP09_ALLOWED:
s->http09_allowed = enabled;
break;
-#if !defined(CURL_DISABLE_COOKIES)
+#ifndef CURL_DISABLE_COOKIES
case CURLOPT_COOKIESESSION:
/*
* Set this option to TRUE to start a new "cookie session". It will
lib/url.c+1 -1
@@ -1527,7 +1527,7 @@ const struct Curl_handler *Curl_getn_scheme_handler(const char *scheme,
#else
NULL,
#endif
-#if defined(USE_SSH)
+#ifdef USE_SSH
&Curl_handler_scp,
#else
NULL,
lib/vssh/libssh.c+2 -2
@@ -204,7 +204,7 @@ static CURLcode sftp_error_to_CURLE(int err)
return CURLE_SSH;
}
-#if !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
static const char *myssh_statename(sshstate state)
{
static const char * const names[] = {
@@ -287,7 +287,7 @@ static void myssh_set_state(struct Curl_easy *data,
struct ssh_conn *sshc,
sshstate nowstate)
{
-#if !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
if(sshc->state != nowstate) {
CURL_TRC_SSH(data, "[%s] -> [%s]",
myssh_statename(sshc->state),
lib/vssh/libssh2.c+2 -2
@@ -274,7 +274,7 @@ static LIBSSH2_FREE_FUNC(my_libssh2_free)
Curl_cfree(ptr);
}
-#if !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
static const char *myssh_statename(sshstate state)
{
static const char * const names[] = {
@@ -357,7 +357,7 @@ static void myssh_set_state(struct Curl_easy *data,
struct ssh_conn *sshc,
sshstate nowstate)
{
-#if !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
if(sshc->state != nowstate) {
CURL_TRC_SSH(data, "[%s] -> [%s]",
myssh_statename(sshc->state),
lib/vtls/apple.c+1 -1
@@ -225,7 +225,7 @@ CURLcode Curl_vtls_apple_verify(struct Curl_cfilter *cf,
#endif
#ifdef SUPPORTS_SecTrustEvaluateWithError
-#if defined(HAVE_BUILTIN_AVAILABLE)
+#ifdef HAVE_BUILTIN_AVAILABLE
if(__builtin_available(macOS 10.14, iOS 12, tvOS 12, watchOS 5, *)) {
#else
if(1) {
scripts/checksrc.pl+6 -0
@@ -162,6 +162,7 @@ my %warnings = (
'EXCLAMATIONSPACE' => 'Whitespace after exclamation mark in expression',
'FIXME' => 'FIXME or TODO comment',
'FOPENMODE' => 'fopen needs a macro for the mode string',
+ 'IFDEFSINGLE', => 'use ifdef/ifndef for single macro checks',
'INCLUDEDUP', => 'same file is included again',
'INDENTATION' => 'wrong start column for code',
'LONGLINE' => "Line longer than $max_column",
@@ -658,6 +659,11 @@ sub scanfile {
$line, length($1), $file, $l, "\/\/ comment");
}
+ if($l =~ /^\s*#\s*if\s+!?\s*defined\([a-zA-Z0-9_]+\)$/) {
+ checkwarn("IFDEFSINGLE",
+ $line, length($1), $file, $l, "use ifdef/ifndef for single macro checks");
+ }
+
if($l =~ /^(\#\s*include\s+)([\">].*[>}"])/) {
my ($pre, $path) = ($1, $2);
if($includes{$path}) {
src/tool_cb_soc.c+1 -1
@@ -45,7 +45,7 @@ curl_socket_t tool_socket_open_mptcp_cb(void *clientp,
(void)purpose;
if(protocol == IPPROTO_TCP)
-#if defined(__linux__)
+#ifdef __linux__
# ifndef IPPROTO_MPTCP
# define IPPROTO_MPTCP 262
# endif
tests/data/test1185+15 -2
@@ -79,6 +79,13 @@ void startfunc(int a, int b) {
if(sprintf(buffer, "%s", moo)) {}
*buffer_len = (ssize_t)alsobad((char *)buffer, NULL, 16);
+# if defined(SINGLE_MACRO)
+ #if ! defined(__macro_10)
+#elif !defined(TESTMACRO)
+#endif
+#endif
+#endif
+
// CPP comment ?
/* comment does not end
@@ -205,7 +212,13 @@ void startfunc(int a, int b) {
./%LOGDIR/code1185.c:62:25: warning: use of alsobad is banned (BANNEDFUNC)
*buffer_len = (ssize_t)alsobad((char *)buffer, NULL, 16);
^
-./%LOGDIR/code1185.c:64:2: warning: // comment (CPPCOMMENTS)
+./%LOGDIR/code1185.c:64:1: warning: use ifdef/ifndef for single macro checks (IFDEFSINGLE)
+ # if defined(SINGLE_MACRO)
+ ^
+./%LOGDIR/code1185.c:65:1: warning: use ifdef/ifndef for single macro checks (IFDEFSINGLE)
+ #if ! defined(__macro_10)
+ ^
+./%LOGDIR/code1185.c:71:2: warning: // comment (CPPCOMMENTS)
// CPP comment ?
^
./%LOGDIR/code1185.c:1:1: error: Missing copyright statement (COPYRIGHT)
@@ -214,7 +227,7 @@ void startfunc(int a, int b) {
./%LOGDIR/code1185.c:1:1: error: Missing closing comment (OPENCOMMENT)
%SP
^
-checksrc: 0 errors and 42 warnings
+checksrc: 0 errors and 44 warnings
</stdout>
<errorcode>
5