On Mon, Nov 13, 2023 at 5:16 PM Jonathan Wakely <jwak...@redhat.com> wrote:

>
> Typically, yes, I'd expect a failure. But it's possible for code to do:
>
> #if __has_include(<foo.h>)
> # include <foo.h>
> // use features in that header
> #else
> // roll your own inferior version
> #endif


And in the particular case of the Qt private headers
(where this started) I have seen this, or an equivalent
construct, used to not support a feature at all.

And yes, I do believe Qt places some things into
private headers that they should probably provide
a public API to access, but that is a different
issue.

In *theory* the application would report that
feature X is disabled or unavailable during
configuration and/or during the checks,
and the packager would be expected to
realize the implications, but for large apps
such messages might be missed or not
understood.

I am slightly in favor of making missing
headers an error as long as it is easy
enough to override that to at least provide
a few more guard rails.
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to