You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
currently FILL_FROM_MATCH expects a template as its second parameter. Unfortunately if you define a process with a FILL_FROM_MATCH instruction __d_tsig will see the slots in that code and auto-generate TEMPLATE_SIGNATURE for the process when its being defined by _d_define_process.
The creates a fundamental conflict. We might mean to be defining a process with slots, and how would we differentiate such a process from one using slots as data. This raises the general issue of quoting.
As a temporary fix, we could have something that overrides calling of __d_tsig in _d_define_process....
The text was updated successfully, but these errors were encountered:
In the future when definitions aren't created through _d_define, but rather internally by a ceptr operation, this shouldn't be as much of an issue. __d_tsig is really only a convenience function so as not to have to manually specify the TEMPLATE_SIGNATURE. So in the end this would only be an issue if the SLOT in your FILL_FROM_MATCH template was exactly the same as some other slot to be filled at template resolution time. Then we would have the collision.
Perhaps the solution is to namespace slots in some way (and thus make them specific to a usage of the slot). This might be a solution to some of the possible slot collisions over in protocol resolution.
This same bug has bitten me again. Writing a function with LISTEN instruction in it has PARAMS to be passed into add_expectation some of which are the SLOT to refer to the pattern match.
currently FILL_FROM_MATCH expects a template as its second parameter. Unfortunately if you define a process with a FILL_FROM_MATCH instruction __d_tsig will see the slots in that code and auto-generate TEMPLATE_SIGNATURE for the process when its being defined by _d_define_process.
The creates a fundamental conflict. We might mean to be defining a process with slots, and how would we differentiate such a process from one using slots as data. This raises the general issue of quoting.
As a temporary fix, we could have something that overrides calling of __d_tsig in _d_define_process....
The text was updated successfully, but these errors were encountered: