The current code for map insert is
template<typename K, typename V>
pair<iterator, bool> insert(K &&key, V &&val)
{ return m_table.insert_unique(make_tuple(forward<K>(key), forward<V>(val))); }
but if you replace it with
return m_table.insert_unique(forward_as_tuple(key, val));
insertion will create duplicates for dynamic types like dynamic_string