File tree Expand file tree Collapse file tree 3 files changed +8
-1
lines changed
Expand file tree Collapse file tree 3 files changed +8
-1
lines changed Original file line number Diff line number Diff line change @@ -374,6 +374,7 @@ Bug Fixes in This Version
374374- Fixed a crash when trying to transform a dependent address space type. Fixes #GH101685.
375375- Fixed a crash when diagnosing format strings and encountering an empty
376376 delimited escape sequence (e.g., ``"\o{}" ``). #GH102218
377+ - Fixed a crash when the result of ``__array_rank `` is used as operand for bit operation. (#GH113044).
377378
378379Bug Fixes to Compiler Builtins
379380^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Original file line number Diff line number Diff line change @@ -718,7 +718,7 @@ class ScalarExprEmitter
718718 }
719719
720720 Value *VisitArrayTypeTraitExpr (const ArrayTypeTraitExpr *E) {
721- return llvm::ConstantInt::get (Builder. getInt32Ty ( ), E->getValue ());
721+ return llvm::ConstantInt::get (ConvertType (E-> getType () ), E->getValue ());
722722 }
723723
724724 Value *VisitExpressionTraitExpr (const ExpressionTraitExpr *E) {
Original file line number Diff line number Diff line change 1+ // RUN: %clang_cc1 -triple aarch64-unknown-unknown -emit-llvm -o - %s | FileCheck %s
2+
3+ unsigned long array_rank_binary_operator (void ) {
4+ // CHECK: ret i64 3
5+ return __array_rank (int [10 ]) | 2 ;
6+ }
You can’t perform that action at this time.
0 commit comments