comparison libinterp/octave-value/ov-usr-fcn.cc @ 20533:19617a5b7202 stable

Fix regression in displayed error message for nargin and nargout. * ov-usr-fcn.cc (nargin, nargout): After printing error message, use 'return retval' to immediately break out of the function.
author Rik <rik@octave.org>
date Tue, 22 Sep 2015 03:08:14 -0700
parents 075a5e2e1ba5
children 1f330d33388f
comparison
equal deleted inserted replaced
20531:1339ad3c9faa 20533:19617a5b7202
864 if (func.is_string ()) 864 if (func.is_string ())
865 { 865 {
866 std::string name = func.string_value (); 866 std::string name = func.string_value ();
867 func = symbol_table::find_function (name); 867 func = symbol_table::find_function (name);
868 if (func.is_undefined ()) 868 if (func.is_undefined ())
869 error ("nargout: invalid function name: %s", name.c_str ()); 869 {
870 error ("nargin: invalid function name: %s", name.c_str ());
871 return retval;
872 }
870 } 873 }
871 874
872 octave_function *fcn_val = func.function_value (); 875 octave_function *fcn_val = func.function_value ();
873 if (fcn_val) 876 if (fcn_val)
874 { 877 {
971 if (func.is_string ()) 974 if (func.is_string ())
972 { 975 {
973 std::string name = func.string_value (); 976 std::string name = func.string_value ();
974 func = symbol_table::find_function (name); 977 func = symbol_table::find_function (name);
975 if (func.is_undefined ()) 978 if (func.is_undefined ())
976 error ("nargout: invalid function name: %s", name.c_str ()); 979 {
980 error ("nargout: invalid function name: %s", name.c_str ());
981 return retval;
982 }
977 } 983 }
978 984
979 if (func.is_inline_function ()) 985 if (func.is_inline_function ())
980 { 986 {
981 retval = 1; 987 retval = 1;