title: cppcheck complains about unreadVariable when used in template
body: <p>Can someone explain to me why the following code for a unit test gives the error unreadVariable for n and k in cppcheck?
  Combinations is a template class that calculates all combinations of n choose k but this should not matter here.</p>
  
  <pre><code>TEST(Combinations, ChooseOne)
  {
      const UINT8 n = 3;
      const UINT8 k = 1;
  
      Combinations&lt;n, k&gt; comb;
      comb.calc();
      std::vector&lt; std::vector&lt;UINT8&gt; &gt; _vui8Expect = { { 2 }, { 1 }, { 0 } };
      EXPECT_THAT(comb.result, ::testing::ContainerEq(_vui8Expect));
  }
  </code></pre>
  
  <p>I can change the code to the following and not get a cppcheck error anymore. But I do not like this, because it make the code less verbose. n, k are well defined quantities in statistics and they make it more clear in the call what is going on.</p>
  
  <pre><code>TEST(Combinations, ChooseOne)
  {
      Combinations&lt;3, 1&gt; comb;
      comb.calc();
      std::vector&lt; std::vector&lt;UINT8&gt; &gt; _vui8Expect = { { 2 }, { 1 }, { 0 } };
      EXPECT_THAT(comb.result, ::testing::ContainerEq(_vui8Expect));
  }
  </code></pre>