view test/bug-53027/ntest53027c.m @ 31189:820d2c802247 stable

fortran_vec: Fix instances of method chaining that may cause dangling pointer. * libinterp/corefcn/quandcc.cc (Fquadcc): Replace method chaining with a separate line for NDArray object to avoid going out of scope. * libinterp/corefcn/__ilu__.cc (F__iluc__): Obtain RowVector and ColumnVector objects in separate line to remain in scope. * libinterp/corefcn/__ichol__.cc (F__icholt__): Obtain RowVector object in separate line to remain in scope. For more details: https://octave.discourse.group/t/3132
author Maged Rifaat <magedrifaat@gmail.com>
date Mon, 15 Aug 2022 00:22:55 +0200
parents c16ad80274c9
children
line wrap: on
line source

function [m_exist, n_exist] = ntest53027c ()
  ## In this test, x is not global.
  x = 3;
  n_exist = nest ();
  m_exist = exist ("x", 'var');
  function n_exist = nest ()
    ## The clear statement should operate on the variable in the
    ## parent scope even though there is no explicit varabiable
    ## reference in the code (the clear function just sees a string
    ## containing the name of the variable and the parser (correctly)
    ## does not treat this as a special case.
    clear x
    n_exist = exist ("x", "var");
  endfunction
endfunction