--- layout: fc_discuss_archives title: Message 97 from Frama-C-discuss on December 2009 ---
> Jessie generates four proof obligations for f2()one of which is not prooved. The unproved PO corresponds to the assigns clause. Your function f2 calls f1 which assigns var1, and in this sense, it is not true that f2 assigns only var2. A correct specification for f2 as it is written would be assigns var1, var2; Also, as it is written, the premise "var1 ==1 =>" in f2's postcondition is not necessary. function f2 will always set var2 to 0, because it sets var1 to 1 itself before the if. Pascal