[poincare] Fix memleaks when discarding symbols in the parser

Change-Id: Iff92247d1909b15f2dfcc15006c722770b61c0d3
This commit is contained in:
Romain Goyet
2017-04-25 16:12:38 +02:00
parent 5a1e890eeb
commit eeb1a02fff

View File

@@ -99,6 +99,16 @@ void poincare_expression_yyerror(Poincare::Expression ** expressionOutput, char
%type <listData> lstData;
%type <matrixData> mtxData;
/* During error recovery, some symbols need to be discarded. We need to tell
* Bison how to get rid of them. Depending on the type of the symbol, it may
* have some heap-allocated data that need to be discarded. */
%destructor { delete $$; } FUNCTION
%destructor { delete $$; } UNDEFINED exp number
%destructor { delete $$; } lstData
%destructor { delete $$; } mtxData
%destructor { delete $$; } symb
%%
Root: