sql/sql_class.cc:
Unlock tables after a SELECT INTO variables, or an assert() in lock_tables() fails.
Note: This might be a problem with other SELECT variants too.
sql/sql_yacc.yy:
Make all bison versions work (hopefully).
sql/sp.cc:
Added DBUG statements.
sql/sp_head.cc:
Added DBUG statements.
sql/sql_parse.cc:
Changed returns into DBUG_RETURNs in mysql_execute_command().
sql/sql_yacc.yy:
Small optimization: Don't generate sp_instr_stmt instructions for empty
SET_OPTIONs. (Which happened if there were only local variables in the SET
statement.)
for future work.
Docs/sp-imp-spec.txt:
Started on the FUNCTION parts...
Docs/sp-implemented.txt:
Added som info on SET behaviour, and added Open questions.
sql/sp.cc:
Renamed functions.
sql/sp.h:
Renamed functions.
sql/sql_parse.cc:
Renamed functions.
Fixed backpatching of forward jumps.
Implemented LOOP, WHILE, REPEAT (temporarily known as SPREPEAT).
Known bug: Expression evaluation still not quite ok (e.g. "x > 0"),
which is why IF and CASE is not yet implemented.
sql/Makefile.am:
Added new sp.h/sp.cc file.
sql/item.h:
New deferred result_type() method in Item_splocal.
sql/lex.h:
Temporary fix until REPEAT conflict is solved. Use SPREPEAT for now.
sql/sp_head.cc:
Moved create/find/drop functions to sp.cc.
Fixed the backpatch stuff.
(Also removed some dead code and updated comments.)
sql/sp_head.h:
Moved create/find/drop declarations to sp.h.
Fixed the backpatch stuff.
sql/sp_pcontext.h:
New method: last_label().
sql/sql_parse.cc:
Include sp.h.
sql/sql_yacc.yy:
Fixed backpatching of forward jumps.
Implemented LOOP, WHILE, and REPEAT. (Note: SPREPEAT for now.)