diff options
| author | Malcolm Parsons <malcolm.parsons@gmail.com> | 2016-11-17 17:52:58 +0000 | 
|---|---|---|
| committer | Malcolm Parsons <malcolm.parsons@gmail.com> | 2016-11-17 17:52:58 +0000 | 
| commit | ff0382c16190cd2b1bc47b27c5db0570b90f1d39 (patch) | |
| tree | 3d7dd8e1381692ecbc3960d7ec2220016dc48acb /llvm/lib/Object/Binary.cpp | |
| parent | 97ff7672aa58e14427630c49e53f75e02ce82245 (diff) | |
| download | llvm-ff0382c16190cd2b1bc47b27c5db0570b90f1d39.zip llvm-ff0382c16190cd2b1bc47b27c5db0570b90f1d39.tar.gz llvm-ff0382c16190cd2b1bc47b27c5db0570b90f1d39.tar.bz2 | |
Use unique_ptr for cached tokens for default arguments in C++.
Summary:
This changes pointers to cached tokens for default arguments in C++ from raw pointers to unique_ptrs.  There was a fixme in the code where the cached tokens are created  about using a smart pointer.
The change is straightforward, though I did have to track down and fix a memory corruption caused by the change.  memcpy was being used to copy parameter information.  This duplicated the unique_ptr, which led to the cached token buffer being deleted prematurely.
Patch by David Tarditi!
Reviewers: malcolm.parsons
Subscribers: arphaman, malcolm.parsons, cfe-commits
Differential Revision: https://reviews.llvm.org/D26435
llvm-svn: 287241
Diffstat (limited to 'llvm/lib/Object/Binary.cpp')
0 files changed, 0 insertions, 0 deletions
