Mercurial > hg > octave-nkf
comparison src/pt-unop.cc @ 3962:e39b0ee1da6c
[project @ 2002-06-27 14:14:08 by jwe]
author | jwe |
---|---|
date | Thu, 27 Jun 2002 14:14:09 +0000 |
parents | bf6116ca10eb |
children | edd758a7ca8d |
comparison
equal
deleted
inserted
replaced
3961:635209a37bf4 | 3962:e39b0ee1da6c |
---|---|
72 | 72 |
73 if (op) | 73 if (op) |
74 { | 74 { |
75 if (etype == octave_value::op_incr || etype == octave_value::op_decr) | 75 if (etype == octave_value::op_incr || etype == octave_value::op_decr) |
76 { | 76 { |
77 octave_lvalue ref = op->lvalue (); | 77 op->rvalue (); |
78 | 78 |
79 if (error_state) | 79 if (! error_state) |
80 eval_error (); | 80 { |
81 else if (ref.is_defined ()) | 81 octave_lvalue ref = op->lvalue (); |
82 { | 82 |
83 ref.do_unary_op (etype); | 83 if (! error_state && ref.is_defined ()) |
84 | 84 { |
85 retval = ref.value (); | 85 ref.do_unary_op (etype); |
86 | |
87 retval = ref.value (); | |
88 } | |
89 else | |
90 eval_error (); | |
86 } | 91 } |
87 else | 92 else |
88 eval_error (); | 93 eval_error (); |
89 } | 94 } |
90 else | 95 else |
91 { | 96 { |
92 octave_value val = op->rvalue (); | 97 octave_value val = op->rvalue (); |
93 | 98 |
94 if (error_state) | 99 if (! error_state && val.is_defined ()) |
95 eval_error (); | |
96 else if (val.is_defined ()) | |
97 { | 100 { |
98 retval = ::do_unary_op (etype, val); | 101 retval = ::do_unary_op (etype, val); |
99 | 102 |
100 if (error_state) | 103 if (error_state) |
101 { | 104 { |
153 | 156 |
154 if (op) | 157 if (op) |
155 { | 158 { |
156 if (etype == octave_value::op_incr || etype == octave_value::op_decr) | 159 if (etype == octave_value::op_incr || etype == octave_value::op_decr) |
157 { | 160 { |
158 octave_lvalue ref = op->lvalue (); | 161 op->rvalue (); |
159 | 162 |
160 if (error_state) | 163 if (! error_state) |
161 eval_error (); | 164 { |
162 else if (ref.is_defined ()) | 165 octave_lvalue ref = op->lvalue (); |
163 { | 166 |
164 retval = ref.value (); | 167 if (! error_state && ref.is_defined ()) |
165 | 168 { |
166 ref.do_unary_op (etype); | 169 retval = ref.value (); |
170 | |
171 ref.do_unary_op (etype); | |
172 } | |
173 else | |
174 eval_error (); | |
167 } | 175 } |
168 else | 176 else |
169 eval_error (); | 177 eval_error (); |
170 } | 178 } |
171 else | 179 else |
172 { | 180 { |
173 octave_value val = op->rvalue (); | 181 octave_value val = op->rvalue (); |
174 | 182 |
175 if (error_state) | 183 if (! error_state && val.is_defined ()) |
176 eval_error (); | |
177 else if (val.is_defined ()) | |
178 { | 184 { |
179 retval = ::do_unary_op (etype, val); | 185 retval = ::do_unary_op (etype, val); |
180 | 186 |
181 if (error_state) | 187 if (error_state) |
182 { | 188 { |