Mercurial > octave
changeset 33372:e04e556d836c
oct-parse.yy: Avoid dereferencing deleted object.
* oct-parse.yy (base_parser::make_classdef): Store file position in local
variable before deleting object.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Wed, 10 Apr 2024 17:42:39 +0200 |
parents | ff7cb15e068d |
children | 2399268f5167 |
files | libinterp/parse-tree/oct-parse.yy |
diffstat | 1 files changed, 3 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/libinterp/parse-tree/oct-parse.yy Wed Apr 10 17:13:50 2024 +0200 +++ b/libinterp/parse-tree/oct-parse.yy Wed Apr 10 17:42:39 2024 +0200 @@ -3986,12 +3986,14 @@ if (short_name != cls_name) { + filepos f_pos = id->beg_pos (); + delete a; delete id; delete sc; delete body; - bison_error ("invalid classdef definition, the class name must match the filename", id->beg_pos ()); + bison_error ("invalid classdef definition, the class name must match the filename", f_pos); } else