# HG changeset patch # User Markus Mützel # Date 1712763759 -7200 # Node ID e04e556d836cdbe4fa9e5a895d7f50ad47c54567 # Parent ff7cb15e068da7c2769ef7146b59e6a528043181 oct-parse.yy: Avoid dereferencing deleted object. * oct-parse.yy (base_parser::make_classdef): Store file position in local variable before deleting object. diff -r ff7cb15e068d -r e04e556d836c libinterp/parse-tree/oct-parse.yy --- 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