[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-dev] Synthetic Methods?

Hi All,

I remember that at one time AspectJ added a synthetic modifier to generated
methods like has Aspect and aspectOf. It looks like it now only adds an
AspectJ-specific attribute org.aspectj.weaver.AjSynthetic. Was there a
reason to remove the standard synthetic modifier?

I ask because I'm trying to get the EMMA coverage tool working on AspectJ
aspects, and it expects to have methods like this tagged with synthetic or
else for them to have line numbers associated with them. The good news is it
works, but unfortunately it won't produce much info since it thinks the line
number data is missing.

I'm also wondering if there are other notable cases where AspectJ emits
bytecode without line number information. I know I've seen stack traces with
aspect code (like runtime tests for cflow or if in pointcut evaluation) that
didn't have meaningful line numbers. In looking at the bytecode, it looks
like they do *have* a line number, it's just 0.

Ron Bodkin
Chief Technology Officer
New Aspects of Software
w: (415) 824-4690