This is the mail archive of the kawa@sourceware.org mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Kawa 1.13 compilation problem, possible regression


Ok, created two bug reports on this:

 1. http://savannah.gnu.org/bugs/?39150
 2. http://savannah.gnu.org/bugs/?39151

Matt

On Mon, Jun 3, 2013 at 9:44 AM, Matthieu Vachon
<matthieu.o.vachon@gmail.com> wrote:
> Hi Per,
>
> I worked on this possible regression this weekend. From my findings
> there could be two distinct issues in my file. Finally, it does not
> have nothing to do with the fact the I'm calling a function from
> within an object's method which creates an instance of the said
> object.
>
> I created two simple test cases that I used to reproduce the errors.
> Fixing one could fix the other, but I'm not sure. For each test cases,
> I isolated the exact changeset that breaks the test. For one of them,
> I dig up further to try to fix it but was not able to.
>
> I will fill two bug reports about those issues.
>
> Regards,
> Matt
>
> On Mon, May 6, 2013 at 4:09 PM, Per Bothner <per@bothner.com> wrote:
>> On 05/05/2013 03:36 PM, Matthieu Vachon wrote:
>>
>>> The attached patch did the job. I was able to compile Kawa latest
>>> version with java5.
>>
>>
>> Ok - I checked it in.
>>
>>
>>> But I faced another problem related with compilation and it could be a
>>> regression. Where my code compiled fine on 1.12, it was not able to
>>> compile with latest version. After some some research, it may be
>>> caused by the way the code is constructed. In the module I'm trying to
>>> compile (module.scm), we define a class via `define-simple-class` (let
>>> say its called <Simple>) and inside one of its method, we call a
>>> procedure defined in the same module.
>>>
>>> In this procedure, we create an instance of class <Simple> and use to
>>> compute a result which is returned. When commenting the line calling
>>> the procedure in the method, the compilation pass. Maybe it pass as a
>>> side effects just because some analysis did not occur because the
>>> procedure call was commented out.
>>>
>>> I tried to reproduce the problem with a stripped down version of the
>>> module but I was not able to do so. I will try to upgrade my test file
>>> to see if I can reproduce the problem in the upcoming week. I attached
>>> the file so my explanations are easier to follow.
>>
>>
>> Nothing obvious comes to mind.  But it is certainly possible the
>> compiler is confused about whether an execution path can happen.
>>
>> I'll see if you can find a stripped down example.
>>
>> --
>>         --Per Bothner
>> per@bothner.com   http://per.bothner.com/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]