Consider the below.
#include <string>
using std::string;
string middle_name () {
return "Jaan";
}
int main()
{
string&& danger = middle_name(); // ?!
return 0;
}
This doesn't compute anything, but it compiles without error and demonstrates something that I find confusing: danger
is a dangling reference, isn't it?