22 #define OUTPUT(s, fence, file, line, id, type) \
23 s<<fence<<"|"<<file<<"|"<<line<<"|"<<id<<"|"<<type<<'\n'
28 res.open(
"results.txt");
30 for(std::list<event_idt>::const_iterator st_it=
egraph.
po_order.begin();
56 catch(
const std::string &s)
70 if(visited_nodes.find(current)!=visited_nodes.end())
73 visited_nodes.insert(current);
75 for(wmm_grapht::edgest::const_iterator
76 it=egraph.po_out(current).begin();
77 it!=egraph.po_out(current).end(); ++it)
79 if(naive || !egraph.com_out(it->first).empty())
82 if(find_second_event(it->first))
source_locationt source_location
bool find_second_event(event_idt source)
std::set< event_idt > visited_nodes
std::list< event_idt > po_order
const wmm_grapht::edgest & com_out(event_idt n) const
mstreamt & warning() const
const irep_idt & get_line() const
const irep_idt & get_file() const
wmm_grapht::node_indext event_idt
#define OUTPUT(s, fence, file, line, id, type)