Issue 6453 - Allow multiple invariant per struct/class

Build a linked list of invariants and insert a call to the next one at the end of the function.
Invariants are executed in lexical order.

Fixes Issue 6453