typecheck-gcc.h: fix the typechecks

Refreshed, cleaned up, improved and now checks *all* options.

This must have stopped working at some point. gcc-14 least shows these
warnings with this change, not without.

Add test 745 to verify that all options listed in curl.h is also checked
by the typechecker.

This improved checker found almost 30 mistakes in the curl git
repository.

Closes #17143
This commit is contained in:
Daniel Stenberg 2025-04-22 22:20:27 +02:00
parent 29e0a8a09b
commit 79b4e56b3f
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
5 changed files with 462 additions and 197 deletions

View file

@ -107,6 +107,7 @@ test709 test710 test711 test712 test713 test714 test715 test716 test717 \
test718 test719 test720 test721 test722 test723 test724 test725 test726 \
test727 test728 test729 test730 test731 test732 test733 test734 test735 \
test736 test737 test738 test739 test740 test741 test742 test743 test744 \
test745 \
\
test780 test781 test782 test783 test784 test785 test786 test787 test788 \
test789 test790 test791 \

31
tests/data/test745 Normal file
View file

@ -0,0 +1,31 @@
<testcase>
<info>
<keywords>
source analysis
symbols-in-versions
</keywords>
</info>
#
# Client-side
<client>
<server>
none
</server>
<name>
Verify that typecheck-gcc and curl.h are in sync
</name>
<command type="perl">
%SRCDIR/test745.pl %SRCDIR/..
</command>
</client>
<verify>
<stdout>
OK
</stdout>
</verify>
</testcase>