← All tasks
cppCLIUtils/CLI11 #833Not a task: already works

Include directories should be set to SYSTEM if not stand-alone

envgap__CLIUtils__CLI11-833

01 / FAILURE SIGNATURE

As reported upstream

No identifying execution failure has been captured.
Not a benchmark task.
  • The project already builds and runs before the fix, so there is nothing to repair.

02 / ENVIRONMENT RECIPE

Base commit
1ffded5eaefef53f9577f6f5602cad4bbf5cd30c
Manifest
src/CMakeLists.txt
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

CLIUtils/CLI11 #833 · read the original issue
If CLI11 is not built as a standalone library, but instead as part of another project (e.g. via submodule or via cmake's FetchContent) `target_include_directories` should make use of the `SYSTEM` option. This will have the effect that the compiler will not emit any warnings for these include files, even if included in files for which the warning settings would normally cause a warning to be emitted.



So as a trivial example, if in your header you somewhere had

```cpp

unsigned int i = -1;

```

and I compile my project with  `-Wsign-conversion`, I get a warning for this line in _your_ header, if I include that in _my_ source file (for which that warning applies). Marking the CLI11 headers as "system headers" will make the compiler silently ignore that warning - which seems to be what downstream users want...
Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]