зеркало из https://github.com/microsoft/clang-1.git
Add missing code for compound literals of complex type. <rdar://problem/10938628>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151549 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Родитель
d411a4b230
Коммит
fce4715bc3
|
@ -261,6 +261,10 @@ public:
|
|||
|
||||
ComplexPairTy VisitInitListExpr(InitListExpr *E);
|
||||
|
||||
ComplexPairTy VisitCompoundLiteralExpr(CompoundLiteralExpr *E) {
|
||||
return EmitLoadOfLValue(E);
|
||||
}
|
||||
|
||||
ComplexPairTy VisitVAArgExpr(VAArgExpr *E);
|
||||
|
||||
ComplexPairTy VisitAtomicExpr(AtomicExpr *E) {
|
||||
|
|
|
@ -9,4 +9,10 @@ _Complex float x = { 1.0f, 1.0f/0.0f };
|
|||
|
||||
_Complex float f(float x, float y) { _Complex float z = { x, y }; return z; }
|
||||
// CHECK: define <2 x float> @f
|
||||
// CHECK: alloca { float, float }
|
||||
// CHECK: alloca { float, float }
|
||||
// CHECK: alloca { float, float }
|
||||
|
||||
_Complex float f2(float x, float y) { return (_Complex float){ x, y }; }
|
||||
// CHECK: define <2 x float> @f2
|
||||
// CHECK: alloca { float, float }
|
||||
// CHECK: alloca { float, float }
|
||||
|
|
Загрузка…
Ссылка в новой задаче