-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
When compiling the package with LLVM 19 i encountered the following errors:
./dccrg/dccrg.hpp:10597:33: error: no member named 'get_x_index' in 'Dccrg<type-parameter-0-0, type-parameter-0-1, tuple<type-parameter-0-2...>, tuple<type-parameter-0-3...>>'
10597 | const uint64_t index1 = this->get_x_index(cell1);
| ~~~~ ^
./dccrg/dccrg.hpp:10598:33: error: no member named 'get_x_index' in 'Dccrg<type-parameter-0-0, type-parameter-0-1, tuple<type-parameter-0-2...>, tuple<type-parameter-0-3...>>'
10598 | const uint64_t index2 = this->get_x_index(cell2);
| ~~~~ ^
./dccrg/dccrg.hpp:10627:33: error: no member named 'get_y_index' in 'Dccrg<type-parameter-0-0, type-parameter-0-1, tuple<type-parameter-0-2...>, tuple<type-parameter-0-3...>>'
10627 | const uint64_t index1 = this->get_y_index(cell1);
| ~~~~ ^
./dccrg/dccrg.hpp:10628:33: error: no member named 'get_y_index' in 'Dccrg<type-parameter-0-0, type-parameter-0-1, tuple<type-parameter-0-2...>, tuple<type-parameter-0-3...>>'
10628 | const uint64_t index2 = this->get_y_index(cell2);
| ~~~~ ^
./dccrg/dccrg.hpp:10657:33: error: no member named 'get_z_index' in 'Dccrg<type-parameter-0-0, type-parameter-0-1, tuple<type-parameter-0-2...>, tuple<type-parameter-0-3...>>'
10657 | const uint64_t index1 = this->get_z_index(cell1);
| ~~~~ ^
./dccrg/dccrg.hpp:10658:33: error: no member named 'get_z_index' in 'Dccrg<type-parameter-0-0, type-parameter-0-1, tuple<type-parameter-0-2...>, tuple<type-parameter-0-3...>>'
10658 | const uint64_t index2 = this->get_z_index(cell2);
Looking at the code we can see that functions bool {x,y,z}_indices_overlap(const uint64_t cell1, const uint64_t cell2) const call to get_{x,y,z}_index respectively.
Lines 11347 to 11348 in 98319b0
| const uint64_t index1 = this->get_x_index(cell1); | |
| const uint64_t index2 = this->get_x_index(cell2); |
There is however no member function get_{x,y,z}_index available, so clang fails. I don't fully understand why gcc compiles it, but maybe it has to do with code-reachability.
Metadata
Metadata
Assignees
Labels
No labels