blueloveTH 2 ani în urmă
părinte
comite
3d40a3d51f
2 a modificat fișierele cu 3 adăugiri și 3 ștergeri
  1. 1 1
      src/error.h
  2. 2 2
      src/expr.h

+ 1 - 1
src/error.h

@@ -50,7 +50,7 @@ struct SourceData {
 
         this->filename = filename;
         this->source = ss.str();
-        line_starts.push_back(source);
+        line_starts.push_back(this->source.c_str());
         this->mode = mode;
     }
 

+ 2 - 2
src/expr.h

@@ -280,10 +280,10 @@ struct NegatedExpr: Expr{
             LiteralExpr* lit = static_cast<LiteralExpr*>(child.get());
             PyObject* obj = nullptr;
             if(std::holds_alternative<i64>(lit->value)){
-                obj = VAR(std::get<i64>(lit->value));
+                obj = VAR(-std::get<i64>(lit->value));
             }
             if(std::holds_alternative<f64>(lit->value)){
-                obj = VAR(std::get<f64>(lit->value));
+                obj = VAR(-std::get<f64>(lit->value));
             }
             if(obj != nullptr){
                 ctx->emit(OP_LOAD_CONST, ctx->add_const(obj), line);