Frama-C-discuss mailing list archives
This page gathers the archives of the old Frama-C-discuss archives, that was hosted by Inria's gforge before its demise at the end of 2020. To search for mails newer than September 2020, please visit the page of the new mailing list on Renater.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Frama-c-discuss] type invariants
- Subject: [Frama-c-discuss] type invariants
- From: virgile.prevosto at cea.fr (Virgile Prevosto)
- Date: Tue Nov 18 10:51:01 2008
- In-reply-to: <5501DEB6D1BA4B4E8DF1E885137E4DB5@AHARDPLACE>
- References: <5501DEB6D1BA4B4E8DF1E885137E4DB5@AHARDPLACE>
Hallo Christoph, Le mar 18 nov 2008 09:14:03 CET, "Christoph Weber" <Christoph.Weber@first.fraunhofer.de> a ?crit : > void out_char(char c) > { > int col = 0; > //@ global invariant I : 0 <= col <= 79; > col++; > if (col >= 80) col = 0; > } There is indeed a mistake in acsl-implementation.pdf. In the current implementation, global invariants can only be specified as global specification, not inside a block of code. In addition, such a global invariant could only refer to local variables that are static(1), as is the case in the example 2.42, but not in the code above. There would be little point in stating a "global invariant" that would depend on local variables whose existence is limited to a function execution (especially for a weak global invariant which is checked only at the entrance and exit of functions). There is currently no way to express an invariant on local variables that has to be verified at each point statement (short of writing assert annotations everywhere). Anyway, thanks for your feedback. I hope that the situation is a bit clearer now. Regards, -- E tutto per oggi, a la prossima volta. Virgile (1) As any global invariant, it can also refer to global variables of course.
- Follow-Ups:
- [Frama-c-discuss] type invariants
- From: Claude.Marche at inria.fr (Claude Marché)
- [Frama-c-discuss] type invariants
- References:
- [Frama-c-discuss] type invariants
- From: Christoph.Weber at first.fraunhofer.de (Christoph Weber)
- [Frama-c-discuss] type invariants
- Prev by Date: RE : [Frama-c-discuss] type invariants
- Next by Date: [Frama-c-discuss] Cast support with Jessie in Lithium
- Previous by thread: RE : [Frama-c-discuss] type invariants
- Next by thread: [Frama-c-discuss] type invariants
- Index(es):