Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Final Access Path processing throws an internal compiler error #1

Open
tmagrino opened this issue Nov 20, 2017 · 1 comment
Open

Final Access Path processing throws an internal compiler error #1

tmagrino opened this issue Nov 20, 2017 · 1 comment

Comments

@tmagrino
Copy link
Member

Added a test case displaying a bug with final access path processing in ae90a62. It appears that declaring a final local variable with a type that has a final principal field causes the InternalCompilerError thrown in JifTypeSystem_c.java on line 2014.

@tmagrino
Copy link
Member Author

To reproduce run bin/jifc tests/FAPTestA.jif tests/FAPTestB.jif which produces:

jifc: FinalParams has not run yet
1 error.
Exception in thread "main" polyglot.util.InternalCompilerError: FinalParams has not run yet
        at jif.types.JifTypeSystem_c.processFAP(JifTypeSystem_c.java:2014)
        at jif.types.JifTypeSystem_c.processFAP(JifTypeSystem_c.java:1965)
        at jif.types.JifTypeSystem_c.processFAP(JifTypeSystem_c.java:1955)
        at jif.extension.JifLocalDeclExt.labelCheckStmt(JifLocalDeclExt.java:85)
        at jif.extension.JifStmtExt_c.labelCheck(JifStmtExt_c.java:94)
        at jif.visit.LabelChecker.labelCheck(LabelChecker.java:195)
        at jif.extension.JifBlockExt.labelCheckStmt(JifBlockExt.java:47)
        at jif.extension.JifStmtExt_c.labelCheck(JifStmtExt_c.java:94)
        at jif.visit.LabelChecker.labelCheck(LabelChecker.java:195)
        at jif.extension.JifMethodDeclExt.labelCheck(JifMethodDeclExt.java:79)
        at jif.visit.LabelChecker.labelCheck(LabelChecker.java:195)
        at jif.extension.JifClassBodyExt.labelCheck(JifClassBodyExt.java:48)
        at jif.visit.LabelChecker.labelCheck(LabelChecker.java:195)
        at jif.extension.JifClassDeclExt.labelCheck(JifClassDeclExt.java:113)
        at jif.visit.LabelChecker.labelCheck(LabelChecker.java:195)
        at jif.extension.JifSourceFileExt.labelCheck(JifSourceFileExt.java:52)
        at jif.visit.LabelChecker.labelCheck(LabelChecker.java:195)
        at jif.visit.LabelCheckPass.run(LabelCheckPass.java:35)
        at polyglot.frontend.Scheduler.runPass(Scheduler.java:640)
        at polyglot.frontend.Scheduler.runGoal(Scheduler.java:530)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:475)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:448)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:448)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:448)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:448)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:448)
        at polyglot.frontend.Scheduler.attemptGoal(Scheduler.java:399)
        at polyglot.frontend.Scheduler.runToCompletion(Scheduler.java:331)
        at jif.JifScheduler.runToCompletion(JifScheduler.java:276)
        at polyglot.frontend.Compiler.runToGoal(Compiler.java:237)
        at polyglot.frontend.Compiler.compile(Compiler.java:189)
        at polyglot.frontend.Compiler.compileFiles(Compiler.java:179)
        at polyglot.main.Main.start(Main.java:182)
        at polyglot.main.Main.start(Main.java:133)
        at polyglot.main.Main.main(Main.java:378)

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant