NeKon69 wrote:

So my code crashes on

```cpp
[[noreturn]] int *noret_f(int *p);

int *noreturn_dead_false(bool cond, int *num) {
  int local = 0;
  return cond ? num : noret_f(&local);
}
```

with `Assertion 'Dst->getLength() == Src->getLength() && "Lists must have the 
same length"'`. I ran this example through a debugger, and it looks like it 
goes through exactly the path it’s supposed to take: it flows through the 
`true` branch and ignores the `false`(`noreturn`) branch. But the interesting 
part is that it crashes when we flow through the `true` branch. I assume I 
missed something obvious in the code..

https://github.com/llvm/llvm-project/pull/190345
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to