diff --git a/HISTORY b/HISTORY index 19eddc0..b380d94 100755 --- a/HISTORY +++ b/HISTORY @@ -1,3 +1,6 @@ +May. 9 2018 +Fixed a crash bug in invalid conditional expression with class member, thanks to AaBc for pointing it out + Apr. 20 2018 Avoided a warning when a C++ compiler refers char to unsigned diff --git a/core/my_basic.c b/core/my_basic.c index ceac94b..a7bdfc0 100755 --- a/core/my_basic.c +++ b/core/my_basic.c @@ -8404,6 +8404,12 @@ static int _clone_clsss_field(void* data, void* extra, void* n) { ret = _duplicate_parameter(var, 0, instance->scope); _clone_object(instance->ref.s, obj, ret->data.variable->data, false, var->data->type != _DT_CLASS); +#ifdef MB_ENABLE_SOURCE_TRACE + ret->source_pos = -1; + ret->source_row = ret->source_col = 0xFFFF; +#else /* MB_ENABLE_SOURCE_TRACE */ + ret->source_pos = -1; +#endif /* MB_ENABLE_SOURCE_TRACE */ } break;