| Issue |
178102
|
| Summary |
Modules cause `performance-trivially-destructible` to conflict with itself
|
| Labels |
new issue
|
| Assignees |
|
| Reporter |
Ignition
|
File: CMakeLists.txt
```
cmake_minimum_required(VERSION 3.28)
project(clang_tidy_bug CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
add_library(mymodule)
target_sources(mymodule PUBLIC FILE_SET CXX_MODULES FILES mymodule.cppm)
target_include_directories(mymodule PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
add_executable(main main.cpp)
target_link_libraries(main PRIVATE mymodule)
```
File: counter.hpp
```
#pragma once
#include <atomic>
struct X {
X() : a(0) {}
std::atomic<int> a;
};
```
File: main.cpp
```
#include "counter.hpp"
import mymodule;
int main() { return 0; }
```
File: mymodule.cppm
```
module;
#include "counter.hpp"
export module mymodule;
```
File: reproduce.sh
```
#!/bin/bash
rm -rf build
cmake -B build -G Ninja -DCMAKE_CXX_COMPILER=clang++
cmake --build build
clang-tidy -checks='-*,performance-trivially-destructible' -p build main.cpp
```
Bug:
```
Fix conflicts with existing fix! The new replacement overlaps with an existing replacement.
New replacement: /home/gareth/checkout/memgraph/clang_tidy_bug_reproducer/counter.hpp: 78:+0:" = default"
Existing replacement: /home/gareth/checkout/memgraph/clang_tidy_bug_reproducer/counter.hpp: 38:+41:""
```
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs