Presently, use of the 'delete' operator does not generate valid code for all
possible variations. It is agreed that 'delete' should work on indices of maps
or on the entire map, whether the map value-type is string, integer, or stat.
It should probably also work as a reset for scalar stat variables as well, since
there's no other way to clear them.
It's debatable whether 'delete' should act as a reset for scalar strings and
integers, but since no-one seems to have a strong opinion against this, we
should probably add it for consistency.
See src/testsuite/buildok/delete.stp for a testcase which currently fails.
Summary: 'delete' operator doesn't work on all variations
AssignedTo: systemtap at sources dot redhat dot com
ReportedBy: joshua dot i dot stone at intel dot com
Here's a patch that I thought would fix this, but it's not quite there.
There seems to be a disconnect with the way temporaries are defined - e.g. it
generates a Stat temporary (illegal), but I don't understand why. Nothing in
the probe body tries to assign a Stat to a temp. In fact, it generates temps
up to __tmp26, even though the highest I see referenced in the actual probe is