Others will likely disagree
Assuming the return is returning a value, when using a debugger one can
put a breakpoint on the one return and see the value. Alternately, if
not using a debugger one can use a printf() to print the return value.
If you've multiple returns, you'll need to either put a break point at
each one or put a printf by each one.
It depends on the debugging facilities. The debugger I use most
often has the ability to break upon encountering a return, before
destroying the enclosing scope.
"easier to debug" is relative, and there is no one "right" answer.
Some people say firmly that one should only ever have a single
exit point from a routine, but what they don't always take into account
is that forcing there to be only a single exit point might require
that you convolute your code in ways that make it much harder to
understand.
Suppose, for example, that one is writing a program that has
a mix of possible arguments, some of them incompatible with each
other, and some of which the user might have forgotten to put in.
If one is allowed multiple returns from the code, then one can
use a coding structure such as:
if there is the wrong number of arguments, print a message and exit.
if argument A is given and any of arguments B, Q, or z are given,
print a message and exit
if argument B does not satisfy this mathematical relationship,
print a message and exit
If though, one is not allowed multiple returns, then one ends
up in a long chain of if/then/else, or else one ends up adopting a
make-work scheme such as
set StillValid to True
if there is the wrong number of arguments, print a message and
set StillValid to False.
if StillValid is True and arument A is given and any of the arguments
B, Q, or z are given, print a message and set StillValid to False.
if StillValid is True and argument B does not satisfy this mathematical
relationship, print a message and set StillValid to False.
and so on, at each stage setting a flag whose *only* purpose is to
allow one to (step by step) skip over all remaining code without having
to use a rats-nest of if/else and indentation. And if one examines the
code and finds a particular place that sets the flag, one still has to
read through to the end of the routine, just in case it turns out
that there is something -somewhere- in the routine that proceeds without
regards to whether StillValid is true or not (or in case something
resets it without considering the consequences...). This kind of
code structure can end up being messier than using multiple exits,
and hence using just a single return can end up -harder- to debug,
in some cases.