Let’s say I have some software suite that performs a lot of floating point operations. Trigonometry or something. Say every single function returns a Result<float,err>, where err is a floating point error. Some functions call other functions in this suite, using try!() to easily return an error, if a sub-error occurs. And I myself use functions in that suite several times, in various places throughout my code. All my functions use try! as well, going all the way back to the main procedure, which can pattern match on some function like: fn perform_operations(…) -> Result<float,err>.
Let’s say perform_operations returns an error. How do I tell where that floating point error was created, and what part of my code, or of that software suite, has an error?