It is not a general solution, but in my case a function generating warning did it after handling an error, so running rethrow()
and checking the error details allowed me to properly handle it.
In my case the warning was related with the following error:
ERROR: UndefVarError: SparseArrays not defined
So the code as follows handled it:
#first throw any error for the rethrow not to catch the previous considered error
try
throw("")
catch error
end
#run code that issues the warning
(...)
#check whether there was any error that issued the warning
try
rethrow()
catch error
if isa(error, UndefVarError)
if error.var == Symbol(SparseArrays)
throw(error)
end
end
end