-アスペクト適用
pointcut属性を指定しない場合、すべてのメソッドが対象になるわけではありません。実装しているインターフェースのすべてのメソッドが対象になります。すべてのメソッドを対象にするには、pointcut属性に".*"と指定します。
RTTIを整理したら、隠れバグを発見。メソッドの検索でスーパークラスに行ってませんでした。新RTTIではスーパークラスを当然見るようにしてますし、その際に被オーバーライドメソッドはきちんと除外してます(この実装が難しかった)。しかし、このポイントカットの設定を省略している場合をやってなかったのです。今は常に".*"で動いています。
この問題、finalやstatic問題を対応したときにうすうす気が付いていたのですが、面倒なので見ないフリしていたところ、新RTTIできちんとメソッド検索機能を実装しなおしたら、Objectのfinalメソッド群のおかげで大量のワーニングがでるようになってしまいました。やばいね、すぐみんな気が付くね。しゃあない、きちんとやります。まずはS2を実際に動かしてみて、挙動を検証します。
追記
うみゅ?スーパークラスのメソッドは検索しないのか?。。。と思ったが、スーパーも全検索ね。よかったよかった。".*"でやるとObjectのfinalなnotifyAll、getClass、wait、notifyを警告してくれます。
さらに追記