The issue seems to be that when calling append for the second time, both l.first and l.last are pointing to the same value. When instantiating the summary Pulse misses to see that l.first->next and l.last should point to the same value.
The reason seems to be that Pulse is only following what is happening to l.last in the post, but not what is happening to the input value of l.last (which is l.first in the second call to append).
This PR fixes this issue, I also included more examples fixed by this commit.
Pulse emits a false positive on the following cpp example:
The issue seems to be that when calling append for the second time, both l.first and l.last are pointing to the same value. When instantiating the summary Pulse misses to see that l.first->next and l.last should point to the same value.
The reason seems to be that Pulse is only following what is happening to l.last in the post, but not what is happening to the input value of l.last (which is l.first in the second call to append).
This PR fixes this issue, I also included more examples fixed by this commit.