Is unsigned char('0') legal C++
<p>The following compiles in Visual Studio but fails to compile under g++.</p>

<pre><code>int main()
{
    int a = unsigned char('0');
    return 0;
}
</code></pre>

<p>Is unsigned char() a valid way to cast in C++?</p>
