Post-merge bug: Derby fails with assert(p != __null) failed: named projection 2 not found

Roland Westrelin rwestrel at redhat.com
Fri Feb 16 08:34:11 UTC 2018


> New assert looks inconsistent, did you mean "adr_type() == NULL" in assert?
>
>  if (c->is_Call() && c->as_Call()->adr_type() != NULL) {
>     ...
>  } else {
>     assert(!c->is_Call() || c->as_Call()->adr_type() != NULL || mem == NULL, ...)
>  }
>
> Currently if c->is_Call() is true and c->as_Call()->adr_type() is NULL, it will go to else branch,
> and fail the assert.

The intent is to check that:
c->as_Call()->adr_type() == NULL => mem == NULL

That's what the assert does, right?

Roland.


More information about the shenandoah-dev mailing list