Cfunction error handling

Hi.
Im calling cfunctions from c++ code.
Is it possible not to break execution and do error handling if one occure on julia sode?

for exmple:

function calc(x :: Float32)
   return 100 * sqrt(-x)
end 

call this with any positive x from c++ will totally crash.

JL_TRY / JL_CATCH will catch those, but i cant find out the way to print error message. ANd this macro works only once in a function.

Is there a correct way to handle cfunction errors from c++?