E4155#
const
,fnalias
,typealias
或 traitalias
声明里有循环定义。
const
声明中可以使用同一个包内定义的其他常量。fnalias
也可以指代同一个包内的其他函数别名。typealias
和 traitalias
也可以指代同一个包内的其他 typealias
/traitalias
。但如果这些声明中有循环定义,编译器就会产生本错误。
错误示例#
const A : Int = B + 1
const B : Int = A + 1
fnalias f = g
fnalias g = f
typealias T1 as T2
typealias T2 as T1
traitalias I1 as I2
traitalias I2 as I1