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] Frama-c-discuss Digest, Vol 21, Issue 3



Hello,

The slicing plugin rely on the results of the value
analysis pluging which performs a context-sensitive
Since slice computation is done after the value analysis,
the slicing plugin can loose some precision even it can
use context-sensitive information (-calldeps option) at
function calls. It seems to be the case for your line 24.

Looking at the result given by the gui with the
development version of Frama-C, line 24 isn't green,
nor striked out. That means the semantics of the line 24
doesn't impact the slicing criteria, but the line must be keept
just for compilation reason (to be able to re-analyse code
resulting from the slicing pulgin). These kinds of lines have
a spare mark. Going back to your example, the spare
mark of the line 24 is /imprecise/, but /correct.

/Patrick.

> Dear Pascal,
> I have one more example code for contexst-sensitive points-to analysis.
> In the following simple code, can we get a slicing results that do not
> contain line 24 using Frama-C?
> In my understanding, line 24 should not be included if
> contexst-sensitive points-to analysis is working correctly.
>
> ------------- START test code ------------
>
> typedef signed char s1;
> typedef signed short s2;
> typedef signed long s4;
> typedef unsigned char u1;
> typedef unsigned short u2;
> typedef unsigned long u4;
> typedef float f4;
> typedef double f8;
>
> s2 f(s2* s2var)
> {
> return *s2var;
> }
>
> void main(void)
> {
> s2 s2t_1;
> s2 s2t_2;
> s2 s2t_3;
> s2 s2t_4;
> s2 s2t_5;
> s2 s2t_6;
>
> s2t_1 = 1; // line 24: should not be included
> s2t_2 = 2;
>
> s2t_3 = f(&s2t_1);
> s2t_4 = f(&s2t_2);
>
> s2t_5 = s2t_3;
> s2t_6 = s2t_4; // line 31: criteria
> }
>
> ------------- END test code ------------
>
>
>
> _______________________________________________
> Frama-c-discuss mailing list
> Frama-c-discuss at lists.gforge.inria.fr
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/frama-c-discuss
>
>   

-------------- section suivante --------------
Une pi?ce jointe HTML a ?t? enlev?e...
URL: http://lists.gforge.inria.fr/pipermail/frama-c-discuss/attachments/20100210/c57a52a6/attachment.htm