title: key value being replaced by 'key' when using merge() in twig
body: <p>I am trying to add pairs of key value to an array with their current values for all those attributes not starting by '_'. For some reason, the merge replaces the value of "key" (i.e slug) with the string 'key'.</p>
  
  <p>For example when slug is the only attribute with key not starting with '_', </p>
  
  <pre><code>key = slug
  value = something
  </code></pre>
  
  <p>it behaves as follows:</p>
  
  <pre><code>{% for key,value in app.request.attributes.all %}
      {% if '_' != key | slice(0, 1) %}
          {{ dump(key) }}  // string(4) "slug"
          {% set params = params | merge({ key : value}) %}
          {{ dump(key) }} // string(4) "slug"
      {% endif %}
  {% endfor %}
  {{ dump(params) }} // array(1) { ["key"]=&gt; string(9) "something" }
  </code></pre>
  
  <p>I have added what the dumps return next to them. </p>
  
  <p>The final dump returns </p>
  
  <pre><code>array(1) { ["key"]=&gt; string(9) "something" }
  </code></pre>
  
  <p>while i'm expecting</p>
  
  <pre><code>array(1) { ["slug"]=&gt; string(9) "something" }
  </code></pre>
  
  <p>I'd say it's a similar problem to <a href="https://stackoverflow.com/questions/6197499/twig-forgets-array-keys">Twig forgets array-keys</a> but the conclusion on that question is that is a mongodb problem and I am not using it. I am working with attributes from the request.</p>
  
  <p>For some reason, the merge({ key : value}) is behaving as merge({ 'key' : value}).</p>