You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846
  1. <!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd"[]>
  2. <suite>
  3. <ajc-test dir="new" pr="853"
  4. title="declare interface extends class">
  5. <compile files="DeclareInterfaceExtendsClass.java">
  6. <message kind="error" line="10"/>
  7. </compile>
  8. </ajc-test>
  9. <ajc-test dir="new" pr="853"
  10. title="declare interface implements class">
  11. <compile files="DeclareInterfaceImplementsClass.java">
  12. <message kind="error" line="10"/>
  13. </compile>
  14. </ajc-test>
  15. <ajc-test dir="new" pr="823"
  16. title="declaring a private method on an inner interface"
  17. keywords="tofix">
  18. <compile files="PrivateMethodOnInnerInterface.java"/>
  19. <run class="PrivateMethodOnInnerInterface"/>
  20. </ajc-test>
  21. <ajc-test dir="new" pr="829"
  22. title="CE expected when declaring fields on arrays" keywords="tofix">
  23. <compile files="ArrayFieldDeclarationCE.java">
  24. <message kind="error" line="14"/>
  25. </compile>
  26. </ajc-test>
  27. <ajc-test dir="new" pr="883"
  28. title="signature of handler join point">
  29. <compile files="HandlerSignature.java"/>
  30. <run class="HandlerSignature"/>
  31. </ajc-test>
  32. <ajc-test dir="new" pr="885"
  33. title="source locations within expressions">
  34. <compile files="SourceLocationWithinExpr.java"/>
  35. <run class="SourceLocationWithinExpr"/>
  36. </ajc-test>
  37. <ajc-test dir="new" pr="888"
  38. title="crashes given method in declared method">
  39. <compile files="DeclareMethodCE.java">
  40. <message kind="error" line="8"/>
  41. </compile>
  42. </ajc-test>
  43. <ajc-test dir="new" pr="889"
  44. title="after returning advice on interface constructor">
  45. <compile files="AfterReturningInterfaceConstructor.java"/>
  46. <run class="AfterReturningInterfaceConstructor"/>
  47. </ajc-test>
  48. <ajc-test dir="new" pr="889"
  49. title="after returning advice on interface constructor - error">
  50. <compile files="AfterReturningInterfaceConstructorCE.java">
  51. <message kind="error" line="26"/>
  52. <message kind="warning" line="30"/>
  53. </compile>
  54. </ajc-test>
  55. <ajc-test dir="bugs" pr="900"
  56. title="after advice on static call join point">
  57. <compile files="AfterStaticCall.java"/>
  58. <run class="AfterStaticCall"/>
  59. </ajc-test>
  60. <ajc-test dir="bugs" pr="901"
  61. title="incompatible class change error"
  62. comment="XXX Jim and Erik found/fixed this - need basis">
  63. <compile files="IncompatibleClassChangeErrorBug.java"/>
  64. <run class="IncompatibleClassChangeErrorBug"/>
  65. </ajc-test>
  66. <ajc-test dir="bugs" pr="903"
  67. title="simple cflow of method execution">
  68. <compile files="ExecutionCflow.java"/>
  69. <run class="ExecutionCflow"/>
  70. </ajc-test>
  71. <ajc-test dir="bugs" pr="909"
  72. title="using instance as class reference to constant field"
  73. comment="XXX need to verify run">
  74. <compile files="InstanceAsClassRefToConstant.java"/>
  75. </ajc-test>
  76. <ajc-test dir="new" pr="774"
  77. title="interface self-reference in anonymous instance">
  78. <compile files="AnonymousSelfReference.java"/>
  79. <run class="AnonymousSelfReference"/>
  80. </ajc-test>
  81. <ajc-test dir="new" pr="776"
  82. title="self-reference from (aspect-declared) method-local class">
  83. <compile files="MethodSelfReference.java"/>
  84. <run class="MethodSelfReference"/>
  85. </ajc-test>
  86. <ajc-test dir="new" title="expect CE for unterminated declare error">
  87. <compile files="UnterminatedDeclareErrorCE.java">
  88. <message kind="error" line="4"/>
  89. </compile>
  90. </ajc-test>
  91. <ajc-test dir="new"
  92. title="expect CE for declaration collision between subaspects instead of domination order">
  93. <compile files="DeclarationCollisionCE.java">
  94. <message kind="error" line="10"/>
  95. <message kind="error" line="20"/>
  96. <message kind="error" line="27"/>
  97. </compile>
  98. </ajc-test>
  99. <ajc-test dir="new"
  100. title="subtype pattern in dominates should pick out aspect subtypes">
  101. <compile files="DominatesTypePattern.java"/>
  102. <run class="DominatesTypePattern"/>
  103. </ajc-test>
  104. <ajc-test dir="new"
  105. title="subtype pattern in dominates will conflict with type pattern">
  106. <compile files="DominatesTypePatternCE.java">
  107. <message kind="error" line="15"/>
  108. </compile>
  109. </ajc-test>
  110. <ajc-test dir="new" pr="827"
  111. title="after returning advice on interface and implementation constructor"
  112. keywords="tofix">
  113. <compile files="AfterReturningConstructor.java"/>
  114. <run class="AfterReturningConstructor"/>
  115. </ajc-test>
  116. <ajc-test dir="new" pr="832"
  117. title="after throwing advice with non-throwable formal">
  118. <compile files="AfterThrowingNonThrowable.java">
  119. <message kind="error" line="41"/>
  120. </compile>
  121. </ajc-test>
  122. <ajc-test dir="new" pr="829" title="declare array field using postfix"
  123. keywords="tofix">
  124. <compile files="ArrayFieldDeclaration.java">
  125. <message kind="error" line="17"/>
  126. </compile>
  127. </ajc-test>
  128. <ajc-test dir="new" pr="851"
  129. title="prohibit declaring new aspect constructor with arguments">
  130. <compile files="DeclareAspectConstructorCE.java">
  131. <message kind="error" line="10"/>
  132. </compile>
  133. </ajc-test>
  134. <ajc-test dir="new" pr="851"
  135. title="prohibit declaring only aspect constructor with arguments">
  136. <compile files="DeclareOnlyAspectConstructorCE.java">
  137. <message kind="error" line="10"/>
  138. </compile>
  139. </ajc-test>
  140. <!-- The follwing three idioms are allowed. Within a declare parents,
  141. implements and extends can be used interchangably. We could
  142. provide -Xlint style warnings for misuse.
  143. -->
  144. <ajc-test dir="new" pr="853"
  145. title="declare class extends interface">
  146. <compile files="DeclareClassExtendsInterface.java">
  147. </compile>
  148. </ajc-test>
  149. <ajc-test dir="new" pr="853"
  150. title="declare class implements class">
  151. <compile files="DeclareClassImplementsClass.java">
  152. </compile>
  153. </ajc-test>
  154. <ajc-test dir="new" pr="853"
  155. title="declare interface implements interface">
  156. <compile files="DeclareInterfaceImplementsInterface.java">
  157. </compile>
  158. </ajc-test>
  159. <ajc-test dir="new"
  160. title="if and cflow arg binding">
  161. <compile files="CflowBinding.java">
  162. <message kind="error" line="13"/>
  163. </compile>
  164. </ajc-test>
  165. <ajc-test dir="bugs" pr="902"
  166. title="circularity in declare dominates">
  167. <compile files="CircularDominates.java">
  168. <message kind="error" line="18"/>
  169. </compile>
  170. </ajc-test>
  171. <ajc-test dir="bugs" pr="28702" title="percflow code hangs compiler">
  172. <compile files="CloseConnectionsCflow.java" options="-1.4">
  173. </compile>
  174. </ajc-test>
  175. <ajc-test dir="bugs" pr="28852"
  176. title="Verification error tracing constructor that takes arguments">
  177. <compile files="ConstructorArgTracing.java"/>
  178. <run class="ConstructorArgTracing"/>
  179. </ajc-test>
  180. <ajc-test dir="bugs" pr="29106" title="declared exceptions in inter-type decls">
  181. <compile files="ExceptionsOnInters.java"/>
  182. <run class="ExceptionsOnInters"/>
  183. </ajc-test>
  184. <ajc-test dir="bugs" pr="28921"
  185. title="Verify error on non-Throwable in declare soft">
  186. <compile files="DeclareSoftCf.java" options="-Xlint:warning">
  187. <message kind="warning" line="28"/>
  188. <message kind="error" line="29"/>
  189. <!--message kind="warning"/-->
  190. </compile>
  191. </ajc-test>
  192. <ajc-test dir="bugs" pr="29113" title="inter-type fields with array types">
  193. <compile files="InterFieldArrays.java"/>
  194. <run class="InterFieldArrays"/>
  195. </ajc-test>
  196. <ajc-test dir="new" pr="838"
  197. title="checking around join point for advice return type - numeric">
  198. <compile files="AroundNumericCastCE.java">
  199. <message kind="error" line="11"/>
  200. <message kind="error" line="17"/>
  201. </compile>
  202. </ajc-test>
  203. <ajc-test dir="new" pr="836" title="void around advice without proceed">
  204. <compile files="VoidAround.java">
  205. <message kind="error" line="11"/>
  206. <message kind="error" line="29"/>
  207. </compile>
  208. </ajc-test>
  209. <ajc-test dir="new/PR852" pr="852"
  210. title="declaring method on superclass and subclass">
  211. <compile files="aspectPack/Aspect.java,target/SubClass.java,target/SuperClass.java">
  212. <dir-changes added="target.SubClass,target.SuperClass"/>
  213. </compile>
  214. <run class="aspectPack.Aspect"/>
  215. </ajc-test>
  216. <ajc-test dir="new/finalfield" pr="28974"
  217. title="introducing final fields (simple)">
  218. <compile files="Introducer.java,Receiver.java,User1.java"/>
  219. <run class="User1"/>
  220. </ajc-test>
  221. <ajc-test dir="new/finalfield" pr="28974"
  222. title="introducing final fields and using as constants">
  223. <compile files="Introducer.java,Receiver.java,User2.java"/>
  224. <run class="User2"/>
  225. </ajc-test>
  226. <ajc-test dir="new/finalfield" pr="28974"
  227. title="introducing final fields and checking errors">
  228. <compile files="Introducer.java,Receiver.java,UserCf.java">
  229. <message kind="error" line="6"/>
  230. </compile>
  231. </ajc-test>
  232. <ajc-test dir="bugs" pr="29691"
  233. title="Static inner aspects cannot reference user defined pointcuts">
  234. <compile files="PcdLookup.java" />
  235. <run class="PcdLookup"/>
  236. </ajc-test>
  237. <ajc-test dir="bugs" pr="29691"
  238. title="Static inner aspects cannot reference user defined pointcuts">
  239. <compile files="SoftWithin.java" />
  240. <run class="SoftWithin"/>
  241. </ajc-test>
  242. <ajc-test dir="bugs" pr="29689"
  243. title="Declare precedence should not allow multiple * patterns">
  244. <compile files="CircularPrecedence.java">
  245. <message kind="error" line="14"/>
  246. </compile>
  247. </ajc-test>
  248. <ajc-test dir="bugs" pr="29662"
  249. title="VerifyError on accessing objects not accessible to the weaver">
  250. <compile files="AroundAccess.java">
  251. </compile>
  252. <run class="AroundAccess"/>
  253. </ajc-test>
  254. <ajc-test dir="new" pr="804"
  255. title="aspect static initializers should run before instance constructed"
  256. keywords="tofix">
  257. <compile files="AspectStaticInit.java"/>
  258. <run class="AspectStaticInit"/>
  259. </ajc-test>
  260. <ajc-test dir="bugs" pr="29959"
  261. title="super call in intertype method declaration body causes VerifyError">
  262. <compile files="SuperToIntro.java"/>
  263. <run class="SuperToIntro"/>
  264. </ajc-test>
  265. <ajc-test dir="bugs/crashes" pr="30168"
  266. title="Error with certain combination of advice">
  267. <compile files="test/Test3.java"/>
  268. <run class="test.Test3"/>
  269. </ajc-test>
  270. <ajc-test dir="bugs" pr="31423"
  271. title="Pointcut adviceexecution() does not work">
  272. <compile files="AdviceExec.java"/>
  273. <run class="AdviceExec"/>
  274. </ajc-test>
  275. <ajc-test dir="bugs" pr="30026"
  276. title="problems with finalize call">
  277. <compile files="Finalizer.java">
  278. <message kind="error" line="22"/>
  279. </compile>
  280. </ajc-test>
  281. <ajc-test dir="bugs" pr="33635"
  282. title="Negation of if pointcut does not work">
  283. <compile files="NotIf.java"/>
  284. <run class="NotIf"/>
  285. </ajc-test>
  286. <ajc-test dir="bugs" pr="32463"
  287. title="ajc reports error when encountering static declaration of nested classes">
  288. <compile files="WeaveLocal.java"/>
  289. <run class="WeaveLocal"/>
  290. </ajc-test>
  291. <ajc-test dir="bugs" pr="32428"
  292. title="can't use pointcuts defined in inner aspects ">
  293. <compile files="InnerPointcut.java"/>
  294. <run class="InnerPointcut"/>
  295. </ajc-test>
  296. <ajc-test dir="bugs/interfaceNames" pr="32421"
  297. title="can't resolve nested public interfaces (also PR#32399)">
  298. <compile files="TransactionTest.java,sub/ExecutionMonitor.java,sub/ObserverProtocol.aj"/>
  299. <run class="TransactionTest"/>
  300. </ajc-test>
  301. <ajc-test dir="bugs" pr="34210"
  302. title="thisJoinPoint.getArgs() causes IncompatibleClassChangeError">
  303. <compile files="ThisJoinPointAndVerifier.java"/>
  304. <run class="ThisJoinPointAndVerifier"/>
  305. </ajc-test>
  306. <ajc-test dir="errors" keywords="error"
  307. title="inter-type declaration of void field">
  308. <compile files="VoidFieldDeclarationCE.java">
  309. <message kind="error" line="7"/>
  310. </compile>
  311. </ajc-test>
  312. <ajc-test dir="binding"
  313. title="no such constructor for proceed argument (error)">
  314. <compile files="UnfoundConstructor.java">
  315. <message kind="error" line="25"/>
  316. </compile>
  317. </ajc-test>
  318. <ajc-test dir="new/declare" pr="31724"
  319. title="omnibus declare warning context with no initializer/constructor">
  320. <compile files="DeclareWarningEmpty.java">
  321. <message kind="warning" line="3" text="2 - initialization(DeclareWarningEmpty)"/>
  322. <message kind="warning" line="3" text="1 - staticinitialization(DeclareWarningEmpty)"/>
  323. </compile>
  324. </ajc-test>
  325. <ajc-test dir="new/declare" pr="31724"
  326. title="omnibus declare warning context">
  327. <compile files="DeclareWarning.java">
  328. <message kind="warning" line="3" text="staticinitialization(DeclareWarning)"/>
  329. <message kind="warning" line="12" text="call(DeclareWarning.new())"/>
  330. <message kind="warning" line="13" text="get staticInt"/>
  331. <message kind="warning" line="14" text="get instanceInt"/>
  332. <message kind="warning" line="15" text="set staticInt"/>
  333. <message kind="warning" line="16" text="set instanceInt"/>
  334. <message kind="warning" line="17" text="call(void run())"/>
  335. <message kind="warning" line="18" text="call(void irun())"/>
  336. <message kind="warning" line="21" text="execution(void run())"/>
  337. <message kind="warning" line="22" text="execution(void irun())"/>
  338. <message kind="warning" line="23" text="execution(DeclareWarning.new())"/>
  339. <message kind="warning" line="23" text="initialization(DeclareWarning)"/>
  340. <message kind="warning" line="33" text="handler(OutOfMemoryError) &amp;&amp; within(DeclareWarning)"/>
  341. <message kind="warning" line="36" text="handler(Error)"/>
  342. <message kind="warning" line="39" text="handler(RuntimeException) &amp;&amp; withincode(DeclareWarning.new())"/>
  343. <message kind="warning" line="72" text="adviceExecution() &amp;&amp; within(A)"/>
  344. </compile>
  345. </ajc-test>
  346. <ajc-test dir="bugs" pr="34858"
  347. title="cflow binding issues with ignoring state">
  348. <compile files="CflowBinding.java"/>
  349. <run class="CflowBinding"/>
  350. </ajc-test>
  351. <ajc-test dir="bugs" pr="34858"
  352. title="cflow binding -- original weaver crash">
  353. <compile files="CflowBindingOrig.java"/>
  354. <run class="CflowBindingOrig"/>
  355. </ajc-test>
  356. <ajc-test dir="errors"
  357. title="type not imported in around advice">
  358. <compile files="TypeNotImportedInAroundCE.java">
  359. <message kind="error" line="10"/>
  360. </compile>
  361. </ajc-test>
  362. <ajc-test dir="errors"
  363. title="type not imported in aspect">
  364. <compile files="TypeInAspectNotImportedCE.java">
  365. <message kind="error" line="6"/>
  366. </compile>
  367. </ajc-test>
  368. <ajc-test dir="errors" keywords="error"
  369. title="class extending abstract aspect">
  370. <compile files="ClassExtendingAbstractAspectCE.java">
  371. <message kind="error" line="20"/>
  372. </compile>
  373. </ajc-test>
  374. <ajc-test dir="bugs" pr="34925"
  375. title="declare soft and throw statements">
  376. <compile files="ConvertToUnchecked.java" options="-Xlint:ignore"/>
  377. <run class="ConvertToUnchecked"/>
  378. </ajc-test>
  379. <ajc-test dir="bugs/interAbstract"
  380. title="inter-type declaration bug with abstract classes"
  381. pr="36046">
  382. <compile files="Driver.java"/>
  383. <run class="Driver"/>
  384. </ajc-test>
  385. <ajc-test dir="bugs/interInherit" pr="35725"
  386. title="Inter type declaration to base class not seen by derived class">
  387. <compile files="a_impl/AImpl.java,a_impl/Af.java,a_intf/A.java,b_impl/BImpl.java,b_intf/B.java"/>
  388. <run class="b_impl.BImpl"/>
  389. </ajc-test>
  390. <ajc-test dir="new/declareParents"
  391. title="Declare parents with intermediate ancestor"
  392. keywords="from-new">
  393. <compile files="Driver.java"/>
  394. <run class="Driver"/>
  395. </ajc-test>
  396. <ajc-test dir="new/declareParents"
  397. title="Declare parents removing ancestor"
  398. keywords="from-new">
  399. <compile files="IllegalAdoption.java">
  400. <message kind="error" line="13"/>
  401. </compile>
  402. </ajc-test>
  403. <ajc-test dir="bugs/interSpecials" title="IllegalAccessError while accessing introduced variable / 1.1rc1"
  404. pr="36110">
  405. <compile files="p1/C.java,p2/A1.java"/>
  406. <run class="p2.A1"/>
  407. </ajc-test>
  408. <ajc-test dir="new" pr="36736"
  409. title="implemented abstract pointcut">
  410. <compile files="AbstractImplementedPointcut.java">
  411. <message kind="error" line="14"/>
  412. </compile>
  413. </ajc-test>
  414. <ajc-test dir="new/verifyError" pr="36673"
  415. title="privileged aspect main verify error">
  416. <compile files="Privilege.java"/>
  417. <run class="Privilege"/>
  418. </ajc-test>
  419. <ajc-test dir="bugs" pr="36564"
  420. title="Internal compiler error with thisJoinPoint.getStaticPart()">
  421. <compile files="tjpStaticPart/Test.java,tjpStaticPart/Exceptions.java" options="-Xlint:ignore"/>
  422. <run class="tjpStaticPart.Test"/>
  423. </ajc-test>
  424. <ajc-test dir="bugs" pr="29665"
  425. title="Inconsistant stack height with around">
  426. <compile files="StackError.java" options="-Xlint:ignore"/>
  427. <run class="StackError"/>
  428. </ajc-test>
  429. <ajc-test dir="bugs/messyAround" pr="36056"
  430. title="Ajc 1.1 rc1 java.lang.VerifyError with messy arounds">
  431. <compile files="aspects/Trace.aj,cap/OptionList.java,DebugTrace.aj">
  432. <message kind="warning" line="102"/>
  433. <message kind="warning" line="124"/>
  434. <message kind="warning" line="138"/>
  435. </compile>
  436. <run class="cap.OptionList"/>
  437. </ajc-test>
  438. <ajc-test dir="new"
  439. title="try/finally in around advice (same as ...messy arounds?)">
  440. <compile files="TryFinallyInAround.java"/>
  441. <run class="TryFinallyInAround"/>
  442. </ajc-test>
  443. <ajc-test dir="new" pr="36778"
  444. title="advise join points in subclass of empty interface">
  445. <compile files="EmptyInterface.java"/>
  446. <run class="EmptyInterface"/>
  447. </ajc-test>
  448. <ajc-test dir="new" pr="36778"
  449. title="can't put around advice on interface static initializer"
  450. comment="this tests for a nice message given a compiler limitation">
  451. <compile files="EmptyInterfaceCE.java" options="-1.4">
  452. <message kind="error" line="20"/>
  453. <message kind="error" line="23"/>
  454. </compile>
  455. </ajc-test>
  456. <ajc-test dir="bugs" pr="36803"
  457. title="cflow concretization causing assertion failure">
  458. <compile files="CflowConcrete.java" options="-1.4"/>
  459. <run class="CflowConcrete"/>
  460. </ajc-test>
  461. <ajc-test dir="bugs" title="lame error message: negation doesn't allow binding"
  462. pr="30663">
  463. <compile files="BadBindingError.java">
  464. <message kind="error" line="7"/>
  465. </compile>
  466. </ajc-test>
  467. <ajc-test dir="bugs/interSpecials" pr="36936"
  468. title="Error when introducing members of type Class">
  469. <compile files="Trg.java,Asp.java"/>
  470. <run class="Trg"/>
  471. </ajc-test>
  472. <ajc-test dir="new"
  473. comment="this is a pureJava test, but we always want to run it"
  474. title="arrays via Class.forName()">
  475. <compile files="ClassForName.java"/>
  476. <run class="ClassForName"/>
  477. </ajc-test>
  478. <ajc-test dir="bugs/inlineAround" pr="37152"
  479. title="perthis and inline arounds">
  480. <compile files="aspect1/Base.java,aspect2/Concrete.java,p1/Main.java">
  481. </compile>
  482. <run class="p1.Main"/>
  483. </ajc-test>
  484. <ajc-test dir="bugs" pr="37325"
  485. title="Weaver fails with NPE for very large source files ">
  486. <compile files="LongFile.java"/>
  487. <run class="LongFile"/>
  488. </ajc-test>
  489. <ajc-test dir="harness" keywords="command-line-error"
  490. title="CLE: no sources">
  491. <compile badInput="true">
  492. <message kind="error" text="no sources"/>
  493. </compile>
  494. </ajc-test>
  495. <ajc-test dir="harness"
  496. keywords="command-line-error,knownLimitation-ajctaskCompiler,knownLimitation-ajdeCompiler"
  497. comment="ajde omits usage"
  498. title="CLE: bad filename">
  499. <compile badInput="true" files="NoSuchFile.java">
  500. <message kind="error" text="NoSuchFile.java"/>
  501. </compile>
  502. </ajc-test>
  503. <ajc-test dir="harness" keywords="command-line-error"
  504. comment="XXX test skipped - harness ignores -sourceroot option"
  505. title="CLE: no dir specified for sourceroots">
  506. <compile badInput="true" files="ErrorTest.java"
  507. options="-sourceroots">
  508. <message kind="error" text="no sources specified"/>
  509. <message kind="error" text="bad sourceroot"/>
  510. </compile>
  511. </ajc-test>
  512. <ajc-test dir="harness" keywords="command-line-error,knownLimitation-ajdeCompiler"
  513. comment="ajde has same errors, different wording"
  514. title="CLE: no sourceroot specified for incremental">
  515. <compile badInput="true" options="-incremental">
  516. <message kind="error" text="no sources specified"/>
  517. <message kind="error" text="specify a source root"/>
  518. </compile>
  519. </ajc-test>
  520. <ajc-test dir="harness" keywords="command-line-error,knownLimitation-ajdeCompiler"
  521. comment="ajde has same errors, different wording"
  522. title="CLE: file specified with incremental">
  523. <compile badInput="true" files="ErrorTest.java"
  524. options="-incremental">
  525. <message kind="error" text="incremental mode only handles source files using -sourceroots"/>
  526. <message kind="error" text="no sources specified"/>
  527. <message kind="error" text="specify a source root"/>
  528. </compile>
  529. </ajc-test>
  530. <ajc-test dir="bugs" pr="37304"
  531. title="public static fields being ignored">
  532. <compile files="FinalFields.java"/>
  533. <run class="FinalFields"/>
  534. </ajc-test>
  535. <!-- This doesn't actually reproduce the bug, but no test case has been submitted
  536. that does so this is here as a place-holder and to verify that we're mostly
  537. working.
  538. -->
  539. <ajc-test dir="bugs/accessMethods" pr="38212"
  540. title="can not resolve this member warning">
  541. <compile files="p1/Base.java,p2/Derived.java"/>
  542. <run class="p2.Derived"/>
  543. </ajc-test>
  544. <ajc-test dir="bugs" pr="38345"
  545. title="try switch VerifyError, InconsistentStackHeight">
  546. <compile files="TrySwitch.java"/>
  547. <run class="TrySwitch"/>
  548. </ajc-test>
  549. <ajc-test dir="bugs" pr="39458"
  550. title="Compiler crash in ajc 1.1 - terrible error for inaccessible constructor">
  551. <compile files="NewVoid.java">
  552. <message kind="error" line="17"/>
  553. <message kind="error" line="20"/>
  554. <message kind="error" line="21"/>
  555. <message kind="error" line="28"/>
  556. <message kind="warning" line="29"/>
  557. <message kind="warning" line="30"/>
  558. </compile>
  559. </ajc-test>
  560. <ajc-test dir="bugs" pr="39458"
  561. title="Compiler crash in ajc 1.1 - terrible error for inaccessible constructor - 1.7">
  562. <compile files="NewVoid.java">
  563. <message kind="error" line="17"/>
  564. <message kind="error" line="20"/>
  565. <message kind="error" line="21"/>
  566. <message kind="error" line="28"/>
  567. <message kind="warning" line="29"/>
  568. <message kind="error" line="30"/>
  569. </compile>
  570. </ajc-test>
  571. <ajc-test dir="bugs" pr="39460"
  572. title="Missing import crashes compiler">
  573. <compile files="MissingImport.java">
  574. <message kind="error" line="13" text="InvocationTargetException cannot be resolved to a type"/>
  575. <!-- this error has 'gone' in e37 upgrade <message kind="error" line="14" text="e cannot be resolved"/> -->
  576. </compile>
  577. </ajc-test>
  578. <ajc-test dir="bugs" pr="39479"
  579. title="NPE in bcel.LazyMethodGen when delegating from one ctor to a second that includes a switch">
  580. <compile files="NewSwitch.java"/>
  581. <run class="NewSwitch"/>
  582. </ajc-test>
  583. <ajc-test dir="bugs" pr="40109"
  584. title="switch statement in aspects crashes weaving">
  585. <compile files="SwitchInAround.java"/>
  586. <run class="SwitchInAround"/>
  587. </ajc-test>
  588. <ajc-test dir="bugs" pr="39993"
  589. title="ajc stack trace on declaring hashcode() method in aspect">
  590. <compile files="OverridingInterfaceObjectMethod.java"/>
  591. <run class="OverridingInterfaceObjectMethod"/>
  592. </ajc-test>
  593. <ajc-test dir="bugs"
  594. title="using super in method introduced on interface with multiple supertypes">
  595. <compile files="MultipleSuperCf.java">
  596. <message kind="error" line="14"/>
  597. </compile>
  598. </ajc-test>
  599. <ajc-test dir="bugs/cflowAndJar" pr="39462"
  600. title="Compiler crashes in jar and cflow (with no .jar)">
  601. <compile files="TestAspect.aj,Test.java,AbstractAspect.aj">
  602. <message kind="warning" line="16"/>
  603. </compile>
  604. <run class="Test"/>
  605. </ajc-test>
  606. <ajc-test dir="bugs/cflowAndJar" pr="39462"
  607. title="Compiler crashes in jar and cflow (with .jar)"
  608. comment="make lib.jar with ajc -outjar lib.jar AbstractAspect.aj">
  609. <compile files="TestAspect.aj,Test.java" aspectpath="lib.jar">
  610. <message kind="warning" line="16"/>
  611. </compile>
  612. <run class="Test"/>
  613. </ajc-test>
  614. <ajc-test dir="bugs" pr="40589"
  615. title="Default method impl for interface causes internal exception.">
  616. <compile files="CloneMethod.java"/>
  617. <run class="CloneMethod"/>
  618. </ajc-test>
  619. <ajc-test dir="errors"
  620. title="compile error expected for abstract pointcut outside abstract aspect">
  621. <compile files="AbstractPointcutCE.java">
  622. <message kind="error" line="4" text="The type C must be an abstract class to define abstract methods"/>
  623. <message kind="error" line="5"/>
  624. <message kind="error" line="10"/>
  625. </compile>
  626. </ajc-test>
  627. <ajc-test dir="bugs"
  628. pr="40876"
  629. title="subtype-qualified pointcut reference">
  630. <compile files="PointcutLibraryTest.java"/>
  631. <run class="PointcutLibraryTest"/>
  632. </ajc-test>
  633. <ajc-test dir="bugs"
  634. pr="40858"
  635. comment="super is not permitted in pointcuts in 1.1"
  636. title="weaver trace on mis-qualified pointcut reference">
  637. <compile files="SuperPointcutCE.java">
  638. <message kind="error" line="23"/>
  639. <message kind="error" line="26"/>
  640. </compile>
  641. </ajc-test>
  642. <ajc-test dir="bugs"
  643. pr="40814"
  644. title="compile error expected for interface pointcuts">
  645. <compile files="AbstractPointcutCE.java">
  646. <message kind="error" line="14" text="The type Concrete must be an abstract class to define abstract methods"/>
  647. <message kind="error" line="7"/>
  648. <message kind="error" line="11"/>
  649. <message kind="error" line="15"/>
  650. </compile>
  651. </ajc-test>
  652. <ajc-test dir="bugs"
  653. pr="40805"
  654. title="interface call signatures when declaring method in aspect">
  655. <compile files="DeclareWarningAndInterfaceMethodCW.java">
  656. <message kind="warning" line="27" text="call getSomething"/>
  657. <message kind="warning" line="27" text="call ICanGetSomething.getSomething"/>
  658. <message kind="warning" line="31" text="call getSomething"/>
  659. <message kind="warning" line="31" text="call ICanGetSomething.getSomething"/>
  660. <message kind="warning" line="33" text="call getSomething"/>
  661. <message kind="warning" line="33" text="call ICanGetSomething.getSomething"/>
  662. <message kind="warning" line="35" text="call getSomething"/>
  663. <message kind="warning" line="35" text="call ICanGetSomething.getSomething"/>
  664. <message kind="warning" line="38" text="call getSomething"/>
  665. <message kind="warning" line="38" text="call ICanGetSomething.getSomething"/>
  666. </compile>
  667. </ajc-test>
  668. <ajc-test dir="bugs"
  669. pr="41175"
  670. title="reflective check of declared exceptions from aspect-declared methods">
  671. <compile files="DeclaredExceptions.java"/>
  672. <run class="DeclaredExceptions"/>
  673. </ajc-test>
  674. <ajc-test dir="bugs/throwsSignature"
  675. pr="42539"
  676. title="throw derivative pointcuts not advised">
  677. <compile files="ExceptionBugTest.java,ExceptionAspect.java">
  678. <message line="5" kind="warning" text="throws both"/>
  679. <message line="5" kind="error" text="throws Exception"/>
  680. <message line="7" kind="warning" text="throws both"/>
  681. </compile>
  682. </ajc-test>
  683. <ajc-test dir="bugs" pr="42652"
  684. title="perthis and signature bad interaction">
  685. <compile files="InterPerCall.java" options="-1.4"/>
  686. <run class="InterPerCall"/>
  687. </ajc-test>
  688. <ajc-test dir="bugs/declareBinding"
  689. pr="42740"
  690. title="declare error fails on pointcuts composed from multiple classes">
  691. <compile files="SampleExceptionHandling1.java">
  692. <message line="2" kind="error" text="no checked exceptions"/>
  693. </compile>
  694. </ajc-test>
  695. <ajc-test dir="bugs/declareSoftWithin"
  696. pr="42740"
  697. title="declare error fails on pointcuts composed from multiple classes">
  698. <compile files="aspects/Softener.aj,test/NoSoftener.java"/>
  699. <run class="test.NoSoftener"/>
  700. </ajc-test>
  701. <ajc-test dir="bugs" pr="42993"
  702. title="Interaction between pointcut binding and declare parents">
  703. <compile files="ParentsAndPointcuts.java"/>
  704. <run class="ParentsAndPointcuts"/>
  705. </ajc-test>
  706. <ajc-test dir="bugs" pr="43194"
  707. title="Non-functional concretezation of ReferencePointcut">
  708. <compile files="AdviceInteraction.java"/>
  709. <run class="AdviceInteraction"/>
  710. </ajc-test>
  711. <ajc-test dir="bugs/extdirs"
  712. pr="42574"
  713. title="zip and jar suffixes for extdirs entries">
  714. <compile files="extdirs-src/main/Main.java"
  715. extdirs="lib/lowercase"/>
  716. </ajc-test>
  717. </suite>