Warn about unimplement assignments.
authorRoberto Raggi <roberto.raggi@nokia.com>
Wed, 6 Jun 2012 12:16:11 +0000 (14:16 +0200)
committerRoberto Raggi <roberto.raggi@nokia.com>
Wed, 6 Jun 2012 12:16:11 +0000 (14:16 +0200)
qv4isel_llvm.cpp

index 54623ad..374aeaf 100644 (file)
@@ -13,7 +13,7 @@
 using namespace QQmlJS;
 
 namespace {
-QTextStream qout(stdout, QIODevice::WriteOnly);
+QTextStream qerr(stderr, QIODevice::WriteOnly);
 }
 
 LLVMInstructionSelection::LLVMInstructionSelection(llvm::LLVMContext &context)
@@ -249,6 +249,13 @@ void LLVMInstructionSelection::genMoveMember(IR::Move *s)
 
 void LLVMInstructionSelection::visitMove(IR::Move *s)
 {
+    if (s->op != IR::OpInvalid) {
+        s->dump(qerr, IR::Stmt::HIR);
+        qerr << endl;
+        Q_UNIMPLEMENTED();
+        return;
+    }
+
     if (s->target->asSubscript()) {
         genMoveSubscript(s);
     } else if (s->target->asMember()) {
@@ -263,8 +270,8 @@ void LLVMInstructionSelection::visitMove(IR::Move *s)
         llvm::Value *source = getLLVMValue(s->source);
         CreateStore(source, target);
     } else {
-        s->dump(qout, IR::Stmt::HIR);
-        qout << endl;
+        s->dump(qerr, IR::Stmt::HIR);
+        qerr << endl;
         Q_UNIMPLEMENTED();
     }
 }