https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109529
--- Comment #6 from Lisp2D <lisp2d at rambler dot ru> --- (In reply to Andrew Pinski from comment #4) > https://stackoverflow.com/questions/40193008/why-a-const-volatile-reference- stackoverflow offers to link an rvalue reference to a variable for this. But I think this is historical stupidity. int volatile && rx = static_cast < int volatile && > ( x ) ; int volatile const & lx = rx ; fun(lx);