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