eclipse-viatra / org.eclipse.viatra

Main components of the VIATRA framework
https://eclipse.dev/viatra
Eclipse Public License 2.0
0 stars 1 forks source link

Erroneous code generation when using single parameter pattern with java Object. #137

Closed eclipse-viatra-bot closed 2 months ago

eclipse-viatra-bot commented 3 months ago

| --- | --- | | Bugzilla Link | 579638 | | Status | UNCONFIRMED | | Importance | P3 normal | | Reported | Apr 08, 2022 10:24 EDT | | Modified | Apr 08, 2022 11:13 EDT | | Reporter | Viktor . |

Description

Created attachment 288419\ compile error

For the following pattern the code generator outputs a method (accept) in the "Processor" internal nested class where the type erased signature clashes with the generic one.

pattern x(y: java Object){ ...\ }

The java code can't be compiled due to this error.

image

eclipse-viatra-bot commented 3 months ago

By Zoltan Ujhelyi on Apr 08, 2022 11:13

This is indeed a bug in the code generator, and it is unclear to me how could this be fixed in the short term.

As a workaround, I suggest turning off the generation of the pattern-specific match processors in the VIATRA compiler settings (either in the preferences for the entire workspace or at project options). Since version 2.0 we suggest turning off this feature as the default Consumer interface is usually easy enough to use.