Commit Graph

6864 Commits

Author SHA1 Message Date
Corey Kosak 2bce3a74d4 Remove the useless visibility attribute from this "enum class" declaration.
When compiling under gcc, ANTLR4CPP_PUBLIC macro expands to the following
gcc visibility attribute:
 __attribute__((visibility ("default")))

(when compiling under Windows it expands to the corresponding __declspec
attribute)

This change was introduced in commit 8ff852640a

Although the attribute makes perfect sense when applied to a "class"
declaration, it makes no sense (has no effect) when applied to an
"enum class" declaration. I assume that doing so was unintentional; that
when the change was introduced it was it was added mechanically to all
"class XXX" instances in the source code, a process which accidentally
picked up one "enum class XXX" instance.

Although it has no effect on the object code, it leads to the following
warning when compiling under gcc:
/usr/local/include/antlr4-runtime/atn/PredictionMode.h:18:31: error: type attributes ignored after type is already defined [-Werror=attributes]
   enum class ANTLR4CPP_PUBLIC PredictionMode {

This is a problem for people who would like their builds to be warning-free.

Happily, this declaration can be safely removed. The "enum class" construct
(just like with regular enum) does not cause any linker symbols to be
emitted. So having a linker attribute on the type does not actually have any
effect. It can therefore be safely removed.
2017-07-17 17:54:17 -04:00
vaibhavaingankar09 8b3da13259 fix to the ATN deserialiser issue on big endian architecture 2017-07-17 06:45:29 +00:00
Maurice van der Pot 162e2657b8 Fix two issues found by coverity 2017-07-15 17:20:59 +02:00
Eric Vergnaud 0930095207 fix inconsistent naming in target stg 2017-07-15 12:19:54 +08:00
Daniel Halperin 9cb5234539 Sign the contributors.txt 2017-07-11 21:01:08 -07:00
Daniel Halperin 7a882f7d5b Add test for multiple imports 2017-07-11 20:59:01 -07:00
Daniel Halperin d58e7e31bf GrammarDependencies: include all imports
For some reason, the grammar import dependency analysis only included
the first import on a line. This does not work so well...
2017-07-11 20:59:01 -07:00
Daniel Halperin a9dfca3666 isDependencyChanged: consider equal timestamps as out of date
Some systems have low-granularity timestamps, so that file modification
dates are rounded to seconds. This causes false negatives when detecting
if a grammar needs to be recompiled if it changes a second after producing
its tokens.

This likely only causes an issue for tests that frequently mutate files;
real humans are unlikely to compile within 1s of changing a grammar.
Still, this seems a cleaner solution that hacking the failing test to use
force a different modification time, as there will almost never be false
positives.

This fixes the failing test after making the test correct.
2017-07-11 20:59:01 -07:00
Daniel Halperin b09e30c6ca Make the lexer test possible to pass
Adding a newline should actually not change the generated lexer.
2017-07-11 20:59:01 -07:00
Daniel Halperin 41889939d6 Make the Antlr4MojoTest restore state between tests
Otherwise, we could pick up stale changes from prior tests.
2017-07-11 20:42:41 -07:00
WAKAYAMA Shirou b36044108a [Go] Expose Start and Stop of Interval. 2017-07-10 09:51:07 +09:00
Sergey Parshukov 3b4cab046a Merge branch 'master' of github.com:jBugman/antlr4 2017-07-09 19:53:49 +03:00
Sergey Parshukov f641f6a722 Merged upstream/master 2017-07-09 19:53:28 +03:00
Arshinskiy Mike 1ce5f91573 [Go] Implemented TokenStreamRewriter
TokenStreamRewriter implementation was missing
Ported code from Java version; however, there are couple of deviations due to difference between composition (Go) and inheritance (Java) concepts
Ported tests from Swift for LexerA
2017-07-09 09:39:46 +02:00
WAKAYAMA Shirou 1054e658b2 [Go] change Interval.contains to public instead of add wrapper function. 2017-07-07 14:41:01 +09:00
WAKAYAMA Shirou 9eb7edbf30 add to contributors.txt 2017-07-07 13:16:41 +09:00
WAKAYAMA Shirou 749fa81993 [Go] Add exported getter method to Interval. 2017-07-07 13:14:16 +09:00
Mike Lischke 6319d62409 Don't create VS 2013 packages anymore by default.
Can be enabled on demand.
2017-07-02 14:31:01 +02:00
Mike Lischke b7060ba1f5 Visual Studio build fixes for previous C++ patch.
VS 2013 doesn't accept certain C++11 constants like std::numeric_limits, so we have to return to the code used before that mentioned patch.
2017-07-02 14:29:54 +02:00
Mike Lischke f33fca6789 XCode build fixes for previous C++ patch. 2017-07-01 19:30:02 +02:00
Sergey Parshukov 85fcb7567a Merge branch 'master' into master 2017-06-30 18:41:52 +03:00
Mike Lischke aa2d34bdfd Merge branch 'master' into interpreter2 2017-06-30 13:44:11 +02:00
Jan Martin Mikkelsen d4b18697f2 Fix unsafe usage on _edgeLock
Iterators on an unordered_map were being dereferenced after dropping a
read lock, leading to races where iterators could be invalidated before
they were used.
2017-06-30 10:47:43 +10:00
Jan Martin Mikkelsen 0c0a929252 Merge https://github.com/antlr/antlr4 2017-06-30 10:44:00 +10:00
Terence Parr c41426c87e Merge pull request #1909 from erikbra/patch-1
Corrected `.js` file endings to `.cs` in doc/chsharp-target.md
2017-06-29 16:13:57 -07:00
Terence Parr 62a2d5c9df Merge branch 'master' into patch-1 2017-06-29 16:13:41 -07:00
Terence Parr 738ce4c401 Merge pull request #1929 from ericvergnaud/fix-travis-timeouts
Fix travis timeouts
2017-06-29 11:16:53 -07:00
Eric Vergnaud 5e0eee056d oops, forgot to flag the dotnet tests 2017-06-28 23:39:54 +08:00
Eric Vergnaud c15aa4336a dotent also times out 2017-06-28 22:18:19 +08:00
Eric Vergnaud 936a396c81 clarify intent 2017-06-28 20:45:39 +08:00
Eric Vergnaud c5eb9cbeef Merge branch 'master' into fix-travis-timeouts 2017-06-28 20:41:32 +08:00
Eric Vergnaud 03e9a012bc fix failing build 2017-06-28 20:40:16 +08:00
Sergey Parshukov 49b462f960 Go file header complies with standardised Go 'generated code' header 2017-06-28 11:43:50 +03:00
Terence Parr e6a6e6bb4a Merge pull request #1927 from xied75/dotnetcore
[dotnet] for linux target, bring up to jdk8 since jdk7 no longer available for Trusty; for linux and osx targets, bring up dotnet from 1.0.3 to 1.0.4; Trusty image now has mvn 3.3.9 builtin, removed install code
2017-06-27 08:16:39 -07:00
Terence Parr 916a872529 Merge pull request #1918 from renatahodovan/indent-with-spaces
Use spaces consistently to indent the generated Python code.
2017-06-27 08:16:02 -07:00
Eric Vergnaud b7538b6eb9 fix failing build 2017-06-27 23:09:36 +08:00
Jan Martin Mikkelsen 21a53c2a17 Merge https://github.com/antlr/antlr4 2017-06-27 11:09:57 +10:00
Jan Martin Mikkelsen d7f5e1834b Rework C++ Interval, IntervalSet, ATN and ATNState
- Remove the readonly status from IntervalSet.
- Remove virtual functions from IntervalSet and Interval. These are
  passed by value throughout the C++ runtime; meaningful inheritance is
  not possible anyway.
- Moving the atomic flag into ATNState as a "now cached" flag.
- Return a const reference from ATN::nextStates(ATNState*) so the readonly
  status is enforced by the compiler not at runtime in the code.
- Use value semantics using std::move to reduce the number of copies performed,
  constent with how these classes are used in the C++ runtime source.
- Remove type-unsafe varargs constructor in IntervalSet, replace with
  type-safe varadic templates implementation.
2017-06-27 11:04:50 +10:00
Eric Vergnaud 32fc500102 Fix typo and rebalance 2017-06-27 07:43:59 +08:00
Eric Vergnaud 5faa889c8a categorise tests to fix Travis timeout, fix script 2017-06-27 01:47:01 +08:00
Eric Vergnaud 0e573fb0a5 categorise tests to fix Travis timeout 2017-06-27 00:50:49 +08:00
Terence Parr 990d4848b2 Merge pull request #1902 from jm-mikkelsen/master
C++ runtime changes for high warning levels
2017-06-26 08:18:38 -07:00
Dong Xie ceaf085dc5 [dotnet] for linux target, bring up to jdk8 since jdk7 no longer available for Trusty; for linux and osx targets, bring up dotnet from 1.0.3 to 1.0.4; Trusty image now has mvn 3.3.9 builtin, removed install code 2017-06-26 13:18:48 +01:00
Jan Martin Mikkelsen 0c4473ea1a Merge https://github.com/antlr/antlr4 2017-06-26 17:22:44 +10:00
Terence Parr ff13553a2b Merge pull request #1921 from alimg/py-input-mismatch-error
Fix input mismatch errors not reported the same way as Java in Python
2017-06-25 09:05:41 -07:00
alimg 4b21583e2b signing in contributors.txt 2017-06-25 19:04:03 +03:00
alimg 60cce436c2 Merge branch 'master' of https://github.com/antlr/antlr4 into py-input-mismatch-error 2017-06-25 19:02:26 +03:00
Terence Parr 77f3c767b7 Merge pull request #1912 from danielkatz/patch-1
Update the example in JavaScript readme doc to 4.7
2017-06-25 08:39:20 -07:00
Terence Parr 645855a65a Merge pull request #1926 from ericvergnaud/fix-unicode-lexer
Fix #1925
2017-06-25 08:38:10 -07:00
Terence Parr e6a77c86da Merge pull request #1915 from danielkatz/patch-2
Update .Net NuGet package name to 4.7 with .NET Core target
2017-06-25 08:36:54 -07:00