Details
Diff Detail
Event Timeline
Precommit CI looks to have potentially found something interesting here.
| clang/test/AST/Interp/literals.cpp | ||
|---|---|---|
| 553 | Missed the test for INT_MIN and -1? | |
There might be one of my local patches missing, but it looks like it's somehow not applying this patch, which is weird.
| clang/test/AST/Interp/literals.cpp | ||
|---|---|---|
| 553 | for rem, clang doesn't diagnose anything: https://godbolt.org/z/rhe5ezc54 | |
| clang/test/AST/Interp/literals.cpp | ||
|---|---|---|
| 553 | That's a bug per https://eel.is/c++draft/expr.mul#4.sentence-3 because the resulting algebraic value is not representable in the type of the result. | |
| 591 | This one should fail for the same reason as % | |
| clang/test/AST/Interp/literals.cpp | ||
|---|---|---|
| 591 | Works when replacing all the unsigneds with ints. | |
Can't push this without https://reviews.llvm.org/D135750, since the variables in the test functions are used without being initialized.
LGTM
| clang/test/AST/Interp/literals.cpp | ||
|---|---|---|
| 553 | Ok, this bugged me enough I figured out what was going on and put up a PR: https://reviews.llvm.org/D140455 | |
Really didn't expect this: https://lab.llvm.org/buildbot/#/builders/214/builds/5415
Command Output (stderr): -- + : 'RUN: at line 1' + /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/build/bin/clang -cc1 -internal-isystem /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/build/lib/clang/16/include -nostdsysteminc -fexperimental-new-constant-interpreter -std=c++11 -verify /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/AST/Interp/literals.cpp + : 'RUN: at line 2' + /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/build/bin/clang -cc1 -internal-isystem /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/build/lib/clang/16/include -nostdsysteminc -fexperimental-new-constant-interpreter -std=c++20 -verify /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/AST/Interp/literals.cpp error: 'error' diagnostics seen but not expected: File /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/AST/Interp/literals.cpp Line 481: static assertion failed due to requirement 'BoolOr(false, true)': File /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/AST/Interp/literals.cpp Line 500: static assertion failed due to requirement 'BoolAnd(true, true)': File /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/AST/Interp/literals.cpp Line 521: static assertion failed due to requirement '!BoolXor(true, true)': File /scratch/powerllvm/powerllvm_env/aix-ppc64/clang-ppc64-aix/llvm-project/clang/test/AST/Interp/literals.cpp Line 523: static assertion failed due to requirement 'BoolXor(false, true)': 4 errors generated.
I've seen s390x and AIX builders break here, probably a problem with big-endian machines?