title: Argument list for class template is missing, but not with VisualC++
body: <p>With IAR compiler, I have the following error:
  <code>Argument list for class template "CallbackInterface" is missing</code>
  But with VisualC++, it compiles like a charm.</p>
  
  <p>What could explain it?</p>
  
  <p>Heres is my callback interface</p>
  
  <pre><code>template&lt;typename DataModel, typename... ArgumentType&gt;
  class CallbackInterface : public DataModel
  {
  public:
      CallbackInterface() {};
      ~CallbackInterface() {};
      CallbackInterface(ArgumentType... arg) : DataModel(arg...) {};
  
  protected:
      ///Callback methods
      static bool AlwaysDisplayable(DataModel* baseInstance) { return true; };
  };
  </code></pre>
  
  <p>Here's my specialization for this interface:</p>
  
  <pre><code>template&lt;typename DataModel, typename... ArgumentType&gt;
  class ThisCallbackInterface : public CallbackInterface&lt;DataModel, ArgumentType...&gt;
  {
  public:
      ThisCallbackInterface() {};
      ~ThisCallbackInterface() {};
      ThisCallbackInterface(ArgumentType... arg) : CallbackInterface(arg...) {};
  </code></pre>
  
  <p>And my final child class:</p>
  
  <pre><code>using DataType = Something;
  
  struct DataModel 
  {
    DataModel(){};
    DataModel(DataType dataArgs){};
  };
  
  class Child: public CallbackStore&lt;DataModel&gt;, public ThisCallbackInterface&lt;DataModel,DataType&gt;
  {
  public:
      Child(DataType dataArgs) : 
          CallbackStore(this),
          ThisCallbackInterface(dataArgs){};
      Child():
          CallbackStore(nullptr),
          ThisCallbackInterface(){};
      ~Child(){};
  };
  </code></pre>