/* methods for implementation of automaton from promela description */
-/* Copyright (c) 2011-2012. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2011-2014. The SimGrid Team.
+ * All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
#include "xbt/automaton.h"
+#include <errno.h>
+#include <string.h> /* strerror */
static xbt_automaton_t parsed_automaton;
char* state_id_src;
#include "parserPromela.tab.cacc"
-void xbt_automaton_load(xbt_automaton_t a, const char *file){
+void xbt_automaton_load(xbt_automaton_t a, const char *file)
+{
parsed_automaton = a;
yyin = fopen(file, "r");
+ if (yyin == NULL)
+ xbt_die("Failed to open automaton file `%s': %s", file, strerror(errno));
yyparse();
}