title: QVariants with QStringList comparison
body: <p>I'm having weird observations when comparing <code>QVariant</code>s with <code>QStringList</code>s inside.</p>
  
  <p>Code:</p>
  
  <pre><code>QStringList l1, l2;
  
  l1 &lt;&lt; "";
  l2 &lt;&lt; "33" &lt;&lt; "434";
  
  const bool le = l1 &lt; l2;
  const bool ge = l1 &gt; l2;
  const bool eq = l1 == l2;
  
  QVariant v1(l1), v2(l2);
  
  const bool vle = v1 &lt; v2;
  const bool vge = v1 &gt; v2;
  const bool veq = v1 == v2;
  </code></pre>
  
  <p>When I modify <code>l1</code> my comparison results (<code>le</code>, <code>ge</code> and <code>eq</code>) have expected values. But it doesn't affect results for variants at all. I always get <code>vge</code> == true, <code>vle</code> and <code>veq</code> are always false. </p>
  
  <p>Docs say it should work. Am I wrong somewhere or is it Qt bug?
  I'm using Qt5.7.</p>
  
  <p><strong>EDIT</strong></p>
  
  <p>I've filled a bug report for this issue: <a href="https://bugreports.qt.io/browse/QTBUG-54893" rel="nofollow noreferrer">https://bugreports.qt.io/browse/QTBUG-54893</a></p>