>> diff --git a/extra/lempar.c b/extra/lempar.c >> index 00fd79c..d043e39 100644 >> --- a/extra/lempar.c >> +++ b/extra/lempar.c >> @@ -336,8 +336,8 @@ void *ParseAlloc(void *(*mallocProc)(YYMALLOCARGTYPE)){ >> if( pParser ){ >> #ifdef YYTRACKMAXSTACKDEPTH >> pParser->yyhwm = 0; >> - pParser->is_fallback_failed = false; >> #endif >> + pParser->is_fallback_failed = false; > > Could you please explain this code movement? > To be more accurate it's just variable initialization that was in wrong place. > Moreover in most cases (almost always) after allocating memory for this > variable there was non-zero value ('true', basically), that was causing > "keyword 'BEGIN' is reserved" error message if we use "BEGIN" instead > of "START TRANSACTION", after the patch changes are applied. Ok, thx for explanation. Now patch LGTM.