diff options
author | 2011-05-13 14:38:28 -0700 | |
---|---|---|
committer | 2011-05-13 14:38:28 -0700 | |
commit | a3d7bd9b4a7b62cb0d8e4b0762d8db51c1548f1e (patch) | |
tree | 7399c9f5e251cd3d5c2d1641cea1e1b4623466e8 /Test/test0/SeparateVerification1.bpl | |
parent | 2178536246cab25a4564a15c05a6d2fcb4ac54ca (diff) |
Boogie: added features to help with modular verification. In particular, define FILE_n when parsing file n on the command line, and support :extern and :ignore attributes on top-level declarations.
Diffstat (limited to 'Test/test0/SeparateVerification1.bpl')
-rw-r--r-- | Test/test0/SeparateVerification1.bpl | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Test/test0/SeparateVerification1.bpl b/Test/test0/SeparateVerification1.bpl new file mode 100644 index 00000000..0e3e7926 --- /dev/null +++ b/Test/test0/SeparateVerification1.bpl @@ -0,0 +1,19 @@ +// to be used with SeparateVerification0.bpl
+
+// x and y are declared in SeparateVerification0.bpl
+axiom x + y <= 100;
+
+// these are declared as :extern as SeparateVerification0.bpl
+type T;
+const C: int;
+function F(): int;
+var n: int;
+procedure P();
+procedure {:extern} Q(x: int);
+
+procedure Main() {
+ call P(); // note, calling the parameter-less non-extern P (an extern and a non-extern
+ // declaration of the same name are usually mostly identical declarations,
+ // but Boogie allows them to be different, because it ignores the extern ones)
+ call Q(); // ditto
+}
|