Open jannavarro opened 6 years ago
It sounds like you didn't regenerate your code when you upgraded. Can you make sure you are using the Antlr3 NuGet package?
Hi @sharwell thanks for the prompt response. Yes, I am using that Nuget package. Do I need to regenerate my code using Antlrworks?
@jannavarro No, the code is generated automatically when you build your solution. Here are the steps to ensure the build is working:
For each grammar T in your solution:
- Right click the file T.g3 in Solution Explorer and select Properties.
- In the Properties pane, set the Build Action to Antlr3.
- In the Properties pane, set the Custom Tool to MSBuild:Compile.
Oh. I see. I think I read earlier that I need to install an extension but VS 2017 is not supported. Or is that different?
Thanks for the steps. Will try it.
The extension is optional. I uploaded a new version that supports VS 2017 last week. 😄
@sharwell Trying it now. Will update this issue on the status and possibly close it if it is resolved. Thanks for your answers.
I have a similar issue. The nuget 3.1.x version works fine with our grammar, but the latest 3.5.x version complains about the same errors listed in the OP's report.
I currently have antlr 3.1.1 in my code. I am planning to move to 3.5.0.2 so I installed it from Nuget. Upon installing I encountered errors in the generated Lexer and Parser.cs. I have looked at release notes, articles, etc but couldn't find the right way of fixing these errors. I would like to seek guidance:
1.) The type or namespace name 'Collections' does not exist in the namespace 'Antlr.Runtime'. I get this error in "using Antlr.Runtime.Collections.StackList;"
2.) What parameter should I put in ParserRuleReturnScope? What are the changes why a parameter was added here?
3.) Tree property does not exist in ParserRuleReturnScope anymore.
4.) Lexer - DEFAULT_TOKEN_CHANNEL, HIDDEN does not exist.
5.) this.dfa19.specialStateTransitionHandler - CS1061 'ExpressionLexer.DFA19' does not contain a definition for 'specialStateTransitionHandler' and no extension method 'specialStateTransitionHandler' accepting a first argument of type 'ExpressionLexer.DFA19' could be found (are you missing a using directive or an assembly reference?)
There are a lot more errors but I would like to focus first on this.