Matlab does not return an error when variable does not exist.

7 visualizaciones (últimos 30 días)
Hello everyone. Hope someone can help:
I call a variable that does not exist (in Editor) and I do not get an error message. in the Command Window.
Did I disable this capability by mistake?
  4 comentarios
Alvaro Chaveste
Alvaro Chaveste el 19 de Feb. de 2022
This is the piece of code calling variable "modFracts" that is not in the workspace. Variable "propMain" does exist.
___
who propMain
who modFracts
propMain = char(propMain); propSec = char(propSec);
valMain = num2str(modFracts(handles.ILXLPlt),3);
stop
____
Following is what I see in the "Command Window"
___
Your variables are:
propMain
>>
___

Iniciar sesión para comentar.

Respuesta aceptada

Alvaro Chaveste
Alvaro Chaveste el 19 de Feb. de 2022
I've found out what the issue was.
The function where errors were not reported was called from another (main) program. It was called within a try-catch-end,
MATLAB apparently disables the error messages within the try-catch and routines run within it.
.
  1 comentario
Image Analyst
Image Analyst el 19 de Feb. de 2022
We could have told you that if you had shared the actual code instead of unrelated snippets. When there is an error, control passes to the catch block. But if in that block you choose not to do anything with the error (like print it out or whatever), then nothing happens - it just continues on with the line of code after the "end" of the catch block.

Iniciar sesión para comentar.

Más respuestas (1)

Image Analyst
Image Analyst el 19 de Feb. de 2022
So you're saying that modFracts does not exist and when you do
who modFracts
it does not echo anything to the command window. That is normal. If it doesn't exist, it doesn't write anything to the command window. However if you do
modFractsCopy = modFracts;
it should throw an error because you're trying to reference/use it. Does it throw an error?
Try adding an s:
whos
and tell us what it shows.
  6 comentarios
Alvaro Chaveste
Alvaro Chaveste el 19 de Feb. de 2022
Sorry for bombarding you with information. Your support is appreciated.
It looks like the issue goes beyond not throwing an error when a variable is not defined. It looks like it is not threowing error messages at all.
In the code image (attached), the program goes past "test 1". then it should give an error since "stopx" is not valid. It does not.
Image Analyst
Image Analyst el 19 de Feb. de 2022
Editada: Image Analyst el 19 de Feb. de 2022
We can't run images, only code as text. Will check back later. Make it easy for us to help you, not hard.

Iniciar sesión para comentar.

Categorías

Más información sobre HDL Coder en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by