aboutsummaryrefslogtreecommitdiffstats
path: root/asm
diff options
context:
space:
mode:
authorAlexander Kriegisch <Alexander@Kriegisch.name>2023-01-22 12:22:37 +0100
committerAlexander Kriegisch <Alexander@Kriegisch.name>2023-01-22 21:33:36 +0100
commitac2b81c3f8ab0a7af7c5078656547f1c7a9a9499 (patch)
tree39ce25a306c933a30d0ad26fc057af22d9562729 /asm
parent953a8313c3a9b464c34707485b143a9152500c78 (diff)
downloadaspectj-ac2b81c3f8ab0a7af7c5078656547f1c7a9a9499.tar.gz
aspectj-ac2b81c3f8ab0a7af7c5078656547f1c7a9a9499.zip
Bugfix: caret error marks in compiler output too short
This very old bug in EclipseAdapterUtils calculated the '^' caret error marks incorrectly. The marks were too short like this: void m() { return vax[3]; } ^^^^^^^^^^^ Where the correct result would look like this: void m() { return vax[3]; } ^^^^^^^^^^^^^^ This was due to the rather complicated way in which first surrounding context code - here the leading 'void m() { ' and trailing ' }' - was first added and then possible leading white space was cut off again from the left. It is difficult to explain, the code is a nightmare, trying to work with char arrays, counting indexes, repeatedly using System.arraycopy and using lots of counters and offsets. I would have liked to simplify the code, converting char[] buffers to Strings, but decided to keep the basic structure for now, not sure what kind of memory or performance considerations led to this design. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Diffstat (limited to 'asm')
0 files changed, 0 insertions, 0 deletions