The usefulness comes from the case when bar is local:void foo(int loc) { auto bar = double[RandomPInt+1]; return bar[loc]; }then foo($) always returns a value and the outside world does not need to know about foo. Since $ is a compile thing
No language change is necessary right now if you write one more character: foo!"$"