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
Previously, before rebasing, an implementation of a benchmark containing two external functions (so more than one external function) failed to compile. This was because Caiman Assembly seemed to misassociate the external function name identifiers with their IDs in the AST. When the references to the names were called, there was an external function ID mismatch, and scheduling.rs wanting the correct external ID could not find the external ID it was looking for.
See screenshot below:
This error says that an assertion in scheduling.rs failed. I lost the –explicate_only output unfortunately, but basically, Caiman was not assigning the correct external function IDs to my two external functions, so the file kept failing to compile even though I made the correct references to their function names in my assembly and rust files:
[specification]
[implementation]
Currently the function compiles with the external function headers specified out-of-order like this:
Switching the headers makes it compile the same way.
Explicate only reveals that the function classes ARE correctly assigned (with sub and mult having different external function IDs).
This new version of explicate-only is much better in terms of what it specifies and how readable the notation is because of the extra markings! The calls to local-do-external being made in the scheduling language call the correct external function
An explanation of why this happened would be much appreciated! Although it seems like an issue that has been fixed in the latest main, since this issue went away after rebasing.
The text was updated successfully, but these errors were encountered:
Previously, before rebasing, an implementation of a benchmark containing two external functions (so more than one external function) failed to compile. This was because Caiman Assembly seemed to misassociate the external function name identifiers with their IDs in the AST. When the references to the names were called, there was an external function ID mismatch, and scheduling.rs wanting the correct external ID could not find the external ID it was looking for.
See screenshot below:
This error says that an assertion in scheduling.rs failed. I lost the
–explicate_only
output unfortunately, but basically, Caiman was not assigning the correct external function IDs to my two external functions, so the file kept failing to compile even though I made the correct references to their function names in my assembly and rust files:[specification]
[implementation]
Currently the function compiles with the external function headers specified out-of-order like this:
Switching the headers makes it compile the same way.
Explicate only reveals that the function classes ARE correctly assigned (with sub and mult having different external function IDs).
This new version of explicate-only is much better in terms of what it specifies and how readable the notation is because of the extra markings! The calls to local-do-external being made in the scheduling language call the correct external function
An explanation of why this happened would be much appreciated! Although it seems like an issue that has been fixed in the latest main, since this issue went away after rebasing.
The text was updated successfully, but these errors were encountered: