Issue 141114
Summary Unknown references and pointers related bad codegen
Labels clang:frontend, needs-reduction
Assignees shafik
Reporter shafik
    This semi-reduced code from: https://github.com/llvm/llvm-project/pull/95474#issuecomment-2884165093

```cpp
struct MyStruct {
    double m0{-9999.0};
    int m1{-12345};
};

constexpr MyStruct default_val;

auto compute_area(double l, const MyStruct &val = default_val) -> double {
    if (val.m1 == 1)
      return 2.0;
    return 0;
}


#include <cassert>


auto main() -> int {
    MyStruct in_val{.m0 = 2.0, .m1 = 1};
    double val = compute_area(1.0, in_val);
 assert(val == 2.0);
}
```

crashes at runtime, it looks like due to `VD->getAnyInitializer(VD)` pulling in the default value.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to