--- layout: fc_discuss_archives title: Message 31 from Frama-C-discuss on September 2009 ---
Hello, I have a question regarding the new Beryllium-implementation. Since in the ACSL-Beryllium-document data invariants are not marked as "experimental" I wonder if they are supposed to work. Trying to use them I realized global invariants work, but type invariants unfortunately do not. I tried the temperature example, which is delivered in the document, but unsuccessfully.(I send the code below) Anyway, there are syntax errors when using the strength modifiers weak or strong. (using both - global or type invariants) Is this a case for a bug report or is it supposed to not work yet? And if so, do you know already if and when this feature is planned to work? Just asking because I would find it very useful. Thank you in advance, Kerstin -------------- /* not working with type invariants*/ typedef double temperature; //@ type invariant temp_in_celsius(temperature t) = t >= -273.15; //@ ensures \result >= -273.15; double test(temperature t) { return t; } --------------- /* working with global invariants*/ static double temperature; //@ global invariant temperature_in_celsius : temperature >= -273.15; //@ ensures \result >= -273.15; double test() { return temperature; }