Are the following structs the same type?
<p>I have a struct defined as the following:</p>

<pre><code>typedef struct {
    string foo;
} A, B;
</code></pre>

<p>I also have a set of functions as follows:</p>

<pre><code>void Init(A *p) {
    p-&gt;foo;
}
void Init(B *p) {
    p-&gt;foo;
}
</code></pre>

<p>The gcc complains that Init is being redefined. Can I simply delete the second Init function? Is A the same type as B?</p>
