/* Generated by Frama-C */
#include "pthread.h"
#include "sched.h"
#include "signal.h"
#include "stddef.h"
#include "stdint.h"
#include "stdio.h"
#include "time.h"
extern  __attribute__((__FC_BUILTIN__)) int __e_acsl_sound_verdict;

short a;
char b(void)
{
  char __retres;
  __e_acsl_store_block((void *)(& __retres),1UL);
  switch ((int)a) {
    int c = 0;
    __e_acsl_store_block((void *)(& c),4UL);
    __e_acsl_full_init((void *)(& c));
    case 0:
    __e_acsl_store_block_duplicate((void *)(& c),4UL);
    __e_acsl_delete_block((void *)(& c));
    goto d;
    int tmp = c;
    __e_acsl_store_block((void *)(& tmp),4UL);
    __e_acsl_full_init((void *)(& tmp));
    __e_acsl_delete_block((void *)(& tmp));
    __e_acsl_delete_block((void *)(& c));
  }
  d: __e_acsl_full_init((void *)(& __retres));
     __retres = (char)2;
  __e_acsl_delete_block((void *)(& __retres));
  return __retres;
}

void __e_acsl_globals_init(void)
{
  static char __e_acsl_already_run = 0;
  if (! __e_acsl_already_run) {
    __e_acsl_already_run = 1;
    __e_acsl_store_block((void *)(& b),1UL);
    __e_acsl_full_init((void *)(& b));
    __e_acsl_store_block((void *)(& a),2UL);
    __e_acsl_full_init((void *)(& a));
  }
  return;
}

void __e_acsl_globals_clean(void)
{
  __e_acsl_delete_block((void *)(& b));
  __e_acsl_delete_block((void *)(& a));
  return;
}

int main(void)
{
  int __retres;
  __e_acsl_memory_init((int *)0,(char ***)0,8UL);
  __e_acsl_globals_init();
  __e_acsl_store_block((void *)(& __retres),4UL);
  b();
  __e_acsl_full_init((void *)(& __retres));
  __retres = 0;
  __e_acsl_delete_block((void *)(& __retres));
  __e_acsl_globals_clean();
  __e_acsl_memory_clean();
  return __retres;
}


