-
-
Notifications
You must be signed in to change notification settings - Fork 197
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Clang compiler support and update project to C17 standard #1962
Conversation
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
…LTS), Clang 16.0.2 (Alpine 3.18), and Clang 17.0.6 (Alping Edge) Signed-off-by: DL6ER <dl6er@dl6er.de>
Opening this PR in draft mode as I first want to add another CI step that ensures compilation fails on Unfortunately, there is currently a bug in
The proper fix for this to have the |
Bug report opened upstream https://gitlab.alpinelinux.org/alpine/aports/-/issues/16121 |
…l balways e linked statically Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
This pull request has conflicts, please resolve those before we can evaluate the pull request. |
Conflicts have been resolved. |
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
…"#pragma message" is not supported by older clang versions Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
…ition detection working Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
1a73472
to
f1506ee
Compare
The upstream bug has been fixed in |
This PR is done. It now awaits the decision on pi-hole/docker-base-images#94 and will then uses the tagged container ( |
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Signed-off-by: DL6ER <dl6er@dl6er.de>
Ready for review + merge |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are a few places where you removed some counter variables - why? Were they not used anymore and you just noticed yet?
E.g. totalcount
in stats.c
, num_clients
in stats_database.c
and elements
ind validator.c
All changes were some due to compiler warnings triggered by the new C standard and additional warnings due to using I'm the particular case you found they were actually never used and |
What does this implement/fix?
Add Clang compiler support, tested with
C17 is the informal name for ISO/IEC 9899:2018 and was published in June 2018. It replaced C11 and will eventually be superseded by C23 when it is published. C17 fixes numerous minor defects in C11 without introducing new language features. It required a number of subtle code changes without any real changes. We also bump the required minimum CMake version to the lowest version supporting the C17 standard.
Related issue or feature (if applicable): N/A
Pull request in docs with documentation (if applicable): N/A
By submitting this pull request, I confirm the following:
git rebase
)Checklist:
developmental
branch.