surprising behaviour encountered while covering more cases ...obviously the return type of ExpandFunctor::operator() was inferred as value, even while the invoked functor, from which this type was deduced, clearly returns a reference. Solution is simple not to rely on inference, moreover since we know the exact type in the enclosing scope, thanks to the refactoring which made this ExpandFunctor a nested class NOTE: as it turned out, this is not a compiler bug, but works as defined by the language: on return type inference, the detected type is decayed, which usually helps to prevent returning a reference to a temporary |
||
|---|---|---|
| .. | ||
| design | ||
| devel | ||
| technical | ||
| user | ||
| .gitignore | ||
| DIR_INFO | ||
| index.txt | ||
| SConscript | ||