[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

what means "cycle in precedence graph" ?



holzi@logic.tuwien.ac.at writes:
 > I keep getting errors like  
 > 
 > 	*** - DEFCLASS DOC=FILE-ERROR: inconsistent precedence graph, 
 > 		cycle (#<STANDARD-CLASS SYS+ERROR>>
 > Is CLISP too restrictive here or is this a serious problem?

CLISP is not too restrictive by CLtL2 but it is more restrictive than
say, CMU. It is a serious problem as you'll be obliged to search
through the defclass hierarchy to check where this inheritance problem
arises. You got a precedence conflict between the parents of your
class definitions. In some cases, just switching the order of the
superclasses in the defclass form helps.

An example of what is not allowed:

	(defclass foo () ())
	(defclass bar () ())
	(defclass backw (bar foo) ())
	(defclass bad1 (foo backw) ())		; bad
	(defclass ok1  (backw foo) ())		; works

 	Joerg Hoehle.
hoehle@inf-wiss.uni-konstanz.de