intel / intel/cpp-std-extensions

clang-tidy failure on provided example

Open
#404 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
127
Forks
18
Avg merge
11h 45m
Merged PRs (30d)
13

Description

The current main will fail clang-tidy (but _pass_ clang and gcc compilation) on a simple example from the docs:

```c++
#include
int main() {
auto s = stdx::ct_format<"Hello {} {}">(CX_VALUE(42), 17);
}
```

The errors are:

```
stdx/ct_format.hpp:348:28: error: constexpr variable 'sz' must be initialized by a constant expression [clang-diagnostic-error]
stdx/ct_format.hpp:349:34: error: no matching function for call to 'perform_format' [clang-diagnostic-error]
```

I believe the source of this problem is a commit in the fmt library as described in [this issue](https://github.com/intel/compile-time-init-build/issues/951).

Contributor guide

Open the contributing guide

Research direction

Reproduce the documented example with clang-tidy and inspect stdx/ct_format.hpp around lines 348-349, where the constexpr variable and perform_format call fail. Compare the relevant fmt-library change described in the linked upstream issue; done means the example passes clang-tidy while retaining successful clang and gcc compilation.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.