1
내 Julia 코드가 assert 함수를 호출합니다 (또는 매크로, 확실하지 않습니다). 어설 션이 트리거 될 때 Julia v0.1.2에서 실행되면 두 번째 인수 (문자열)를 평가하고 평가 된 인스턴스를 올바르게 인쇄합니다. 아래 예제에서 v0.1.2는 "Hello world"를 인쇄합니다.줄리아의 @assert는 더 이상 주장 메시지를 평가하지 않습니까?
v0.2.1로 업그레이드 한 후 두 번째 인수는 평가되지 않습니다. 대신 메시지의 불분명 골격 인쇄되는 :
julia> a="world" ; @assert(1==0,"hello $a")
ERROR: assertion failed: :($(Expr(:string, "hello ", :a)))
in error at error.jl:21
julia> a="world" ; assert(1==0,"hello $a")
ERROR: assertion failed: y
in assert at deprecated.jl:21
는 사람이 새로운 동작에 도움이 되거 수 있습니까? 내장 된 어설 션을 사용하여 이전 동작을 되돌릴 수있는 방법이 있습니까? 아니면 내 자체 어설 션 기능을 구현하는 것이 더 좋을까요?