1extern int __VERIFIER_nondet_int(void);
2extern int printf (__const char *__restrict __format, ...);
3
4
5
6#line 2 "libacc.c"
7struct JoinPoint {
8 void **(*fp)(struct JoinPoint * ) ;
9 void **args ;
10 int argsCount ;
11 char const **argsType ;
12 void *(*arg)(int , struct JoinPoint * ) ;
13 char const *(*argType)(int , struct JoinPoint * ) ;
14 void **retValue ;
15 char const *retType ;
16 char const *funcName ;
17 char const *targetName ;
18 char const *fileName ;
19 char const *kind ;
20 void *excep_return ;
21};
22#line 18 "libacc.c"
23struct __UTAC__CFLOW_FUNC {
24 int (*func)(int , int ) ;
25 int val ;
26 struct __UTAC__CFLOW_FUNC *next ;
27};
28#line 18 "libacc.c"
29struct __UTAC__EXCEPTION {
30 void *jumpbuf ;
31 unsigned long long prtValue ;
32 int pops ;
33 struct __UTAC__CFLOW_FUNC *cflowfuncs ;
34};
35#line 211 "/usr/lib/gcc/x86_64-linux-gnu/4.4.5/include/stddef.h"
36typedef unsigned long size_t;
37#line 76 "libacc.c"
38struct __ACC__ERR {
39 void *v ;
40 struct __ACC__ERR *next ;
41};
42#line 1 "scenario.o"
43#pragma merger(0,"scenario.i","")
44#line 5 "scenario.c"
45void waterRise(void) ;
46#line 7
47#line 8
48void changeMethaneLevel(void) ;
49#line 11
50void startSystem(void) ;
51#line 13
52void stopSystem(void) ;
53#line 15
54void timeShift(void) ;
55#line 17
56void cleanup(void) ;
57#line 1 "scenario.c"
58void test(void)
59{ int splverifierCounter ;
60 int tmp ;
61 int tmp___0 ;
62 int tmp___1 ;
63 int tmp___2 ;
64
65 {
66#line 2
67 splverifierCounter = 0;
68 {
69#line 3
70 while (1) {
71 while_0_continue: ;
72#line 3
73 if (splverifierCounter < 4) {
74
75 } else {
76 goto while_0_break;
77 }
78 {
79#line 7
80 tmp = __VERIFIER_nondet_int();
81 }
82#line 7
83 if (tmp) {
84 {
85#line 5
86 waterRise();
87 }
88 } else {
89
90 }
91 {
92#line 7
93 tmp___0 = __VERIFIER_nondet_int();
94 }
95#line 7
96 if (tmp___0) {
97 {
98#line 8
99 changeMethaneLevel();
100 }
101 } else {
102
103 }
104 {
105#line 10
106 tmp___2 = __VERIFIER_nondet_int();
107 }
108#line 10
109 if (tmp___2) {
110 {
111#line 11
112 startSystem();
113 }
114 } else {
115 {
116#line 12
117 tmp___1 = __VERIFIER_nondet_int();
118 }
119#line 12
120 if (tmp___1) {
121 {
122#line 13
123 stopSystem();
124 }
125 } else {
126
127 }
128 }
129 {
130#line 15
131 timeShift();
132 }
133 }
134 while_0_break: ;
135 }
136 {
137#line 17
138 cleanup();
139 }
140#line 78 "scenario.c"
141 return;
142}
143}
144#line 1 "MinePump.o"
145#pragma merger(0,"MinePump.i","")
146#line 4 "Environment.h"
147void lowerWaterLevel(void) ;
148#line 10
149int isMethaneLevelCritical(void) ;
150#line 15
151void printEnvironment(void) ;
152#line 6 "MinePump.h"
153void activatePump(void) ;
154#line 8
155void deactivatePump(void) ;
156#line 10
157int isPumpRunning(void) ;
158#line 13
159void printPump(void) ;
160#line 7 "MinePump.c"
161int pumpRunning = 0;
162#line 9 "MinePump.c"
163int systemActive = 1;
164#line 10
165void __utac_acc__Specification1_spec__1(void) ;
166#line 16
167void processEnvironment(void) ;
168#line 12 "MinePump.c"
169void timeShift(void)
170{
171
172 {
173#line 15
174 if (pumpRunning) {
175 {
176#line 16
177 lowerWaterLevel();
178 }
179 } else {
180
181 }
182#line 15
183 if (systemActive) {
184 {
185#line 16
186 processEnvironment();
187 }
188 } else {
189
190 }
191 {
192#line 99 "MinePump.c"
193 __utac_acc__Specification1_spec__1();
194 }
195#line 105
196 return;
197}
198}
199#line 19 "MinePump.c"
200void processEnvironment(void)
201{
202
203 {
204#line 123 "MinePump.c"
205 return;
206}
207}
208#line 24 "MinePump.c"
209void activatePump__wrappee__base(void)
210{
211
212 {
213#line 25
214 pumpRunning = 1;
215#line 143 "MinePump.c"
216 return;
217}
218}
219#line 32 "MinePump.c"
220int isMethaneAlarm(void) ;
221#line 27 "MinePump.c"
222void activatePump(void)
223{ int tmp ;
224
225 {
226 {
227#line 32
228 tmp = isMethaneAlarm();
229 }
230#line 32
231 if (tmp) {
232
233 } else {
234 {
235#line 29
236 activatePump__wrappee__base();
237 }
238 }
239#line 167 "MinePump.c"
240 return;
241}
242}
243#line 36 "MinePump.c"
244void deactivatePump(void)
245{
246
247 {
248#line 37
249 pumpRunning = 0;
250#line 187 "MinePump.c"
251 return;
252}
253}
254#line 41 "MinePump.c"
255int isMethaneAlarm(void)
256{ int retValue_acc ;
257
258 {
259 {
260#line 205 "MinePump.c"
261 retValue_acc = isMethaneLevelCritical();
262 }
263#line 207
264 return (retValue_acc);
265#line 214
266 return (retValue_acc);
267}
268}
269#line 46 "MinePump.c"
270int isPumpRunning(void)
271{ int retValue_acc ;
272
273 {
274#line 236 "MinePump.c"
275 retValue_acc = pumpRunning;
276#line 238
277 return (retValue_acc);
278#line 245
279 return (retValue_acc);
280}
281}
282#line 52 "MinePump.c"
283#line 51 "MinePump.c"
284void printPump(void)
285{
286
287 {
288 {
289#line 52
290 printf("Pump(System:");
291 }
292#line 53
293 if (systemActive) {
294 {
295#line 54
296 printf("On");
297 }
298 } else {
299 {
300#line 55
301 printf("Off");
302 }
303 }
304 {
305#line 57
306 printf(",Pump:");
307 }
308#line 58
309 if (pumpRunning) {
310 {
311#line 59
312 printf("On");
313 }
314 } else {
315 {
316#line 60
317 printf("Off");
318 }
319 }
320 {
321#line 62
322 printf(") ");
323#line 63
324 printEnvironment();
325#line 64
326 printf("\n");
327 }
328#line 285 "MinePump.c"
329 return;
330}
331}
332#line 66 "MinePump.c"
333void stopSystem(void)
334{
335
336 {
337#line 71
338 if (pumpRunning) {
339 {
340#line 68
341 deactivatePump();
342 }
343 } else {
344
345 }
346#line 71
347 systemActive = 0;
348#line 310 "MinePump.c"
349 return;
350}
351}
352#line 73 "MinePump.c"
353void startSystem(void)
354{
355
356 {
357#line 75
358 systemActive = 1;
359#line 330 "MinePump.c"
360 return;
361}
362}
363#line 1 "wsllib_check.o"
364#pragma merger(0,"wsllib_check.i","")
365#line 3 "wsllib_check.c"
366void __automaton_fail(void)
367{
368
369 {
370 goto ERROR;
371 ERROR: ;
372#line 53 "wsllib_check.c"
373 return;
374}
375}
376#line 1 "Environment.o"
377#pragma merger(0,"Environment.i","")
378#line 12 "Environment.h"
379int getWaterLevel(void) ;
380#line 9 "Environment.c"
381int waterLevel = 1;
382#line 12 "Environment.c"
383int methaneLevelCritical = 0;
384#line 15 "Environment.c"
385void lowerWaterLevel(void)
386{
387
388 {
389#line 19
390 if (waterLevel > 0) {
391#line 17
392 waterLevel = waterLevel - 1;
393 } else {
394
395 }
396#line 81 "Environment.c"
397 return;
398}
399}
400#line 22 "Environment.c"
401void waterRise(void)
402{
403
404 {
405#line 26
406 if (waterLevel < 2) {
407#line 24
408 waterLevel = waterLevel + 1;
409 } else {
410
411 }
412#line 104 "Environment.c"
413 return;
414}
415}
416#line 29 "Environment.c"
417void changeMethaneLevel(void)
418{
419
420 {
421#line 34
422 if (methaneLevelCritical) {
423#line 31
424 methaneLevelCritical = 0;
425 } else {
426#line 33
427 methaneLevelCritical = 1;
428 }
429#line 130 "Environment.c"
430 return;
431}
432}
433#line 38 "Environment.c"
434int isMethaneLevelCritical(void)
435{ int retValue_acc ;
436
437 {
438#line 148 "Environment.c"
439 retValue_acc = methaneLevelCritical;
440#line 150
441 return (retValue_acc);
442#line 157
443 return (retValue_acc);
444}
445}
446#line 44 "Environment.c"
447void printEnvironment(void)
448{
449
450 {
451 {
452#line 45
453 printf("Env(Water:%i", waterLevel);
454#line 46
455 printf(",Meth:");
456 }
457#line 47
458 if (methaneLevelCritical) {
459 {
460#line 48
461 printf("CRIT");
462 }
463 } else {
464 {
465#line 49
466 printf("OK");
467 }
468 }
469 {
470#line 51
471 printf(")");
472 }
473#line 189 "Environment.c"
474 return;
475}
476}
477#line 55 "Environment.c"
478int getWaterLevel(void)
479{ int retValue_acc ;
480
481 {
482#line 207 "Environment.c"
483 retValue_acc = waterLevel;
484#line 209
485 return (retValue_acc);
486#line 216
487 return (retValue_acc);
488}
489}
490#line 1 "featureselect.o"
491#pragma merger(0,"featureselect.i","")
492#line 8 "featureselect.h"
493int select_one(void) ;
494#line 10
495void select_features(void) ;
496#line 12
497void select_helpers(void) ;
498#line 14
499int valid_product(void) ;
500#line 8 "featureselect.c"
501int select_one(void)
502{ int retValue_acc ;
503 int choice = __VERIFIER_nondet_int();
504
505 {
506#line 62 "featureselect.c"
507 retValue_acc = choice;
508#line 64
509 return (retValue_acc);
510#line 71
511 return (retValue_acc);
512}
513}
514#line 14 "featureselect.c"
515void select_features(void)
516{
517
518 {
519#line 93 "featureselect.c"
520 return;
521}
522}
523#line 20 "featureselect.c"
524void select_helpers(void)
525{
526
527 {
528#line 111 "featureselect.c"
529 return;
530}
531}
532#line 25 "featureselect.c"
533int valid_product(void)
534{ int retValue_acc ;
535
536 {
537#line 129 "featureselect.c"
538 retValue_acc = 1;
539#line 131
540 return (retValue_acc);
541#line 138
542 return (retValue_acc);
543}
544}
545#line 1 "Specification1_spec.o"
546#pragma merger(0,"Specification1_spec.i","")
547#line 11 "Specification1_spec.c"
548void __utac_acc__Specification1_spec__1(void)
549{ int tmp ;
550 int tmp___0 ;
551
552 {
553 {
554#line 17
555 tmp = isMethaneLevelCritical();
556 }
557#line 17
558 if (tmp) {
559 {
560#line 17
561 tmp___0 = isPumpRunning();
562 }
563#line 17
564 if (tmp___0) {
565 {
566#line 14
567 __automaton_fail();
568 }
569 } else {
570
571 }
572 } else {
573
574 }
575#line 14
576 return;
577}
578}
579#line 1 "libacc.o"
580#pragma merger(0,"libacc.i","")
581#line 73 "/usr/include/assert.h"
582extern __attribute__((__nothrow__, __noreturn__)) void __assert_fail(char const *__assertion ,
583 char const *__file ,
584 unsigned int __line ,
585 char const *__function ) ;
586#line 471 "/usr/include/stdlib.h"
587extern __attribute__((__nothrow__)) void *malloc(size_t __size ) __attribute__((__malloc__)) ;
588#line 488
589extern __attribute__((__nothrow__)) void free(void *__ptr ) ;
590#line 32 "libacc.c"
591void __utac__exception__cf_handler_set(void *exception , int (*cflow_func)(int ,
592 int ) ,
593 int val )
594{ struct __UTAC__EXCEPTION *excep ;
595 struct __UTAC__CFLOW_FUNC *cf ;
596 void *tmp ;
597 unsigned long __cil_tmp7 ;
598 unsigned long __cil_tmp8 ;
599 unsigned long __cil_tmp9 ;
600 unsigned long __cil_tmp10 ;
601 unsigned long __cil_tmp11 ;
602 unsigned long __cil_tmp12 ;
603 unsigned long __cil_tmp13 ;
604 unsigned long __cil_tmp14 ;
605 int (**mem_15)(int , int ) ;
606 int *mem_16 ;
607 struct __UTAC__CFLOW_FUNC **mem_17 ;
608 struct __UTAC__CFLOW_FUNC **mem_18 ;
609 struct __UTAC__CFLOW_FUNC **mem_19 ;
610
611 {
612 {
613#line 33
614 excep = (struct __UTAC__EXCEPTION *)exception;
615#line 34
616 tmp = malloc(24UL);
617#line 34
618 cf = (struct __UTAC__CFLOW_FUNC *)tmp;
619#line 36
620 mem_15 = (int (**)(int , int ))cf;
621#line 36
622 *mem_15 = cflow_func;
623#line 37
624 __cil_tmp7 = (unsigned long )cf;
625#line 37
626 __cil_tmp8 = __cil_tmp7 + 8;
627#line 37
628 mem_16 = (int *)__cil_tmp8;
629#line 37
630 *mem_16 = val;
631#line 38
632 __cil_tmp9 = (unsigned long )cf;
633#line 38
634 __cil_tmp10 = __cil_tmp9 + 16;
635#line 38
636 __cil_tmp11 = (unsigned long )excep;
637#line 38
638 __cil_tmp12 = __cil_tmp11 + 24;
639#line 38
640 mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp10;
641#line 38
642 mem_18 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp12;
643#line 38
644 *mem_17 = *mem_18;
645#line 39
646 __cil_tmp13 = (unsigned long )excep;
647#line 39
648 __cil_tmp14 = __cil_tmp13 + 24;
649#line 39
650 mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14;
651#line 39
652 *mem_19 = cf;
653 }
654#line 654 "libacc.c"
655 return;
656}
657}
658#line 44 "libacc.c"
659void __utac__exception__cf_handler_free(void *exception )
660{ struct __UTAC__EXCEPTION *excep ;
661 struct __UTAC__CFLOW_FUNC *cf ;
662 struct __UTAC__CFLOW_FUNC *tmp ;
663 unsigned long __cil_tmp5 ;
664 unsigned long __cil_tmp6 ;
665 struct __UTAC__CFLOW_FUNC *__cil_tmp7 ;
666 unsigned long __cil_tmp8 ;
667 unsigned long __cil_tmp9 ;
668 unsigned long __cil_tmp10 ;
669 unsigned long __cil_tmp11 ;
670 void *__cil_tmp12 ;
671 unsigned long __cil_tmp13 ;
672 unsigned long __cil_tmp14 ;
673 struct __UTAC__CFLOW_FUNC **mem_15 ;
674 struct __UTAC__CFLOW_FUNC **mem_16 ;
675 struct __UTAC__CFLOW_FUNC **mem_17 ;
676
677 {
678#line 45
679 excep = (struct __UTAC__EXCEPTION *)exception;
680#line 46
681 __cil_tmp5 = (unsigned long )excep;
682#line 46
683 __cil_tmp6 = __cil_tmp5 + 24;
684#line 46
685 mem_15 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6;
686#line 46
687 cf = *mem_15;
688 {
689#line 49
690 while (1) {
691 while_1_continue: ;
692 {
693#line 49
694 __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0;
695#line 49
696 __cil_tmp8 = (unsigned long )__cil_tmp7;
697#line 49
698 __cil_tmp9 = (unsigned long )cf;
699#line 49
700 if (__cil_tmp9 != __cil_tmp8) {
701
702 } else {
703 goto while_1_break;
704 }
705 }
706 {
707#line 50
708 tmp = cf;
709#line 51
710 __cil_tmp10 = (unsigned long )cf;
711#line 51
712 __cil_tmp11 = __cil_tmp10 + 16;
713#line 51
714 mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp11;
715#line 51
716 cf = *mem_16;
717#line 52
718 __cil_tmp12 = (void *)tmp;
719#line 52
720 free(__cil_tmp12);
721 }
722 }
723 while_1_break: ;
724 }
725#line 55
726 __cil_tmp13 = (unsigned long )excep;
727#line 55
728 __cil_tmp14 = __cil_tmp13 + 24;
729#line 55
730 mem_17 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp14;
731#line 55
732 *mem_17 = (struct __UTAC__CFLOW_FUNC *)0;
733#line 694 "libacc.c"
734 return;
735}
736}
737#line 59 "libacc.c"
738void __utac__exception__cf_handler_reset(void *exception )
739{ struct __UTAC__EXCEPTION *excep ;
740 struct __UTAC__CFLOW_FUNC *cf ;
741 unsigned long __cil_tmp5 ;
742 unsigned long __cil_tmp6 ;
743 struct __UTAC__CFLOW_FUNC *__cil_tmp7 ;
744 unsigned long __cil_tmp8 ;
745 unsigned long __cil_tmp9 ;
746 int (*__cil_tmp10)(int , int ) ;
747 unsigned long __cil_tmp11 ;
748 unsigned long __cil_tmp12 ;
749 int __cil_tmp13 ;
750 unsigned long __cil_tmp14 ;
751 unsigned long __cil_tmp15 ;
752 struct __UTAC__CFLOW_FUNC **mem_16 ;
753 int (**mem_17)(int , int ) ;
754 int *mem_18 ;
755 struct __UTAC__CFLOW_FUNC **mem_19 ;
756
757 {
758#line 60
759 excep = (struct __UTAC__EXCEPTION *)exception;
760#line 61
761 __cil_tmp5 = (unsigned long )excep;
762#line 61
763 __cil_tmp6 = __cil_tmp5 + 24;
764#line 61
765 mem_16 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp6;
766#line 61
767 cf = *mem_16;
768 {
769#line 64
770 while (1) {
771 while_2_continue: ;
772 {
773#line 64
774 __cil_tmp7 = (struct __UTAC__CFLOW_FUNC *)0;
775#line 64
776 __cil_tmp8 = (unsigned long )__cil_tmp7;
777#line 64
778 __cil_tmp9 = (unsigned long )cf;
779#line 64
780 if (__cil_tmp9 != __cil_tmp8) {
781
782 } else {
783 goto while_2_break;
784 }
785 }
786 {
787#line 65
788 mem_17 = (int (**)(int , int ))cf;
789#line 65
790 __cil_tmp10 = *mem_17;
791#line 65
792 __cil_tmp11 = (unsigned long )cf;
793#line 65
794 __cil_tmp12 = __cil_tmp11 + 8;
795#line 65
796 mem_18 = (int *)__cil_tmp12;
797#line 65
798 __cil_tmp13 = *mem_18;
799#line 65
800 (*__cil_tmp10)(4, __cil_tmp13);
801#line 66
802 __cil_tmp14 = (unsigned long )cf;
803#line 66
804 __cil_tmp15 = __cil_tmp14 + 16;
805#line 66
806 mem_19 = (struct __UTAC__CFLOW_FUNC **)__cil_tmp15;
807#line 66
808 cf = *mem_19;
809 }
810 }
811 while_2_break: ;
812 }
813 {
814#line 69
815 __utac__exception__cf_handler_free(exception);
816 }
817#line 732 "libacc.c"
818 return;
819}
820}
821#line 80 "libacc.c"
822void *__utac__error_stack_mgt(void *env , int mode , int count ) ;
823#line 80 "libacc.c"
824static struct __ACC__ERR *head = (struct __ACC__ERR *)0;
825#line 79 "libacc.c"
826void *__utac__error_stack_mgt(void *env , int mode , int count )
827{ void *retValue_acc ;
828 struct __ACC__ERR *new ;
829 void *tmp ;
830 struct __ACC__ERR *temp ;
831 struct __ACC__ERR *next ;
832 void *excep ;
833 unsigned long __cil_tmp10 ;
834 unsigned long __cil_tmp11 ;
835 unsigned long __cil_tmp12 ;
836 unsigned long __cil_tmp13 ;
837 void *__cil_tmp14 ;
838 unsigned long __cil_tmp15 ;
839 unsigned long __cil_tmp16 ;
840 void *__cil_tmp17 ;
841 void **mem_18 ;
842 struct __ACC__ERR **mem_19 ;
843 struct __ACC__ERR **mem_20 ;
844 void **mem_21 ;
845 struct __ACC__ERR **mem_22 ;
846 void **mem_23 ;
847 void **mem_24 ;
848
849 {
850#line 82 "libacc.c"
851 if (count == 0) {
852#line 758 "libacc.c"
853 return (retValue_acc);
854 } else {
855
856 }
857#line 86 "libacc.c"
858 if (mode == 0) {
859 {
860#line 87
861 tmp = malloc(16UL);
862#line 87
863 new = (struct __ACC__ERR *)tmp;
864#line 88
865 mem_18 = (void **)new;
866#line 88
867 *mem_18 = env;
868#line 89
869 __cil_tmp10 = (unsigned long )new;
870#line 89
871 __cil_tmp11 = __cil_tmp10 + 8;
872#line 89
873 mem_19 = (struct __ACC__ERR **)__cil_tmp11;
874#line 89
875 *mem_19 = head;
876#line 90
877 head = new;
878#line 776 "libacc.c"
879 retValue_acc = (void *)new;
880 }
881#line 778
882 return (retValue_acc);
883 } else {
884
885 }
886#line 94 "libacc.c"
887 if (mode == 1) {
888#line 95
889 temp = head;
890 {
891#line 98
892 while (1) {
893 while_3_continue: ;
894#line 98
895 if (count > 1) {
896
897 } else {
898 goto while_3_break;
899 }
900 {
901#line 99
902 __cil_tmp12 = (unsigned long )temp;
903#line 99
904 __cil_tmp13 = __cil_tmp12 + 8;
905#line 99
906 mem_20 = (struct __ACC__ERR **)__cil_tmp13;
907#line 99
908 next = *mem_20;
909#line 100
910 mem_21 = (void **)temp;
911#line 100
912 excep = *mem_21;
913#line 101
914 __cil_tmp14 = (void *)temp;
915#line 101
916 free(__cil_tmp14);
917#line 102
918 __utac__exception__cf_handler_reset(excep);
919#line 103
920 temp = next;
921#line 104
922 count = count - 1;
923 }
924 }
925 while_3_break: ;
926 }
927 {
928#line 107
929 __cil_tmp15 = (unsigned long )temp;
930#line 107
931 __cil_tmp16 = __cil_tmp15 + 8;
932#line 107
933 mem_22 = (struct __ACC__ERR **)__cil_tmp16;
934#line 107
935 head = *mem_22;
936#line 108
937 mem_23 = (void **)temp;
938#line 108
939 excep = *mem_23;
940#line 109
941 __cil_tmp17 = (void *)temp;
942#line 109
943 free(__cil_tmp17);
944#line 110
945 __utac__exception__cf_handler_reset(excep);
946#line 820 "libacc.c"
947 retValue_acc = excep;
948 }
949#line 822
950 return (retValue_acc);
951 } else {
952
953 }
954#line 114
955 if (mode == 2) {
956#line 118 "libacc.c"
957 if (head) {
958#line 831
959 mem_24 = (void **)head;
960#line 831
961 retValue_acc = *mem_24;
962#line 833
963 return (retValue_acc);
964 } else {
965#line 837 "libacc.c"
966 retValue_acc = (void *)0;
967#line 839
968 return (retValue_acc);
969 }
970 } else {
971
972 }
973#line 846 "libacc.c"
974 return (retValue_acc);
975}
976}
977#line 122 "libacc.c"
978void *__utac__get_this_arg(int i , struct JoinPoint *this )
979{ void *retValue_acc ;
980 unsigned long __cil_tmp4 ;
981 unsigned long __cil_tmp5 ;
982 int __cil_tmp6 ;
983 int __cil_tmp7 ;
984 unsigned long __cil_tmp8 ;
985 unsigned long __cil_tmp9 ;
986 void **__cil_tmp10 ;
987 void **__cil_tmp11 ;
988 int *mem_12 ;
989 void ***mem_13 ;
990
991 {
992#line 123
993 if (i > 0) {
994 {
995#line 123
996 __cil_tmp4 = (unsigned long )this;
997#line 123
998 __cil_tmp5 = __cil_tmp4 + 16;
999#line 123
1000 mem_12 = (int *)__cil_tmp5;
1001#line 123
1002 __cil_tmp6 = *mem_12;
1003#line 123
1004 if (i <= __cil_tmp6) {
1005
1006 } else {
1007 {
1008#line 123
1009 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1010 123U, "__utac__get_this_arg");
1011 }
1012 }
1013 }
1014 } else {
1015 {
1016#line 123
1017 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1018 123U, "__utac__get_this_arg");
1019 }
1020 }
1021#line 870 "libacc.c"
1022 __cil_tmp7 = i - 1;
1023#line 870
1024 __cil_tmp8 = (unsigned long )this;
1025#line 870
1026 __cil_tmp9 = __cil_tmp8 + 8;
1027#line 870
1028 mem_13 = (void ***)__cil_tmp9;
1029#line 870
1030 __cil_tmp10 = *mem_13;
1031#line 870
1032 __cil_tmp11 = __cil_tmp10 + __cil_tmp7;
1033#line 870
1034 retValue_acc = *__cil_tmp11;
1035#line 872
1036 return (retValue_acc);
1037#line 879
1038 return (retValue_acc);
1039}
1040}
1041#line 129 "libacc.c"
1042char const *__utac__get_this_argtype(int i , struct JoinPoint *this )
1043{ char const *retValue_acc ;
1044 unsigned long __cil_tmp4 ;
1045 unsigned long __cil_tmp5 ;
1046 int __cil_tmp6 ;
1047 int __cil_tmp7 ;
1048 unsigned long __cil_tmp8 ;
1049 unsigned long __cil_tmp9 ;
1050 char const **__cil_tmp10 ;
1051 char const **__cil_tmp11 ;
1052 int *mem_12 ;
1053 char const ***mem_13 ;
1054
1055 {
1056#line 131
1057 if (i > 0) {
1058 {
1059#line 131
1060 __cil_tmp4 = (unsigned long )this;
1061#line 131
1062 __cil_tmp5 = __cil_tmp4 + 16;
1063#line 131
1064 mem_12 = (int *)__cil_tmp5;
1065#line 131
1066 __cil_tmp6 = *mem_12;
1067#line 131
1068 if (i <= __cil_tmp6) {
1069
1070 } else {
1071 {
1072#line 131
1073 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1074 131U, "__utac__get_this_argtype");
1075 }
1076 }
1077 }
1078 } else {
1079 {
1080#line 131
1081 __assert_fail("i > 0 && i <= this->argsCount", "libacc.c",
1082 131U, "__utac__get_this_argtype");
1083 }
1084 }
1085#line 903 "libacc.c"
1086 __cil_tmp7 = i - 1;
1087#line 903
1088 __cil_tmp8 = (unsigned long )this;
1089#line 903
1090 __cil_tmp9 = __cil_tmp8 + 24;
1091#line 903
1092 mem_13 = (char const ***)__cil_tmp9;
1093#line 903
1094 __cil_tmp10 = *mem_13;
1095#line 903
1096 __cil_tmp11 = __cil_tmp10 + __cil_tmp7;
1097#line 903
1098 retValue_acc = *__cil_tmp11;
1099#line 905
1100 return (retValue_acc);
1101#line 912
1102 return (retValue_acc);
1103}
1104}
1105#line 1 "Test.o"
1106#pragma merger(0,"Test.i","")
1107#line 8 "Test.c"
1108int cleanupTimeShifts = 4;
1109#line 11 "Test.c"
1110#line 17 "Test.c"
1111void cleanup(void)
1112{ int i ;
1113 int __cil_tmp2 ;
1114
1115 {
1116 {
1117#line 20
1118 timeShift();
1119#line 22
1120 i = 0;
1121 }
1122 {
1123#line 22
1124 while (1) {
1125 while_4_continue: ;
1126 {
1127#line 22
1128 __cil_tmp2 = cleanupTimeShifts - 1;
1129#line 22
1130 if (i < __cil_tmp2) {
1131
1132 } else {
1133 goto while_4_break;
1134 }
1135 }
1136 {
1137#line 23
1138 timeShift();
1139#line 22
1140 i = i + 1;
1141 }
1142 }
1143 while_4_break: ;
1144 }
1145#line 1111 "Test.c"
1146 return;
1147}
1148}
1149#line 56 "Test.c"
1150void Specification2(void)
1151{
1152
1153 {
1154 {
1155#line 57
1156 timeShift();
1157#line 57
1158 printPump();
1159#line 58
1160 timeShift();
1161#line 58
1162 printPump();
1163#line 59
1164 timeShift();
1165#line 59
1166 printPump();
1167#line 60
1168 waterRise();
1169#line 60
1170 printPump();
1171#line 61
1172 timeShift();
1173#line 61
1174 printPump();
1175#line 62
1176 changeMethaneLevel();
1177#line 62
1178 printPump();
1179#line 63
1180 timeShift();
1181#line 63
1182 printPump();
1183#line 64
1184 cleanup();
1185 }
1186#line 1159 "Test.c"
1187 return;
1188}
1189}
1190#line 67 "Test.c"
1191void setup(void)
1192{
1193
1194 {
1195#line 1177 "Test.c"
1196 return;
1197}
1198}
1199#line 74 "Test.c"
1200void runTest(void)
1201{
1202
1203 {
1204 {
1205#line 77
1206 test();
1207 }
1208#line 1197 "Test.c"
1209 return;
1210}
1211}
1212#line 82 "Test.c"
1213int main(void)
1214{ int retValue_acc ;
1215 int tmp ;
1216
1217 {
1218 {
1219#line 83
1220 select_helpers();
1221#line 84
1222 select_features();
1223#line 85
1224 tmp = valid_product();
1225 }
1226#line 85
1227 if (tmp) {
1228 {
1229#line 86
1230 setup();
1231#line 87
1232 runTest();
1233 }
1234 } else {
1235
1236 }
1237#line 1226 "Test.c"
1238 retValue_acc = 0;
1239#line 1228
1240 return (retValue_acc);
1241#line 1235
1242 return (retValue_acc);
1243}
1244}