qorelanguage / qore

Qore Programming Language
GNU General Public License v2.0
61 stars 10 forks source link

spurious errors can be thrown while outputting complex values when deleted objects #4862

Closed davidnich closed 10 months ago

davidnich commented 10 months ago

ex:

$ qore -ne 'Mutex m(); hash<auto> h = {"m": m}; delete m; printf("%y\n", h);'
unhandled QORE System exception thrown in TID 1 at 2023-11-26 15:31:19.524915 Sun +01:00 (CET) in printf() (<command-line>:1 (Qore builtin code))
OBJECT-ALREADY-DELETED: attempt to access an already-deleted object of class 'Mutex'
call stack:
  1: printf() (<command-line>:1 (Qore builtin code))