For example, say
func1 --> func2 --> func3 --> func4 Raises exception
Exceptions propagate until they reach a handler, or until they reach the entry point for the program or thread. If the latter happens, your program will terminate. So, yes, the exception will be caught in func1, unless one of the other functions catches it first.