#
8b2ec3e6 |
|
20-Jun-2017 |
Anna Lyons <Anna.Lyons@data61.csiro.au> |
Fix licenses
|
#
02630bf5 |
|
30-May-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Fix: remove unnecessary quotes in comment.
|
#
f41bf164 |
|
24-May-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Remove unnecessary carets from the beginning of regexes. When using `re.match` the start of the string is assumed. This commit cherry-picks c81dd371b04519c51615aee972da58a295bca9df from ssh://github.inside.nicta.com.au/mfernandez/project.
|
#
203e17cc |
|
24-May-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Add support for the alternative form of line directives without a filename. This commit cherry-picks 1b34471c2afc9f98ec5766d89aea61f89884e39c from ssh://github.inside.nicta.com.au/mfernandez/project.
|
#
0400b5b0 |
|
23-May-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
More accurate error messages. This commit alters the logic that recognises PlyPlus errors to provide line and column information to achieve two further things: 1. Provide line number information even when column information is absent; and 2. Use unrecognised symbol length to compute maximum column coordinates. Ultimately this leads to more accurate error reporting when the user has made a syntax error in their input specification. This commit cherry-picks 1e111d4415b85ee925c6edb0a0587b854a688ba5 from ssh://github.inside.nicta.com.au/mfernandez/project.
|
#
4ac7a18c |
|
15-Jan-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Expose column information from SourceLocation.
|
#
5d51731d |
|
15-Jan-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Use "*col" instead of "*column" in SourceLocation. This is a private member and this change has no effect, but it will help reduce confusion in future by matching the variable naming PlyPlus uses.
|
#
c07b9259 |
|
12-Jan-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Track minimum and maximum column numbers in source locations. This information is currently unused, but is planned for future diagnostics.
|
#
79c918a7 |
|
05-Jan-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Support alternate form of CPP line directives. GCC supports two forms of line directive: #line <linenum> <filename> # <linenum> <filename> Only the first of these is documented in [0], though it is actually the second of these that the C pre processor outputs. CAmkES' understanding of these directives was previously based on observed directives from CPP and it could not understand the first of these. This commit adds support for the first form as well, as it may be in use by some other non-CPP pre processing tool. [0]: https://gcc.gnu.org/onlinedocs/cpp/Line-Control.html
|
#
110e9675 |
|
04-Jan-2016 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Locate precise line numbers even when PlyPlus throws multiple errors. Background: When an error is encountered during parsing, CAmkES raises a `ParseError`. This contains source line number information that is automatically narrowed when the error is presented to the user. In the case when the error occurred during PlyPlus lexing or parsing, CAmkES uses a combination of the PlyPlus exception and C pre-processor line directives to precisely locate the offending token(s). Prior to this commit, CAmkES only anticipated PlyPlus exceptions that identified a single source location. This meant that exceptions that referenced multiple lines, such as: Syntax error in input at 'notifier' (type ID) line 55 col 16 Syntax error in input at 'client' (type ID) line 60 col 20 Syntax error in input at 'client' (type ID) line 65 col 20 Syntax error in input at 'client1' (type ID) line 70 col 19 ... caused the line narrowing algorithm to exit early and the user was presented with an imprecise source location. This commit corrects this imprecision and such scenarios now give an accurate narrowed line number.
|
#
bacfebce |
|
27-Oct-2015 |
Matthew Fernandez <matthew.fernandez@nicta.com.au> |
Refactored parser init commit.
|