Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Merge cpp #1346

Merged
merged 312 commits into from
Nov 7, 2016
Merged

Merge cpp #1346

merged 312 commits into from
Nov 7, 2016

Conversation

parrt
Copy link
Member

@parrt parrt commented Nov 7, 2016

We have C++!!!!

mike-lischke and others added 30 commits May 1, 2016 16:41
Also checked parameters for all rules in the template files as there were changes too.
- Changed the empty return state PredictionContext to max int (instead fixing it on int 16), like it's done in the Java runtime.
- Converted 2 static init lambdas in the Cpp.stg to normal code, as VS doesn't allow us to access private class members in such lambdas.
Sometimes in the prediction process temporary ATNConfig instances are created which either share their prediction context with other configs or get a new context which receives the context of another config as parent. Later in the process such temporary configs are released, but the set parent prediction context should stay alive as it is used later. Since there is no top level structure that would keep them alive we need a way to make them stay. For this effect the SinglePredictionContext (which is the only prediction context that keeps a parent reference) uses a shared_ptr instead of a weak_ptr for the parent reference.
Things start looking very promising now. We are ready for runtime tests.
Forgot to commit that with the last changeset.
Removed a few unneeded cpp files on the way.

Note: building as DLL produces many of the well known compiler warnings C4251 (type needs to have a DLL interface ..) because the runtime uses many STL classes in exported classes. I tried exporting all those types via explicit template instantion, but once I hit unordered_map I gave up. Just crazy what you have to export just to make this map export properly (and I already had like 50 exports already in place). So at the end I disabled this warning on project level. So make sure you build this DLL and all binaries using it with exact the same compiler and linker settings (same C++ runtime etc.).
One of the lambdas used in a "finally" expression executed already while defining the "finally" instance, which is way too early of course (others did not show this behavior), which happens only with the Visual Studio compiler, not clang. By changing the capture list to a general reference capture things started working as they should.
- Updated XCode project (removed obsolete cpp files refs).
- Set channel datatype in lexer + tokens to size_t.
- Removed one unit test that no longer works, now that we require all objects in a vector given to murmur hash code computation to support the hashCode() function.
In order to allow building the OSX libraries without the demo project they have been split into 2.
Jar files are manually copied into the repository to generate files, but don't belong to it.
The default install name is /usr/libs/antlrcpp.dylib which makes running the demo from command line not working (location and install name of the dylib differ). Since the probability that the lib is placed in an app bundle is much higher than that the lib is being installed in the system, the default has been changed to just the dylib name. This can be changed to anything else if needed in a concrete project.
The runtime folder now contains the individual project files for each platform (and associated files/folders). The actual source code moved down one level to folder src.
C++ target:
- More sections are now supported: pre + post include, declarations, definitions (in addition to header and members).
- Added specific variants of these sections for (base)listener + (base)visitor files (baselistenerpreinclude etc.).

Had to add named sections to VisitorFile.java + ListenerFile.java.
Also added the new namedActions parameter to all target stg files where needed.
- Compiling with cmake brought up quite a number of new warnings. Some of them have to be disabled yet (dollar in identifier, four char constant, overloaded virtual). The others have all been fixed.
- Updated the README to include build instruction.
@parrt parrt added this to the 4.6 milestone Nov 7, 2016
@parrt parrt merged commit 8fc8b6e into antlr:master Nov 7, 2016
@marcospassos
Copy link
Contributor

@parrt is there any estimate for a release date of 4.6? I can't wait to start using it :)

@parrt
Copy link
Member Author

parrt commented Nov 7, 2016

well, you can build yourself from github src if you want ;) I'm waiting on Swift target. hopefully within a few weeks.

@marcospassos
Copy link
Contributor

Yes, I can, but it must be official :)

Besides this, we need the new version of the Maven and IntelliJ plugins to complete the party.

@parrt
Copy link
Member Author

parrt commented Nov 7, 2016

True dat.

@ericvergnaud
Copy link
Contributor

Wow!!!

Le 8 nov. 2016 à 06:16, Terence Parr notifications@github.com a écrit :

We have C++!!!!

You can view, comment on, or merge this pull request online at:

#1346 #1346
Commit Summary

Some finetuning in template files for C++.
A C++ runtime fix that caused test parsing to fail with syntax error.
VS solution update + compile fixes after latest changes.
2 smaller changes
Solving a tricky issue with prematurely released prediction contexts.
Fixed a number of subtle bugs that broke parsing.
A bit more complex expression in demo parser.
A few changes in test files after running the test generator (mostly reordered tests).
Updated Windows project to be compilable as both static and dynamic lib.
Fix for a weird lambda execution problem in Windows.
Linux + Mac build fixes.
Split XCode demo + libraries into individual projects.
Ignore jar files in the repo.
Renamed XCode demo project and set install name for dylib.
Missing parts from the previous commit.
Reorganized runtime folder structure + created ios target in XCode.
No need for public headers in an OSX dylib.
Updated OSX demo project after structure changes.
Updated VS solution after project restructuring.
Merge branch 'master' of https://github.com/davesisson/antlr4
Added minimum set of files.
Added minimum set of files.
update docs
update docs
More needed files.
update packages
Adding missing file.
Added more supported grammar sections (named actions).
Added cmake target (Linux + OSX) + fixed a number of warnings.
Merge branch 'feature/templates-org'
Removed jar that should not have been in the repository.
Updated runtime tests with updated generation templates.
fix which tests to run for cpp
updating BaseCppTest.java
Returned other tests to active duty.
Cleaned up the test runner.
Added yet another possible code section + EOF rework.
Enabled unused-parameter warning in XCode and fixed all occurences.
VS warns about /* / comments if the are directly after a *.
Moved Marcin to Other Contributors list.
Runtime Cpp: disable warnings and remove unnecessary files
Added the start of linker support.
More updates to the C++ test runner.
Some updates to demo grammar, Cpp.stg and XCode projects.
Update VS solution (removed deleted file references).
Fixed one more warning in VS.
Merge commit '303684dd34095f2f569b6b635ddb3f6f43d116e8' into feature/addtests
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Bug fixes + update C++ template.
Merge branch 'master' into feature/addtests
Added 2 newer support classes to the runtime.
Updated VS solution with newly added files.
The generation + runtime now uses std::string instead of std::wstring almost everywhere.
Further work to have full Unicode support.
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Merge branch 'feature/addtests' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Rework of the include structure.
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Changed exception object back in error reporting + removed precompiled headers with cmake.
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Fixed demo compilation for Visual Studio 2013.
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
attempts compilation
properly escape templates
Fixed big memory consumption problem.
Down to one issue -- tree::ParseTree and tree:RuleNode aren't related as they are in some tests. Need to find either the right relationship or come up with an alternative test.
Moved the library build instructions to the library readme.
Merge branch 'master' into feature/addtests
Small corrections to make the test module compile.
A few minor changes related to building via cmake.
Set up so we compile link all of the files in the test directory. Does not run the binary afterwards, but that's because there's still a print being generated somewhere (and I have no idea where it's coming from).
remove accidentally checked-in library file
Merge branch 'master' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Added run support to the test runner.
Regenerate all of the tests with the latest test generation template.
Some additions for better operation.
Merge branch 'master' into feature/addtests
Updated generation a bit.
Merge branch 'feature/addtests' of https://github.com/DanMcLaughlin/antlr4 into feature/addtests
Fixed a number of issues in the generated tests. Many more to go.
Fixed generation code for lexer tests.
Fixed token toString() so it produces the output expected by the tests.
Merge branch 'master' into feature/addtests
Lots of fine tuning to get more tests passing.
TestLeftRecursion passes, but with some disabled tests.
Fixed 2 problems found by runtime tests.
TestParserErrors passes now.
TestParserExec tests pass now.
All tests of TestLeftRecursion.java now pass.
TestParseTrees passes now.
TestListeners C++ tests pass now.
TestParseTrees + TestSemPredEvalLexer C++ test groups pass now.
A few more fixes.
All C++ runtime tests pass now.
Fixed warning in C++ code generation and remove obsolete file.
Added informations about C++ target specific stuff to the docs.
Added some notes about Unicode to the C++ target doc.
Some changes in the C++ target doc + a some template fixes.
Changed namespaces + fixed runtime tests.
Some smaller fixes for Windows.
A few fixes for Visual Studio after added the xpath stuff.
... and for Linux the same.
12% speed improvement for C++ runtime.
Merge branch 'feature/addtests'
Merge branch 'antlr-upstream'
More performance increase for C++ target (25% now).
Simplified equality check in ATNConfigSet.
Removed shared_ptr instances for ATNConfigSet.
DFA states member is now a set (instead of a map).
Simplification of the ATN config lookup handling.
Signficantly simplified Token handling.
Visual Studio build fix.
Explicitly delete copy c-tor + copy operator to for Visual Studio.
Small alt check fix in LexerATNSimulator.
Some cleanup.
A few more places that no longer pass a shared_ptr around.
Revert "A few more places that no longer pass a shared_ptr around."
A few of the previously reverted changes are still good.
A few final touches to make runtime tests passing.
Simplified parse tree listener handling.
A few fixes for the previous listener change.
A fix for the Linux demo project.
Changes for deployment.
Windows runtime deployment.
Missed to commit an XCode project change.
Fixed + simplified loading text to parse from a file.
Fixed #include.
A few adjustments in doc + runtime tests for the changed library name + input stream handling.
Updated README.md.
Changed Win deployment script to produce 2 smaller zips instead of a big one.
Small naming fix.
Update DefaultErrorStrategy.cpp
Merge pull request #9 from nuuman/patch-1
getSerializedATN() wasn't properly overwritten.
Merge branch 'master_upstream'
A few more text escape calls in DefaultErrorStrategy.
Document cmake minimum version.
Merge pull request #11 from chrisheller/chrisheller-patch-1
LexerAction instances shared_ptr fix
indent fix
fix liblib in library names
Added lexer channels enum to match Java target
vector::erase invalidates any iterators at/after the erase position
Added code to detect and handle the UTF-8 BOM if present, otherwise the utfConverter leaves it in the stream
Fix warnings with int to char cast
Updated .gitignore for .vscode.
Merge pull request #16 from Nic30/master
A few small corrections after the previous merge.
Merge pull request #17 from nburles/add-lexer-channels
Merge pull request #18 from nburles/fix-intervalset-iterator
Merge pull request #19 from nburles/fix-utf8-bom
Actually use a channel in the demo grammar.
Fixed some cmake issues. Closes issue #13 and issue #8.
Added to contributors.txt
Merge pull request #20 from nburles/master
Add Chris Heller to contributors.txt
Added kosl90 to contributors list.
Fixed a few warnings.
Bring chrisheller-patch-1 branch up to date
Merge pull request #21 from chrisheller/chrisheller-patch-1
Updated CMake for demo to:
external project cmake example, needed set C++ 11
updated contributors list with my details
Merge pull request #24 from timoc/master
Rework of the visitor implementation
Small updates for VS 2013/2015.
Corrected an include.
Manually merged pull request #26.
Fixes ATN serialization
Fixes comparisons of IntervalSets
Fixed a bug + raised warning level in Visual Studio
Compare contents in ATNConfig::operator==
Compare contents in ATNConfigSet::operator==
Compare contents in LexerATNConfig::operator==
Compare contents in SemanticContext::
::operator==
Consistent formatting in Any.h + converted CPPUtils.cpp to utf-8.
There is no need to call ->hashCode() explicitly
Merge pull request #27 from nburles/fix-ATN-serialization
Merge pull request #28 from nburles/fix-intervalset-comparisons
Merge pull request #31 from nburles/simpler-hash-calls
Merge pull request #30 from nburles/compare-contents-not-just-addresses
Remove the std::operator== override in CPPUtils.h
Leave spaces alone unless escaped spaces requested
Merge pull request #32 from nburles/fix-whitespace-escape
Various smaller changes to fix compilation and other problems.
Corrected a warning suppression check.
Without these tests, the demo crashes at PredictionContext.h:247 : k->hashCode()
Only compare the addresses, as in Java
Merge pull request #33 from nburles/remove-equality-override
Some additional changes for removal of the == operator override.
Merge pull request #35 from nburles/fix-prediction-context
Fix for merge problems in PredictionContext.
Change deployment scripts location and updated doc.
Levelize credits
Add myself to contributor list
Reverting revision [a2d6b62]
Output formatting in DefaultErrorStrategy and init of generated member vars.
More optimizations of the runtime.
Second parameter is end pointer, not size
Merge pull request #39 from nburles/fix-utf8-bom
Added semicolon generation after some of the header decls.
Add Travis settings necessary for C++11 compilation.
Trying to counter weird Travis error.
Reverted all Travis changes. Didn't do what I expected.
Bug fixes + XCode 8 updates
Exclude also vscode project data when generating the source zip.
Merge branch 'master_upstream'
Explicitly delete copy c-tor and operator for DefaultErrorStrategy.
Added support for hidden symbols on Linux and OSX.
Merge branch 'master_upstream'
Some clean up and xcode unit test fixes.
Updates to get all tests green again.
Refactoring of further int values, mostly converting them to size_t.
C++11 for Travis CI.
Code generation + Travis CI fixes.
Fixed a number of warnings for VS.
alts outer-context flag/counter in ATNConfig is now unsiged.
Set minimum cmake version to 3.1 for C++ target.
Next attempt to get the C++ runtime compiled in Travis CI.
Another attempt for Travis CI.
Trying a different compiler in Travis CI.
Updated unit tests after last refactoring.
Simplified memory management for volatile parsing part.
Some small optimizations.
Converted smart pointer for the rule context in RecognitionException
Added default c-tor to ParseTree + improved createInstance.
ATNState::transactions improvements
cpp runtime: updated the vs2013 project reflecting the last changes
Merge pull request #41 from FloorGoddijn/master
Reworked mutex handling + updated C++ template for a var init
ParserRuleContext init members
fix RulePropertyRef_stopHeaderHeader typo
contributors.txt update
Merge pull request #45 from RYDB3RG/master
Merge branch 'master_upstream'
Re-enabled all tests again.
Fixed runtime tests after latest changes.
Merge branch 'master_upstream'
Merge branch 'master_upstream'
Set required runtime version to 4.6.
trying a refactoring to test if i can push back
reuse code to builld named actions. all file model objects have it now.
bring Go target templates up to same args as others.
fix some issues with tests after merge
fix some issues with tests after merge
optimize imports.
Go needs to mimic other tests; regenerated.
tweak doc
File Changes

M .gitignore https://github.com/antlr/antlr4/pull/1346/files#diff-0 (4)
M .travis.yml https://github.com/antlr/antlr4/pull/1346/files#diff-1 (16)
M README.md https://github.com/antlr/antlr4/pull/1346/files#diff-2 (5)
M contributors.txt https://github.com/antlr/antlr4/pull/1346/files#diff-3 (11)
M doc/building-antlr.md https://github.com/antlr/antlr4/pull/1346/files#diff-4 (5)
A doc/cpp-target.md https://github.com/antlr/antlr4/pull/1346/files#diff-5 (137)
M doc/creating-a-language-target.md https://github.com/antlr/antlr4/pull/1346/files#diff-6 (2)
M doc/releasing-antlr.md https://github.com/antlr/antlr4/pull/1346/files#diff-7 (51)
A doc/runtimetests-overview.md https://github.com/antlr/antlr4/pull/1346/files#diff-8 (41)
M doc/targets.md https://github.com/antlr/antlr4/pull/1346/files#diff-9 (2)
M pom.xml https://github.com/antlr/antlr4/pull/1346/files#diff-10 (6)
M runtime-testsuite/pom.xml https://github.com/antlr/antlr4/pull/1346/files#diff-11 (1)
A runtime-testsuite/resources/org/antlr/v4/test/runtime/cpp/Cpp.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-12 (451)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/csharp/CSharp.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-13 (18)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/go/Go.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-14 (20)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/java/Java.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-15 (18)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/javascript/chrome/Chrome.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-16 (2)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/javascript/explorer/Explorer.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-17 (30)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/javascript/firefox/Firefox.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-18 (30)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/javascript/node/Node.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-19 (30)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/javascript/safari/Safari.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-20 (30)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/python2/Python2.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-21 (23)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/python3/Python3.test.stg https://github.com/antlr/antlr4/pull/1346/files#diff-22 (28)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/LeftRecursion/MultipleActionsPredicatesOptions.stg https://github.com/antlr/antlr4/pull/1346/files#diff-23 (2)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/LeftRecursion/MultipleAlternativesWithCommonLabel.stg https://github.com/antlr/antlr4/pull/1346/files#diff-24 (6)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/LeftRecursion/PrefixOpWithActionAndLabel.stg https://github.com/antlr/antlr4/pull/1346/files#diff-25 (2)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/Listeners/Basic.stg https://github.com/antlr/antlr4/pull/1346/files#diff-26 (10)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/Listeners/LR.stg https://github.com/antlr/antlr4/pull/1346/files#diff-27 (10)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/Listeners/LRWithLabels.stg https://github.com/antlr/antlr4/pull/1346/files#diff-28 (10)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/Listeners/RuleGetters.stg https://github.com/antlr/antlr4/pull/1346/files#diff-29 (10)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/Listeners/TokenGetters.stg https://github.com/antlr/antlr4/pull/1346/files#diff-30 (10)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/ParserExec/ListLabelForClosureContext.stg https://github.com/antlr/antlr4/pull/1346/files#diff-31 (2)
M runtime-testsuite/resources/org/antlr/v4/test/runtime/templates/ParserExec/ParserProperty.stg https://github.com/antlr/antlr4/pull/1346/files#diff-32 (2)
M runtime-testsuite/src/org/antlr/v4/testgen/TestGenerator.java https://github.com/antlr/antlr4/pull/1346/files#diff-33 (2)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/BaseCppTest.java https://github.com/antlr/antlr4/pull/1346/files#diff-34 (1226)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-35 (71)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-36 (489)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-37 (507)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-38 (3405)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-39 (259)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-40 (5028)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-41 (370)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-42 (302)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestParserErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-43 (720)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-44 (791)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-45 (218)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-46 (218)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-47 (762)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-48 (477)
A runtime-testsuite/test/org/antlr/v4/test/runtime/cpp/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-49 (298)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-50 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-51 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-52 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-53 (29)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-54 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-55 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-56 (29)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-57 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-58 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-59 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-60 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-61 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-62 (1)
M runtime-testsuite/test/org/antlr/v4/test/runtime/csharp/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-63 (2)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-64 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-65 (6)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-66 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-67 (33)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-68 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-69 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-70 (32)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-71 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-72 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-73 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-74 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-75 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-76 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/go/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-77 (3)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/BaseTest.java https://github.com/antlr/antlr4/pull/1346/files#diff-78 (2)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-79 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-80 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-81 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-82 (32)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-83 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-84 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-85 (32)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-86 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-87 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-88 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-89 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-90 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-91 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/java/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-92 (3)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-93 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-94 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-95 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-96 (32)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-97 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-98 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-99 (39)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-100 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-101 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-102 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-103 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-104 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-105 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/javascript/node/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-106 (4)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-107 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-108 (10)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-109 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-110 (35)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-111 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-112 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-113 (42)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-114 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-115 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-116 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-117 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-118 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-119 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python2/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-120 (6)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestCompositeLexers.java https://github.com/antlr/antlr4/pull/1346/files#diff-121 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestCompositeParsers.java https://github.com/antlr/antlr4/pull/1346/files#diff-122 (10)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestFullContextParsing.java https://github.com/antlr/antlr4/pull/1346/files#diff-123 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestLeftRecursion.java https://github.com/antlr/antlr4/pull/1346/files#diff-124 (35)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestLexerErrors.java https://github.com/antlr/antlr4/pull/1346/files#diff-125 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestLexerExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-126 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestListeners.java https://github.com/antlr/antlr4/pull/1346/files#diff-127 (42)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestParseTrees.java https://github.com/antlr/antlr4/pull/1346/files#diff-128 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestParserExec.java https://github.com/antlr/antlr4/pull/1346/files#diff-129 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestPerformance.java https://github.com/antlr/antlr4/pull/1346/files#diff-130 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestSemPredEvalLexer.java https://github.com/antlr/antlr4/pull/1346/files#diff-131 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestSemPredEvalParser.java https://github.com/antlr/antlr4/pull/1346/files#diff-132 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestSets.java https://github.com/antlr/antlr4/pull/1346/files#diff-133 (7)
M runtime-testsuite/test/org/antlr/v4/test/runtime/python3/TestVisitors.java https://github.com/antlr/antlr4/pull/1346/files#diff-134 (6)
A runtime/Cpp/CMakeLists.txt https://github.com/antlr/antlr4/pull/1346/files#diff-135 (111)
A runtime/Cpp/License.txt https://github.com/antlr/antlr4/pull/1346/files#diff-136 (28)
A runtime/Cpp/README.md https://github.com/antlr/antlr4/pull/1346/files#diff-137 (59)
A runtime/Cpp/VERSION https://github.com/antlr/antlr4/pull/1346/files#diff-138 (1)
A runtime/Cpp/cmake/ExternalAntlr4Cpp.cmake https://github.com/antlr/antlr4/pull/1346/files#diff-139 (221)
A runtime/Cpp/demo/CMakeLists.txt https://github.com/antlr/antlr4/pull/1346/files#diff-140 (69)
A runtime/Cpp/demo/Linux/main.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-141 (33)
A runtime/Cpp/demo/Mac/antlr4-cpp-demo/main.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-142 (33)
A runtime/Cpp/demo/Mac/antlrcpp Tests/Info.plist https://github.com/antlr/antlr4/pull/1346/files#diff-143 (24)
A runtime/Cpp/demo/Mac/antlrcpp Tests/InputHandlingTests.mm https://github.com/antlr/antlr4/pull/1346/files#diff-144 (172)
A runtime/Cpp/demo/Mac/antlrcpp Tests/MiscClassTests.mm https://github.com/antlr/antlr4/pull/1346/files#diff-145 (375)
A runtime/Cpp/demo/Mac/antlrcpp Tests/antlrcpp_Tests.mm https://github.com/antlr/antlr4/pull/1346/files#diff-146 (57)
A runtime/Cpp/demo/Mac/antlrcpp-demo.xcodeproj/project.pbxproj https://github.com/antlr/antlr4/pull/1346/files#diff-147 (593)
A runtime/Cpp/demo/Mac/antlrcpp-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata https://github.com/antlr/antlr4/pull/1346/files#diff-148 (7)
A runtime/Cpp/demo/Mac/antlrcpp-demo.xcodeproj/xcshareddata/xcschemes/antlr4-cpp-demo.xcscheme https://github.com/antlr/antlr4/pull/1346/files#diff-149 (102)
A runtime/Cpp/demo/Mac/antlrcpp-demo.xcodeproj/xcshareddata/xcschemes/antlrcpp Tests.xcscheme https://github.com/antlr/antlr4/pull/1346/files#diff-150 (56)
A runtime/Cpp/demo/Mac/build.sh https://github.com/antlr/antlr4/pull/1346/files#diff-151 (43)
A runtime/Cpp/demo/README.md https://github.com/antlr/antlr4/pull/1346/files#diff-152 (13)
A runtime/Cpp/demo/TLexer.g4 https://github.com/antlr/antlr4/pull/1346/files#diff-153 (85)
A runtime/Cpp/demo/TParser.g4 https://github.com/antlr/antlr4/pull/1346/files#diff-154 (119)
A runtime/Cpp/demo/Windows/antlr4-cpp-demo/antlr4-cpp-demo.vcxproj https://github.com/antlr/antlr4/pull/1346/files#diff-155 (349)
A runtime/Cpp/demo/Windows/antlr4-cpp-demo/antlr4-cpp-demo.vcxproj.filters https://github.com/antlr/antlr4/pull/1346/files#diff-156 (63)
A runtime/Cpp/demo/Windows/antlr4-cpp-demo/main.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-157 (40)
A runtime/Cpp/demo/Windows/antlr4cpp-vs2013.sln https://github.com/antlr/antlr4/pull/1346/files#diff-158 (58)
A runtime/Cpp/demo/Windows/antlr4cpp-vs2015.sln https://github.com/antlr/antlr4/pull/1346/files#diff-159 (40)
A runtime/Cpp/demo/generate.cmd https://github.com/antlr/antlr4/pull/1346/files#diff-160 (13)
A runtime/Cpp/demo/generate.sh https://github.com/antlr/antlr4/pull/1346/files#diff-161 (28)
A runtime/Cpp/deploy-macos.sh https://github.com/antlr/antlr4/pull/1346/files#diff-162 (27)
A runtime/Cpp/deploy-source.sh https://github.com/antlr/antlr4/pull/1346/files#diff-163 (9)
A runtime/Cpp/deploy-windows.cmd https://github.com/antlr/antlr4/pull/1346/files#diff-164 (61)
A runtime/Cpp/runtime/CMakeLists.txt https://github.com/antlr/antlr4/pull/1346/files#diff-165 (83)
A runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj https://github.com/antlr/antlr4/pull/1346/files#diff-166 (622)
A runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj.filters https://github.com/antlr/antlr4/pull/1346/files#diff-167 (939)
A runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj https://github.com/antlr/antlr4/pull/1346/files#diff-168 (624)
A runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj.filters https://github.com/antlr/antlr4/pull/1346/files#diff-169 (942)
A runtime/Cpp/runtime/antlrcpp-ios/Info.plist https://github.com/antlr/antlr4/pull/1346/files#diff-170 (26)
A runtime/Cpp/runtime/antlrcpp-ios/antlrcpp_ios.h https://github.com/antlr/antlr4/pull/1346/files#diff-171 (17)
A runtime/Cpp/runtime/antlrcpp.xcodeproj/project.pbxproj https://github.com/antlr/antlr4/pull/1346/files#diff-172 (2893)
A runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/contents.xcworkspacedata https://github.com/antlr/antlr4/pull/1346/files#diff-173 (7)
A runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4.xcscheme https://github.com/antlr/antlr4/pull/1346/files#diff-174 (80)
A runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_ios.xcscheme https://github.com/antlr/antlr4/pull/1346/files#diff-175 (80)
A runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_static.xcscheme https://github.com/antlr/antlr4/pull/1346/files#diff-176 (80)
A runtime/Cpp/runtime/src/ANTLRErrorListener.h https://github.com/antlr/antlr4/pull/1346/files#diff-177 (193)
A runtime/Cpp/runtime/src/ANTLRErrorStrategy.h https://github.com/antlr/antlr4/pull/1346/files#diff-178 (146)
A runtime/Cpp/runtime/src/ANTLRFileStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-179 (60)
A runtime/Cpp/runtime/src/ANTLRFileStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-180 (53)
A runtime/Cpp/runtime/src/ANTLRInputStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-181 (181)
A runtime/Cpp/runtime/src/ANTLRInputStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-182 (99)
A runtime/Cpp/runtime/src/BailErrorStrategy.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-183 (87)
A runtime/Cpp/runtime/src/BailErrorStrategy.h https://github.com/antlr/antlr4/pull/1346/files#diff-184 (85)
A runtime/Cpp/runtime/src/BaseErrorListener.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-185 (51)
A runtime/Cpp/runtime/src/BaseErrorListener.h https://github.com/antlr/antlr4/pull/1346/files#diff-186 (62)
A runtime/Cpp/runtime/src/BufferedTokenStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-187 (440)
A runtime/Cpp/runtime/src/BufferedTokenStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-188 (226)
A runtime/Cpp/runtime/src/CharStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-189 (37)
A runtime/Cpp/runtime/src/CharStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-190 (63)
A runtime/Cpp/runtime/src/CommonToken.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-191 (209)
A runtime/Cpp/runtime/src/CommonToken.h https://github.com/antlr/antlr4/pull/1346/files#diff-192 (0)
A runtime/Cpp/runtime/src/CommonTokenFactory.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-193 (0)
A runtime/Cpp/runtime/src/CommonTokenFactory.h https://github.com/antlr/antlr4/pull/1346/files#diff-194 (0)
A runtime/Cpp/runtime/src/CommonTokenStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-195 (0)
A runtime/Cpp/runtime/src/CommonTokenStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-196 (0)
A runtime/Cpp/runtime/src/ConsoleErrorListener.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-197 (0)
A runtime/Cpp/runtime/src/ConsoleErrorListener.h https://github.com/antlr/antlr4/pull/1346/files#diff-198 (0)
A runtime/Cpp/runtime/src/DefaultErrorStrategy.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-199 (0)
A runtime/Cpp/runtime/src/DefaultErrorStrategy.h https://github.com/antlr/antlr4/pull/1346/files#diff-200 (0)
A runtime/Cpp/runtime/src/DiagnosticErrorListener.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-201 (0)
A runtime/Cpp/runtime/src/DiagnosticErrorListener.h https://github.com/antlr/antlr4/pull/1346/files#diff-202 (0)
A runtime/Cpp/runtime/src/Exceptions.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-203 (0)
A runtime/Cpp/runtime/src/Exceptions.h https://github.com/antlr/antlr4/pull/1346/files#diff-204 (0)
A runtime/Cpp/runtime/src/FailedPredicateException.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-205 (0)
A runtime/Cpp/runtime/src/FailedPredicateException.h https://github.com/antlr/antlr4/pull/1346/files#diff-206 (0)
A runtime/Cpp/runtime/src/IRecognizer.h https://github.com/antlr/antlr4/pull/1346/files#diff-207 (0)
A runtime/Cpp/runtime/src/InputMismatchException.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-208 (0)
A runtime/Cpp/runtime/src/InputMismatchException.h https://github.com/antlr/antlr4/pull/1346/files#diff-209 (0)
A runtime/Cpp/runtime/src/IntStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-210 (0)
A runtime/Cpp/runtime/src/IntStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-211 (0)
A runtime/Cpp/runtime/src/InterpreterRuleContext.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-212 (0)
A runtime/Cpp/runtime/src/InterpreterRuleContext.h https://github.com/antlr/antlr4/pull/1346/files#diff-213 (0)
A runtime/Cpp/runtime/src/Lexer.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-214 (0)
A runtime/Cpp/runtime/src/Lexer.h https://github.com/antlr/antlr4/pull/1346/files#diff-215 (0)
A runtime/Cpp/runtime/src/LexerInterpreter.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-216 (0)
A runtime/Cpp/runtime/src/LexerInterpreter.h https://github.com/antlr/antlr4/pull/1346/files#diff-217 (0)
A runtime/Cpp/runtime/src/LexerNoViableAltException.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-218 (0)
A runtime/Cpp/runtime/src/LexerNoViableAltException.h https://github.com/antlr/antlr4/pull/1346/files#diff-219 (0)
A runtime/Cpp/runtime/src/ListTokenSource.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-220 (0)
A runtime/Cpp/runtime/src/ListTokenSource.h https://github.com/antlr/antlr4/pull/1346/files#diff-221 (0)
A runtime/Cpp/runtime/src/NoViableAltException.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-222 (0)
A runtime/Cpp/runtime/src/NoViableAltException.h https://github.com/antlr/antlr4/pull/1346/files#diff-223 (0)
A runtime/Cpp/runtime/src/Parser.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-224 (0)
A runtime/Cpp/runtime/src/Parser.h https://github.com/antlr/antlr4/pull/1346/files#diff-225 (0)
A runtime/Cpp/runtime/src/ParserInterpreter.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-226 (0)
A runtime/Cpp/runtime/src/ParserInterpreter.h https://github.com/antlr/antlr4/pull/1346/files#diff-227 (0)
A runtime/Cpp/runtime/src/ParserRuleContext.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-228 (0)
A runtime/Cpp/runtime/src/ParserRuleContext.h https://github.com/antlr/antlr4/pull/1346/files#diff-229 (0)
A runtime/Cpp/runtime/src/ProxyErrorListener.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-230 (0)
A runtime/Cpp/runtime/src/ProxyErrorListener.h https://github.com/antlr/antlr4/pull/1346/files#diff-231 (0)
A runtime/Cpp/runtime/src/RecognitionException.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-232 (0)
A runtime/Cpp/runtime/src/RecognitionException.h https://github.com/antlr/antlr4/pull/1346/files#diff-233 (0)
A runtime/Cpp/runtime/src/Recognizer.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-234 (0)
A runtime/Cpp/runtime/src/Recognizer.h https://github.com/antlr/antlr4/pull/1346/files#diff-235 (0)
A runtime/Cpp/runtime/src/RuleContext.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-236 (0)
A runtime/Cpp/runtime/src/RuleContext.h https://github.com/antlr/antlr4/pull/1346/files#diff-237 (0)
A runtime/Cpp/runtime/src/RuleContextWithAltNum.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-238 (0)
A runtime/Cpp/runtime/src/RuleContextWithAltNum.h https://github.com/antlr/antlr4/pull/1346/files#diff-239 (0)
A runtime/Cpp/runtime/src/RuntimeMetaData.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-240 (0)
A runtime/Cpp/runtime/src/RuntimeMetaData.h https://github.com/antlr/antlr4/pull/1346/files#diff-241 (0)
A runtime/Cpp/runtime/src/Token.h https://github.com/antlr/antlr4/pull/1346/files#diff-242 (0)
A runtime/Cpp/runtime/src/TokenFactory.h https://github.com/antlr/antlr4/pull/1346/files#diff-243 (0)
A runtime/Cpp/runtime/src/TokenSource.h https://github.com/antlr/antlr4/pull/1346/files#diff-244 (0)
A runtime/Cpp/runtime/src/TokenStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-245 (0)
A runtime/Cpp/runtime/src/TokenStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-246 (0)
A runtime/Cpp/runtime/src/TokenStreamRewriter.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-247 (0)
A runtime/Cpp/runtime/src/TokenStreamRewriter.h https://github.com/antlr/antlr4/pull/1346/files#diff-248 (0)
A runtime/Cpp/runtime/src/UnbufferedCharStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-249 (0)
A runtime/Cpp/runtime/src/UnbufferedCharStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-250 (0)
A runtime/Cpp/runtime/src/UnbufferedTokenStream.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-251 (0)
A runtime/Cpp/runtime/src/UnbufferedTokenStream.h https://github.com/antlr/antlr4/pull/1346/files#diff-252 (0)
A runtime/Cpp/runtime/src/Vocabulary.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-253 (0)
A runtime/Cpp/runtime/src/Vocabulary.h https://github.com/antlr/antlr4/pull/1346/files#diff-254 (0)
A runtime/Cpp/runtime/src/WritableToken.h https://github.com/antlr/antlr4/pull/1346/files#diff-255 (0)
A runtime/Cpp/runtime/src/antlr4-common.h https://github.com/antlr/antlr4/pull/1346/files#diff-256 (0)
A runtime/Cpp/runtime/src/antlr4-runtime.h https://github.com/antlr/antlr4/pull/1346/files#diff-257 (0)
A runtime/Cpp/runtime/src/atn/ATN.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-258 (0)
A runtime/Cpp/runtime/src/atn/ATN.h https://github.com/antlr/antlr4/pull/1346/files#diff-259 (0)
A runtime/Cpp/runtime/src/atn/ATNConfig.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-260 (0)
A runtime/Cpp/runtime/src/atn/ATNConfig.h https://github.com/antlr/antlr4/pull/1346/files#diff-261 (0)
A runtime/Cpp/runtime/src/atn/ATNConfigSet.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-262 (0)
A runtime/Cpp/runtime/src/atn/ATNConfigSet.h https://github.com/antlr/antlr4/pull/1346/files#diff-263 (0)
A runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-264 (0)
A runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.h https://github.com/antlr/antlr4/pull/1346/files#diff-265 (0)
A runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-266 (0)
A runtime/Cpp/runtime/src/atn/ATNDeserializer.h https://github.com/antlr/antlr4/pull/1346/files#diff-267 (0)
A runtime/Cpp/runtime/src/atn/ATNSerializer.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-268 (0)
A runtime/Cpp/runtime/src/atn/ATNSerializer.h https://github.com/antlr/antlr4/pull/1346/files#diff-269 (0)
A runtime/Cpp/runtime/src/atn/ATNSimulator.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-270 (0)
A runtime/Cpp/runtime/src/atn/ATNSimulator.h https://github.com/antlr/antlr4/pull/1346/files#diff-271 (0)
A runtime/Cpp/runtime/src/atn/ATNState.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-272 (0)
A runtime/Cpp/runtime/src/atn/ATNState.h https://github.com/antlr/antlr4/pull/1346/files#diff-273 (0)
A runtime/Cpp/runtime/src/atn/ATNType.h https://github.com/antlr/antlr4/pull/1346/files#diff-274 (0)
A runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-275 (0)
A runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.h https://github.com/antlr/antlr4/pull/1346/files#diff-276 (0)
A runtime/Cpp/runtime/src/atn/ActionTransition.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-277 (0)
A runtime/Cpp/runtime/src/atn/ActionTransition.h https://github.com/antlr/antlr4/pull/1346/files#diff-278 (0)
A runtime/Cpp/runtime/src/atn/AmbiguityInfo.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-279 (0)
A runtime/Cpp/runtime/src/atn/AmbiguityInfo.h https://github.com/antlr/antlr4/pull/1346/files#diff-280 (0)
A runtime/Cpp/runtime/src/atn/ArrayPredictionContext.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-281 (0)
A runtime/Cpp/runtime/src/atn/ArrayPredictionContext.h https://github.com/antlr/antlr4/pull/1346/files#diff-282 (0)
A runtime/Cpp/runtime/src/atn/AtomTransition.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-283 (0)
A runtime/Cpp/runtime/src/atn/AtomTransition.h https://github.com/antlr/antlr4/pull/1346/files#diff-284 (0)
A runtime/Cpp/runtime/src/atn/BasicBlockStartState.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-285 (0)
A runtime/Cpp/runtime/src/atn/BasicBlockStartState.h https://github.com/antlr/antlr4/pull/1346/files#diff-286 (0)
A runtime/Cpp/runtime/src/atn/BasicState.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-287 (0)
A runtime/Cpp/runtime/src/atn/BasicState.h https://github.com/antlr/antlr4/pull/1346/files#diff-288 (0)
A runtime/Cpp/runtime/src/atn/BlockEndState.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-289 (0)
A runtime/Cpp/runtime/src/atn/BlockEndState.h https://github.com/antlr/antlr4/pull/1346/files#diff-290 (0)
A runtime/Cpp/runtime/src/atn/BlockStartState.h https://github.com/antlr/antlr4/pull/1346/files#diff-291 (0)
A runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-292 (0)
A runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.h https://github.com/antlr/antlr4/pull/1346/files#diff-293 (0)
A runtime/Cpp/runtime/src/atn/DecisionEventInfo.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-294 (0)
A runtime/Cpp/runtime/src/atn/DecisionEventInfo.h https://github.com/antlr/antlr4/pull/1346/files#diff-295 (0)
A runtime/Cpp/runtime/src/atn/DecisionInfo.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-296 (0)
A runtime/Cpp/runtime/src/atn/DecisionInfo.h https://github.com/antlr/antlr4/pull/1346/files#diff-297 (0)
A runtime/Cpp/runtime/src/atn/DecisionState.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-298 (0)
A runtime/Cpp/runtime/src/atn/DecisionState.h https://github.com/antlr/antlr4/pull/1346/files#diff-299 (0)
I runtime/Cpp/runtime/src/atn/EmptyPredictionContext.cpp https://github.com/antlr/antlr4/pull/1346/files#diff-300 (0)
Patch Links:

https://github.com/antlr/antlr4/pull/1346.patch https://github.com/antlr/antlr4/pull/1346.patch
https://github.com/antlr/antlr4/pull/1346.diff https://github.com/antlr/antlr4/pull/1346.diff

You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub #1346, or mute the thread https://github.com/notifications/unsubscribe-auth/ADLYJKnrQp65-iKLS0lQ9gjhp1EmO2j1ks5q76MygaJpZM4Kryc2.

@ghost
Copy link

ghost commented Dec 14, 2016

People have been waiting years and years for the C++ target. Why not release 4.6 now and 4.6.1 with Swift later on?

@parrt
Copy link
Member Author

parrt commented Dec 14, 2016

@pureconfig we're all set to go minus a few build issues for 4.6 with swift. :)

@marcospassos
Copy link
Contributor

Go! Go! Go!

@parrt
Copy link
Member Author

parrt commented Dec 14, 2016

@marcospassos working on build issues cross-platform etc.. ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.