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
When updating to use fortran-src 0.6.0 with Declarators in CommonGroups, I confirmed that array types are now handled correctly in COMMON block elimination. However, the example I was using had a weird error where the generated binds are sometimes the wrong way round.
Following is a copy-paste from my comment in #136 .
I've tried adding type annotations to every subroutine instead of just the top one (the original program was implicitly typed, which fortran-src doesn't support). Weirdly, swapping top-level defs doesn't swap their bindings: the bottom def is always correctly bound, and the other two are wrong.
I didn't get a good idea for how the bindings are generated when I looked before. Surely it must be related to that?
When updating to use fortran-src 0.6.0 with
Declarator
s inCommonGroup
s, I confirmed that array types are now handled correctly in COMMON block elimination. However, the example I was using had a weird error where the generated binds are sometimes the wrong way round.Following is a copy-paste from my comment in #136 .
This program (from riptutorial.com) now works (after annotating
ICOUNT
andISTACK
)......almost. Somehow, the generated code binds the module variables incorrectly 2/3 times:
Fixing the binds grants a compiling program (with apparently the same behaviour).
*Previously, it would fail with a strange error due to
ISTACK(1023)
being parsed as a subscript, which then gets converted to a function call.The text was updated successfully, but these errors were encountered: