Hello,

in 3.1.1, we use "In the special case where the parameter type has a non-trivial copy constructor or destructor" to force passing by reference. It seems that for C++11, this should also include move constructors, for the same reasons.

Currently, clang and gcc disagree on where to find 'a' in the following:

struct Tuple { int a; Tuple(Tuple&&); };
int f(Tuple t){
    return t.a;
}

( http://stackoverflow.com/q/35586332/1918193 )

(I have trouble getting anything but time-outs from llvm's bugzilla)

--
Marc Glisse
_______________________________________________
cxx-abi-dev mailing list
[email protected]
http://sourcerytools.com/cgi-bin/mailman/listinfo/cxx-abi-dev

Reply via email to