mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
Merge pull request #144 from rschu1ze/rs/fix-libcxx16
Fix compilation with libcxx 16
This commit is contained in:
commit
d05491117c
@ -204,6 +204,15 @@ void RoseProgram::add_block(RoseProgram &&block) {
|
|||||||
make_move_iterator(block.prog.end()));
|
make_move_iterator(block.prog.end()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template<class Iter>
|
||||||
|
void RoseProgram::replace(Iter it, std::unique_ptr<RoseInstruction> ri) {
|
||||||
|
assert(!prog.empty());
|
||||||
|
|
||||||
|
const RoseInstruction *old_ptr = it->get();
|
||||||
|
*it = move(ri);
|
||||||
|
update_targets(prog.begin(), prog.end(), old_ptr, it->get());
|
||||||
|
}
|
||||||
|
|
||||||
bytecode_ptr<char> writeProgram(RoseEngineBlob &blob,
|
bytecode_ptr<char> writeProgram(RoseEngineBlob &blob,
|
||||||
const RoseProgram &program) {
|
const RoseProgram &program) {
|
||||||
u32 total_len = 0;
|
u32 total_len = 0;
|
||||||
|
@ -124,13 +124,7 @@ public:
|
|||||||
* \brief Replace the instruction pointed to by the given iterator.
|
* \brief Replace the instruction pointed to by the given iterator.
|
||||||
*/
|
*/
|
||||||
template<class Iter>
|
template<class Iter>
|
||||||
void replace(Iter it, std::unique_ptr<RoseInstruction> ri) {
|
void replace(Iter it, std::unique_ptr<RoseInstruction> ri);
|
||||||
assert(!prog.empty());
|
|
||||||
|
|
||||||
const RoseInstruction *old_ptr = it->get();
|
|
||||||
*it = move(ri);
|
|
||||||
update_targets(prog.begin(), prog.end(), old_ptr, it->get());
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
bytecode_ptr<char> writeProgram(RoseEngineBlob &blob,
|
bytecode_ptr<char> writeProgram(RoseEngineBlob &blob,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user