Inserting life time markers for variables into CFG


We are trying to add lifetime markers for variables into the CFG. This was discussed before:

Fundamentally, we would need to expand CFGElements to record a lifetime marker: …
We would then need the CFGBuilder to add these markers to the CFG in pretty much the same way that destructors are added. Lastly, we would need to extend the visitors in ExprEngine to handle the semantics when observing these markers.
With the infrastructure we added for destructors, I suspect this is a fairly straightforward project.

The provided patch in this email contains some test code. It doesn’t work. We get the message “debug: Insert OutOfScope” which should mean that markers is inserted but we never see “debug: ExprEngine: OutOfScope” that would indicate that the markers are seen.

Best regards,
Daniel Marjamäki

Daniel Marjamäki Senior Engineer

Evidente ES East AB Warfvinges väg 34 SE-112 51 Stockholm Sweden

Mobile: +46 (0)709 12 42 62


lifetimemarkers-dm-140605.diff (3.3 KB)