TypeSmart crashes language build
The typesmart build step makes the IceDust build in Spoofax fail.
Latest commit in develop branch https://github.com/MetaBorgCube/IceDust/tree/0ebd4a794abd660276eaf450bdb0900b35a78fa5 (LEP students have same issue, and they have branched off to somewhere else).
17:12 | INFO | Build log - > Generate typesmart analysis 17:12 | ERROR | Build log - Builder failed unexpectedly java.lang.IllegalArgumentException: Found type in unexpected format Sort("Inv",[SortNoArgs("Path")]) at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.extractSortType(Typesmart.java:305) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.processSignature(Typesmart.java:242) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.processModule(Typesmart.java:187) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.processMainStrategoFile(Typesmart.java:141) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.build(Typesmart.java:100) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.build(Typesmart.java:1) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at build.pluto.builder.Builder.triggerBuild(Builder.java:134) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.executeBuilder(BuildManager.java:91) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.require(BuildManager.java:324) [pluto-1.9.0.jar:na] at build.pluto.builder.Builder.requireBuild(Builder.java:215) [pluto-1.9.0.jar:na] at build.pluto.builder.Builder.requireBuild(Builder.java:234) [pluto-1.9.0.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.main.GenerateSourcesBuilder.build(GenerateSourcesBuilder.java:285) [org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.main.GenerateSourcesBuilder.build(GenerateSourcesBuilder.java:1) [org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at build.pluto.builder.Builder.triggerBuild(Builder.java:134) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.executeBuilder(BuildManager.java:91) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.require(BuildManager.java:324) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.requireInitially(BuildManager.java:251) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManagers.build(BuildManagers.java:62) [pluto-1.9.0.jar:na] at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.plutoBuild(LanguageSpecBuilder.java:280) [org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.compile(LanguageSpecBuilder.java:131) [org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.eclipse.meta.build.CompileBuilder$1.run(CompileBuilder.java:49) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.metaborg.spoofax.eclipse.meta.build.CompileBuilder.build(CompileBuilder.java:69) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.eclipse.meta.build.Builder.build(Builder.java:53) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.7.0.v20150402-1709.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:205) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:245) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:300) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.7.0.v20150402-1709.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:303) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:359) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:382) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:486) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:405) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.ui.actions.BuildAction$1.runInWorkspace(BuildAction.java:287) [org.eclipse.ui.ide_3.11.0.v20150825-2158.jar:na] at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:39) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [org.eclipse.core.jobs_3.7.0.v20150330-2103.jar:na] 17:12 | ERROR | Build log - Required builder failed java.lang.IllegalArgumentException: Found type in unexpected format Sort("Inv",[SortNoArgs("Path")]) at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.extractSortType(Typesmart.java:305) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.processSignature(Typesmart.java:242) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.processModule(Typesmart.java:187) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.processMainStrategoFile(Typesmart.java:141) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.build(Typesmart.java:100) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.Typesmart.build(Typesmart.java:1) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at build.pluto.builder.Builder.triggerBuild(Builder.java:134) ~[pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.executeBuilder(BuildManager.java:91) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.require(BuildManager.java:324) [pluto-1.9.0.jar:na] at build.pluto.builder.Builder.requireBuild(Builder.java:215) ~[pluto-1.9.0.jar:na] at build.pluto.builder.Builder.requireBuild(Builder.java:234) ~[pluto-1.9.0.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.main.GenerateSourcesBuilder.build(GenerateSourcesBuilder.java:285) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.pluto.build.main.GenerateSourcesBuilder.build(GenerateSourcesBuilder.java:1) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at build.pluto.builder.Builder.triggerBuild(Builder.java:134) ~[pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.executeBuilder(BuildManager.java:91) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.require(BuildManager.java:324) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.requireInitially(BuildManager.java:251) [pluto-1.9.0.jar:na] at build.pluto.builder.BuildManagers.build(BuildManagers.java:62) [pluto-1.9.0.jar:na] at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.plutoBuild(LanguageSpecBuilder.java:280) [org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.compile(LanguageSpecBuilder.java:131) [org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.eclipse.meta.build.CompileBuilder$1.run(CompileBuilder.java:49) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.metaborg.spoofax.eclipse.meta.build.CompileBuilder.build(CompileBuilder.java:69) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.eclipse.meta.build.Builder.build(Builder.java:53) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.7.0.v20150402-1709.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:205) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:245) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:300) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.7.0.v20150402-1709.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:303) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:359) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:382) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:486) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:405) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.ui.actions.BuildAction$1.runInWorkspace(BuildAction.java:287) [org.eclipse.ui.ide_3.11.0.v20150825-2158.jar:na] at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:39) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [org.eclipse.core.jobs_3.7.0.v20150330-2103.jar:na] 17:12 | ERROR | o.m.s.e.m.b.CompileBuilder - Exception thrown during build org.metaborg.core.MetaborgException: Rebuilding failed. at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.compile(LanguageSpecBuilder.java:136) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.eclipse.meta.build.CompileBuilder$1.run(CompileBuilder.java:49) ~[org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2241) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.metaborg.spoofax.eclipse.meta.build.CompileBuilder.build(CompileBuilder.java:69) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.eclipse.meta.build.Builder.build(Builder.java:53) [org.metaborg.spoofax.eclipse.meta_2.0.0.20160530-110913-master.jar:na] at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.7.0.v20150402-1709.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:205) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:245) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:300) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) [org.eclipse.equinox.common_3.7.0.v20150402-1709.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:303) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:359) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:382) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:486) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:405) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.ui.actions.BuildAction$1.runInWorkspace(BuildAction.java:287) [org.eclipse.ui.ide_3.11.0.v20150825-2158.jar:na] at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:39) [org.eclipse.core.resources_3.10.1.v20150725-1910.jar:na] at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) [org.eclipse.core.jobs_3.7.0.v20150330-2103.jar:na] Caused by: build.pluto.builder.RequiredBuilderFailed: Required builder failed. Error occurred in build step "Generate typesmart analysis": java.lang.IllegalArgumentException: Found type in unexpected format Sort("Inv",[SortNoArgs("Path")]) at build.pluto.builder.RequiredBuilderFailed.getCause(RequiredBuilderFailed.java:37) ~[pluto-1.9.0.jar:na] at build.pluto.builder.BuildManager.requireInitially(BuildManager.java:254) ~[pluto-1.9.0.jar:na] at build.pluto.builder.BuildManagers.build(BuildManagers.java:62) ~[pluto-1.9.0.jar:na] at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.plutoBuild(LanguageSpecBuilder.java:280) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] at org.metaborg.spoofax.meta.core.build.LanguageSpecBuilder.compile(LanguageSpecBuilder.java:131) ~[org.metaborg.spoofax.meta.core_2.0.0.20160530-110913-master.jar:na] ... 18 common frames omitted 17:12 | ERROR | o.m.s.e.m.b.CompileBuilder - BUILD FAILED
Submitted by Daco Harkes on 31 May 2016 at 17:16Eclipse: org.eclipse.platform.ide 4.5.2.M20160212-1500 Spoofax: org.metaborg.spoofax.eclipse 2.0.0.20160530-110913-master System: Mac OS X x86_64 10.11.5
Issue Log
The error message seems pretty clear to me:
Found type in unexpected format Sort("Inv",[SortNoArgs("Path")])
There is a signature using a typeInv(Path)
. This type has no meaning. You should fix the signature
Right, all this time Stratego is just compiling like nothing is wrong. So, all of a sudden, the TypeSmart build step adds some extra analysis (which should have been there in the first place).
So, can we close this issue?
@seba: What do you mean with “this type has no meaning”? Types in Stratego can be basically arbitrary terms. This program is clearly correct according to the Stratego syntax definition.
Base types are arbitrary, but type operators are not.
List
andOption
are the only type operators I am aware of that have a well-defined meaning in Stratego signatures.
But then we should enforce that in the compiler / IDE.
Log in to post comments