https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115987

--- Comment #11 from Dan Urosu <durosu at yahoo dot com> ---
1) "We don't analyze the body of the function"
unwrap_1 and unwrap_2 are functionally equivalent. Yet only unwrap_2 triggers
the warning.
2) If the unwrap_2 is called from a macro, then the pragma suppression does not
work.

If the #pragma GCC diagnostic ignored "-Wdangling-reference" would work in cas
(2) above, we could use it as a band-aid solution.

PS. Also worth mentioning, if you write the non-cost equivalent of the unwrap_2
template function 
"T& unwrap_2(Wrapper<T>& r, FUNC&&) ", you don't get the warning.

Reply via email to