Le lundi 5 novembre 2012 14:01:20, Hitoshi Mitake a écrit :
> Hi tcc folks.
>
> I found a trivial bug of tcc. Current tcc permits comparison of
> structs and comparison between struct and other typed values. This
> patch can fix the bug.
>
> I'm new to tcc. Sorry if this patch contains wrong part.
> I'd like to hear your comments.
>
> v2: fix on the bug of mod branch
> v3: fix the silly bug of v2
>
> Thanks,
> ---
> tccgen.c | 2 ++
> 1 files changed, 2 insertions(+), 0 deletions(-)
>
> diff --git a/tccgen.c b/tccgen.c
> index 4e58ef0..f183913 100644
> --- a/tccgen.c
> +++ b/tccgen.c
> @@ -1700,6 +1700,8 @@ ST_FUNC void gen_op(int op)
> (t2 & (VT_BTYPE | VT_UNSIGNED)) == (VT_LLONG | VT_UNSIGNED))
> t |= VT_UNSIGNED;
> goto std_op;
> + } else if (bt1 == VT_STRUCT || bt2 == VT_STRUCT) {
> + tcc_error("comparison of struct");
> } else {
> /* integer operations */
> t = VT_INT;Looks good. Thank you for making me realize that even struct equality is not possible in C. Because the assignment of struct is possible I was sure struct equality was possible. I let you commit it. Best regards, Thomas
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ Tinycc-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/tinycc-devel
