py: Make viper codegen raise proper exception (ViperTypeError) on error.
This fixes a long standing problem that viper code generation gave terrible error messages, and actually no errors on pyboard where assertions are disabled. Now all compile-time errors are raised as proper Python exceptions, and are of type ViperTypeError. Addresses issue #940.
This commit is contained in:
@@ -252,6 +252,10 @@ MP_DEFINE_EXCEPTION(Exception, BaseException)
|
||||
*/
|
||||
//MP_DEFINE_EXCEPTION(SystemError, Exception)
|
||||
MP_DEFINE_EXCEPTION(TypeError, Exception)
|
||||
#if MICROPY_EMIT_NATIVE
|
||||
MP_DEFINE_EXCEPTION_BASE(TypeError)
|
||||
MP_DEFINE_EXCEPTION(ViperTypeError, TypeError)
|
||||
#endif
|
||||
MP_DEFINE_EXCEPTION(ValueError, Exception)
|
||||
#if MICROPY_PY_BUILTINS_STR_UNICODE
|
||||
MP_DEFINE_EXCEPTION_BASE(ValueError)
|
||||
|
||||
Reference in New Issue
Block a user