Issue 77091
Summary `volatile int` is trivially copyable but not trivially relocatable
Labels new issue
Assignees
Reporter AMP999
    https://godbolt.org/z/4Y9z7sdEE
This Godbolt shows that clang considers `struct S { volatile int i; };` "trivially relocatable", but `volatile int` is considered "not-trivially relocatable". This is inconsistent. It's also inconsistent with the behavior of `std::is_trivially_copyable_v<volatile int> == true`. `__is_trivially_relocatable` should do the same. Otherwise, we end up with a type that is trivially copyable but not trivially relocatable.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to