blueloveTH 2 年 前
コミット
89ec12cada
2 ファイル変更10 行追加0 行削除
  1. 1 0
      src/vm.cpp
  2. 9 0
      src2/main.cpp

+ 1 - 0
src/vm.cpp

@@ -4,6 +4,7 @@ namespace pkpy{
 
     VM::VM(bool enable_os) : heap(this), enable_os(enable_os) {
         this->vm = this;
+        this->_c.error = nullptr;
         _stdout = [](VM* vm, const Str& s) {
             PK_UNUSED(vm);
             std::cout << s;

+ 9 - 0
src2/main.cpp

@@ -103,6 +103,15 @@ int main(int argc, char** argv){
         std::filesystem::current_path(filepath.parent_path());
 
         bool ok = pkpy_exec_2(vm, src.c_str(), filepath.filename().string().c_str(), 0, NULL);
+        if(!ok){
+            char* err;
+            if(pkpy_clear_error(vm, &err)){
+                std::cerr << err << std::endl;
+                pkpy_free(err);
+            }else{
+                std::cerr << "Unknown error" << std::endl;
+            }
+        }
         pkpy_delete_vm(vm);
         return ok ? 0 : 1;
     }