Mercurial > hg > octave-thorsten
diff src/pt-colon.h @ 2990:35bd1b05cfbe
[project @ 1997-05-16 09:19:11 by jwe]
author | jwe |
---|---|
date | Fri, 16 May 1997 09:19:12 +0000 |
parents | daa1ed1f5462 |
children | b80bbb43a1a9 |
line wrap: on
line diff
--- a/src/pt-colon.h +++ b/src/pt-colon.h @@ -45,18 +45,24 @@ public: tree_colon_expression (int l = -1, int c = -1) - : tree_expression (l, c), op_base (0), op_limit (0), op_increment (0) { } + : tree_expression (l, c), op_base (0), op_limit (0), + op_increment (0), save_base (false) { } tree_colon_expression (tree_expression *e, int l = -1, int c = -1) - : tree_expression (l, c), op_base (e), op_limit (0), op_increment (0) { } + : tree_expression (l, c), op_base (e), op_limit (0), + op_increment (0), save_base (false) { } ~tree_colon_expression (void) { - delete op_base; + if (! save_base) + delete op_base; + delete op_limit; delete op_increment; } + void preserve_base (void) { save_base = true; } + tree_colon_expression *append (tree_expression *t); bool rvalue_ok (void) const @@ -83,6 +89,8 @@ tree_expression *op_limit; tree_expression *op_increment; + bool save_base; + // No copying! tree_colon_expression (const tree_colon_expression&);