What happend to %#ok<DEFNU>

5 次查看(过去 30 天)
tommsch
tommsch 2023-5-25
编辑: tommsch 2023-5-25
In my last Matlab version ( I think R2020a ), I added %#ok<DEFNU> to functions (which were on purpose unused) to silence the Matlab linter warning.
Now in Matlab R2021a, Matlab linter gives me a warning that this warning suppression is not needed anymore. Since a lot of people will still use older versions of Matlab, I do not want to remove it, since then a warning appears in older versions.
  • Is this a R2021a bug, or
  • Did the behaviour of DEFNU change, or
  • was %#ok<DEFNU> removed (I doubt, because I still see it in the list of warnings in the "Preferences/Matlab/Code Analyzer"-window
---
Edit: I tried to make a MWE an found out that there seems to be a behaviour change, triggered by a usage of evalc.
function linttest1
eval('');
end
function dummy; end %#ok<DEFNU> % mlinter warning here about unnecessary DEFNU
Versus:
function linttest2
end
function dummy; end %#ok<DEFNU> % no warning here
I guess this answers my question.

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

产品


版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by