public inbox for kawa@sourceware.org
 help / color / mirror / Atom feed
From: "J. Vincent Toups" <vincent.toups@gmail.com>
To: kawa@sourceware.org
Subject: Fwd: Value of given type cannot be case to its own type.
Date: Wed, 10 Feb 2021 11:38:58 -0500	[thread overview]
Message-ID: <CAE8gMz0jb=4L=ZUpyz=jUrcyfWEEEepSqePQaZ8prbqxk4sBdw@mail.gmail.com> (raw)
In-Reply-To: <CAE8gMz2Bvb6XbCaL8cwEbbR-WMNYA+Eei91MPzJv_HAO_5fPMQ@mail.gmail.com>

---------- Forwarded message ---------
From: J. Vincent Toups <vincent.toups@gmail.com>
Date: Wed, Feb 10, 2021 at 10:42 AM
Subject: Re: Value of given type cannot be case to its own type.
To: Per Bothner <per@bothner.com>


I figured it out, actually. This may be something people new to Kawa
experience from time to time so its worth describing here, I guess:

The issue was that I had defined a class called mecs in lib and there
was also a library called mecs in lib. So there were two classes lying
around called lib.mecs.

It makes sense in retrospect but I wonder if it might not also make
sense to indicate in the class name of a library that it is produced
by a define-library form rather than a class definition to prevent
such classes in most cases.



On Wed, Feb 10, 2021 at 10:36 AM Per Bothner <per@bothner.com> wrote:
>
> On 2/10/21 7:12 AM, J. Vincent Toups via Kawa wrote:
> > I'm seeing this error:
> >
> > Value 'lib.mecs@131a7516' for variable 'm' has wrong type (lib.mecs)
> > (lib.mecs cannot be cast to lib.mecs)
> >
> > Which on the face of things is kind of flabbergasting. The specific
> > line of code which causes the issue suggests that it is indeed the
> > case that the value lib.mecs@etc... is a lib.mecs instance and its
> > being used as a lib.mecs instance.
>
> We cannot possibly diagnose this without a test-case.
>
> There are various possibilities.  The one that first comes to mind is a
> class-loader problem: There are two classes named lib.mecs, loaded using
> two different classloaders, and thus they are incompatible.  Though that
> would be more likely to show up at run-time rather than compile-time.
>
> It is also possible that one of the "lib.mecs" is not a reference to
> an instance of the lib.mecs class (which would normally be the case), but
> some type that the Kawa compiler displays as lib.mecs. Off-hand I can't
> think of what that could be, but I would not be surprised to see that.
> This could be a Kawa bug, of course.
> --
>         --Per Bothner
> per@bothner.com   http://per.bothner.com/

  parent reply	other threads:[~2021-02-10 16:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-10 15:12 J. Vincent Toups
2021-02-10 15:35 ` Per Bothner
     [not found]   ` <CAE8gMz2Bvb6XbCaL8cwEbbR-WMNYA+Eei91MPzJv_HAO_5fPMQ@mail.gmail.com>
2021-02-10 16:38     ` J. Vincent Toups [this message]
2021-02-10 16:50       ` Fwd: " Per Bothner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAE8gMz0jb=4L=ZUpyz=jUrcyfWEEEepSqePQaZ8prbqxk4sBdw@mail.gmail.com' \
    --to=vincent.toups@gmail.com \
    --cc=kawa@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).