Jakub Narebski [off-list ref] writes:
While at it make git_get_references return hash in list context,
and reference to hash (as it used to do) in scalar and void contexts.
Why did you have to add this? Generally, context sensitive
returns make the program much harder to maintain, because it
forces the call sites to be extremely careful to choose between
"my ($foo) = func()" vs "my $foo = func()", and people who later
call the function inevitably make mistakes.
So unless there is a compelling reason, I'd rather not see more
"wantarray" in the program.