aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2019-06-21 15:20:55 +0000
committerEric Fiselier <eric@efcs.ca>2019-06-21 15:20:55 +0000
commit000f25a37e76317aa78b0f6dd9283ba41af94591 (patch)
tree988a2d163afe5459926808aaa05139cc86ec7e61 /llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
parentddb9093684062b6552b338ff754c674e79a55826 (diff)
downloadllvm-000f25a37e76317aa78b0f6dd9283ba41af94591.zip
llvm-000f25a37e76317aa78b0f6dd9283ba41af94591.tar.gz
llvm-000f25a37e76317aa78b0f6dd9283ba41af94591.tar.bz2
Make move and forward work in C++03.
These functions are key to allowing the use of rvalues and variadics in C++03 mode. Everything works the same as in C++11, except for one tangentially related case: struct T { T(T &&) = default; }; In C++11, T has a deleted copy constructor. But in C++03 Clang gives it both a move and a copy constructor. This seems reasonable enough given the extensions it's using. The other changes in this patch were the minimal set required to keep the tests passing after the move/forward change. Most notably the removal of the `__rv<unique_ptr>` hack that was present in an attempt to make unique_ptr move only without language support. llvm-svn: 364063
Diffstat (limited to 'llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp')
0 files changed, 0 insertions, 0 deletions