mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-23 04:50:17 +00:00
some fix
This commit is contained in:
parent
589a1e7ae4
commit
75343ccb23
@ -91,8 +91,7 @@ struct Exception {
|
||||
struct TopLevelException: std::exception{
|
||||
Exception* ptr;
|
||||
TopLevelException(Exception* ptr): ptr(ptr) {}
|
||||
|
||||
PyObject* self() const { return ptr->self(); }
|
||||
|
||||
Str summary() const { return ptr->summary(); }
|
||||
|
||||
const char* what() const noexcept override {
|
||||
|
@ -1680,7 +1680,7 @@ CodeObject_ VM::compile(std::string_view source, const Str& filename, CompileMod
|
||||
try{
|
||||
return compiler.compile();
|
||||
}catch(TopLevelException e){
|
||||
_error(e.self());
|
||||
_error(e.ptr->self());
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
@ -1690,7 +1690,7 @@ Str VM::precompile(std::string_view source, const Str& filename, CompileMode mod
|
||||
try{
|
||||
return compiler.precompile();
|
||||
}catch(TopLevelException e){
|
||||
_error(e.self());
|
||||
_error(e.ptr->self());
|
||||
return nullptr;
|
||||
}
|
||||
}
|
||||
|
@ -45,7 +45,7 @@ static PyVar stack_item(VM* vm, int index){
|
||||
#define PK_PROTECTED(__B) \
|
||||
try{ __B } \
|
||||
catch(TopLevelException e) { \
|
||||
vm->__c.error = e.self(); \
|
||||
vm->__c.error = e.ptr->self(); \
|
||||
return false; \
|
||||
} catch(const std::exception& re){ \
|
||||
PyObject* e_t = vm->_t(vm->tp_exception); \
|
||||
|
Loading…
x
Reference in New Issue
Block a user