viatra / EMF-IncQuery

This repository is only kept for historic reasons. All development happens on eclipse.org
http://eclipse.org/viatra
13 stars 4 forks source link

Referring pattern in different .eiq file error #228

Closed OszkarSemerath closed 11 years ago

OszkarSemerath commented 12 years ago

An unavailable referred pattern cause a "Couldn't resolve reference to Pattern '____'." error. If the pattern is created in a different file, the error doesn't disappear.

For example in file a.eiq:

//pattern fruit(F) =
//{
//  Fruit(F);
//}

b.eiq:

pattern c2(X) =
{
    find fruit(X);
}

And uncommenting the pattern in a.eiq doesn't make the error go away. Using the content assist or cleaning the project solves the problem.

abelhegedus commented 12 years ago

Seems to be related to #193

OszkarSemerath commented 12 years ago

In my case they are in the same package.

ujhelyiz commented 11 years ago

Sadly, the recent changes did not solve this issue. If an cross-file reference is removed, it is not re-added automatically if it re-appears. This is caused by the fact, that removing the pattern destroys the cross-reference information, that cannot be recovered without explicitly re-parsing the erroneous files (content assist or clean does that).

I have no real idea how to tackle this issue.

ujhelyiz commented 11 years ago

Migrated to https://bugs.eclipse.org/bugs/show_bug.cgi?id=398803