Mercurial > octave
view test/fcn-handle/keyword.tst @ 28156:22cddebcb0d0 stable
allow @get and @set to work properly again (bug #57988)
* lex.h, lex.ll (base_lexer::is_keyword_token): Delete. Replace all
uses with iskeyword.
(Fiskeyword): When creating list, also omit "enumeration", "events",
"methods", and "properties".
* keyword.tst: New file.
* test/fcn-handle/module.mk: Update
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 12 Mar 2020 23:51:49 -0400 |
parents | |
children | 0a5b15007766 |
line wrap: on
line source
######################################################################## ## ## Copyright (C) 2020 The Octave Project Developers ## ## See the file COPYRIGHT.md in the top-level directory of this ## distribution or <https://octave.org/copyright/>. ## ## This file is part of Octave. ## ## Octave is free software: you can redistribute it and/or modify it ## under the terms of the GNU General Public License as published by ## the Free Software Foundation, either version 3 of the License, or ## (at your option) any later version. ## ## Octave is distributed in the hope that it will be useful, but ## WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with Octave; see the file COPYING. If not, see ## <https://www.gnu.org/licenses/>. ## ######################################################################## %!test <*57988> %! fh = @get; %! fh = @set; %! fh = @enumeration; %! fh = @events; %! fh = @methods; %! fh = @properties; %!test <*57988> %! kwords = iskeyword (); %! for i = 1:numel (kwords) %! unexpected_success = true; %! kword = kwords{i}; %! try %! eval (sprintf ("@%s;", kword)); %! catch %! unexpected_success = false; %! end_try_catch %! if (unexpected_success) %! error ("constructing function handle from keyword '%s' succeeded!", %! kword); %! endif %! endfor