[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-hackers] [PATCH] Add detection for hitting rest argument co
From: |
Jim Ursetto |
Subject: |
Re: [Chicken-hackers] [PATCH] Add detection for hitting rest argument count limit on direct procedure application (for #910, sort-of) |
Date: |
Wed, 24 Jul 2013 14:27:47 -0500 |
Although this patch looks good and tests out fine, during the tests, chicken
bloats to 1GB and gcc to 500MB, and they take forever to build apply-test --
probably because the .c file is 40MB! I'm not sure it's wise to apply as-is;
it may kill some machines. Suggestions?
Jim
On Jul 24, 2013, at 2:07 PM, Peter Bex <address@hidden> wrote:
> Hi all,
>
> As we figured out in ticket #910, there are two problems when directly
> invoking procedures with a large number of rest arguments (not via APPLY):
>
> - there's a bug in GCC 4.5's code generation which causes random errors
> like segfaults and illegal instructions to occur.
> - even with a correct C compiler, when going beyond the temporary stack's
> limit, this isn't checked and segfaults will occur.
>
> Here's a patch to add detection for the latter situation, and an improved
> version of the apply-test, which will detect the former situation as well.
> This can help users to determine whether their CHICKEN is built correctly
> and can produce working executables with procedure applications of large
> argument counts, and tells them to upgrade GCC if it segfaults.
>
> Unfortunately, the test takes rather long to build (it has to be
> compiled now), but I think it's worth it regardless as it will help
> prevent spurious bug reports by detecting both error situations.
>
> Cheers,
> Peter
> --
> http://www.more-magic.net
> <0001-Add-checks-for-hitting-the-rest-arg-count-limit-on-d.patch>_______________________________________________
> Chicken-hackers mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/chicken-hackers