Hey all,
Hope you aren't tired of hearing from me yet!
I came across an interesting issue that can occur during the dead code
elimination pass:
internal error: MIS0386 chpl Version 1.11.0
I haven't been able to figure out what causes it, and unfortunately I
cannot give you the code that I have that causes it (since its an academic
assignment).
But it goes something like this:
Suppose you have the files
A.chpl
B.chpl
A_test.chpl
B_test.chpl
GeneralTools.chpl
where each file defines a module, and the *_test files define unit tests
inside their modules, including a main() procedure.
All the modules use some of the standard modules (IO, Regexp, List, etc)
and all A* and B* modules use GeneralTools.
However, A and B do not use each other, nor do A_test and B_test; A_test
only uses A, and B_test only uses B.
Now, because you want a simple makefile, the compile command (say, for
A_test) looks like:
chpl A.chpl B.chpl GeneralTools.chpl A_test.chpl --main-module A_test -o
A_test_exe
This works fine on A_test, but when tried with B_test (chpl A.chpl B.chpl
GeneralTools.chpl A_test.chpl --main-module B_test -o B_test_exe), it
errors (for some unknown reason) in the internal error mentioned above.
Whats interesting, is that if B_test is modified to use A, the error goes
away.
I have determined that this is caused during the dead code elimination
pass, because the error is suppressed with --no-dead-code-elimination.
I'll see what I can figure out, but I thought I'd bring it to your
attention.
-Ian J. Bertolacci
------------------------------------------------------------------------------
_______________________________________________
Chapel-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-users