]> gitweb.factorcode.org Git - factor.git/blob - basis/compiler/cfg/checker/checker.factor
basis: ERROR: changes.
[factor.git] / basis / compiler / cfg / checker / checker.factor
1 ! Copyright (C) 2009, 2010 Slava Pestov.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: accessors compiler.cfg.rpo kernel sequences ;
4 IN: compiler.cfg.checker
5
6 ERROR: bad-successors ;
7
8 : check-successors ( bb -- )
9     dup successors>> [ predecessors>> member-eq? ] with all?
10     [ throw-bad-successors ] unless ;
11
12 : check-cfg ( cfg -- )
13     [ check-successors ] each-basic-block ;