<div dir="ltr"><div><div><div><div>Hi, I have some compile issues on current source 
codes, I want to list them out and talk about my solution.I compile the 
codes by the method introduce on  this <a href="http://qtandopencv.blogspot.my/2015/09/deep-learning-04-compile-mlpack-1012-on.html" target="_blank">post(work on 1.0.12)</a><div style="width:16px;height:16px;display:inline-block"> </div><br><br></div><div>All of the error messages could be found at <a href="http://pastebin.com/J6wE3E6e" target="_blank">here</a>.<br><br></div><div>compiler : visual c++ 2015 64bits<br></div><div>OS : windows 8.1 64bits<br></div><div><br>1 : openMP optimization do not work on vc2015, you have to disable it<br></div>2 : following codes(hrectbound.hpp) do not work on vc2015<br><br><span style="color:rgb(0,0,128)">//!</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">Utility</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">struct</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">where</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">Value</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">is</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">true</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">if</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">and</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">only</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">if</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">the</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">argument</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">is</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">of</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">type</span>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,128)">//!</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">LMetric.</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">MetricType</span><span style="color:rgb(0,0,0)">&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">struct</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">IsLMetric</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">{</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(192,192,192)">  </span><span style="color:rgb(128,128,0)">static</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">const</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">=</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">false</span><span style="color:rgb(0,0,0)">;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">};</span></pre>
<pre style="margin:0px;text-indent:0px"><br></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,128)">//!</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">Specialization</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">for</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">IsLMetric</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">when</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">the</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">argument</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">is</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">of</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">type</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">LMetric.</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,128,0)"><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)"></span></span><span style="color:rgb(0,128,0)"><span style="color:rgb(0,0,0)">&lt;</span></span><span style="color:rgb(0,0,0)">&gt; //this line will cause compilation issue</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(192,192,192)"> </span>Power<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span>TakeRoot<span style="color:rgb(0,0,0)">&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">struct</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">IsLMetric</span><span style="color:rgb(0,0,0)">&lt;</span>metric<span style="color:rgb(0,0,0)">::</span>LMetric<span style="color:rgb(0,0,0)">&lt;</span>Power<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span>TakeRoot<span style="color:rgb(0,0,0)">&gt;&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">{</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(192,192,192)">  </span><span style="color:rgb(128,128,0)">static</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">const</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">=</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">true</span><span style="color:rgb(0,0,0)">;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">};</span></pre><br><br></div>The error message is <br>Severity    Code    Description    Project    File    Line<br>Error    C2910    &#39;mlpack::bound::meta::IsLMetric&lt;mlpack::metric::LMetric&lt;Power,TakeRoot&gt;&gt;&#39;: cannot be explicitly specialized    hmm_train    c:\users\yyyy\qt\3rdlibs\mlpack\mlpack\src\mlpack\core\tree\hrectbound.hpp    31<br><br></div>But it can work as expected if you remove the line &quot;template&lt;&gt;&quot;<br><br></div>example :<br><br><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(192,192,192)"> </span>A<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span>B<span style="color:rgb(0,0,0)">&gt;</span>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">struct</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">LMetric</span><span style="color:rgb(0,0,0)">{};</span></pre>
<pre style="margin:0px;text-indent:0px"><br></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">MetricType</span><span style="color:rgb(0,0,0)">&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">struct</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">IsLMetric</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">{</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(192,192,192)">  </span><span style="color:rgb(128,128,0)">static</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">const</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">=</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">false</span><span style="color:rgb(0,0,0)">;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">};</span></pre>
<pre style="margin:0px;text-indent:0px"><br></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,128)">//!</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">Specialization</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">for</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">IsLMetric</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">when</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">the</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">argument</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">is</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">of</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">type</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">LMetric.</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,128,0)">//template&lt;&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(192,192,192)"> </span>Power<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span>TakeRoot<span style="color:rgb(0,0,0)">&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">struct</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">IsLMetric</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,0,128)">LMetric</span><span style="color:rgb(0,0,0)">&lt;</span>Power<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span>TakeRoot<span style="color:rgb(0,0,0)">&gt;&gt;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">{</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(192,192,192)">  </span><span style="color:rgb(128,128,0)">static</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">const</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">bool</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">=</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">true</span><span style="color:rgb(0,0,0)">;</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">};</span></pre>
<pre style="margin:0px;text-indent:0px"><br></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">main</span><span style="color:rgb(0,0,0)">()</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">{</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(192,192,192)">    </span><span style="color:rgb(128,0,128)">std</span><span style="color:rgb(0,0,0)">::</span>cout<span style="color:rgb(0,0,0)">&lt;&lt;</span><span style="color:rgb(128,0,128)">IsLMetric</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(0,0,0)">&gt;::</span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(0,0,0)">&lt;&lt;</span><span style="color:rgb(0,128,0)">&quot;\n&quot;</span><span style="color:rgb(0,0,0)">; //false</span></pre>
<pre style="margin:0px;text-indent:0px"><span style="color:rgb(192,192,192)">    </span><span style="color:rgb(128,0,128)">std</span><span style="color:rgb(0,0,0)">::</span>cout<span style="color:rgb(0,0,0)">&lt;&lt;</span><span style="color:rgb(128,0,128)">IsLMetric</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,0,128)">LMetric</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(0,0,128)">3</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(128,128,0)">false</span><span style="color:rgb(0,0,0)">&gt;&gt;::</span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(0,0,0)">&lt;&lt;</span><span style="color:rgb(0,128,0)">&quot;\n&quot;</span><span style="color:rgb(0,0,0)">; //true<br>}<br><br><br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">3 : BOOST_PFTO of the file serialization_shim.hpp will cause compile issue<br><br></span><br><span style="color:rgb(128,128,0)">namespace</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">boost</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">{</span>
<span style="color:rgb(128,128,0)">namespace</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">serialization</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">{</span>
<br>
<span style="color:rgb(0,0,128)">/**</span>
<span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">*</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">Catch</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">a</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">call</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">to</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">serialize()</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">with</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">a</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">PointerShim,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">and</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">call</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">the</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">Serialize()</span>
<span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">*</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">function</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">directly.</span>
<span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,128)">*/</span>
<span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">Archive</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">T</span><span style="color:rgb(0,0,0)">&gt;</span>
<span style="color:rgb(128,128,0)">inline</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">void</span><span style="color:rgb(192,192,192)"> </span>serialize<span style="color:rgb(0,0,0)">(</span>Archive<span style="color:rgb(0,0,0)">&amp;</span><span style="color:rgb(192,192,192)"> </span>ar<span style="color:rgb(0,0,0)">,</span>
<span style="color:rgb(192,192,192)">                      </span><span style="color:rgb(128,0,128)">mlpack</span><span style="color:rgb(0,0,0)">::</span><span style="color:rgb(128,0,128)">data</span><span style="color:rgb(0,0,0)">::</span>PointerShim<span style="color:rgb(0,0,0)">&lt;</span>T<span style="color:rgb(0,0,0)">&gt;&amp;</span><span style="color:rgb(192,192,192)"> </span>t<span style="color:rgb(0,0,0)">,</span>
<span style="color:rgb(192,192,192)">                      </span><span style="color:rgb(128,128,0)">const</span><span style="color:rgb(192,192,192)"> </span>BOOST_PFTO<span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">unsigned</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(192,192,192)"> </span>version<span style="color:rgb(0,0,0)">)</span>
<span style="color:rgb(0,0,0)">{</span>
<span style="color:rgb(192,192,192)">  </span>T<span style="color:rgb(0,0,0)">*</span><span style="color:rgb(192,192,192)"> </span>tptr<span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,0,0)">=</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">reinterpret_cast</span><span style="color:rgb(0,0,0)">&lt;</span>T<span style="color:rgb(0,0,0)">*&gt;(&amp;</span>t<span style="color:rgb(0,0,0)">);</span>
<span style="color:rgb(192,192,192)">  </span>tptr<span style="color:rgb(0,0,0)">-&gt;</span><span style="color:rgb(0,0,0)">Serialize</span><span style="color:rgb(0,0,0)">(</span>ar<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span>version<span style="color:rgb(0,0,0)">);</span>
<span style="color:rgb(0,0,0)">}</span>
<br>
<span style="color:rgb(0,0,0)">}}</span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)"><br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">if I remove BOOST_PFTO, the compile time issue of BOOST_PFTO <br>will be &quot;removed&quot;, but I do not know this is safe or not<br><br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">4 : vc2015 do not bite the &quot;not&quot; keyword<br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">file : cnn.hpp<br><br></span><br><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">T</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">P</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">D</span><span style="color:rgb(0,0,0)">&gt;</span>
<span style="color:rgb(192,192,192)">    </span><span style="color:rgb(128,128,0)">typename</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">std</span><span style="color:rgb(0,0,0)">::</span><span style="color:rgb(128,0,128)">enable_if</span><span style="color:rgb(0,0,0)">&lt;</span>
<span style="color:rgb(192,192,192)">        </span><span style="color:rgb(0,0,0)">not</span><span style="color:rgb(192,192,192)"> </span>HasGradientCheck<span style="color:rgb(0,0,0)">&lt;</span><span style="color:rgb(128,0,128)">T</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">void</span><span style="color:rgb(0,0,0)">(</span><span style="color:rgb(128,0,128)">T</span><span style="color:rgb(0,0,0)">::*)(</span><span style="color:rgb(128,128,0)">const</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">P</span><span style="color:rgb(0,0,0)">&amp;,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">D</span><span style="color:rgb(0,0,0)">&amp;)&gt;::</span>value<span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,128,0)">void</span><span style="color:rgb(0,0,0)">&gt;::</span><span style="color:rgb(128,0,128)">type</span>
<span style="color:rgb(192,192,192)">    </span><span style="color:rgb(0,0,0)">Update</span><span style="color:rgb(0,0,0)">(</span><span style="color:rgb(128,0,128)">T</span><span style="color:rgb(0,0,0)">&amp;</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">/*</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">unused</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">*/</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">P</span><span style="color:rgb(0,0,0)">&amp;</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">/*</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">unused</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">*/</span><span style="color:rgb(0,0,0)">,</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(128,0,128)">D</span><span style="color:rgb(0,0,0)">&amp;</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">/*</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">unused</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">*/</span><span style="color:rgb(0,0,0)">)</span>
<span style="color:rgb(192,192,192)">    </span><span style="color:rgb(0,0,0)">{</span>
<span style="color:rgb(192,192,192)">      </span><span style="color:rgb(0,128,0)">/*</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">Nothing</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">to</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">do</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">here</span><span style="color:rgb(192,192,192)"> </span><span style="color:rgb(0,128,0)">*/</span>
<span style="color:rgb(192,192,192)">    </span><span style="color:rgb(0,0,0)">}<br><br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">change not to ! can solve this problem<br><br><br><br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">After the fixed(?), there are still 10 errors<br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">The error messages can be found at <a href="http://pastebin.com/1XSGs1mQ" target="_blank">here</a>.<br><br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">The first error is &quot;C1001 An internal error has occured in the compiler&quot;,<br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">I do not know how to fix this one yet<br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)">The error is point the line 75 of file ffn.hpp<br></span></pre><pre style="margin:0px;text-indent:0px"><span style="color:rgb(0,0,0)"><br></span></pre>The other errors are quite weird, the compiler complain same files are being used so the custom build rule fail, do not know how to fix this yet</div>