]> granicus.if.org Git - clang/commitdiff
minor nicities.
authorChris Lattner <sabre@nondot.org>
Tue, 21 Aug 2007 18:51:13 +0000 (18:51 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 21 Aug 2007 18:51:13 +0000 (18:51 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41244 91177308-0d34-0410-b5e6-96231b3b80d8

CodeGen/CGComplexExpr.cpp
clang.xcodeproj/project.pbxproj

index f82adf97ea2d68c9580f321636b8f36ff46fe3df..7b159a3224abb9a34d3ca14f1efee29624fb98f0 100644 (file)
@@ -60,12 +60,13 @@ public:
   //===--------------------------------------------------------------------===//
   //                            Visitor Methods
   //===--------------------------------------------------------------------===//
-  
+
   ComplexPairTy VisitStmt(Stmt *S) {
-    fprintf(stderr, "Unimplemented agg expr!\n");
     S->dump();
+    assert(0 && "Stmt can't have complex result type!");
     return ComplexPairTy();
   }
+  ComplexPairTy VisitExpr(Expr *S);
   ComplexPairTy VisitParenExpr(ParenExpr *PE) { return Visit(PE->getSubExpr());}
 
   // l-values.
@@ -77,7 +78,6 @@ public:
   //  case Expr::ImplicitCastExprClass:
   //  case Expr::CastExprClass: 
   //  case Expr::CallExprClass:
-  ComplexPairTy VisitBinaryOperator(const BinaryOperator *BO);
   ComplexPairTy VisitBinMul        (const BinaryOperator *E);
   ComplexPairTy VisitBinAdd        (const BinaryOperator *E);
   // FIXME: div/rem
@@ -134,10 +134,13 @@ void ComplexExprEmitter::EmitStoreOfComplex(ComplexPairTy Val, llvm::Value *Ptr,
 //                            Visitor Methods
 //===----------------------------------------------------------------------===//
 
-ComplexPairTy ComplexExprEmitter::VisitBinaryOperator(const BinaryOperator *E) {
-  fprintf(stderr, "Unimplemented complex binary expr!\n");
+ComplexPairTy ComplexExprEmitter::VisitExpr(Expr *E) {
+  fprintf(stderr, "Unimplemented complex expr!\n");
   E->dump();
-  return ComplexPairTy();
+  const llvm::Type *EltTy = 
+    CGF.ConvertType(E->getType()->getAsComplexType()->getElementType());
+  llvm::Value *U = llvm::UndefValue::get(EltTy);
+  return ComplexPairTy(U, U);
 }
 
 ComplexPairTy ComplexExprEmitter::VisitBinAdd(const BinaryOperator *E) {
index 1509d10db78f3b406ac5d74de673c2ff6b029c10..2cb6f5bf089695a0cbf05ca63a10918e796c5526 100644 (file)
                08FB7793FE84155DC02AAC07 /* Project object */ = {
                        isa = PBXProject;
                        buildConfigurationList = 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "clang" */;
-                       compatibilityVersion = "Xcode 2.4";
                        hasScannedForEncodings = 1;
                        mainGroup = 08FB7794FE84155DC02AAC07 /* clang */;
                        projectDirPath = "";