<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)"><</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)">></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)"><</span></span><span style="color:rgb(0,0,0)">> //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)"><</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)">></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)"><</span>metric<span style="color:rgb(0,0,0)">::</span>LMetric<span style="color:rgb(0,0,0)"><</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)">>></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 'mlpack::bound::meta::IsLMetric<mlpack::metric::LMetric<Power,TakeRoot>>': 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 "template<>"<br><br></div>example :<br><br><span style="color:rgb(128,128,0)">template</span><span style="color:rgb(0,0,0)"><</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)">></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)"><</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)">></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<></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)"><</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)">></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)"><</span><span style="color:rgb(128,0,128)">LMetric</span><span style="color:rgb(0,0,0)"><</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)">>></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)"><<</span><span style="color:rgb(128,0,128)">IsLMetric</span><span style="color:rgb(0,0,0)"><</span><span style="color:rgb(128,128,0)">int</span><span style="color:rgb(0,0,0)">>::</span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(0,0,0)"><<</span><span style="color:rgb(0,128,0)">"\n"</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)"><<</span><span style="color:rgb(128,0,128)">IsLMetric</span><span style="color:rgb(0,0,0)"><</span><span style="color:rgb(128,0,128)">LMetric</span><span style="color:rgb(0,0,0)"><</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)">>>::</span><span style="color:rgb(128,0,0)">Value</span><span style="color:rgb(0,0,0)"><<</span><span style="color:rgb(0,128,0)">"\n"</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)"><</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)">></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)">&</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)"><</span>T<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><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)"><</span>T<span style="color:rgb(0,0,0)">*>(&</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)">-></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 "removed", 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 "not" 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)"><</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)">></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)"><</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)"><</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)">&,</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)">&)>::</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)">>::</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)">&</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)">&</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)">&</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 "C1001 An internal error has occured in the compiler",<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>