summaryrefslogtreecommitdiff
path: root/sql/sp_instr.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sp_instr.h')
-rw-r--r--sql/sp_instr.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/sql/sp_instr.h b/sql/sp_instr.h
index 8cf752b80f9..423d6f77153 100644
--- a/sql/sp_instr.h
+++ b/sql/sp_instr.h
@@ -58,6 +58,9 @@ public:
// "Instructions"...
//
+// Forward declaration for use in the method sp_instr::opt_move().
+class sp_instr_opt_meta;
+
class sp_instr :public Query_arena, public Sql_alloc
{
sp_instr(const sp_instr &); /**< Prevent use of these */
@@ -160,7 +163,7 @@ public:
must also take care of their destination pointers. Forward jumps get
pushed to the backpatch list 'ibp'.
*/
- virtual void opt_move(uint dst, List<sp_instr> *ibp)
+ virtual void opt_move(uint dst, List<sp_instr_opt_meta> *ibp)
{
m_ip= dst;
}
@@ -493,7 +496,7 @@ public:
uint opt_shortcut_jump(sp_head *sp, sp_instr *start) override;
- void opt_move(uint dst, List<sp_instr> *ibp) override;
+ void opt_move(uint dst, List<sp_instr_opt_meta> *ibp) override;
void backpatch(uint dest, sp_pcontext *dst_ctx) override
{
@@ -548,7 +551,7 @@ public:
return m_ip;
}
- void opt_move(uint dst, List<sp_instr> *ibp) override;
+ void opt_move(uint dst, List<sp_instr_opt_meta> *ibp) override;
void set_destination(uint old_dest, uint new_dest) override
{
@@ -1022,7 +1025,7 @@ public:
uint opt_mark(sp_head *sp, List<sp_instr> *leads) override;
- void opt_move(uint dst, List<sp_instr> *ibp) override;
+ void opt_move(uint dst, List<sp_instr_opt_meta> *ibp) override;
void set_destination(uint old_dest, uint new_dest) override
{