Operator &= for elements of vector<bool> not defined?
<p>I did some tests with the <code>operator &amp;=</code>. As the following examples shows, this works for single <code>bool</code> type as well as a <code>vector&lt;int&gt;</code> type, but not <code>vector&lt;bool&gt;</code>. </p>

<pre><code>#include &lt;vector&gt;
int main (){

    bool a, b;
    a &amp;= b; // ok
    std::vector&lt;bool&gt; c(1);
    c[0] &amp;= b; // error
    c[0] = c[0] &amp; b; // ok
    std::vector&lt;int&gt; d(1);
    d[0] &amp;= b; // ok

    return 0;
}
</code></pre>

<p>Can anyone tell what is going on here? </p>

<p>(I'm using gcc 4.4.3)</p>
