Internal Error Invalid compiler output. Operation is not valid...

When I do a 1-click publish, I get the following error:
Internal Error Invalid compiler output. Operation is not valid due to the current state of the object.

It seems to be a web block event that has an Entity List as a parameter that causes the issue because when I change it to type Object, the publish goes through.

So on the back of this:

  1. The Event Handler cannot have Object as data type (unavailable in the pick-list as well as Data Type Editor)
  2. The Event Handler cannot have an Entity List as data type, even though the Event's input parameter on the Web Block can be set to an Entity List data type

Yeah, the latter is a well-known restriction, that should be fixed ASAP :).

Is this well-known restriction defined any where?

The code around events is just wonky.

Compiler Wonkyness:

WebBlock

  Internal Parameter:  formData as WebBlockFormData Structure

  Form.Record = formData

  Event:  OnWebBlockChangedEvent

               InputParameter: EventData as WebBlockFormData Structure

This compiles:

Form.Input.OnChange --> OnWebBlockChangedEvent( EventData :=Form.Record )

This does not compile:

Form.Input.OnChange --> OnInputChangedAction()

  In the OnInputChangedAction() action trigger the OnWebChangeEvent ( EventData: Form.Record )