Hi,
On Thu, Apr 24, 2025 at 11:49:01PM +0200, Xavier Del Campo Romero wrote:
> Hi,
>
> scc (commit d0ec99aa) fails to compile the following minimalistic example:
>
> $ cat struct.c
> struct a {
> int a;
> };
>
> int main()
> {
> struct a a;
> struct a aa = a;
>
> return 0;
> }
> $ scc struct.c
> struct.c:8: error: incorrect initializer
This test case was hitting a few problems in the initializer code. First, the
grammar allows things that are disallow using semantic rules, and it was not
done correctly. I added a flag in initialize to know if we come from an initializer
list or from a normal initializer (a bit hacky from my point of view). The
second problem came from the assumption in the code that a struct could be initialized
only with an initilizer list, but in fact it can be initialized with any expression
of the same type.
I pushed the changes to fix both problems.
Kind Regards,
Roberto Vargas
--
To unsubscribe send a mail to scc-dev+unsubscribe_at_simple-cc.org
Received on Mon 28 Apr 2025 - 11:06:06 CEST