Builder curl-unthreaded-solaris11-i386 Build #4638
Results:
Build successful
SourceStamp:
| Project | curl |
| Repository | https://github.com/curl/curl.git |
| Branch | master |
| Revision | 4497dbd9ac4a31b0056a9179d500676ebe091de5 |
| Got Revision | 4497dbd9ac4a31b0056a9179d500676ebe091de5 |
| Changes | 1 change |
BuildSlave:
unstable11xReason:
The SingleBranchScheduler scheduler named 'schedule-curl-unthreaded-solaris11-i386' triggered this build
Steps and Logfiles:
Build Properties:
| Name | Value | Source |
|---|---|---|
| branch | master | Build |
| builddir | /export/home/buildbot/slave/curl-unthreaded-solaris11-i386 | slave |
| buildername | curl-unthreaded-solaris11-i386 | Builder |
| buildnumber | 4638 | Build |
| codebase | Build | |
| got_revision | 4497dbd9ac4a31b0056a9179d500676ebe091de5 | Git |
| osplatform | I386 | SetPropertyFromCommand Step |
| osrelease | 11 | SetPropertyFromCommand Step |
| project | curl | Build |
| repository | https://github.com/curl/curl.git | Build |
| revision | 4497dbd9ac4a31b0056a9179d500676ebe091de5 | Build |
| scheduler | schedule-curl-unthreaded-solaris11-i386 | Scheduler |
| slavename | unstable11x | BuildSlave |
| workdir | /export/home/buildbot/slave/curl-unthreaded-solaris11-i386 | slave (deprecated) |
Forced Build Properties:
| Name | Label | Value |
|---|
Responsible Users:
- Viktor Szakatscommit@vsz.me
Timing:
| Start | Thu Feb 19 02:09:56 2026 |
| End | Thu Feb 19 05:24:34 2026 |
| Elapsed | 3 hrs, 14 mins, 37 secs |
All Changes:
:
Change #258030
Category curl Changed by Viktor Szakats <commit@vsz.me> Changed at Thu 19 Feb 2026 00:02:11 Repository https://github.com/curl/curl.git Project curl Branch master Revision 4497dbd9ac4a31b0056a9179d500676ebe091de5 Comments
clang-tidy: fixes and improvements Fix bigger and smaller kinks in how clang-tidy is configured and used. Sync behavior more between autotools and cmake, lib/src and tests. Bump clang-tidy minimum version and prepare logic to allow using clang-tidy to a fuller extent. - move clang-tidy settings from builds to a new `.clang-tidy.yml`. To make it easy to see and edit checks at one place. Also to allow using the `--checks=` option internally to silence tests-specific checks. (clang-tidy does not support multiple `--check=` options via the command-line.) Use explicit `--config-file=` option to point to the configuration. - .clang-tidy.yml: link to documentation. - suppress `clang-diagnostic-nullability-extension` due to a false positive in libtests with `CURL_WERROR=ON` and `PICKY_COMPILER=OFF`. - .clang-tidy.yml: enable `portability-*`, `misc-const-correctness`. - drop `--quiet` clang-tidy option by default to make its working a bit more transparent. The extra output is minimial. - consistently use double-dashes in clang-tidy command-line options. Supported by clang-tidy 9.0.0+ (2019-09-19). Before this patch single and double were used arbitrarily. - src/tool_parsecfg: silence false positive `clang-analyzer-unix.Stream`. Seen with clang 18 + clang-tidy 19 and 20 (only with autotools.) - INTERNALS: require clang-tidy 14.0.0+. For the `--config-file` option. - INTERNALS: recommend clang-tidy 19.1.0+, to avoid bogus `clang-analyzer-valist.Uninitialized` warnings. (bug details below) autotools: - allow configuring the clang-tidy tool via `CLANG_TIDY` env. Also to use in GHA to point to a suffixed clang-tody tool. - fix to pass CFLAGS to lib, src sources. (keep omitting them when using a non-clang compiler.) - fix to pass `--warnings-as-errors=*` in quotes to avoid globbing. cmake: - fix to not pass an empty `-I` to clang-tidy. - fix to pass CFLAGS (picky warnings) to clang-tidy for test sources. (keep omitting them when using a non-clang compiler.) - fix to disable `clang-diagnostic-unused-function` for test sources. (tests have static entry points, which trigger this check when checking them as individidual sources.) - fix forwarding `CURL_CLANG_TIDYFLAGS` to clang-tidy. - force disable picky warnings when running clang-tidy with a non-clang compiler. To not pass these flags when checking lib and src. CI: - GHA/linux: avoid clang-tidy bug by upgrading to v19, and drop the workaround. - GHA/linux: switch to clang from gcc in the clang-tidy job. Using gcc doesn't allow passing CFLAGS to clang-tidy, making it less effective. (My guess this was one factor contributing to this job often missing to find certain issues compared to GHA/macos.) I recomment using clang-tidy with a clang compiler, preferably the same version or one that's compatible. Other cases are best effort, and may fail if a C flag is passed to clang-tidy that it does not understand. Picky warnings are mostly omitted when using a non-clang compiler, reducing its usefulness. Details and reproducer for the v18 (and earlier) clang-tidy bug, previously affecting the GHA/linux job: clang-tidy <=18 emits false warnings way when passing multiple C sources at once (as done with autotools): ```sh cat > src1.c <<EOF #include <string.h> static void dummy(void *p) { memcmp(p, p, 0); } EOF cat > src2.c <<EOF #include <stdarg.h> void vafunc(int option, ...) { va_list param; va_start(param, option); if(option) (void)va_arg(param, int); va_end(param); } EOF /opt/homebrew/opt/llvm@18/bin/clang-tidy --checks=clang-analyzer-valist.Uninitialized src1.c src2.c # src2.c:7:11: warning: va_arg() is called on an uninitialized va_list [clang-analyzer-valist.Uninitialized] ``` Follow-up to e86542038dda88dadf8959584e803895f979310c #17047 Closes #20605Changed files
- .clang-tidy.yml
- .github/workflows/linux.yml
- CMake/Macros.cmake
- CMakeLists.txt
- Makefile.am
- configure.ac
- docs/INTERNALS.md
- lib/Makefile.am
- src/Makefile.am
- src/tool_parsecfg.c