diff options
author | Eric Fiselier <eric@efcs.ca> | 2016-02-11 21:45:53 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2016-02-11 21:45:53 +0000 |
commit | 0f90567744f45174cc3abf0f07fc97563405f94d (patch) | |
tree | 07e1f0e57f34f20a7b81e8de459460dbd675d3ff /llvm/lib/Transforms/IPO/PassManagerBuilder.cpp | |
parent | 1cb8fac171fbd6bc8a65a677a47b5de391614e35 (diff) | |
download | bcm5719-llvm-0f90567744f45174cc3abf0f07fc97563405f94d.tar.gz bcm5719-llvm-0f90567744f45174cc3abf0f07fc97563405f94d.zip |
Fix LWG issue 2469 - Use piecewise construction in unordered_map::operator[].
unordered_map's allocator may only be used to construct objects of 'value_type',
or in this case 'pair<const Key, Value>'. In order to respect this requirement
in operator[], which requires default constructing the 'mapped_type', we have
to use pair's piecewise constructor with '(tuple<Kep>, tuple<>)'.
Unfortunately we still need to provide a fallback implementation for C++03
since we don't have <tuple>. Even worse this fallback is the last remaining
user of '__hash_map_node_destructor' and '__construct_node_with_key'.
llvm-svn: 260601
Diffstat (limited to 'llvm/lib/Transforms/IPO/PassManagerBuilder.cpp')
0 files changed, 0 insertions, 0 deletions