/* Generated by Frama-C */
#include "stddef.h"
#include "stdio.h"
int main(int argc, char const **argv)
{
  int __retres;
  __e_acsl_memory_init(& argc,(char ***)(& argv),(size_t)8);
  {
    int __gen_e_acsl_valid;
    __gen_e_acsl_valid = __e_acsl_valid((void *)(& argc),sizeof(int),
                                        (void *)(& argc),(void *)0);
    __e_acsl_assert(__gen_e_acsl_valid,"Assertion","main","\\valid(&argc)",
                    "tests/temporal/t_args.c",8);
  }
  /*@ assert \valid(&argc); */ ;
  {
    int __gen_e_acsl_valid_2;
    __gen_e_acsl_valid_2 = __e_acsl_valid((void *)argv,sizeof(char const *),
                                          (void *)argv,(void *)(& argv));
    __e_acsl_assert(__gen_e_acsl_valid_2,"Assertion","main","\\valid(argv)",
                    "tests/temporal/t_args.c",9);
  }
  /*@ assert \valid(argv); */ ;
  {
    int __gen_e_acsl_initialized;
    int __gen_e_acsl_and;
    __gen_e_acsl_initialized = __e_acsl_initialized((void *)argv,
                                                    sizeof(char const *));
    if (__gen_e_acsl_initialized) {
      int __gen_e_acsl_valid_read;
      int __gen_e_acsl_valid_3;
      __gen_e_acsl_valid_read = __e_acsl_valid_read((void *)argv,
                                                    sizeof(char const *),
                                                    (void *)argv,
                                                    (void *)(& argv));
      __e_acsl_assert(__gen_e_acsl_valid_read,"RTE","main",
                      "mem_access: \\valid_read(argv)",
                      "tests/temporal/t_args.c",10);
      __gen_e_acsl_valid_3 = __e_acsl_valid((void *)*argv,sizeof(char const),
                                            (void *)*argv,(void *)argv);
      __gen_e_acsl_and = __gen_e_acsl_valid_3;
    }
    else __gen_e_acsl_and = 0;
    __e_acsl_assert(__gen_e_acsl_and,"Assertion","main","\\valid(*argv)",
                    "tests/temporal/t_args.c",10);
  }
  /*@ assert \valid(*argv); */ ;
  __retres = 0;
  __e_acsl_delete_block((void *)(& argv));
  __e_acsl_delete_block((void *)(& argc));
  __e_acsl_memory_clean();
  return __retres;
}


