Re: setarg bug?

From: Warwick Harvey <wh_at_icparc.ic.ac.uk>
Date: Mon 29 Jul 2002 05:53:09 PM GMT
Message-ID: <20020729185308.D22613@tempest.icparc.ic.ac.uk>
Hi guys,

Please keep the Cc: of eclipse-bugs in your messages about this, so that

a) the entire ECLiPSe team gets to see it and
b) there's a permanent record kept.

Thanks,
Warwick

On Mon, Jul 29, 2002 at 05:48:01PM +0100, josh singer wrote:
> Okay, I think I have sliced away everything except the code that elicits the
> bug.
> 
> Save the two attached files to a directory and then execute the following
> command line in that directory, using 5.3#41 on Solaris:
> 
> % eclipse -e "lib(test_util), use_module(buggy_vector),
> test(\"buggy_vector_unit_tests.ecl\")"
> 
> I get the following output:
> --
> 
> Running tests from file (using call) buggy_vector_unit_tests.ecl...
> Vector inside: vector_impl(1, _2041)
> Vector outside: vector_impl(0, _2041)
> Vector inside: vector_impl(1, _2041)
> Vector outside: vector_impl(0, _2041)
> Vector inside: vector_impl(1, _2041)
> Vector outside: vector_impl(0, _2041)
> 
> 1 tests done.
> 0 tests failed.
> --
> 
> Interestingly, if I remove the unused array field from the vector_impl
> struct then I get the following behaviour:
> 
> ---
> 
> Running tests from file (using call) buggy_vector_unit_tests.ecl...
> Vector inside: vector_impl(1)
> Vector outside: vector_impl(1)
> Vector inside: vector_impl(2)
> Vector outside: vector_impl(2)
> Vector inside: vector_impl(3)
> Vector outside: vector_impl(3)
> 
> 1 tests done.
> 0 tests failed.
> 
> ---
> 
> So, I'd say either it is a bug, or the caveat attached to setarg needs to be
> extended. 
> 
> cheers, 
> 
> josh
> 
> Developer, Parc Technologies Limited
> josh.singer@parc-technologies.com
> http://www.parc-technologies.com
> 
> This e-mail message is for the sole use of the intended recipient(s)
> -its contents are the property of Parc Technologies Limited (or its
> licensors) and are confidential. Please do not copy, review, use
> (except for the intended purposes), disclose or distribute the e-mail
> or its contents (or allow anyone else to do so) without our prior
> permission. Parc Technologies Limited does not guarantee that this
> e-mail has not been intercepted and amended nor that it is
> virus-free. You should carry out your own virus checks before opening
> any attachment.  Any opinions expressed in this e-mail message are
> those of the author and not necessarily Parc Technologies Limited.
> 




On Mon, Jul 29, 2002 at 06:49:47PM +0100, Stefano Novello wrote:
> This seems to be a bug in the metacall implementation of do/2.
> 
> The tricky thing is that do/2 is compiled away even when called on the
> command line, so it only shows if
> you do something like call( do ).
> 
> It seems that param arguments are being term copied from iteration to
> iteration, so if you are
> modifying these, all you get is copies of the unmodified original.
> 
> Now if the structure is ground term copy is optimised not to do a copy so
> the program is not affected in that case.
> 
> 2nd Floor The Tower Building	EMAIL: Stefano.Novello@parc-technologies.com
> 11 York Road                      TEL: +44 (0)20 72614068
> SE1 7NX LONDON                    
> 
> This e-mail message is for the sole use of the intended recipient(s) - its
> contents are the property of Parc Technologies Limited (or its licensors)
> and are confidential. Please do not copy, review, use (except for the
> intended purposes), disclose or distribute the e-mail or its contents or
> allow anyone else to do so without our prior permission. 
> Parc Technologies Limited does not guarantee that this e-mail has not been
> intercepted and amended nor that it is virus-free. You should carry out your
> own virus checks before opening any attachment. Any opinions expressed in
> this e-mail message are those of the author and not necessarily Parc
> Technologies Limited.
> 
>  




Received on Mon Jul 29 18:53:11 2002

This archive was generated by hypermail 2.1.8 : Wed 16 Nov 2005 06:08:17 PM GMT GMT