[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] _Generic or __builtin_choose_expr
From: |
Michael Matz |
Subject: |
Re: [Tinycc-devel] _Generic or __builtin_choose_expr |
Date: |
Thu, 29 Jun 2017 16:32:09 +0200 (CEST) |
User-agent: |
Alpine 2.20 (LSU 67 2015-01-07) |
Hi,
On Wed, 28 Jun 2017, uso ewin wrote:
> > Are there any plans for C11's _Generic or at least __builtin_choose_expr?
> >
> >
> > Best regards,
> > Petr Skocik
> >
> > _______________________________________________
> > Tinycc-devel mailing list
> > address@hidden
> > https://lists.nongnu.org/mailman/listinfo/tinycc-devel
>
> Hello,
>
> I was working on _Generic implementation on tcc(as an hobby)
> Your mail made me want to continue my job, and yesterday I've succeed
> to make something usable:
> https://github.com/cosmo-ray/tcc/commits/generic
Thanks for working on this.
> The code as it is actually is pretty crappy, doesn't respect C
> standard(main difference is I can't make difference between a char*,
> an int * or any kind of pointer), but should be enough for most use
> case, and pretty easy to merge on mob
>
> should I try to merge it to mob once I've clean my commits ?
> maybe by adding some option like: "--with-fake-generic" ?
> So _Generic are not enable by default
Hmm. I'd dislike an implementation of _Generic that isn't standard
conforming (at least in most cases and as far as we know). So try a bit
harder to implement it fully :) (I.e. you might need to extend
compare_types) A separate option wouldn't be needed then.
I've very briefly looked at your implementation: Don't use your current
way of parsing the controlling expression/type, you should be able to
reuse expr_type/parse_expr_type/parse_type (or parts of it).
Ciao,
Michael.