Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

ajcTests.xml 197KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569
  1. <!DOCTYPE suite SYSTEM "../tests/ajcTestSuite.dtd">
  2. <!--
  3. known keywords:
  4. knownLimitation Accepted limitation of current implementation (fails)
  5. purejava Sources compile under javac as well
  6. broken-test ??
  7. messages-vary one of many (usually two) test specs that differ only in
  8. messages expected by the different compilers.
  9. Currently ajc 1.0 tests are in ajcTests10.xml,
  10. so there may only be one copy marked "messages-vary" here.
  11. new-messages-vary like messages-vary, except need to make ajcTest10 variant
  12. fail-{...} test fails in some configuration
  13. fail-unimplmented eajc throwing "unimplemented" exception
  14. fail-commandLine fails in ajc on command line (move to ajcTestsBroken.xml)
  15. fail-in-eclipse fail when harness in run from inside eclipse
  16. fail-publicType now fixed - no longer presenting error for public type in wrong file
  17. from-{file} from original {file}.txt for file in
  18. java, bigjava, resolved_1*, 14tests, errors, design, base...
  19. -->
  20. <suite>
  21. <ajc-test dir="base/test100"
  22. title="static and non-static before methods -- one file"
  23. keywords="from-base">
  24. <compile files="Driver.java"/>
  25. <run class="Driver"/>
  26. </ajc-test>
  27. <ajc-test dir="base/test101"
  28. title="static and non-static before methods -- many files"
  29. keywords="from-base">
  30. <compile files="Driver.java,Foo.java,Bar.java,Pos.java"/>
  31. <run class="Driver"/>
  32. </ajc-test>
  33. <ajc-test dir="base/test102"
  34. title="this redirection in non-static before methods" keywords="from-base">
  35. <compile files="Driver.java"/>
  36. <run class="Driver"/>
  37. </ajc-test>
  38. <ajc-test dir="base/test103" title="DEPRECATED: introductions"
  39. keywords="from-base">
  40. <compile files="Driver.java"/>
  41. <run class="Driver"/>
  42. </ajc-test>
  43. <ajc-test dir="base/test104" title="before constructors -- one file"
  44. keywords="from-base">
  45. <compile files="Driver.java"/>
  46. <run class="Driver"/>
  47. </ajc-test>
  48. <ajc-test dir="base/test105"
  49. title="advise weaves find methods typed to builtins or non-woven classes"
  50. keywords="from-base">
  51. <compile files="Driver.java"/>
  52. <run class="Driver"/>
  53. </ajc-test>
  54. <ajc-test dir="base/test106"
  55. title="make sure new weaves work inside of packages" keywords="from-base">
  56. <compile files="Driver.java,pkg/Obj.java"/>
  57. <run class="Driver"/>
  58. </ajc-test>
  59. <ajc-test dir="base/test107"
  60. title="make sure new weaves work inside of packages (again)"
  61. keywords="from-base">
  62. <compile
  63. files="Driver.java,C1.java,C2.java,pack1/Foo.java,pack2/Foo.java,pack3/Foo.java"/>
  64. <run class="Driver"/>
  65. </ajc-test>
  66. <ajc-test dir="base/test108"
  67. title="Inheritance of class and aspect vars in weaves"
  68. keywords="from-base">
  69. <compile files="Driver.java"/>
  70. <run class="Driver"/>
  71. </ajc-test>
  72. <ajc-test dir="base/test109"
  73. title="Accessibility of class and aspect members from inside weaves"
  74. keywords="from-base">
  75. <compile files="Driver.java,Aspect.java,Foo.java"/>
  76. <run class="Driver"/>
  77. </ajc-test>
  78. <ajc-test dir="base/test110"
  79. title="Packaged aspects referring to packaged classes"
  80. keywords="from-base">
  81. <compile files="Driver.java,pAspect/Aspect.java,pClass/Class.java"/>
  82. <run class="Driver"/>
  83. </ajc-test>
  84. <ajc-test dir="base/test111"
  85. title="Inheritance of methods advised by aspects" keywords="from-base">
  86. <compile
  87. files="Driver.java,SubClass.java,SuperClass.java,SuperAspect.java"/>
  88. <run class="Driver"/>
  89. </ajc-test>
  90. <ajc-test dir="base/test112" title="Inherited weaves on constructor"
  91. keywords="from-base">
  92. <compile files="Driver.java"/>
  93. <run class="Driver"/>
  94. </ajc-test>
  95. <ajc-test dir="base/test113" title="Initializers in Aspect and Class Bodies"
  96. keywords="from-base">
  97. <compile files="Driver.java"/>
  98. <run class="Driver"/>
  99. </ajc-test>
  100. <ajc-test dir="base/test114"
  101. title="Weaver Resolution of method names in method calls passed as args"
  102. keywords="from-base">
  103. <compile files="Driver.java"/>
  104. <run class="Driver"/>
  105. </ajc-test>
  106. <ajc-test dir="base/test115"
  107. title="DEPRECATED: Introduce constructor with class inheritance"
  108. keywords="from-base">
  109. <compile files="Driver.java"/>
  110. <run class="Driver"/>
  111. </ajc-test>
  112. <ajc-test dir="base/test116"
  113. title="empty and singular patterns on modifiers and throws"
  114. keywords="from-base">
  115. <compile files="Driver.java"/>
  116. <run class="Driver"/>
  117. </ajc-test>
  118. <!-- we're not implementing static inter-type fields on interfaces in 1.1 -->
  119. <ajc-test dir="base/test117" title="DEPRECATED: introduce of variables"
  120. keywords="from-base,knownLimitation">
  121. <compile files="Driver.java"/>
  122. <run class="Driver"/>
  123. </ajc-test>
  124. <ajc-test dir="base/test118" title="DEPRECATED: Introduce of constructors"
  125. keywords="from-base">
  126. <compile files="Driver.java"/>
  127. <run class="Driver"/>
  128. </ajc-test>
  129. <ajc-test dir="base/test119" title="Local declarations in advise bodies"
  130. keywords="from-base">
  131. <compile files="Driver.java"/>
  132. <run class="Driver"/>
  133. </ajc-test>
  134. <ajc-test dir="base/test120" title="unicodes and literals"
  135. keywords="from-base,purejava">
  136. <compile files="Driver.java"/>
  137. <run class="Driver"/>
  138. </ajc-test>
  139. <ajc-test dir="base/test121"
  140. title="advises on introduced methods and constructors"
  141. keywords="from-base">
  142. <compile files="Driver.java"/>
  143. <run class="Driver"/>
  144. </ajc-test>
  145. <ajc-test dir="base/test122"
  146. title="DEPRECATED: Method introduction into interface implemented by abstract class"
  147. keywords="from-base">
  148. <compile files="Driver.java"/>
  149. <run class="Driver"/>
  150. </ajc-test>
  151. <ajc-test dir="base/test123" title="Crossing super calls in constructors"
  152. keywords="from-base">
  153. <compile files="Driver.java"/>
  154. <run class="Driver"/>
  155. </ajc-test>
  156. <ajc-test dir="base/test124" title="empty modifier pattern"
  157. keywords="from-base">
  158. <compile files="Driver.java"/>
  159. <run class="Driver"/>
  160. </ajc-test>
  161. <ajc-test dir="base/test125"
  162. title="Alpha conversion of argument names in designators"
  163. keywords="from-base">
  164. <compile files="Driver.java"/>
  165. <run class="Driver"/>
  166. </ajc-test>
  167. <ajc-test dir="base/test126" title="For Statement"
  168. keywords="from-base,purejava">
  169. <compile files="Driver.java"/>
  170. <run class="Driver"/>
  171. </ajc-test>
  172. <ajc-test dir="base/test127"
  173. title="advice uses its own formals to get actuals" keywords="from-base">
  174. <compile files="Driver.java"/>
  175. <run class="Driver"/>
  176. </ajc-test>
  177. <ajc-test dir="base/test128"
  178. title="DEPRECATED: introduce weaves can use this" keywords="from-base">
  179. <compile files="Driver.java"/>
  180. <run class="Driver"/>
  181. </ajc-test>
  182. <ajc-test dir="base/test129"
  183. title="DEPRECATED: introduce of abstract methods works"
  184. keywords="from-base">
  185. <compile files="Driver.java"/>
  186. <run class="Driver"/>
  187. </ajc-test>
  188. <ajc-test dir="base/test130"
  189. title="multiple arounds successfully intercept and return own values"
  190. keywords="from-base">
  191. <compile files="Driver.java"/>
  192. <run class="Driver"/>
  193. </ajc-test>
  194. <ajc-test dir="base/test132"
  195. title="proper matching of overloaded constructors" keywords="from-base">
  196. <compile files="Driver.java"/>
  197. <run class="Driver"/>
  198. </ajc-test>
  199. <ajc-test dir="base/test133"
  200. title="correct super call lookup for method().name()"
  201. keywords="from-base,purejava">
  202. <compile files="Driver.java"/>
  203. <run class="Driver"/>
  204. </ajc-test>
  205. <ajc-test dir="base/test134"
  206. title="proper handling of formals in catch advice" keywords="from-base">
  207. <compile files="Driver.java"/>
  208. <run class="Driver"/>
  209. </ajc-test>
  210. <ajc-test dir="base/test135"
  211. title="proper values for thisJoinPoint attributes" keywords="from-base">
  212. <compile
  213. files="Driver.java,JoinPointFields.java,TopFoo.java,pack/PackFoo.java,pack/JoinPointFields.java,pack/PackJoinPointFields.java"/>
  214. <run class="test135.Driver"/>
  215. </ajc-test>
  216. <ajc-test dir="base/test136" title="supers, supers, supers"
  217. keywords="from-base">
  218. <compile files="Driver.java"/>
  219. <run class="Driver"/>
  220. </ajc-test>
  221. <ajc-test dir="base/test137"
  222. title="operations on private and protected aspect members (++, -- in partciular)"
  223. keywords="from-base">
  224. <compile files="Driver.java"/>
  225. <run class="Driver"/>
  226. </ajc-test>
  227. <ajc-test dir="base/test138" title="only register things once"
  228. keywords="from-base">
  229. <compile files="Driver.java"/>
  230. <run class="Driver"/>
  231. </ajc-test>
  232. <ajc-test dir="base/test139" title="inner aspects and around"
  233. keywords="from-base">
  234. <compile files="Driver.java"/>
  235. <run class="Driver"/>
  236. </ajc-test>
  237. <ajc-test dir="base/test140"
  238. title="aspect inheritance and advice, introduction" keywords="from-base">
  239. <compile files="Driver.java"/>
  240. <run class="Driver"/>
  241. </ajc-test>
  242. <ajc-test dir="base/test141" title="thisResultObject for primitives"
  243. keywords="from-base">
  244. <compile files="Driver.java"/>
  245. <run class="Driver"/>
  246. </ajc-test>
  247. <ajc-test dir="base/test142" title="introductions calling super."
  248. keywords="from-base">
  249. <compile files="Driver.java"/>
  250. <run class="Driver"/>
  251. </ajc-test>
  252. <ajc-test dir="base" pr="384"
  253. title="allow one argument calls even when there's a comma in the arglist"
  254. keywords="from-base">
  255. <compile files="OneArgCallsIsOkay.java"/>
  256. <run class="OneArgCallsIsOkay"/>
  257. </ajc-test>
  258. <ajc-test dir="new"
  259. title="advice on calls to static methods even works when called on super"
  260. keywords="from-base">
  261. <compile files="SuperStaticCallJoinPoint.java"/>
  262. <run class="SuperStaticCallJoinPoint"/>
  263. </ajc-test>
  264. <ajc-test dir="new" pr="99"
  265. title="combined logic expression (handling coericions vs. parens)"
  266. keywords="from-java,purejava">
  267. <compile files="CombinedLogic.java"/>
  268. <run class="CombinedLogic"/>
  269. </ajc-test>
  270. <ajc-test dir="new" pr="99"
  271. title="comment after class closes (with no new line at end)"
  272. keywords="from-java,purejava">
  273. <compile files="CommentAfterClass.java"/>
  274. <run class="CommentAfterClass"/>
  275. </ajc-test>
  276. <ajc-test dir="new" title="handle multiple nested inner classes"
  277. keywords="from-java">
  278. <compile files="InnerHell.java"/>
  279. <run class="InnerHell"/>
  280. </ajc-test>
  281. <ajc-test dir="new" pr="108" title="multi-dimensional array initializers"
  282. keywords="from-java,purejava">
  283. <compile files="MultiArrays.java"/>
  284. <run class="MultiArrays"/>
  285. </ajc-test>
  286. <ajc-test dir="new" pr="125"
  287. title="probelm with the generated names of exceptions"
  288. keywords="from-java,purejava">
  289. <compile files="ExceptionNames.java"/>
  290. <run class="ExceptionNames"/>
  291. </ajc-test>
  292. <ajc-test dir="new" pr="109"
  293. title="checks if the class field can be used on all of the primitive types"
  294. keywords="from-java,purejava">
  295. <compile files="ClassFieldOnPrimitiveType.java"/>
  296. <run class="ClassFieldOnPrimitiveType"/>
  297. </ajc-test>
  298. <ajc-test dir="new/volatileKeyword" pr="151"
  299. title="advice on a static method" keywords="from-java">
  300. <compile files="Driver.java"/>
  301. <run class="Driver"/>
  302. </ajc-test>
  303. <ajc-test dir="new/innerConsSyntax" pr="192"
  304. title="inner constructor syntax causes compile error" keywords="from-java">
  305. <compile files="Driver.java"/>
  306. <run class="Driver"/>
  307. </ajc-test>
  308. <ajc-test dir="new/paramWidening" pr="195"
  309. title="widening of method parameters to match javac" keywords="from-java">
  310. <compile files="Driver.java"/>
  311. <run class="Driver"/>
  312. </ajc-test>
  313. <ajc-test dir="pureJava/equalsMethOnStr" pr="214"
  314. title="equals method on quoted strings" keywords="from-java">
  315. <compile files="Driver.java"/>
  316. <run class="Driver"/>
  317. </ajc-test>
  318. <ajc-test dir="new" pr="313"
  319. title="parenthesized string literals matching primitive type names"
  320. keywords="from-java">
  321. <compile files="ParenPrimitive.java"/>
  322. <run class="ParenPrimitive"/>
  323. </ajc-test>
  324. <ajc-test dir="pureJava/anonInnerClass" pr="294"
  325. title="anonymous inner class" keywords="from-java">
  326. <compile files="Driver.java"/>
  327. <run class="Driver"/>
  328. </ajc-test>
  329. <ajc-test dir="new" title="simple type coercions tests" keywords="from-java">
  330. <compile files="TypeCoercions.java"/>
  331. <run class="TypeCoercions"/>
  332. </ajc-test>
  333. <ajc-test dir="new" title="order of type declarations shouldn't matter"
  334. keywords="from-java">
  335. <compile files="OrderOfTypes.java"/>
  336. <run class="OrderOfTypes"/>
  337. </ajc-test>
  338. <ajc-test dir="pureJava"
  339. title="parsing of parenthesized 'this' (in returns)" keywords="from-java">
  340. <compile files="ReturnThis.java"/>
  341. <run class="ReturnThis"/>
  342. </ajc-test>
  343. <ajc-test dir="new" title="Scanner non recognizing strictfp."
  344. keywords="from-java">
  345. <compile files="StrictFp.java"/>
  346. <run class="StrictFp"/>
  347. </ajc-test>
  348. <ajc-test dir="pureJava" title="Strings are folded and interned correctly"
  349. keywords="from-java">
  350. <compile files="StringFold.java"/>
  351. <run class="StringFold"/>
  352. </ajc-test>
  353. <ajc-test dir="pureJava" title="Cast binds tighter than equality tests"
  354. keywords="from-java">
  355. <compile files="CastAndBinary.java"/>
  356. <run class="CastAndBinary"/>
  357. </ajc-test>
  358. <ajc-test dir="pureJava" title="Boundary base values can be parsed"
  359. keywords="from-java">
  360. <compile files="BoundaryNums.java"/>
  361. <run class="BoundaryNums"/>
  362. </ajc-test>
  363. <ajc-test dir="pureJava"
  364. title="State is passed correctly across nested annonymous inners"
  365. keywords="from-java">
  366. <compile files="NestedInners.java"/>
  367. <run class="NestedInners"/>
  368. </ajc-test>
  369. <ajc-test dir="pureJava"
  370. title="?: expressions should typecheck in interesting ways"
  371. keywords="from-java">
  372. <compile files="TriTestTypecheck.java"/>
  373. <run class="TriTestTypecheck"/>
  374. </ajc-test>
  375. <ajc-test dir="pureJava"
  376. title="cast expressions should allow casts to/from interfaces at compile-time."
  377. keywords="from-java">
  378. <compile files="InterfaceCast.java"/>
  379. <run class="InterfaceCast"/>
  380. </ajc-test>
  381. <ajc-test dir="pureJava"
  382. title="various anonymous inner classes plus super types tests"
  383. keywords="from-java">
  384. <compile files="InnerSuper.java"/>
  385. <run class="InnerSuper"/>
  386. </ajc-test>
  387. <ajc-test dir="new"
  388. title="Doesn't parse an array-returning method that throws an exception"
  389. keywords="from-java,purejava">
  390. <compile files="ArrayMethod.java"/>
  391. <run class="ArrayMethod"/>
  392. </ajc-test>
  393. <ajc-test dir="new"
  394. title="Crashes when a lot of zeros are in front of a double variable [!!! purejava]"
  395. keywords="from-java">
  396. <compile files="Zeros.java"/>
  397. <run class="Zeros"/>
  398. </ajc-test>
  399. <ajc-test dir="pureJava" title="Various comment syntaxes should be handled."
  400. keywords="from-java">
  401. <compile files="CommentSyntax.java"/>
  402. <run class="CommentSyntax"/>
  403. </ajc-test>
  404. <ajc-test dir="pureJava/abstractInner"
  405. title="Abstract inner classes across package boundaries"
  406. keywords="from-java">
  407. <compile files="C.java,pkg/A.java"/>
  408. <run class="C"/>
  409. </ajc-test>
  410. <ajc-test dir="pureJava"
  411. title="inner classes accessing outers and some more inner class names"
  412. keywords="from-java">
  413. <compile files="InnerAccess.java"/>
  414. <run class="InnerAccess"/>
  415. </ajc-test>
  416. <ajc-test dir="pureJava"
  417. title="remember to cast folded values down to the proper types."
  418. keywords="from-java">
  419. <compile files="CastingFoldedValues.java"/>
  420. <run class="CastingFoldedValues"/>
  421. </ajc-test>
  422. <ajc-test dir="pureJava"
  423. title="inner classes can be built using protected constructors in super"
  424. keywords="from-java">
  425. <compile files="VariousConstructors.java"/>
  426. <run class="VariousConstructors"/>
  427. </ajc-test>
  428. <ajc-test dir="pureJava"
  429. title="check that nested constructions of local classes work"
  430. keywords="from-java,purejava">
  431. <compile files="NestedConstructionsOfLocalClasses.java"/>
  432. <run class="NestedConstructionsOfLocalClasses"/>
  433. </ajc-test>
  434. <ajc-test dir="pureJava"
  435. title="Make sure anonymous classes can have non-nullary constructors"
  436. keywords="from-java,purejava">
  437. <compile files="NonNullaryAnonymous.java"/>
  438. <run class="NonNullaryAnonymous"/>
  439. </ajc-test>
  440. <ajc-test dir="new" pr="417"
  441. title="Full names are dropped from inner interfaces"
  442. keywords="from-java,purejava">
  443. <compile files="PR417a.java"/>
  444. <run class="PR417a"/>
  445. </ajc-test>
  446. <ajc-test dir="new" pr="417"
  447. title="Making sure full names stay on static inner classes"
  448. keywords="from-java,purejava">
  449. <compile files="PR417b.java"/>
  450. <run class="PR417b"/>
  451. </ajc-test>
  452. <ajc-test dir="pureJava" pr="401"
  453. title="The current AspectJ compiler cannot parse qualified superclass constructor invocations"
  454. keywords="from-java">
  455. <compile files="QualifiedSuperClassConstructorInvocations_PR401.java"/>
  456. <run class="QualifiedSuperClassConstructorInvocations_PR401"/>
  457. </ajc-test>
  458. <ajc-test dir="pureJava" pr="421"
  459. title="More thourough test of static members using full names"
  460. keywords="from-java">
  461. <compile
  462. files="Statics.java,StaticMembers_PR421.java,p1/C1.java,p1/P1Statics.java,p1/subp1/SubC1.java,p1/p2/P1P2Statics.java"/>
  463. <run class="StaticMembers_PR421"/>
  464. </ajc-test>
  465. <ajc-test dir="pureJava" pr="421"
  466. title="More thourough test of static members using imports"
  467. keywords="from-java">
  468. <compile
  469. files="Statics.java,StaticMembersImports_PR421.java,p1/C1.java,p1/P1Statics.java,p1/subp1/SubC1.java,p1/p2/P1P2Statics.java"/>
  470. <run class="StaticMembersImports_PR421"/>
  471. </ajc-test>
  472. <ajc-test dir="pureJava/conflictingPackageNames" pr="437"
  473. title="Looking in class Java for java.lang.String WITH separate compilation"
  474. keywords="from-java">
  475. <compile files="Java.java"/>
  476. <compile files="Main.java"/>
  477. <run class="Main"/>
  478. </ajc-test>
  479. <ajc-test dir="pureJava/conflictingPackageNames" pr="437"
  480. title="Looking in class Java for java.lang.String WITHOUT separate compilation"
  481. keywords="from-java">
  482. <compile files="Main.java,Java.java"/>
  483. <run class="Main"/>
  484. </ajc-test>
  485. <ajc-test dir="pureJava/conflictingPackageNamesWithPackages" pr="437"
  486. title="Looking in class Java for java.lang.String WITH separate compilation with packages"
  487. keywords="from-java">
  488. <compile files="Java.java"/>
  489. <compile files="Main.java"/>
  490. <run class="conflictingPackageNamesWithPackages.Main"/>
  491. </ajc-test>
  492. <ajc-test dir="pureJava/conflictingPackageNamesWithPackages" pr="437"
  493. title="Looking in class Java for java.lang.String WITHOUT separate compilation with packages"
  494. keywords="from-java">
  495. <compile files="Main.java,Java.java"/>
  496. <run class="conflictingPackageNamesWithPackages.Main"/>
  497. </ajc-test>
  498. <ajc-test dir="pureJava" title="Testing ternary operations."
  499. keywords="from-java">
  500. <compile files="MultiTernaryOps.java"/>
  501. <run class="MultiTernaryOps"/>
  502. </ajc-test>
  503. <ajc-test dir="pureJava" title="Lifting locals in switch statements."
  504. keywords="from-java">
  505. <compile files="SwitchStmtLocals.java"/>
  506. <run class="SwitchStmtLocals"/>
  507. </ajc-test>
  508. <ajc-test dir="pureJava"
  509. title="Getting confused when looking up method signatures"
  510. keywords="from-java">
  511. <compile files="MethodSigs.java"/>
  512. <run class="MethodSigs"/>
  513. </ajc-test>
  514. <ajc-test dir="pureJava"
  515. title="Not recognizing the chars '\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7'"
  516. keywords="from-java">
  517. <compile files="Chars.java"/>
  518. <run class="Chars"/>
  519. </ajc-test>
  520. <ajc-test dir="pureJava"
  521. title="Test chars '\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7' with a case statement"
  522. keywords="from-java">
  523. <compile files="CaseClauses.java"/>
  524. <run class="CaseClauses"/>
  525. </ajc-test>
  526. <ajc-test dir="pureJava"
  527. title="Checking character values with all the unicode chars."
  528. keywords="from-java">
  529. <compile files="CharsUnicode.java"/>
  530. <run class="CharsUnicode"/>
  531. </ajc-test>
  532. <ajc-test dir="pureJava"
  533. title="Trouble finding methods with the same name and different parameter types"
  534. keywords="from-java">
  535. <compile files="MethodsWithTheSameName.java"/>
  536. <run class="MethodsWithTheSameName"/>
  537. </ajc-test>
  538. <ajc-test dir="pureJava"
  539. title="Binding non-public static inner classes of interfaces in other packages"
  540. keywords="from-java">
  541. <compile
  542. files="StaticClassesInInterfaces.java,anotherPackage/AnotherPackageInterface.java"/>
  543. <run class="StaticClassesInInterfaces"/>
  544. </ajc-test>
  545. <ajc-test dir="pureJava"
  546. title="Not recognizing the octal chars '\0', '\1', '\2', '\3', '\4', '\5', '\6', '\7'"
  547. keywords="from-java">
  548. <compile files="OctalChars.java"/>
  549. <run class="OctalChars"/>
  550. </ajc-test>
  551. <ajc-test dir="pureJava"
  552. title="Members with the same name as their package cause confusion with fully-qualified names."
  553. keywords="from-java">
  554. <compile files="samenames/Main.java,samenames/Other.java"/>
  555. <run class="samenames.Main"/>
  556. </ajc-test>
  557. <ajc-test dir="pureJava"
  558. title="Fully-qual'ed names with same start as variable names"
  559. keywords="from-java">
  560. <compile files="FullNames.java"/>
  561. <run class="FullNames"/>
  562. </ajc-test>
  563. <ajc-test dir="pureJava"
  564. title="Fully qualifying inner classes within annonymous classes causes problems."
  565. keywords="from-java">
  566. <compile files="InnerClassesInAnnonymousClasses.java"/>
  567. <run class="InnerClassesInAnnonymousClasses"/>
  568. </ajc-test>
  569. <ajc-test dir="pureJava"
  570. title="Calls to methods in outer annonymous classes are being qual's incorrectly with 'this'"
  571. keywords="from-java">
  572. <compile files="MisplacedThisInAnnonymousInnerClasses.java"/>
  573. <run class="MisplacedThisInAnnonymousInnerClasses"/>
  574. </ajc-test>
  575. <ajc-test dir="pureJava/innersFromSourceAndBytecode"
  576. title="Reading inner classes from source and bytecode (1) -- was failing"
  577. keywords="from-java">
  578. <compile files="C.java,D.java"/>
  579. <compile files="Main.java,C.java"/>
  580. <run class="Main"/>
  581. </ajc-test>
  582. <ajc-test dir="pureJava/innersFromSourceAndBytecode"
  583. title="Reading inner classes from source and bytecode (2)"
  584. keywords="from-java">
  585. <compile files="Main.java,C.java,D.java"/>
  586. <run class="Main"/>
  587. </ajc-test>
  588. <ajc-test dir="pureJava/innersFromSourceAndBytecode"
  589. title="Reading inner classes from source and bytecode (3)"
  590. keywords="from-java">
  591. <compile files="C.java,D.java"/>
  592. <compile files="Main.java,C.java,D.java"/>
  593. <run class="Main"/>
  594. </ajc-test>
  595. <ajc-test dir="pureJava"
  596. title="Not lifting types correctly with bytes and shorts with ternary ops"
  597. keywords="from-java">
  598. <compile files="TernaryPrimitiveOps.java"/>
  599. <run class="TernaryPrimitiveOps"/>
  600. </ajc-test>
  601. <ajc-test dir="pureJava"
  602. title="Not looking up methods inside of anonymous declarations correctly."
  603. keywords="from-java">
  604. <compile files="AnonymousMethodLookup.java"/>
  605. <run class="AnonymousMethodLookup"/>
  606. </ajc-test>
  607. <ajc-test dir="pureJava"
  608. title="Resolving extended classes with array parameters"
  609. keywords="from-java">
  610. <compile files="ResolvingArrayParameters.java"/>
  611. <run class="ResolvingArrayParameters"/>
  612. </ajc-test>
  613. <ajc-test dir="pureJava"
  614. title="Assignments as second arguments in ternary operators."
  615. keywords="from-java">
  616. <compile files="TernaryAssignments.java"/>
  617. <run class="TernaryAssignments"/>
  618. </ajc-test>
  619. <ajc-test dir="pureJava" title="Using 'aspect' as identifier is legal TODO"
  620. keywords="from-java,purejava">
  621. <compile files="KeywordAspect.java"/>
  622. <run class="KeywordAspect"/>
  623. </ajc-test>
  624. <ajc-test dir="pureJava"
  625. title="Using 'pointcut' as identifier is legal TODO"
  626. keywords="from-java,purejava">
  627. <compile files="KeywordPointcut.java"/>
  628. <run class="KeywordPointcut"/>
  629. </ajc-test>
  630. <ajc-test dir="pureJava" title="Conflicting inner classes with interfaces."
  631. keywords="from-java">
  632. <compile files="PR413.java"/>
  633. <run class="PR413"/>
  634. </ajc-test>
  635. <ajc-test dir="new" pr="408"
  636. title="Not binding constructor when using more than one compilation"
  637. keywords="from-java,purejava">
  638. <compile files="OuterAbstract_PR408.java"/>
  639. <compile files="ExtendsOuterAbstract_PR408.java"/>
  640. <compile files="ConstructorNotFound_PR408.java"/>
  641. <run class="ConstructorNotFound_PR408"/>
  642. </ajc-test>
  643. <ajc-test dir="pureJava" title="confusions of casts and parens"
  644. keywords="from-java">
  645. <compile files="CastVsParen.java"/>
  646. <run class="CastVsParen"/>
  647. </ajc-test>
  648. <ajc-test dir="pureJava"
  649. title="default constructors seen by inner classes subtyping outers"
  650. keywords="from-java">
  651. <compile files="DefaultConsAndInner.java"/>
  652. <run class="DefaultConsAndInner"/>
  653. </ajc-test>
  654. <ajc-test dir="pureJava"
  655. title="folding fields set to anonymous instances containing self-references"
  656. keywords="from-java">
  657. <compile files="AnonFolding.java"/>
  658. <run class="AnonFolding"/>
  659. </ajc-test>
  660. <ajc-test dir="pureJava"
  661. title="finally at the end of a method that needs to return"
  662. keywords="from-java">
  663. <compile files="FinallyAndReturns.java"/>
  664. <run class="FinallyAndReturns"/>
  665. </ajc-test>
  666. <ajc-test dir="pureJava" title="return;;; is not really legal"
  667. keywords="from-java,purejava">
  668. <compile files="ReachableEmpty.java">
  669. <message kind="error" line="5"/>
  670. <message kind="error" line="9"/>
  671. <message kind="error" line="13"/>
  672. <message kind="error" line="17"/>
  673. </compile>
  674. </ajc-test>
  675. <ajc-test dir="new"
  676. title="ajc treating Throwable as checked, issuing error if not found"
  677. keywords="from-java,purejava">
  678. <compile files="FalseThrowsCE.java"/>
  679. <run class="FalseThrowsCE"/>
  680. </ajc-test>
  681. <ajc-test dir="pureJava"
  682. title="overriding methods from object in interfaces and multiple-inheritance"
  683. keywords="from-java">
  684. <compile files="InterfaceAndObject.java"/>
  685. <run class="InterfaceAndObject"/>
  686. </ajc-test>
  687. <ajc-test dir="pureJava"
  688. title="private fields in an outer class accessed by an inner which also extends the outer"
  689. keywords="from-java">
  690. <compile files="PrivateFields.java"/>
  691. <run class="PrivateFields"/>
  692. </ajc-test>
  693. <ajc-test dir="pureJava"
  694. title="breaking out of a labeled block inside of an if"
  695. keywords="from-java">
  696. <compile files="Breaks.java"/>
  697. <run class="Breaks"/>
  698. </ajc-test>
  699. <ajc-test dir="pureJava"
  700. title="abstractifying a method and getting it back through super"
  701. keywords="from-java">
  702. <compile files="Abstracts.java"/>
  703. <run class="Abstracts"/>
  704. </ajc-test>
  705. <ajc-test dir="new" pr="328"
  706. title="package protected classes becoming public"
  707. keywords="from-java,purejava">
  708. <compile files="PR328.java"/>
  709. <run class="PR328"/>
  710. </ajc-test>
  711. <ajc-test dir="pureJava"
  712. title="Packages and static classes with the same name produce compile errors."
  713. keywords="from-java">
  714. <compile files="PackagesAndStaticClassesWithTheSameName.java"/>
  715. <run class="PackagesAndStaticClassesWithTheSameName"/>
  716. </ajc-test>
  717. <ajc-test dir="pureJava/innerTypeModifiers"
  718. title="Inner types must generate classfiles with only Public/Default access flags."
  719. keywords="from-java">
  720. <compile files="pkg1/Main.java,pkg2/Foo.java"/>
  721. <run class="pkg1.Main"/>
  722. </ajc-test>
  723. <ajc-test dir="pureJava/innerDefaultConstructors"
  724. title="Default constructors have same access as their enclosing type"
  725. keywords="from-java">
  726. <compile files="pkg1/Main.java,pkg2/Foo.java">
  727. <message kind="error" line="6"/>
  728. </compile>
  729. </ajc-test>
  730. <ajc-test dir="pureJava"
  731. title="Returning primitive values matching method return type (minimal)"
  732. keywords="from-java">
  733. <compile files="ReturnTypes.java"/>
  734. <run class="ReturnTypes"/>
  735. </ajc-test>
  736. <ajc-test dir="pureJava" title="Flow analysis and if(true)"
  737. keywords="from-java">
  738. <compile files="Flow.java"/>
  739. <run class="Flow"/>
  740. </ajc-test>
  741. <ajc-test dir="pureJava"
  742. title="packages and generated inner types (for I.class)"
  743. keywords="from-java">
  744. <compile files="InterfaceAndClass.java"/>
  745. <run class="p.InterfaceAndClass"/>
  746. </ajc-test>
  747. <ajc-test dir="pureJava" title="A.this exprs match by exact type matching"
  748. keywords="from-java">
  749. <compile files="QualifiedThisMatchesExactly.java">
  750. <message kind="error" line="14"/>
  751. </compile>
  752. </ajc-test>
  753. <ajc-test dir="pureJava"
  754. title="Implicit this for new inner instance must be avaliable"
  755. keywords="from-java">
  756. <compile files="ImplicitThisMissing.java">
  757. <message kind="error" line="4"/>
  758. </compile>
  759. </ajc-test>
  760. <ajc-test dir="pureJava"
  761. title="Inners can reference protected fields of their outer's super."
  762. keywords="from-java">
  763. <compile
  764. files="protectedFieldRefInInner/Main.java,protectedFieldRefInInner/p1/C.java"/>
  765. <run class="protectedFieldRefInInner.Main"/>
  766. </ajc-test>
  767. <ajc-test dir="new" title="IOException on windows if nul used as identifier"
  768. keywords="from-java,purejava">
  769. <compile files="NulIOException.java">
  770. <message kind="error" line="12"/>
  771. <message kind="error" line="14"/>
  772. <message kind="error" line="17"/>
  773. </compile>
  774. </ajc-test>
  775. <ajc-test dir="new"
  776. title="NullPointerException (not compiler error) when extending non-static inner class"
  777. keywords="from-java,purejava">
  778. <compile files="ExtendInnerCE.java">
  779. <message kind="error" line="3"/>
  780. </compile>
  781. </ajc-test>
  782. <ajc-test dir="new"
  783. title="compiler flags final static variable as indefinite in member assignment."
  784. keywords="from-java,purejava">
  785. <compile files="DefiniteStatic.java"/>
  786. <run class="DefiniteStatic"/>
  787. </ajc-test>
  788. <ajc-test dir="new"
  789. title="confirm no IOException on windows if nul used as identifier"
  790. keywords="from-java,purejava">
  791. <compile files="NulIOException2.java"/>
  792. <run class="NulIOException2"/>
  793. </ajc-test>
  794. <ajc-test dir="pureJava"
  795. title="Primitives that special case for a constant arm should work"
  796. keywords="from-java">
  797. <compile files="OneArmedPrimitiveTests.java"/>
  798. <run class="OneArmedPrimitiveTests"/>
  799. </ajc-test>
  800. <ajc-test dir="pureJava" title="Parenthesized true and false don't parse"
  801. keywords="from-java">
  802. <compile files="ParenKeywords.java"/>
  803. <run class="ParenKeywords"/>
  804. </ajc-test>
  805. <ajc-test dir="pureJava"
  806. title="Field sets to public fields of private fields of enclosing types"
  807. keywords="from-java">
  808. <compile files="InnerFieldRef.java"/>
  809. <run class="InnerFieldRef"/>
  810. </ajc-test>
  811. <ajc-test dir="pureJava"
  812. title="Constant values should be stored with the correct type of their fields"
  813. keywords="from-java">
  814. <compile files="ConstantValueConversion.java"/>
  815. <run class="ConstantValueConversion"/>
  816. </ajc-test>
  817. <ajc-test dir="pureJava"
  818. title="Local variables in initializers should not be treated as blank final fields"
  819. keywords="from-java">
  820. <compile files="LocalInitializerVariableNotBlank.java"/>
  821. <run class="LocalInitializerVariableNotBlank"/>
  822. </ajc-test>
  823. <ajc-test dir="pureJava"
  824. title="Binops aren't allowed as update stmts in for loops"
  825. keywords="from-java">
  826. <compile files="NonStmtInFor.java">
  827. <message kind="error" line="3"/>
  828. </compile>
  829. </ajc-test>
  830. <ajc-test dir="pureJava"
  831. title="Can't avoid doing division in case of div by zero"
  832. keywords="from-java">
  833. <compile files="DivOpMustHappen.java"/>
  834. <run class="DivOpMustHappen"/>
  835. </ajc-test>
  836. <ajc-test dir="pureJava"
  837. title="Testing frames w/greater than FF locals and 7F incs (i.e., WIDE instruction)"
  838. keywords="from-java">
  839. <compile files="BigFrameTest.java"/>
  840. <run class="BigFrameTest"/>
  841. </ajc-test>
  842. <ajc-test dir="pureJava" title="correct numeric literals"
  843. keywords="from-java">
  844. <compile files="LiteralsCp.java"/>
  845. <run class="LiteralsCp"/>
  846. </ajc-test>
  847. <ajc-test dir="pureJava" title="invalid numeric literals"
  848. keywords="from-java">
  849. <compile files="LiteralsCf.java">
  850. <message kind="error" line="8"/>
  851. <message kind="error" line="9"/>
  852. <message kind="error" line="10"/>
  853. <message kind="error" line="11"/>
  854. <message kind="error" line="12"/>
  855. <message kind="error" line="17"/>
  856. <message kind="error" line="18"/>
  857. <message kind="error" line="19"/>
  858. <message kind="error" line="20"/>
  859. <message kind="error" line="21"/>
  860. <message kind="error" line="22"/>
  861. <message kind="error" line="23"/>
  862. <message kind="error" line="25"/>
  863. <message kind="error" line="27"/>
  864. <message kind="error" line="28"/>
  865. <message kind="error" line="29"/>
  866. <message kind="error" line="30"/>
  867. <message kind="error" line="32"/>
  868. </compile>
  869. </ajc-test>
  870. <ajc-test dir="pureJava" pr="538"
  871. title="inner types can't have the same simple name as an enclosing type"
  872. keywords="from-java">
  873. <compile files="InnerNameConflictsCf.java">
  874. <message kind="error" line="9"/>
  875. <message kind="error" line="14"/>
  876. <message kind="error" line="20"/>
  877. <message kind="error" line="21"/>
  878. </compile>
  879. </ajc-test>
  880. <ajc-test dir="pureJava"
  881. title="test the unops and binops with various values" keywords="from-java">
  882. <compile files="BigOps.java"/>
  883. <run class="BigOps"/>
  884. </ajc-test>
  885. <ajc-test dir="pureJava"
  886. title="test + and += for strings and variously typed values"
  887. keywords="from-java">
  888. <compile files="BigString.java"/>
  889. <run class="BigString"/>
  890. </ajc-test>
  891. <ajc-test dir="pureJava" title="test try/catch/finally statements"
  892. keywords="from-java">
  893. <compile files="TryCatchFinally.java"/>
  894. <run class="TryCatchFinally"/>
  895. </ajc-test>
  896. <ajc-test dir="pureJava" pr="547"
  897. title="local types can be bound in the signatures of other local types"
  898. keywords="from-resolved_10rc3,from-java">
  899. <compile files="LocalInners.java"/>
  900. <run class="LocalInners"/>
  901. </ajc-test>
  902. <ajc-test dir="new"
  903. title="final constructor parameter causes incorrect compiler error"
  904. keywords="from-java,purejava">
  905. <compile files="FinalConstructorParm.java"/>
  906. <run class="FinalConstructorParm"/>
  907. </ajc-test>
  908. <ajc-test dir="new" title="Error expected for field of type void"
  909. keywords="from-java,purejava">
  910. <compile files="VoidField.java">
  911. <message kind="error" line="2"/>
  912. <message kind="error" line="4"/>
  913. <message kind="error" line="6"/>
  914. </compile>
  915. </ajc-test>
  916. <ajc-test dir="new" title="Error expected for constructor in interfaces"
  917. keywords="from-java">
  918. <compile files="InterfaceConstructor.java">
  919. <message kind="error" line="2"/>
  920. <message kind="error" line="6"/>
  921. <message kind="error" line="8"/>
  922. </compile>
  923. </ajc-test>
  924. <ajc-test dir="new" pr="558"
  925. title="class name for identifier as String should provoke error"
  926. keywords="from-java,purejava">
  927. <compile files="PR558.java">
  928. <message kind="error" line="4"/>
  929. </compile>
  930. </ajc-test>
  931. <ajc-test dir="new" pr="567"
  932. title="cyclic interface inheritance not detected if no classes implement the interfaces"
  933. keywords="from-java,purejava,messages-vary">
  934. <compile files="CyclicInterfaceInheritance.java"
  935. options="!eclipse">
  936. <message kind="error" line="14"/>
  937. <message kind="error" line="15"/>
  938. </compile>
  939. </ajc-test>
  940. <ajc-test dir="new" pr="567" title="cyclic class inheritance"
  941. keywords="from-java,purejava">
  942. <compile files="CyclicClassInheritance.java">
  943. <message kind="error" line="11"/>
  944. <message kind="error" line="12"/>
  945. </compile>
  946. </ajc-test>
  947. <ajc-test dir="pureJava" title="Type names are not expressions on their own"
  948. keywords="from-java,purejava">
  949. <compile files="TypeExprErrors.java">
  950. <message kind="error" line="10"/>
  951. <message kind="error" line="17"/>
  952. <message kind="error" line="18"/>
  953. <message kind="error" line="19"/>
  954. <message kind="error" line="20"/>
  955. <message kind="error" line="21"/>
  956. <message kind="error" line="22"/>
  957. <message kind="error" line="23"/>
  958. <message kind="error" line="24"/>
  959. <message kind="error" line="25"/>
  960. <message kind="error" line="26"/>
  961. <message kind="error" line="27"/>
  962. <message kind="error" line="28"/>
  963. <message kind="error" line="29"/>
  964. <message kind="error" line="30"/>
  965. <message kind="error" line="31"/>
  966. <message kind="error" line="32"/>
  967. <message kind="error" line="33"/>
  968. <message kind="error" line="34"/>
  969. <message kind="error" line="36"/>
  970. <message kind="error" line="37"/>
  971. </compile>
  972. </ajc-test>
  973. <ajc-test dir="pureJava/nameConflicts"
  974. title="type and package name conflicts are resolved happily (1a)"
  975. keywords="from-java,purejava">
  976. <compile files="p1/Main1.java,p1/Foo.java,p1/p2.java"/>
  977. <run class="p1.Main1"/>
  978. </ajc-test>
  979. <ajc-test dir="pureJava/nameConflicts"
  980. title="(fails in USEJAVAC) type and package name conflicts are resolved happily (1b)"
  981. keywords="from-java,purejava">
  982. <compile files="p1.java,p1/p2/Foo.java"/>
  983. <compile files="p1/Main1.java,p1/Foo.java,p1/p2.java"/>
  984. <run class="p1.Main1"/>
  985. </ajc-test>
  986. <ajc-test dir="pureJava/nameConflicts"
  987. title="type and package name conflicts are resolved happily (2)"
  988. keywords="from-java">
  989. <compile files="p1/Main2.java,p1/p2/Foo.java"/>
  990. <run class="p1.Main2"/>
  991. </ajc-test>
  992. <ajc-test dir="pureJava/nameConflicts"
  993. title="type and package name conflicts caught as errors (1)"
  994. keywords="from-java,purejava">
  995. <compile files="p1/p2.java,p1/Main1.java,p1/Foo.java,p1/p2/Foo.java">
  996. <message kind="error" line="3"/>
  997. </compile>
  998. </ajc-test>
  999. <ajc-test dir="pureJava"
  1000. title="flow analysis where final variable set in another constructor"
  1001. keywords="from-java,purejava">
  1002. <compile files="ConstructorFlow.java"/>
  1003. <run class="ConstructorFlow"/>
  1004. </ajc-test>
  1005. <ajc-test dir="new" pr="584"
  1006. title="Can construct inner classes using qualified expressions"
  1007. keywords="from-java,purejava">
  1008. <compile files="PR584.java"/>
  1009. <run class="PR584"/>
  1010. </ajc-test>
  1011. <ajc-test dir="new/protectedStatic" pr="585"
  1012. title="subclass unable to access protected static methods using type-qualified references"
  1013. keywords="from-java,purejava">
  1014. <compile files="SubClass.java,pack/SuperClass.java"/>
  1015. <run class="SubClass"/>
  1016. </ajc-test>
  1017. <ajc-test dir="new" pr="588" title="Undefined inner class constructor"
  1018. keywords="from-java,purejava">
  1019. <compile files="UndefinedInner.java">
  1020. <message kind="error" line="6"/>
  1021. </compile>
  1022. </ajc-test>
  1023. <ajc-test dir="pureJava"
  1024. title="try statements work sorta like scoped items for exception flow control"
  1025. keywords="from-java">
  1026. <compile files="TryWorksLikeEnvironment.java"/>
  1027. <run class="TryWorksLikeEnvironment"/>
  1028. </ajc-test>
  1029. <ajc-test dir="pureJava"
  1030. title="qualified this must work exactly, not based on subtypes"
  1031. keywords="from-java">
  1032. <compile files="QualifiedThisExactness.java">
  1033. <message kind="error" line="6"/>
  1034. </compile>
  1035. </ajc-test>
  1036. <ajc-test dir="new/packagePrefix" pr="574"
  1037. title="classes that are package prefixes are illegal"
  1038. keywords="from-java,purejava,messages-vary">
  1039. <compile files="p/prefix.java,p/prefix/SomeClass.java"
  1040. options="!eclipse">
  1041. <message kind="error" line="2"/>
  1042. </compile>
  1043. </ajc-test>
  1044. <ajc-test dir="new/introTypeMissing"
  1045. title="valid type expressions for introduced type testing"
  1046. keywords="from-java,purejava">
  1047. <compile files="TargetClass.java,Util.java"/>
  1048. <run class="TargetClass"/>
  1049. </ajc-test>
  1050. <ajc-test dir="new/introTypeMissing"
  1051. title="CF expected when enclosing class superclass used as this qualifier in inner class"
  1052. keywords="from-java">
  1053. <compile files="TargetClassCF.java,Util.java">
  1054. <message kind="error" line="22"/>
  1055. <message kind="error" line="23"/>
  1056. <message kind="error" line="27"/>
  1057. <message kind="error" line="28"/>
  1058. </compile>
  1059. </ajc-test>
  1060. <ajc-test dir="new/introTypeMissing"
  1061. title="enclosing class may be used as this qualifier in inner class"
  1062. keywords="from-java">
  1063. <compile files="TargetClassCP.java,Util.java"/>
  1064. <run class="TargetClassCP"/>
  1065. </ajc-test>
  1066. <ajc-test dir="new"
  1067. title="PR591 compiler error expected when directly calling unimplemented abstract method using super"
  1068. keywords="from-java,purejava">
  1069. <compile files="AbstractMethodCall.java">
  1070. <message kind="error" line="10"/>
  1071. </compile>
  1072. </ajc-test>
  1073. <ajc-test dir="pureJava"
  1074. title="suggested by Jacks 15.28-qualified-namestr tests"
  1075. keywords="from-java,purejava,messages-vary">
  1076. <compile files="NonConstants.java"
  1077. options="!eclipse">
  1078. <message kind="error" line="13"/>
  1079. <message kind="error" line="14"/>
  1080. <message kind="error" line="15"/>
  1081. <message kind="error" line="16"/>
  1082. <message kind="error" line="17"/>
  1083. </compile>
  1084. </ajc-test>
  1085. <ajc-test dir="pureJava"
  1086. title="nested finally blocks have interesting frame location problems"
  1087. keywords="from-java">
  1088. <compile files="NestedFinally.java"/>
  1089. <run class="NestedFinally"/>
  1090. </ajc-test>
  1091. <ajc-test dir="pureJava"
  1092. title="suggested by jacks 3.7-15 all comments must be closed"
  1093. keywords="from-java,purejava">
  1094. <compile files="OpenComment.java">
  1095. <message kind="error" line="7"/>
  1096. </compile>
  1097. </ajc-test>
  1098. <ajc-test dir="pureJava" pr="601"
  1099. title="nested synchronized blocks have interesting frame location problems"
  1100. keywords="from-java">
  1101. <compile files="NestedSynchronized.java"/>
  1102. <run class="NestedSynchronized"/>
  1103. </ajc-test>
  1104. <ajc-test dir="new/classaccess"
  1105. title="package class access not enforced outside of package"
  1106. keywords="from-java,purejava">
  1107. <compile files="main/Main.java,pack1/Target.java">
  1108. <message kind="error" line="7"/>
  1109. </compile>
  1110. </ajc-test>
  1111. <ajc-test dir="new" pr="631" title="expecting CE for ambiguous reference"
  1112. keywords="from-java,purejava">
  1113. <compile files="AmbiguousClassReference.java">
  1114. <message kind="error" line="11"/>
  1115. </compile>
  1116. </ajc-test>
  1117. <ajc-test dir="new" pr="643" title="try without catch or finally"
  1118. keywords="from-java,purejava,message-vary">
  1119. <compile files="TryNoCatchCE.java"
  1120. options="!eclipse">
  1121. <message kind="error" line="6"/>
  1122. </compile>
  1123. </ajc-test>
  1124. <ajc-test dir="new" pr="642" title="invalid floating-point constant"
  1125. keywords="from-java,purejava,messages-vary">
  1126. <compile files="ParsingFloatCE.java"
  1127. options="!eclipse">
  1128. <message kind="error" line="5"/>
  1129. </compile>
  1130. </ajc-test>
  1131. <ajc-test dir="pureJava" title="anonymous inner classes with inner types"
  1132. keywords="from-java">
  1133. <compile files="AnonymousWithInner.java"/>
  1134. <run class="AnonymousWithInner"/>
  1135. </ajc-test>
  1136. <ajc-test dir="pureJava" pr="651" title="qualified super call expr"
  1137. keywords="from-java">
  1138. <compile files="QualifiedSuperCall.java"/>
  1139. <run class="QualifiedSuperCall"/>
  1140. </ajc-test>
  1141. <ajc-test dir="new/subaspects" pr="647"
  1142. title="concrete aspect unable to access abstract package-private method in parent for overriding"
  1143. keywords="from-java,purejava,messages-vary"
  1144. comment="XXX fix source - package-private">
  1145. <compile files="parent/ParentMethodCE.java,child/ChildMethodCE.java"
  1146. options="!eclipse">
  1147. <message kind="warning" line="28"/>
  1148. <message kind="error" line="27"/>
  1149. </compile>
  1150. </ajc-test>
  1151. <ajc-test dir="new"
  1152. title="super reference used to disambiguate names of different but compatible types"
  1153. keywords="from-java,purejava">
  1154. <compile files="SuperDisambiguatingType.java"/>
  1155. <run class="SuperDisambiguatingType"/>
  1156. </ajc-test>
  1157. <ajc-test dir="pureJava" title="anonymous explicit inner constructors"
  1158. keywords="from-java,purejava">
  1159. <compile files="QualifiedNewCP.java"/>
  1160. <run class="QualifiedNewCP"/>
  1161. </ajc-test>
  1162. <ajc-test dir="pureJava" pr="680"
  1163. title="interfaces with non-explicitly static inner classes"
  1164. keywords="from-java">
  1165. <compile files="InterfaceAndInnerHelper.java"/>
  1166. <compile files="InterfaceAndInner.java"/>
  1167. <run class="InterfaceAndInner"/>
  1168. </ajc-test>
  1169. <ajc-test dir="pureJava"
  1170. title="Overruning the lineStarts buffer, DO NOT EDIT THIS FILE!!!!"
  1171. keywords="from-java,purejava">
  1172. <compile files="AJError.java"/>
  1173. <run class="AJError"/>
  1174. </ajc-test>
  1175. <ajc-test dir="new" pr="701" title="no CE for unambiguous type reference"
  1176. keywords="from-java,purejava">
  1177. <compile files="UnambiguousClassReference3CP.java"/>
  1178. <run class="UnambiguousClassReference3CP"/>
  1179. </ajc-test>
  1180. <ajc-test dir="new" pr="701"
  1181. title="CE for ambiguous type reference (imports)"
  1182. keywords="from-java,purejava">
  1183. <compile files="AmbiguousClassReference2CE.java">
  1184. <message kind="error" line="2"/>
  1185. <message kind="error" line="10"/>
  1186. </compile>
  1187. </ajc-test>
  1188. <ajc-test dir="new" pr="701"
  1189. title="CE for ambiguous type reference (two type declarations)"
  1190. keywords="from-java,purejava,messages-vary">
  1191. <compile files="AmbiguousClassReference3CE.java"
  1192. options="!eclipse">
  1193. <message kind="error" line="10"/>
  1194. </compile>
  1195. </ajc-test>
  1196. <ajc-test dir="new" pr="701"
  1197. title="CE for ambiguous type reference (two inner types)"
  1198. keywords="from-java,purejava,messages-vary">
  1199. <compile files="AmbiguousClassReference4CE.java"
  1200. options="!eclipse">
  1201. <message kind="error" line="10"/>
  1202. </compile>
  1203. </ajc-test>
  1204. <ajc-test dir="new" pr="709" title="final assignment in loop"
  1205. keywords="from-java,purejava">
  1206. <compile files="FinalInLoop.java"/>
  1207. <run class="FinalInLoop"/>
  1208. </ajc-test>
  1209. <ajc-test dir="pureJava" title="private super access in inners"
  1210. keywords="from-java,purejava">
  1211. <compile files="PrivateSuperInnerAccess.java"/>
  1212. <run class="PrivateSuperInnerAccess"/>
  1213. </ajc-test>
  1214. <ajc-test dir="pureJava"
  1215. title="nested interface does not require new qualifier (8)"
  1216. keywords="from-java,purejava">
  1217. <compile files="InvalidNewQualifier8CE.java">
  1218. <message kind="error" line="8"/>
  1219. </compile>
  1220. </ajc-test>
  1221. <ajc-test dir="pureJava"
  1222. title="nested interface does not require new qualifier (9)"
  1223. keywords="from-java,purejava">
  1224. <compile files="InvalidNewQualifier9CE.java">
  1225. <message kind="error" line="9"/>
  1226. </compile>
  1227. </ajc-test>
  1228. <ajc-test dir="pureJava"
  1229. title="nested interface does not require new qualifier (10)"
  1230. keywords="from-java,purejava">
  1231. <compile files="InvalidNewQualifier10CE.java">
  1232. <message kind="error" line="10"/>
  1233. </compile>
  1234. </ajc-test>
  1235. <ajc-test dir="pureJava"
  1236. title="nested interface does not require new qualifier (14)"
  1237. keywords="from-java,purejava">
  1238. <compile files="InvalidNewQualifier14CE.java">
  1239. <message kind="error" line="14"/>
  1240. </compile>
  1241. </ajc-test>
  1242. <ajc-test dir="pureJava"
  1243. title="nested interface does not require new qualifier (15)"
  1244. keywords="from-java,purejava">
  1245. <compile files="InvalidNewQualifier15CE.java">
  1246. <message kind="error" line="15"/>
  1247. </compile>
  1248. </ajc-test>
  1249. <ajc-test dir="pureJava"
  1250. title="nested interface does not require new qualifier (16)"
  1251. keywords="from-java,purejava">
  1252. <compile files="InvalidNewQualifier16CE.java">
  1253. <message kind="error" line="16"/>
  1254. </compile>
  1255. </ajc-test>
  1256. <ajc-test dir="pureJava" title="Operands work correctly"
  1257. keywords="from-bigjava">
  1258. <compile files="Ops.java"/>
  1259. <run class="Ops"/>
  1260. </ajc-test>
  1261. <ajc-test dir="errors"
  1262. title="reasonable error for crosscut reference with no formals specified"
  1263. keywords="from-errors">
  1264. <compile files="NoFormalsCrosscut.java">
  1265. <message kind="error" line="6"/>
  1266. <message kind="error" line="7"/>
  1267. <message kind="error" line="8"/>
  1268. </compile>
  1269. </ajc-test>
  1270. <ajc-test dir="errors"
  1271. title="reasonable error for introduction on type whose source isn't found"
  1272. keywords="from-errors">
  1273. <compile files="NoSource.java">
  1274. <message kind="error" line="4"/>
  1275. </compile>
  1276. </ajc-test>
  1277. <ajc-test dir="errors"
  1278. title="check that constructor name's match the enclosing type"
  1279. keywords="from-errors,purejava">
  1280. <compile files="BadConstructorName.java">
  1281. <message kind="error" line="4"/>
  1282. </compile>
  1283. </ajc-test>
  1284. <ajc-test dir="errors"
  1285. title="handle errors in crosscut designators, insist that they end with a semicolon"
  1286. keywords="from-errors">
  1287. <compile files="BadDesignator.java">
  1288. <message kind="error" line="4"/>
  1289. </compile>
  1290. </ajc-test>
  1291. <ajc-test dir="errors"
  1292. title="errors for not applicable or accessible methods"
  1293. keywords="from-errors,purejava">
  1294. <compile files="MethodsNotFound.java">
  1295. <message kind="error" line="4"/>
  1296. <message kind="error" line="8"/>
  1297. <message kind="error" line="12"/>
  1298. </compile>
  1299. </ajc-test>
  1300. <ajc-test dir="errors"
  1301. title="try to return from a before, after, after throwing and after returning"
  1302. keywords="from-errors">
  1303. <compile files="InvalidReturn.java">
  1304. <message kind="error" line="12"/>
  1305. <message kind="error" line="16"/>
  1306. <message kind="error" line="19"/>
  1307. <message kind="error" line="22"/>
  1308. </compile>
  1309. </ajc-test>
  1310. <ajc-test dir="errors" pr="130"
  1311. title="the designator has a wildcard for method name but no return type specified"
  1312. keywords="from-errors">
  1313. <compile files="NoReturnTypeInDesignator.java">
  1314. <message kind="error" line="6"/>
  1315. </compile>
  1316. </ajc-test>
  1317. <ajc-test dir="errors"
  1318. title="the designator for the introduction has no type after the | charcter"
  1319. keywords="from-errors">
  1320. <compile files="BadIntroductionDesignator.java">
  1321. <message kind="error" line="6"/>
  1322. </compile>
  1323. </ajc-test>
  1324. <ajc-test dir="errors" pr="140" title="crosscut signature does not match"
  1325. keywords="from-errors">
  1326. <compile files="BadCCutSig.java">
  1327. <message kind="error" line="8"/>
  1328. </compile>
  1329. </ajc-test>
  1330. <ajc-test dir="errors"
  1331. title="proper exit conditions when errors fall through to javac"
  1332. keywords="from-errors">
  1333. <compile files="FromJavac.java">
  1334. <message kind="error" line="11"/>
  1335. </compile>
  1336. </ajc-test>
  1337. <ajc-test dir="errors" pr="213"
  1338. title="mismatched parens on advice (wasn't binding Tester)"
  1339. keywords="from-errors">
  1340. <compile files="MismatchedParens.java">
  1341. <message kind="error" line="16"/>
  1342. <message kind="error" line="17"/>
  1343. </compile>
  1344. </ajc-test>
  1345. <ajc-test dir="errors" pr="209" title="Non-static advice silently ignored"
  1346. keywords="from-errors">
  1347. <compile files="BadPointcutName.java">
  1348. <message kind="error" line="15"/>
  1349. </compile>
  1350. </ajc-test>
  1351. <ajc-test dir="errors" pr="218"
  1352. title="import statement within class body crashes compiler"
  1353. keywords="from-errors">
  1354. <compile files="ImportWithinClassBody.java">
  1355. <message kind="error" line="8"/>
  1356. </compile>
  1357. </ajc-test>
  1358. <ajc-test dir="errors" pr="219" title="extra closing brace"
  1359. keywords="from-errors">
  1360. <compile files="ExtraClosingBrace.java">
  1361. <message kind="error" line="9"/>
  1362. <message kind="error" line="10"/>
  1363. </compile>
  1364. </ajc-test>
  1365. <ajc-test dir="errors" pr="244"
  1366. title="decent errors for around return type not matching target point"
  1367. keywords="from-errors">
  1368. <compile files="AroundReturnType.java">
  1369. <message kind="error" line="3"/>
  1370. <message kind="error" line="7"/>
  1371. <message kind="error" line="16"/>
  1372. <message kind="error" line="21"/>
  1373. </compile>
  1374. </ajc-test>
  1375. <ajc-test dir="errors" title="eachobject: can't call new on an aspect of"
  1376. keywords="from-errors">
  1377. <compile files="CantCallConstructorOnAspects.java">
  1378. <message kind="error" line="4"/>
  1379. </compile>
  1380. </ajc-test>
  1381. <ajc-test dir="errors"
  1382. title="eachobject: only zero-argument constructors allowed in an aspect"
  1383. keywords="from-errors,fail-unimplemented">
  1384. <compile files="AspectsCantHaveYesArgumentConstructors.java">
  1385. <message kind="error" line="8"/>
  1386. </compile>
  1387. </ajc-test>
  1388. <ajc-test dir="errors" title="eachobject: can't extend a concrete aspect"
  1389. keywords="from-errors,fail-unimplemented">
  1390. <compile files="SubAspectsCantExtendNonAbstractAspects.java">
  1391. <message kind="error" line="14"/>
  1392. </compile>
  1393. </ajc-test>
  1394. <ajc-test dir="errors" pr="271" title="instanceof used without a class"
  1395. keywords="from-errors">
  1396. <compile files="InstanceofWithoutClass.java">
  1397. <message kind="error" line="14"/>
  1398. </compile>
  1399. </ajc-test>
  1400. <ajc-test dir="errors" pr="280" title="wildcard used for returns clause"
  1401. keywords="from-errors">
  1402. <compile files="WildcardForReturns.java">
  1403. <message kind="error" line="17"/>
  1404. </compile>
  1405. </ajc-test>
  1406. <ajc-test dir="errors" pr="280" title="no return statement in around advice"
  1407. keywords="from-errors,new-messages-vary">
  1408. <compile files="NoReturnStatement.java">
  1409. <message kind="error" line="15"/>
  1410. </compile>
  1411. </ajc-test>
  1412. <ajc-test dir="errors" pr="286"
  1413. title="inner aspects must be static (no longer matches PR#286)"
  1414. keywords="from-errors,fail-unimplemented">
  1415. <compile files="AbstractAspectOf.java">
  1416. <message kind="error" line="12"/>
  1417. </compile>
  1418. </ajc-test>
  1419. <ajc-test dir="errors"
  1420. title="Casting class declarations as interfaces"
  1421. keywords="from-errors">
  1422. <compile files="InterfaceCast.java">
  1423. <message kind="error" line="14"/>
  1424. </compile>
  1425. </ajc-test>
  1426. <ajc-test dir="errors"
  1427. title="omits a variable name and crashes with a null pointer"
  1428. keywords="from-errors">
  1429. <compile files="BindingNullPointer.java">
  1430. <message kind="error" line="7"/>
  1431. </compile>
  1432. </ajc-test>
  1433. <ajc-test dir="errors"
  1434. title="Not generating an error for using new as a method name"
  1435. keywords="from-errors">
  1436. <compile files="New.java">
  1437. <message kind="error" line="12"/>
  1438. </compile>
  1439. </ajc-test>
  1440. <ajc-test dir="errors" title="ClassCastException on the int literal"
  1441. keywords="from-errors">
  1442. <compile files="IntLiteral.java">
  1443. <message kind="error" line="17"/>
  1444. </compile>
  1445. </ajc-test>
  1446. <ajc-test dir="new"
  1447. title="Wrong strictfp keyword usage in interface function prototype [TODO: move to errors]"
  1448. keywords="from-errors">
  1449. <compile files="StrictFpCErr1.java">
  1450. <message kind="error" line="3"/>
  1451. </compile>
  1452. </ajc-test>
  1453. <ajc-test dir="new"
  1454. title="Wrong strictfp keyword usage in field declaration [TODO: move to errors]"
  1455. keywords="from-errors">
  1456. <compile files="StrictFpCErr2.java">
  1457. <message kind="error" line="3"/>
  1458. </compile>
  1459. </ajc-test>
  1460. <ajc-test dir="new"
  1461. title="Wrong strictfp keyword usage in constructor declaration [TODO: move to errors]"
  1462. keywords="from-errors">
  1463. <compile files="StrictFpCErr3.java">
  1464. <message kind="error" line="3"/>
  1465. </compile>
  1466. </ajc-test>
  1467. <ajc-test dir="errors"
  1468. title="Incorrect static casts to primitively foldable arguments should not crash the compiler."
  1469. keywords="from-errors">
  1470. <compile files="BadStaticCast.java">
  1471. <message kind="error" line="5"/>
  1472. </compile>
  1473. </ajc-test>
  1474. <ajc-test dir="errors" title="Dominates with commas should signal an error."
  1475. keywords="from-errors">
  1476. <compile files="DominatesWithCommas.java">
  1477. <message kind="error" line="9"/>
  1478. </compile>
  1479. </ajc-test>
  1480. <ajc-test dir="errors"
  1481. title="Accessing instance fields and instance methods statically."
  1482. keywords="from-errors,purejava">
  1483. <compile files="AccessingInstanceFieldsStatically.java">
  1484. <message kind="error" line="15"/>
  1485. <message kind="error" line="16"/>
  1486. <message kind="error" line="17"/>
  1487. <message kind="error" line="18"/>
  1488. <message kind="error" line="26"/>
  1489. <message kind="error" line="27"/>
  1490. <message kind="error" line="30"/>
  1491. <message kind="error" line="38"/>
  1492. <message kind="error" line="39"/>
  1493. </compile>
  1494. </ajc-test>
  1495. <ajc-test dir="errors" pr="95"
  1496. title="stack overflow with recursive crosscut specifier"
  1497. keywords="from-errors">
  1498. <compile files="RecursiveCCutSpecifier.java">
  1499. <message kind="error" line="10"/>
  1500. </compile>
  1501. </ajc-test>
  1502. <ajc-test dir="errors"
  1503. title="Throwing a NullPointerException when formals can't be bound in named pointcut"
  1504. keywords="from-errors">
  1505. <compile files="BadFormalsToCalls.java">
  1506. <message kind="error" line="22"/>
  1507. </compile>
  1508. </ajc-test>
  1509. <ajc-test dir="errors" pr="385"
  1510. title="disallow defining more than one pointcut with the same name"
  1511. keywords="from-errors,fail-unimplemented">
  1512. <compile files="OverloadedPointcuts.java">
  1513. <message kind="error" line="4"/>
  1514. <message kind="error" line="5"/>
  1515. </compile>
  1516. </ajc-test>
  1517. <ajc-test dir="errors"
  1518. title="pre 0.7 introduction form outside aspect body causes an EmptyStackException"
  1519. keywords="from-errors">
  1520. <compile files="BadIntroduction.java">
  1521. <message kind="error" line="10"/>
  1522. </compile>
  1523. </ajc-test>
  1524. <ajc-test dir="errors" title="a class can't extend an aspect"
  1525. keywords="from-errors,fail-unimplemented">
  1526. <compile files="ClassExtendingAspect.java">
  1527. <message kind="error" line="19"/>
  1528. </compile>
  1529. </ajc-test>
  1530. <ajc-test dir="errors"
  1531. title="a before() clause at the class-level causes an EmptyStackException"
  1532. keywords="from-errors">
  1533. <compile files="TopLevelBefore.java">
  1534. <message kind="error" line="9"/>
  1535. </compile>
  1536. </ajc-test>
  1537. <ajc-test dir="errors"
  1538. title="an after() clause at the class-level causes an EmptyStackException"
  1539. keywords="from-errors">
  1540. <compile files="TopLevelAfter.java">
  1541. <message kind="error" line="9"/>
  1542. </compile>
  1543. </ajc-test>
  1544. <ajc-test dir="errors"
  1545. title="an around() clause at the class-level causes an EmptyStackException"
  1546. keywords="from-errors">
  1547. <compile files="TopLevelAround.java">
  1548. <message kind="error" line="9"/>
  1549. </compile>
  1550. </ajc-test>
  1551. <ajc-test dir="errors" title="Crashes when a cast is within another cast"
  1552. keywords="from-errors,purejava">
  1553. <compile files="CastInCast.java">
  1554. <message kind="error" line="9"/>
  1555. </compile>
  1556. </ajc-test>
  1557. <ajc-test dir="errors" title="Crashes when a cast of the form )int) appears"
  1558. keywords="from-errors,purejava,messages-vary">
  1559. <compile files="BadCast.java"
  1560. options="!eclipse">
  1561. <message kind="error" line="9"/>
  1562. <message kind="error" line="10"/>
  1563. </compile>
  1564. </ajc-test>
  1565. <ajc-test dir="errors" title="Crashes when the closing brace is reversed"
  1566. keywords="from-errors,purejava,messages-vary">
  1567. <compile files="ClosingBrace.java"
  1568. options="!eclipse">
  1569. <message kind="error" line="11"/>
  1570. </compile>
  1571. </ajc-test>
  1572. <ajc-test dir="errors"
  1573. title="Crashes when a method name is missing in a call -- e.g. 'System.out.();'"
  1574. keywords="from-errors,purejava">
  1575. <compile files="NoMethodName.java">
  1576. <message kind="error" line="9"/>
  1577. </compile>
  1578. </ajc-test>
  1579. <ajc-test dir="errors" title="Crashes when a bad r-value appears."
  1580. keywords="from-errors,purejava">
  1581. <compile files="BadValue.java">
  1582. <message kind="error" line="9"/>
  1583. </compile>
  1584. </ajc-test>
  1585. <ajc-test dir="errors" title="Two underscores as a variables causes a crash"
  1586. keywords="from-errors,purejava">
  1587. <compile files="BadVar.java">
  1588. <message kind="error" line="9"/>
  1589. </compile>
  1590. </ajc-test>
  1591. <ajc-test dir="errors"
  1592. title="Crashes when assigning to a final static in an intializer and declaration"
  1593. keywords="from-errors,purejava">
  1594. <compile files="FinalStatic.java">
  1595. <message kind="error" line="13"/>
  1596. </compile>
  1597. </ajc-test>
  1598. <ajc-test dir="errors" title="Crashes when two dots appear instead of one"
  1599. keywords="from-errors,purejava">
  1600. <compile files="TwoDots.java">
  1601. <message kind="error" line="9"/>
  1602. </compile>
  1603. </ajc-test>
  1604. <ajc-test dir="errors" title="Crashes when there're stray dots"
  1605. keywords="from-errors,purejava">
  1606. <compile files="StrayDot.java">
  1607. <message kind="error" line="9"/>
  1608. </compile>
  1609. </ajc-test>
  1610. <ajc-test dir="errors" title="Stray characters cause a crash"
  1611. comment="XXX public class in wrong file"
  1612. keywords="from-errors,purejava">
  1613. <compile files="StraySlash.java">
  1614. <message kind="error" line="9"/>
  1615. </compile>
  1616. </ajc-test>
  1617. <ajc-test dir="errors" title="Colon instead of a semi-colon causes a crash"
  1618. comment="XXX public class in wrong file"
  1619. keywords="from-errors,purejava">
  1620. <compile files="Colon.java">
  1621. <message kind="error" line="9"/>
  1622. </compile>
  1623. </ajc-test>
  1624. <ajc-test dir="errors"
  1625. title="type error in initializer caught by ajc, not javac"
  1626. keywords="from-errors,purejava">
  1627. <compile files="ArrayInitializerType.java">
  1628. <message kind="error" line="2"/>
  1629. </compile>
  1630. </ajc-test>
  1631. <ajc-test dir="errors"
  1632. title="Circular inheritance with classes causes a stack overflow."
  1633. keywords="from-errors,purejava">
  1634. <compile files="CircularExtends.java">
  1635. <message kind="error" line="7"/>
  1636. </compile>
  1637. </ajc-test>
  1638. <ajc-test dir="errors" title="Doesn't detect cyclic inheritance of aspects."
  1639. keywords="from-errors">
  1640. <compile files="CircularExtendsAspect.java">
  1641. <message kind="error" line="18"/>
  1642. </compile>
  1643. </ajc-test>
  1644. <ajc-test dir="errors"
  1645. title="Binds the pointcut formals to member variables instead of pointcut formals."
  1646. keywords="from-errors">
  1647. <compile files="PointcutFormals.java" options="-Xlint:warning">
  1648. <message kind="error" line="14"/>
  1649. <message kind="error" line="15"/>
  1650. <message kind="warning" line="16"/>
  1651. <message kind="warning" line="17"/>
  1652. </compile>
  1653. </ajc-test>
  1654. <ajc-test dir="errors" title="ambiguous formal in formals pattern"
  1655. keywords="from-errors">
  1656. <compile files="AmbiguousFormal.java">
  1657. <message kind="error" line="6"/>
  1658. </compile>
  1659. </ajc-test>
  1660. <ajc-test dir="errors" title="Missing ;" keywords="from-errors,purejava">
  1661. <compile files="PR405.java">
  1662. <message kind="error" line="15"/>
  1663. </compile>
  1664. </ajc-test>
  1665. <ajc-test dir="errors"
  1666. title="cast expressions should not allow casts between ifaces and array types"
  1667. keywords="from-errors,purejava">
  1668. <compile files="InterfaceArrayCast.java">
  1669. <message kind="error" line="9"/>
  1670. <message kind="error" line="10"/>
  1671. </compile>
  1672. </ajc-test>
  1673. <ajc-test dir="errors"
  1674. title="parsing errors for various bad forms of NewArrayExprs."
  1675. keywords="from-errors,purejava">
  1676. <compile files="BadNewArrayExprs.java">
  1677. <message kind="error" line="4"/>
  1678. <message kind="error" line="5"/>
  1679. <message kind="error" line="6"/>
  1680. <message kind="error" line="7"/>
  1681. </compile>
  1682. </ajc-test>
  1683. <ajc-test dir="errors"
  1684. title="good error for field name instead of type name"
  1685. keywords="from-errors">
  1686. <compile files="BadTypeName.java">
  1687. <message kind="error" line="2"/>
  1688. <message kind="error" line="4"/>
  1689. <message kind="error" line="6"/>
  1690. <message kind="error" line="8"/>
  1691. <message kind="error" line="10"/>
  1692. <message kind="error" line="12"/>
  1693. </compile>
  1694. </ajc-test>
  1695. <ajc-test dir="errors"
  1696. title="good error for bad field and inner class references"
  1697. keywords="from-errors,purejava">
  1698. <compile files="BadReferences.java">
  1699. <message kind="error" line="3"/>
  1700. <message kind="error" line="5"/>
  1701. </compile>
  1702. </ajc-test>
  1703. <ajc-test dir="errors" title="errors in aspect inheritance - 1"
  1704. keywords="from-errors">
  1705. <compile files="AspectInheritance1.java">
  1706. <message kind="error" line="17"/>
  1707. </compile>
  1708. </ajc-test>
  1709. <ajc-test dir="errors" title="errors in aspect inheritance - 2"
  1710. keywords="from-errors">
  1711. <compile files="AspectInheritance2.java">
  1712. <message kind="error" line="8"/>
  1713. <message kind="error" line="16"/>
  1714. <message kind="error" line="20"/>
  1715. <message kind="error" line="26"/>
  1716. <message kind="error" line="30"/>
  1717. </compile>
  1718. </ajc-test>
  1719. <ajc-test dir="errors" title="errors in aspect inheritance - 3"
  1720. keywords="from-errors">
  1721. <compile files="AspectInheritance3.java">
  1722. <message kind="error" line="19"/>
  1723. <message kind="error" line="24"/>
  1724. </compile>
  1725. </ajc-test>
  1726. <ajc-test dir="errors" title="errors in aspect inheritance - 4"
  1727. keywords="from-errors">
  1728. <compile files="AspectInheritance4.java">
  1729. <message kind="error" line="17"/>
  1730. </compile>
  1731. </ajc-test>
  1732. <ajc-test dir="errors"
  1733. title="Implementing a non-interface used to crash the compiler."
  1734. keywords="from-errors,purejava">
  1735. <compile files="PR333.java">
  1736. <message kind="error" line="6"/>
  1737. </compile>
  1738. </ajc-test>
  1739. <ajc-test dir="errors"
  1740. title="circular dominates leading to irresolvable advice precedence"
  1741. keywords="from-errors">
  1742. <compile files="CircularDominates.java">
  1743. <message kind="error" line="12"/>
  1744. <message kind="error" line="16"/>
  1745. <message kind="error" line="20"/>
  1746. </compile>
  1747. </ajc-test>
  1748. <ajc-test dir="errors"
  1749. title="Should issue an error for using 'class' instead of 'aspect'"
  1750. keywords="from-errors">
  1751. <compile files="NoAspect.java">
  1752. <message kind="error" line="12"/>
  1753. </compile>
  1754. </ajc-test>
  1755. <ajc-test dir="errors"
  1756. title="Should signal an error when we need an exposed value but don't provide it"
  1757. keywords="from-errors">
  1758. <compile files="MissingExposure.java">
  1759. <message kind="error" line="13"/>
  1760. </compile>
  1761. </ajc-test>
  1762. <ajc-test dir="errors"
  1763. title="StackOverFlowException with circular +implements's."
  1764. keywords="from-errors">
  1765. <compile files="CircularPlusImplementsIntros.java">
  1766. <message kind="error" line="19"/>
  1767. </compile>
  1768. </ajc-test>
  1769. <ajc-test dir="errors"
  1770. title="Introducing protected methods is causing a crash"
  1771. keywords="from-errors">
  1772. <compile files="ProtectedIntro.java">
  1773. <message kind="error" line="14"/>
  1774. </compile>
  1775. </ajc-test>
  1776. <ajc-test dir="errors"
  1777. title="Introducing protected fields is causing a crash"
  1778. keywords="from-errors">
  1779. <compile files="ProtectedFieldIntro.java">
  1780. <message kind="error" line="14"/>
  1781. </compile>
  1782. </ajc-test>
  1783. <ajc-test dir="errors" pr="388"
  1784. title="two classes with the same fully-qualified names [eachjvm]"
  1785. keywords="from-errors"
  1786. comment="XXX error not flagging initial type">
  1787. <compile files="DuplicatedNames.java">
  1788. <message kind="error" line="3"/>
  1789. <message kind="error" line="5"/>
  1790. <message kind="error" line="7"/>
  1791. <message kind="error" line="9"/>
  1792. </compile>
  1793. </ajc-test>
  1794. <ajc-test dir="errors" pr="396"
  1795. title="Undefined pointcuts were throwing exceptions in 07b11 [callsto]"
  1796. keywords="from-errors">
  1797. <compile files="UndefinedPointCut_PR396.java">
  1798. <message kind="error" line="8"/>
  1799. </compile>
  1800. </ajc-test>
  1801. <ajc-test dir="errors" pr="240" title="advice on abstract pointcuts"
  1802. keywords="from-errors">
  1803. <compile files="StaticAdviceOnAbstract.java">
  1804. <message kind="error" line="17"/>
  1805. </compile>
  1806. </ajc-test>
  1807. <ajc-test dir="errors"
  1808. title="Whoops, I forgot to put a class in the field access PCD."
  1809. keywords="from-errors">
  1810. <compile files="BadGetPCD.java">
  1811. <message kind="error" line="5"/>
  1812. </compile>
  1813. </ajc-test>
  1814. <ajc-test dir="errors" pr="138"
  1815. title=", PR#139 the arounds return something but there is no returns statement"
  1816. keywords="from-errors">
  1817. <compile files="MissingReturns.java">
  1818. <message kind="error" line="14"/>
  1819. <message kind="error" line="20"/>
  1820. </compile>
  1821. </ajc-test>
  1822. <ajc-test dir="pureJava" title="simple tests of throws and for stmt typing"
  1823. keywords="from-errors">
  1824. <compile files="SimpleSpec.java">
  1825. <message kind="error" line="4"/>
  1826. <message kind="error" line="7"/>
  1827. </compile>
  1828. </ajc-test>
  1829. <!-- we're not implementing this error check in 1.1 -->
  1830. <ajc-test dir="errors"
  1831. title="checking the contra-variant errors for typing of proceed"
  1832. keywords="from-errors,knownLimitation">
  1833. <compile files="BadAround.java">
  1834. <message kind="error" line="12"/>
  1835. <message kind="error" line="15"/>
  1836. <message kind="error" line="18"/>
  1837. <message kind="error" line="19"/>
  1838. <message kind="error" line="22"/>
  1839. </compile>
  1840. </ajc-test>
  1841. <ajc-test dir="errors"
  1842. title="error of no return statement detected not by ajc but by javac (line 4)"
  1843. keywords="from-errors,purejava">
  1844. <compile files="NoReturnStatementSimple.java">
  1845. <message kind="error" line="4"/>
  1846. </compile>
  1847. </ajc-test>
  1848. <ajc-test dir="errors" title="class and interface extension"
  1849. keywords="from-errors,purejava,messages-vary">
  1850. <compile files="BadExtension.java"
  1851. options="!eclipse">
  1852. <message kind="error" line="7"/>
  1853. <message kind="error" line="9"/>
  1854. <message kind="error" line="16"/>
  1855. <message kind="error" line="17"/>
  1856. <message kind="error" line="18"/>
  1857. <message kind="error" line="19"/>
  1858. <message kind="error" line="21"/>
  1859. <message kind="error" line="35"/>
  1860. <message kind="error" line="38"/>
  1861. </compile>
  1862. </ajc-test>
  1863. <ajc-test dir="errors" title="multiple conflicting introductions"
  1864. keywords="from-errors">
  1865. <compile files="MultipleIntros.java">
  1866. <message kind="error" line="5"/>
  1867. <message kind="error" line="16"/>
  1868. <message kind="error" line="18"/>
  1869. <message kind="error" line="19"/>
  1870. <message kind="error" line="22"/>
  1871. <message kind="error" line="27"/>
  1872. <message kind="error" line="30"/>
  1873. </compile>
  1874. </ajc-test>
  1875. <ajc-test dir="errors" title="types in throws clauses"
  1876. keywords="from-errors,purejava">
  1877. <compile files="ThrowsClause.java">
  1878. <message kind="error" line="2"/>
  1879. <message kind="error" line="4"/>
  1880. <message kind="error" line="13"/>
  1881. </compile>
  1882. </ajc-test>
  1883. <ajc-test dir="errors"
  1884. title="referencing non-static pointcuts in outer aspects"
  1885. keywords="from-errors">
  1886. <compile files="StaticPointcutRefs.java">
  1887. <message kind="error" line="8"/>
  1888. </compile>
  1889. </ajc-test>
  1890. <ajc-test dir="errors" title="bad switch syntax"
  1891. keywords="from-errors,purejava">
  1892. <compile files="Switch.java">
  1893. <message kind="error" line="4"/>
  1894. </compile>
  1895. </ajc-test>
  1896. <ajc-test dir="new"
  1897. title="javac correct compiler error if there is no return in around returning result"
  1898. keywords="from-errors">
  1899. <compile files="NoReturnInProceed.java">
  1900. <message kind="error" line="17"/>
  1901. </compile>
  1902. </ajc-test>
  1903. <ajc-test dir="errors"
  1904. title="should give an error for introducing two members with the same name"
  1905. keywords="from-errors">
  1906. <compile files="TwoIntros.java">
  1907. <message kind="error" line="10"/>
  1908. <message kind="error" line="14"/>
  1909. <message kind="error" line="16"/>
  1910. </compile>
  1911. </ajc-test>
  1912. <ajc-test dir="errors"
  1913. title="wimpy test for undeclared and uncaught exceptions"
  1914. keywords="from-errors">
  1915. <compile files="UndeclaredThrows.java">
  1916. <message kind="error" line="12"/>
  1917. <message kind="error" line="18"/>
  1918. </compile>
  1919. </ajc-test>
  1920. <ajc-test dir="pureJava" title="test for not folding circular constants"
  1921. keywords="from-errors">
  1922. <compile files="CircularFolding.java">
  1923. <message kind="error" line="6"/>
  1924. <message kind="error" line="7"/>
  1925. <message kind="error" line="8"/>
  1926. </compile>
  1927. </ajc-test>
  1928. <ajc-test dir="pureJava" title="continue targets must be continuable"
  1929. keywords="from-errors">
  1930. <compile files="BadContinueTarget.java">
  1931. <message kind="error" line="6"/>
  1932. </compile>
  1933. </ajc-test>
  1934. <ajc-test dir="pureJava"
  1935. title="qualified this to non-inner should be caught"
  1936. keywords="from-errors">
  1937. <compile files="BadQualifiedNew.java">
  1938. <message kind="error" line="4"/>
  1939. </compile>
  1940. </ajc-test>
  1941. <ajc-test dir="pureJava"
  1942. title="Referencing various things from static contexts"
  1943. keywords="from-errors,purejava">
  1944. <compile files="StaticContexts.java">
  1945. <message kind="error" line="11"/>
  1946. <message kind="error" line="18"/>
  1947. <message kind="error" line="19"/>
  1948. <message kind="error" line="20"/>
  1949. <message kind="error" line="21"/>
  1950. <message kind="error" line="27"/>
  1951. <message kind="error" line="28"/>
  1952. <message kind="error" line="31"/>
  1953. <message kind="error" line="35"/>
  1954. <message kind="error" line="36"/>
  1955. </compile>
  1956. </ajc-test>
  1957. <ajc-test dir="new"
  1958. title="Given non-matching TypePattern, CE flags use of non-introduced method rather than failure to introduce"
  1959. keywords="from-errors">
  1960. <compile
  1961. files="typepatternmatch/pack1/IntroErrorLocation.java,typepatternmatch/pack2/TargetClass.java">
  1962. <message kind="error" line="28"
  1963. text="typepatternmatch/pack1/IntroErrorLocation.java:28"/>
  1964. <message kind="warning" line="33"
  1965. text="typepatternmatch/pack1/IntroErrorLocation.java:33"/>
  1966. <message kind="error" line="39"
  1967. text="typepatternmatch/pack1/IntroErrorLocation.java:39"/>
  1968. </compile>
  1969. </ajc-test>
  1970. <ajc-test dir="new" pr="457"
  1971. title="Compiler should suggest using aspect when advice, pointcuts, or introduction is in a class"
  1972. keywords="from-errors">
  1973. <compile files="RecognizeAspectCE.java">
  1974. <message kind="error" line="6" text="RecognizeAspectCE.java:6"/>
  1975. </compile>
  1976. </ajc-test>
  1977. <ajc-test dir="errors"
  1978. title="Some expressions are illegal expression statements"
  1979. keywords="from-errors,purejava">
  1980. <compile files="BadExpressionStatement.java">
  1981. <message kind="error" line="3"/>
  1982. </compile>
  1983. </ajc-test>
  1984. <ajc-test dir="pureJava" title="illegal forward reference"
  1985. keywords="from-errors,purejava">
  1986. <compile files="IllegalForwardReference.java">
  1987. <message kind="error" line="9"/>
  1988. </compile>
  1989. </ajc-test>
  1990. <ajc-test dir="errors"
  1991. title="declare error working with pointcut and-not (amp,amp,bang)"
  1992. keywords="from-errors">
  1993. <compile files="DeclareError.java">
  1994. <message kind="error" line="5"/>
  1995. <message kind="error" line="19"/>
  1996. </compile>
  1997. </ajc-test>
  1998. <ajc-test dir="errors" title="protected accessibility"
  1999. keywords="from-errors,purejava">
  2000. <compile files="protectedAccess/Main.java,protectedAccess/p1/C1.java">
  2001. <message kind="error" line="26"/>
  2002. <message kind="error" line="28"/>
  2003. <message kind="error" line="29"/>
  2004. <message kind="error" line="31"/>
  2005. <message kind="error" line="37"/>
  2006. <message kind="error" line="45"/>
  2007. <message kind="error" line="46"/>
  2008. <message kind="error" line="54"/>
  2009. <message kind="error" line="55"/>
  2010. </compile>
  2011. </ajc-test>
  2012. <ajc-test dir="errors" title="parse-time illegal modifiers"
  2013. keywords="from-errors,purejava">
  2014. <compile files="Modifiers1.java">
  2015. <message kind="error" line="2"/>
  2016. <message kind="error" line="3"/>
  2017. <message kind="error" line="6"/>
  2018. </compile>
  2019. </ajc-test>
  2020. <ajc-test dir="errors" title="check-time illegal modifiers"
  2021. keywords="from-errors,purejava">
  2022. <compile files="Modifiers.java">
  2023. <message kind="error" line="2"/>
  2024. <message kind="error" line="3"/>
  2025. <message kind="error" line="4"/>
  2026. <message kind="error" line="6"/>
  2027. <message kind="error" line="7"/>
  2028. <message kind="error" line="8"/>
  2029. <message kind="error" line="9"/>
  2030. <message kind="error" line="11"/>
  2031. </compile>
  2032. </ajc-test>
  2033. <ajc-test dir="errors" title="illegal synchronized stmts"
  2034. keywords="from-errors,purejava,messages-vary">
  2035. <compile files="BadSynchronized.java"
  2036. options="!eclipse">
  2037. <message kind="error" line="6"/>
  2038. </compile>
  2039. </ajc-test>
  2040. <ajc-test dir="pureJava" title="modifiers on interface members"
  2041. keywords="from-errors,purejava">
  2042. <compile files="InterfaceMembers.java">
  2043. <message kind="error" line="2"/>
  2044. <message kind="error" line="3"/>
  2045. <message kind="error" line="4"/>
  2046. <message kind="error" line="5"/>
  2047. <message kind="error" line="7"/>
  2048. <message kind="error" line="8"/>
  2049. <message kind="error" line="9"/>
  2050. <message kind="error" line="10"/>
  2051. </compile>
  2052. </ajc-test>
  2053. <ajc-test dir="new" pr="534"
  2054. title="aspect as member of interface (private and protected)"
  2055. keywords="from-errors">
  2056. <compile files="AspectInInterfaceCF.java">
  2057. <message kind="error" line="11"/>
  2058. <message kind="error" line="14"/>
  2059. </compile>
  2060. </ajc-test>
  2061. <ajc-test dir="errors"
  2062. title="good errors (and not too many) for missing members"
  2063. comment="XXX import of class in default package"
  2064. keywords="from-errors,purejava">
  2065. <compile files="NotFound.java">
  2066. <message kind="error" line="1"/>
  2067. <message kind="error" line="2"/>
  2068. <message kind="error" line="6"/>
  2069. <message kind="error" line="9"/>
  2070. <message kind="error" line="10"/>
  2071. <message kind="error" line="14"/>
  2072. <message kind="error" line="16"/>
  2073. </compile>
  2074. </ajc-test>
  2075. <ajc-test dir="new" pr="536"
  2076. title="expecting compile failures with subclass narrowing scope of superclass methods or accessing private superclass variables"
  2077. keywords="from-errors,purejava">
  2078. <compile files="RestrictingVisibilityCF.java">
  2079. <message kind="error" line="27"/>
  2080. <message kind="error" line="29"/>
  2081. <message kind="error" line="31"/>
  2082. <message kind="error" line="39"/>
  2083. <message kind="error" line="41"/>
  2084. <message kind="error" line="46"/>
  2085. <message kind="error" line="48"/>
  2086. <message kind="error" line="53"/>
  2087. </compile>
  2088. </ajc-test>
  2089. <ajc-test dir="new" pr="494"
  2090. title="introduced inner interfaces - compile should fail to bind interface name outside of Aspect or if implementing method is not public"
  2091. keywords="from-errors">
  2092. <compile files="IntroduceInnerInterfaceCF.java" options="-Xlint:ignore">
  2093. <message kind="error" line="18"/>
  2094. <message kind="error" line="19"/>
  2095. <message kind="error" line="20"/>
  2096. <message kind="error" line="24"/>
  2097. <message kind="error" line="42"/>
  2098. <message kind="error" line="45"/>
  2099. <message kind="error" line="48"/>
  2100. <message kind="error" line="50"/>
  2101. <message kind="error" line="58"/>
  2102. </compile>
  2103. </ajc-test>
  2104. <ajc-test dir="errors"
  2105. title="aspects may not implement Serializable or Cloneable"
  2106. keywords="from-errors">
  2107. <compile files="AspectInterfaces.java">
  2108. <message kind="error" line="4"/>
  2109. <message kind="error" line="5"/>
  2110. <message kind="error" line="9"/>
  2111. </compile>
  2112. </ajc-test>
  2113. <ajc-test dir="errors"
  2114. title="inner classes may not have static non-constant members"
  2115. keywords="from-errors,purejava">
  2116. <compile files="InnerMembers.java">
  2117. <message kind="error" line="8"/>
  2118. <message kind="error" line="9"/>
  2119. <message kind="error" line="10"/>
  2120. <message kind="error" line="11"/>
  2121. <message kind="error" line="16"/>
  2122. <message kind="error" line="17"/>
  2123. </compile>
  2124. </ajc-test>
  2125. <ajc-test dir="errors"
  2126. title="explicit constructor calls can throw exceptions"
  2127. keywords="from-errors">
  2128. <compile files="ExplicitConstructorThrows.java">
  2129. <message kind="error" line="3"/>
  2130. <message kind="error" line="12"/>
  2131. <message kind="error" line="18"/>
  2132. </compile>
  2133. </ajc-test>
  2134. <ajc-test dir="pureJava" title="flow analysis with local types"
  2135. keywords="from-errors,purejava">
  2136. <compile files="InnerFlow.java">
  2137. <message kind="error" line="5"/>
  2138. </compile>
  2139. </ajc-test>
  2140. <ajc-test dir="errors" pr="664" title="bad proceed args good error messages"
  2141. keywords="from-errors">
  2142. <compile files="ProceedArgsCE.java">
  2143. <message kind="error" line="13"/>
  2144. <message kind="error" line="16"/>
  2145. <message kind="error" line="19"/>
  2146. </compile>
  2147. </ajc-test>
  2148. <ajc-test dir="design/intro"
  2149. title="initial tests for new introduction style" keywords="from-design">
  2150. <compile files="Simple.java"/>
  2151. <run class="Simple"/>
  2152. </ajc-test>
  2153. <ajc-test dir="design/intro"
  2154. title="overriding of introduced methods and accessibility"
  2155. keywords="from-design">
  2156. <compile files="Overriding.java"/>
  2157. <run class="Overriding"/>
  2158. </ajc-test>
  2159. <ajc-test dir="design/intro"
  2160. title="within and introductions behaves correctly" keywords="from-design">
  2161. <compile files="Within.java"/>
  2162. <run class="Within"/>
  2163. </ajc-test>
  2164. <!-- we're not implementing static inter-type fields on interfaces in 1.1 -->
  2165. <ajc-test dir="design/intro"
  2166. title="introduction of static methods and fields on classes and interfaces"
  2167. keywords="from-design,knownLimitation">
  2168. <compile files="Statics.java"/>
  2169. <run class="Statics"/>
  2170. </ajc-test>
  2171. <ajc-test dir="design/intro" pr="570"
  2172. title="correct inheritance of multiple concrete methods"
  2173. keywords="from-design">
  2174. <compile files="MultiInheritCP.java"/>
  2175. <run class="MultiInheritCP"/>
  2176. </ajc-test>
  2177. <ajc-test dir="design/intro" pr="570"
  2178. title="errors in inheritance of multiple concrete methods"
  2179. keywords="from-design">
  2180. <compile files="MultiInheritCF.java">
  2181. <message kind="error" line="21"/>
  2182. <message kind="error" line="41"/>
  2183. <message kind="error" line="42"/>
  2184. <message kind="error" line="43"/>
  2185. <message kind="error" line="45"/>
  2186. <message kind="error" line="46"/>
  2187. </compile>
  2188. </ajc-test>
  2189. <ajc-test dir="design/intro"
  2190. title="declared exceptions are checked correctly on intros (errors)">
  2191. <compile files="ExceptionsCF.java">
  2192. <message kind="error" line="8"/>
  2193. <message kind="error" line="23"/>
  2194. </compile>
  2195. </ajc-test>
  2196. <ajc-test dir="design/intro"
  2197. title="declared exceptions are checked correctly on intros">
  2198. <compile files="ExceptionsCP.java"/>
  2199. <run class="ExceptionsCP"/>
  2200. </ajc-test>
  2201. <ajc-test dir="design/reflect"
  2202. title="Joinpoint is not created for foo(String) when before() advice is present."
  2203. keywords="from-design">
  2204. <compile files="SimpleAround1.java"/>
  2205. <run class="SimpleAround1"/>
  2206. </ajc-test>
  2207. <ajc-test dir="design/eachobject"
  2208. title="more tests of eachobject with some difficult typing issues"
  2209. keywords="from-design">
  2210. <compile files="Tricky3.java"/>
  2211. <run class="Tricky3"/>
  2212. </ajc-test>
  2213. <ajc-test dir="design/eachobject"
  2214. title="eachobject: eachobject(receptions(...)) [eachobject]"
  2215. keywords="from-design">
  2216. <compile files="Tricky1.java"/>
  2217. <run class="Tricky1"/>
  2218. </ajc-test>
  2219. <ajc-test dir="design/reflect" title="Checking new joinpoints"
  2220. keywords="from-design">
  2221. <compile files="Coverage.java"/>
  2222. <run class="Coverage"/>
  2223. </ajc-test>
  2224. <ajc-test dir="design/eachobject"
  2225. title="eachobject: simple test [eachobject] (still)"
  2226. keywords="from-design">
  2227. <compile files="Simple.java"/>
  2228. <run class="Simple"/>
  2229. </ajc-test>
  2230. <ajc-test dir="design/intro"
  2231. title="scope issues with introduction (needs more work)"
  2232. keywords="from-design">
  2233. <compile files="p1/ScopeIssues.java,p1/C1.java"/>
  2234. <run class="p1.ScopeIssues"/>
  2235. </ajc-test>
  2236. <ajc-test dir="new"
  2237. title="properly make choice between cast and parenthesis in parser"
  2238. keywords="from-resolved_10x">
  2239. <compile files="JoinPointFields.java"/>
  2240. <run class="JoinPointFields"/>
  2241. </ajc-test>
  2242. <ajc-test dir="new" pr="96"
  2243. title="field from implemented interface not found in advice"
  2244. keywords="from-resolved_10x">
  2245. <compile files="FieldFromImplementsNotFound.java"/>
  2246. <run class="FieldFromImplementsNotFound"/>
  2247. </ajc-test>
  2248. <ajc-test dir="new"
  2249. title="make sure advice affects introduced methods and constructors"
  2250. keywords="from-resolved_10x">
  2251. <compile files="AdviceOnIntroduced.java"/>
  2252. <run class="AdviceOnIntroduced"/>
  2253. </ajc-test>
  2254. <ajc-test dir="new" title="new around construct"
  2255. keywords="from-resolved_10x">
  2256. <compile files="AroundAdvice.java"/>
  2257. <run class="AroundAdvice"/>
  2258. </ajc-test>
  2259. <ajc-test dir="new" pr="65" title="aspect redefines a parameter"
  2260. keywords="from-resolved_10x">
  2261. <compile files="AspectRedefinesParam.java"/>
  2262. <run class="AspectRedefinesParam"/>
  2263. </ajc-test>
  2264. <ajc-test dir="new" title="introducing extends and implements"
  2265. keywords="from-resolved_10x">
  2266. <compile files="HierarchyIntroductions.java"/>
  2267. <run class="HierarchyIntroductions"/>
  2268. </ajc-test>
  2269. <ajc-test dir="new" pr="104" title="(related) aspect on interface"
  2270. keywords="from-resolved_10x">
  2271. <compile files="AspectOnInterface.java"/>
  2272. <run class="AspectOnInterface"/>
  2273. </ajc-test>
  2274. <ajc-test dir="new" pr="106" title="advice and package visibility"
  2275. keywords="from-resolved_10x">
  2276. <compile
  2277. files="packagevisibility/PackagesAndAdvice.java,packagevisibility/testPackage/Class1.java,packagevisibility/testPackage/Class2.java"
  2278. options="-Xlint:ignore"/>
  2279. <run class="packagevisibility.PackagesAndAdvice"/>
  2280. </ajc-test>
  2281. <ajc-test dir="new" pr="106" title="advice and package visibility"
  2282. keywords="from-resolved_10x">
  2283. <compile
  2284. files="packagevisibility/PackagesAndAdviceCf.java,packagevisibility/testPackage/Class1.java,packagevisibility/testPackage/Class2.java"
  2285. options="-Xlint:error">
  2286. <message kind="error" line="29"/>
  2287. </compile>
  2288. </ajc-test>
  2289. <ajc-test dir="new" title="advice on implied empty constructor"
  2290. keywords="from-resolved_10x">
  2291. <compile files="AdviceOnEmptyConstructor.java"/>
  2292. <run class="AdviceOnEmptyConstructor"/>
  2293. </ajc-test>
  2294. <ajc-test dir="new" title="advice on * *(..) not mapping to initializers"
  2295. keywords="from-resolved_10x">
  2296. <compile files="InitializerAdvice.java"/>
  2297. <run class="InitializerAdvice"/>
  2298. </ajc-test>
  2299. <ajc-test dir="new"
  2300. title="three type declarations in the scope of an advice"
  2301. keywords="from-resolved_10x">
  2302. <compile files="TypeDeclInAdvice.java"/>
  2303. <run class="TypeDeclInAdvice"/>
  2304. </ajc-test>
  2305. <ajc-test dir="new" pr="129"
  2306. title="introduction fails on class with an inner class that extends or implements something"
  2307. keywords="from-resolved_10x">
  2308. <compile files="IntroductionFailsWithInnerClass.java"/>
  2309. <run class="IntroductionFailsWithInnerClass"/>
  2310. </ajc-test>
  2311. <ajc-test dir="new" pr="126"
  2312. title="checks that methods are introduced on the topmost class implemented"
  2313. keywords="from-resolved_10x">
  2314. <compile files="TopmostImplements.java"/>
  2315. <run class="TopmostImplements"/>
  2316. </ajc-test>
  2317. <ajc-test dir="new/arndAdvRet" pr="140"
  2318. title="a couple different returns from around advice"
  2319. keywords="from-resolved_10x">
  2320. <compile files="Driver.java"/>
  2321. <run class="Driver"/>
  2322. </ajc-test>
  2323. <ajc-test dir="new"
  2324. title="member finally advice paired with signature advice"
  2325. keywords="from-resolved_10x">
  2326. <compile files="TryErrors.java"/>
  2327. <run class="TryErrors"/>
  2328. </ajc-test>
  2329. <ajc-test dir="new" title="aspect of eachobject(instanceof(Interface))"
  2330. keywords="from-resolved_10x">
  2331. <compile files="AspectOfInterface.java"/>
  2332. <run class="AspectOfInterface"/>
  2333. </ajc-test>
  2334. <ajc-test dir="new/finalMemInit" pr="162"
  2335. title="final member initialization broken with JDK before 1.1.8"
  2336. keywords="from-resolved_10x">
  2337. <compile files="Driver.java"/>
  2338. <run class="Driver"/>
  2339. </ajc-test>
  2340. <ajc-test dir="new/packageNameClash" pr="205"
  2341. title="same package and var name clash in preprocessed code when aspectOf is used"
  2342. keywords="from-resolved_10x">
  2343. <compile files="otherpkg/Driver.java,pkg/Aspect1.java,pkg/Class1.java"/>
  2344. <run class="otherpkg.Driver"/>
  2345. </ajc-test>
  2346. <ajc-test dir="new/adviceOnStaticMeth" pr="221"
  2347. title="and PR#201 advice on static methods fails javac compile with this"
  2348. keywords="from-resolved_10x">
  2349. <compile files="Driver.java"/>
  2350. <run class="Driver"/>
  2351. </ajc-test>
  2352. <ajc-test dir="new"
  2353. title="non-static advice on inner class defined inside of method body"
  2354. keywords="from-resolved_10x">
  2355. <compile files="MethodInner.java"/>
  2356. <run class="MethodInner"/>
  2357. </ajc-test>
  2358. <ajc-test dir="new"
  2359. title="simple single-threaded eachcflow test (includes aspectOf)"
  2360. keywords="from-resolved_10x">
  2361. <compile files="Client.java"/>
  2362. <run class="Client"/>
  2363. </ajc-test>
  2364. <ajc-test dir="new/scopeTypingBug" pr="191"
  2365. title="bad type resolution when var reassigned in same scope"
  2366. keywords="from-resolved_10x">
  2367. <compile files="Driver.java"/>
  2368. <run class="Driver"/>
  2369. </ajc-test>
  2370. <ajc-test dir="new" pr="242"
  2371. title="generating the right throws clause for call-site advice (and around)"
  2372. keywords="from-resolved_10x">
  2373. <compile files="ComputedThrows.java"/>
  2374. <run class="ComputedThrows"/>
  2375. </ajc-test>
  2376. <ajc-test dir="new" pr="246"
  2377. title="advice on calls to static methods using several syntax"
  2378. keywords="from-resolved_10x">
  2379. <compile files="StaticCalls.java"/>
  2380. <run class="StaticCalls"/>
  2381. </ajc-test>
  2382. <ajc-test dir="new" pr="248"
  2383. title=", PR#249, PR#250 advice on constructor sites"
  2384. keywords="from-resolved_10x">
  2385. <compile files="NewSiteAdvice.java"/>
  2386. <run class="NewSiteAdvice"/>
  2387. </ajc-test>
  2388. <ajc-test dir="new" title="test after throwing advice in several ways"
  2389. keywords="from-resolved_10x">
  2390. <compile files="AfterThrowing.java"/>
  2391. <run class="AfterThrowing"/>
  2392. </ajc-test>
  2393. <ajc-test dir="new" title="fancy name patterns for method names"
  2394. keywords="from-resolved_10x">
  2395. <compile files="WildNames.java"/>
  2396. <run class="WildNames"/>
  2397. </ajc-test>
  2398. <ajc-test dir="design/calls" title="calls: calls(...)"
  2399. keywords="from-resolved_10x">
  2400. <compile files="Simple.java"/>
  2401. <run class="Simple"/>
  2402. </ajc-test>
  2403. <ajc-test dir="new/extraThrows" pr="259"
  2404. title="throws Exception clause is unnecessarily added to Driver.main method"
  2405. keywords="from-resolved_10x">
  2406. <compile files="Driver.java"/>
  2407. <run class="Driver"/>
  2408. </ajc-test>
  2409. <ajc-test dir="new/thisUsedInMain" pr="262"
  2410. title="javac fails when this is referenced in the static main method"
  2411. keywords="from-resolved_10x">
  2412. <compile files="Driver.java"/>
  2413. <run class="Driver"/>
  2414. </ajc-test>
  2415. <ajc-test dir="new/badCast" pr="275"
  2416. title="and 276 cast error generated by ajc when type not in signature"
  2417. keywords="from-resolved_10x">
  2418. <compile files="Driver.java"/>
  2419. <run class="Driver"/>
  2420. </ajc-test>
  2421. <ajc-test dir="new" pr="285"
  2422. title="calls to methods to which we don't have source"
  2423. keywords="from-resolved_10x">
  2424. <compile files="ExternalCalls.java"/>
  2425. <run class="ExternalCalls"/>
  2426. </ajc-test>
  2427. <ajc-test dir="new/beforeNotRun" pr="265" title="more aspect inheritance"
  2428. keywords="from-resolved_10x">
  2429. <compile files="Driver.java"/>
  2430. <run class="Driver"/>
  2431. </ajc-test>
  2432. <ajc-test dir="new" pr="310"
  2433. title="around and calls with both calling and called this params"
  2434. keywords="from-resolved_10x">
  2435. <compile files="AroundAndCalls.java"/>
  2436. <run class="AroundAndCalls"/>
  2437. </ajc-test>
  2438. <ajc-test dir="new/pointcutParameter" pr="290"
  2439. title="compiler crashes with eachobject and named pointcuts with parameters"
  2440. keywords="from-resolved_10x">
  2441. <compile files="Driver.java"/>
  2442. <run class="Driver"/>
  2443. </ajc-test>
  2444. <ajc-test dir="new/unqualifiedPointcutName" pr="304"
  2445. title="lookup rules for unqualified pointcut names"
  2446. keywords="from-resolved_10x">
  2447. <compile files="Driver.java"/>
  2448. <run class="Driver"/>
  2449. </ajc-test>
  2450. <ajc-test dir="new" pr="321"
  2451. title="eachcflow only instantiated if the aspect has some advice in it"
  2452. keywords="from-resolved_10x">
  2453. <compile files="CFlowNoAdvice.java"/>
  2454. <run class="CFlowNoAdvice"/>
  2455. </ajc-test>
  2456. <ajc-test dir="new" pr="309"
  2457. title="(DESIGN QUESTION) aspect of eachJVM advising its own initializer"
  2458. keywords="from-resolved_10x">
  2459. <compile files="EachJVMOnSelf.java"/>
  2460. <run class="EachJVMOnSelf"/>
  2461. </ajc-test>
  2462. <ajc-test dir="new" pr="302"
  2463. title="after returning advice on calls to constructors"
  2464. keywords="from-resolved_10x">
  2465. <compile files="AfterConstructorCalls.java"/>
  2466. <run class="AfterConstructorCalls"/>
  2467. </ajc-test>
  2468. <ajc-test dir="new"
  2469. title="Does annotating 'new' with a type work as desired?"
  2470. keywords="from-resolved_10x">
  2471. <compile files="ConstructorSignatures.java"/>
  2472. <run class="ConstructorSignatures"/>
  2473. </ajc-test>
  2474. <ajc-test dir="new"
  2475. title="Referring to inner classes as {super}.{inner} confused ajc."
  2476. keywords="from-resolved_10x">
  2477. <compile files="InnerClassNaming.java"/>
  2478. <run class="InnerClassNaming"/>
  2479. </ajc-test>
  2480. <ajc-test dir="new" title="Advice on advice" keywords="from-resolved_10x">
  2481. <compile files="AdviceOnAdvice.java"/>
  2482. <run class="AdviceOnAdvice"/>
  2483. </ajc-test>
  2484. <ajc-test dir="new" title="Introductions on other introductions"
  2485. keywords="from-resolved_10x">
  2486. <compile files="IntroOnIntro.java"/>
  2487. <run class="IntroOnIntro"/>
  2488. </ajc-test>
  2489. <ajc-test dir="new" title="Putting advice on array constructors."
  2490. keywords="from-resolved_10x">
  2491. <compile files="Orleans.java"/>
  2492. <run class="Orleans"/>
  2493. </ajc-test>
  2494. <ajc-test dir="new"
  2495. title="call points within block inner classes are doubled"
  2496. keywords="from-resolved_10x">
  2497. <compile files="DoubledCalls.java"/>
  2498. <run class="DoubledCalls"/>
  2499. </ajc-test>
  2500. <ajc-test dir="new" title="Gets and sets with other advice"
  2501. keywords="from-resolved_10x">
  2502. <compile files="Counting3.java"/>
  2503. <run class="Counting3"/>
  2504. </ajc-test>
  2505. <ajc-test dir="new" title="Compiler can compile correct strictfp modifiers"
  2506. keywords="from-resolved_10x">
  2507. <compile files="StrictFpCompile.java"/>
  2508. <run class="StrictFpCompile"/>
  2509. </ajc-test>
  2510. <ajc-test dir="new" title="basic test of callsto pointcuts"
  2511. keywords="from-resolved_10x">
  2512. <compile files="CallsTo.java"/>
  2513. <run class="CallsTo"/>
  2514. </ajc-test>
  2515. <ajc-test dir="new" title="package wildcards in packages"
  2516. keywords="from-resolved_10x">
  2517. <compile files="pack/PackageWildcards.java"/>
  2518. <run class="pack.PackageWildcards"/>
  2519. </ajc-test>
  2520. <!-- only before advice implemented for handler join points in 1.1 -->
  2521. <ajc-test dir="new" title="advice on catch clauses"
  2522. keywords="from-resolved_10x,knownLimitation">
  2523. <compile files="CatchAdvice.java"/>
  2524. <run class="CatchAdvice"/>
  2525. </ajc-test>
  2526. <ajc-test dir="new"
  2527. title="around advice on calls and receptions with lots of context"
  2528. keywords="from-resolved_10x">
  2529. <compile files="AroundCalls.java"/>
  2530. <run class="AroundCalls"/>
  2531. </ajc-test>
  2532. <ajc-test dir="new" pr="208"
  2533. title="! modifier and char in pointcut (no longer an error)"
  2534. keywords="from-resolved_10x">
  2535. <compile files="NotCharInPointcut.java"/>
  2536. <run class="NotCharInPointcut"/>
  2537. </ajc-test>
  2538. <ajc-test dir="new" pr="308"
  2539. title="right number of aspect instances per cflow"
  2540. keywords="from-resolved_10x">
  2541. <compile files="CFlowObjects.java"/>
  2542. <run class="CFlowObjects"/>
  2543. </ajc-test>
  2544. <ajc-test dir="new" pr="310" title="many this's into around advice on calls"
  2545. keywords="from-resolved_10x">
  2546. <compile files="AroundCallsArgs.java"/>
  2547. <run class="AroundCallsArgs"/>
  2548. </ajc-test>
  2549. <ajc-test dir="new"
  2550. title="Ensures introduction methods can have advice placed on them"
  2551. keywords="from-resolved_10x">
  2552. <compile files="Dominates.java"/>
  2553. <run class="Dominates"/>
  2554. </ajc-test>
  2555. <ajc-test dir="new" pr="355"
  2556. title="No boolean appearing in the 'if' clause for around advice with eachJVM()"
  2557. keywords="from-resolved_10x">
  2558. <compile files="PR355.java"/>
  2559. <run class="PR355"/>
  2560. </ajc-test>
  2561. <ajc-test dir="new" title="Order of super introductions."
  2562. keywords="from-resolved_10x">
  2563. <compile files="OrderOfExtendsPlusAndImplementsPlus.java"/>
  2564. <run class="OrderOfExtendsPlusAndImplementsPlus"/>
  2565. </ajc-test>
  2566. <ajc-test dir="new" title="Ensuring backdoor methods are produced."
  2567. keywords="from-resolved_10x">
  2568. <compile files="BackdoorMethods.java"/>
  2569. <run class="BackdoorMethods"/>
  2570. </ajc-test>
  2571. <ajc-test dir="new"
  2572. title="no duplicate advice methods in abstract aspects"
  2573. keywords="from-resolved_10x">
  2574. <compile
  2575. files="GeneratingDuplicateNamedAdviceMethodsInAbstractAspects.java"/>
  2576. <run class="GeneratingDuplicateNamedAdviceMethodsInAbstractAspects"/>
  2577. </ajc-test>
  2578. <ajc-test dir="new"
  2579. title="no duplicate advice methods in abstract aspects extended"
  2580. keywords="from-resolved_10x">
  2581. <compile
  2582. files="GeneratingDuplicateNamedAdviceMethodsInAbstractAspectsWithExtendedAspect.java"/>
  2583. <run class="GeneratingDuplicateNamedAdviceMethodsInAbstractAspectsWithExtendedAspect"
  2584. />
  2585. </ajc-test>
  2586. <ajc-test dir="new"
  2587. title="Putting after-constructor advice on the wrong types implementing the same interface."
  2588. keywords="from-resolved_10x">
  2589. <compile files="AfterAdviceOnConstructorsOnTheWrongType.java"/>
  2590. <run class="AfterAdviceOnConstructorsOnTheWrongType"/>
  2591. </ajc-test>
  2592. <ajc-test dir="new"
  2593. title="Instantiating non-static inner classes in advice."
  2594. keywords="from-resolved_10x">
  2595. <compile files="NonstaticInnerClassesInAspects.java"/>
  2596. <run class="NonstaticInnerClassesInAspects"/>
  2597. </ajc-test>
  2598. <ajc-test dir="new" pr="316" title="Referring to pointcut in of clauses"
  2599. keywords="from-resolved_10x">
  2600. <compile files="ReferringToPointcutsInAspect_PR316.java"/>
  2601. <run class="ReferringToPointcutsInAspect_PR316"/>
  2602. </ajc-test>
  2603. <ajc-test dir="new" pr="191"
  2604. title="Confused referring to instance variables and locals"
  2605. keywords="from-resolved_10x">
  2606. <compile files="ScopesAndFields_PR191.java"/>
  2607. <run class="ScopesAndFields_PR191"/>
  2608. </ajc-test>
  2609. <ajc-test dir="new"
  2610. title="Parsing C+ expressions without parens in super introductions."
  2611. keywords="from-resolved_10x">
  2612. <compile files="ParsingSubtypesIntroductions.java"/>
  2613. <run class="ParsingSubtypesIntroductions"/>
  2614. </ajc-test>
  2615. <ajc-test dir="new"
  2616. title="Introducing methods on classes that implements inner-interfaces with +implements."
  2617. keywords="from-resolved_10x">
  2618. <compile files="IntroducingMethodsOnPlusImplementedInterfaces.java" options="-Xlint:ignore"/>
  2619. <run class="IntroducingMethodsOnPlusImplementedInterfaces"/>
  2620. </ajc-test>
  2621. <ajc-test dir="new" pr="464"
  2622. title="Methods with the same name are generated when abstract aspects extend another abstract aspect."
  2623. keywords="from-resolved_10x">
  2624. <compile
  2625. files="AbstractAspectsExtendingAbstractAspectsGeneratesMethodsWithTheSameName_PR464.java"/>
  2626. <run class="AbstractAspectsExtendingAbstractAspectsGeneratesMethodsWithTheSameName_PR464"
  2627. />
  2628. </ajc-test>
  2629. <ajc-test dir="new" title="Making sure final variables stay final."
  2630. keywords="from-resolved_10x">
  2631. <compile files="RemovingFinals.java"/>
  2632. <run class="RemovingFinals"/>
  2633. </ajc-test>
  2634. <ajc-test dir="new"
  2635. title="Problem resolving meta-joinpoint names with around advice on methods called from around advice."
  2636. keywords="from-resolved_10x">
  2637. <compile files="AroundAdviceOnMethodsCalledInAroundAdvice.java"/>
  2638. <run class="AroundAdviceOnMethodsCalledInAroundAdvice"/>
  2639. </ajc-test>
  2640. <ajc-test dir="new"
  2641. title="Make sure that names of lifted local classes are right when referenced in call-site advice"
  2642. keywords="from-resolved_10x">
  2643. <compile files="CallsAndLocalClasses.java"/>
  2644. <run class="CallsAndLocalClasses"/>
  2645. </ajc-test>
  2646. <ajc-test dir="new" title="matching for throws clause"
  2647. keywords="from-resolved_10x">
  2648. <compile files="ThrowsMatching.java"/>
  2649. <run class="ThrowsMatching"/>
  2650. </ajc-test>
  2651. <!-- we will handle this by signalling a weave-time error for any around
  2652. advice that is applied to a join point which throws checked exceptions
  2653. that it can't handle. proceeds in closures change the exceptions that
  2654. around advice can handle to include the greatest lower bound of the
  2655. checked exceptions that are legally throwable by the proceed.
  2656. Ideally their should be an -Xlint compile-time warning for ALL
  2657. cases that could produce weave-time errors.
  2658. -->
  2659. <ajc-test dir="new" title="holding onto proceed calls in a closure-like way"
  2660. keywords="from-resolved_10x,knownLimitation">
  2661. <compile files="HoldProceed.java"/>
  2662. <run class="HoldProceed"/>
  2663. </ajc-test>
  2664. <ajc-test dir="new" title="basic test of declare soft"
  2665. keywords="from-resolved_10x">
  2666. <compile files="DeclareSoft.java"/>
  2667. <run class="DeclareSoft"/>
  2668. </ajc-test>
  2669. <ajc-test dir="new"
  2670. title="advice on calls to constructors of anonymous inners and access to context"
  2671. keywords="from-resolved_10x">
  2672. <compile files="NewAnonymous.java"/>
  2673. <run class="NewAnonymous"/>
  2674. </ajc-test>
  2675. <ajc-test dir="new" title="Cannot bind a name." keywords="from-resolved_10x">
  2676. <compile files="CannotReferenceSuper.java"/>
  2677. <run class="CannotReferenceSuper"/>
  2678. </ajc-test>
  2679. <ajc-test dir="new/innerAspectAccess" pr="211"
  2680. title="inner aspects can't access outer pointcuts"
  2681. keywords="from-resolved_10x">
  2682. <compile files="Driver.java"/>
  2683. <run class="Driver"/>
  2684. </ajc-test>
  2685. <ajc-test dir="new"
  2686. title="implements and extends are introduced before methods and fields"
  2687. keywords="from-resolved_10x">
  2688. <compile files="IntroOrder.java"/>
  2689. <run class="IntroOrder"/>
  2690. </ajc-test>
  2691. <ajc-test dir="new"
  2692. title="a static/inner aspect of a inner class of an aspect is pulled to the top level as static"
  2693. keywords="from-resolved_10x">
  2694. <compile files="StaticInnerAspect.java"/>
  2695. <run class="StaticInnerAspect"/>
  2696. </ajc-test>
  2697. <ajc-test dir="new" title="Crashes with privileged aspect."
  2698. keywords="from-resolved_10x">
  2699. <compile files="Privileged.java"/>
  2700. <run class="Privileged"/>
  2701. </ajc-test>
  2702. <ajc-test dir="new"
  2703. title="join points exist in the execution of field initializers"
  2704. keywords="from-resolved_10x">
  2705. <compile files="FieldInitializerJoinPoints.java"/>
  2706. <run class="FieldInitializerJoinPoints"/>
  2707. </ajc-test>
  2708. <ajc-test dir="new/privilegedAspects" title="privileged aspects"
  2709. keywords="from-resolved_10x">
  2710. <compile
  2711. files="main/Main.java,fish/PrivateClass.java,fish/B.java,fowl/C.java,fowl/D.java"/>
  2712. <run class="main.Main"/>
  2713. </ajc-test>
  2714. <ajc-test dir="new" title="advice on field gets in privileged aspects"
  2715. keywords="from-resolved_10x">
  2716. <compile files="AdviceOnPrivileged.java"/>
  2717. <run class="AdviceOnPrivileged"/>
  2718. </ajc-test>
  2719. <ajc-test dir="new" title="Two anonymous classes in the same scope"
  2720. keywords="from-resolved_10x">
  2721. <compile files="TwoAnonymous.java"/>
  2722. <run class="TwoAnonymous"/>
  2723. </ajc-test>
  2724. <ajc-test dir="new"
  2725. title="basic tests for initializer and staticinitializer PCDs"
  2726. keywords="from-resolved_10x">
  2727. <compile files="InitializerTest.java"/>
  2728. <run class="InitializerTest"/>
  2729. </ajc-test>
  2730. <ajc-test dir="new" pr="98"
  2731. title="introduction of an initializer into a class"
  2732. keywords="from-resolved_10x">
  2733. <compile files="IntroductionOfInitializer.java"/>
  2734. <run class="IntroductionOfInitializer"/>
  2735. </ajc-test>
  2736. <ajc-test dir="new/access"
  2737. title="some method accessibility tests, particularly package-protected and inheritance"
  2738. keywords="from-resolved_10x">
  2739. <compile files="Test1.java,pc/C.java,psub/SubC.java,psub/A.java"/>
  2740. <run class="Test1"/>
  2741. </ajc-test>
  2742. <ajc-test dir="new"
  2743. title="fairly monotonous (and non-covering) tests for expanded dot patterns"
  2744. keywords="from-resolved_10x">
  2745. <compile files="ExpandedDotDotPattern.java"/>
  2746. <run class="ExpandedDotDotPattern"/>
  2747. </ajc-test>
  2748. <ajc-test dir="new" title="field patterns and subtyping"
  2749. keywords="from-resolved_10x">
  2750. <compile files="FieldPatterns.java"/>
  2751. <run class="FieldPatterns"/>
  2752. </ajc-test>
  2753. <ajc-test dir="new"
  2754. title="Checking formal matching as in Roeder's bug in 0.7b10"
  2755. keywords="from-resolved_10x">
  2756. <compile files="FormalMatching.java"/>
  2757. <run class="FormalMatching"/>
  2758. </ajc-test>
  2759. <ajc-test dir="new" title="Introducing synchronized methods on interfaces."
  2760. keywords="from-resolved_10x">
  2761. <compile files="SynchronizedMethodsOnInterfaces.java"/>
  2762. <run class="SynchronizedMethodsOnInterfaces"/>
  2763. </ajc-test>
  2764. <ajc-test dir="new"
  2765. title="The pointcut params (..,int..) is not recognizing (Object,int,Object)."
  2766. keywords="from-resolved_10x">
  2767. <compile files="Params.java"/>
  2768. <run class="Params"/>
  2769. </ajc-test>
  2770. <ajc-test dir="new"
  2771. title="calls advice on array objects causes error in code generation"
  2772. keywords="from-resolved_10x">
  2773. <compile files="CallsToArray.java"/>
  2774. <run class="CallsToArray"/>
  2775. </ajc-test>
  2776. <ajc-test dir="new"
  2777. title="join points in field initializers aren't showing up."
  2778. keywords="from-resolved_10x">
  2779. <compile files="NonexistentFieldInitializers.java"/>
  2780. <run class="NonexistentFieldInitializers"/>
  2781. </ajc-test>
  2782. <ajc-test dir="new" pr="318" title="Handlers problem"
  2783. keywords="from-resolved_10x">
  2784. <compile files="PR318.java"/>
  2785. <run class="PR318"/>
  2786. </ajc-test>
  2787. <ajc-test dir="new"
  2788. title="work nicely with inner class method look-up rules and call-site advice"
  2789. keywords="from-resolved_10x">
  2790. <compile files="InnerMethods.java"/>
  2791. <run class="InnerMethods"/>
  2792. </ajc-test>
  2793. <ajc-test dir="new" title="strictfp modifier allowed on advice"
  2794. keywords="from-resolved_10x">
  2795. <compile files="StrictFPAdvice.java"/>
  2796. <run class="StrictFPAdvice"/>
  2797. </ajc-test>
  2798. <ajc-test dir="new" pr="415"
  2799. title="No argthis was being created for calls advice."
  2800. keywords="from-resolved_10x">
  2801. <compile files="PR415.java"/>
  2802. <run class="PR415"/>
  2803. </ajc-test>
  2804. <ajc-test dir="new"
  2805. title="Ensuring no advice with instanceof(..) is run on static methods."
  2806. keywords="from-resolved_10x">
  2807. <compile files="StaticMethodsShouldNotReceiveInstanceofAdvice.java"/>
  2808. <run class="StaticMethodsShouldNotReceiveInstanceofAdvice"/>
  2809. </ajc-test>
  2810. <ajc-test dir="new"
  2811. title="Null pointer on gets advice showing the case causing the error"
  2812. keywords="from-resolved_10x">
  2813. <compile files="NullPointerOnGetsSimple.java"/>
  2814. <run class="NullPointerOnGetsSimple"/>
  2815. </ajc-test>
  2816. <ajc-test dir="new"
  2817. title="try to make sure that dynamic JoinPoint objects aren't generated when used inside of if (false) { ... }"
  2818. keywords="from-resolved_10x">
  2819. <compile files="IfdefsAndAdvice.java"/>
  2820. <run class="IfdefsAndAdvice"/>
  2821. </ajc-test>
  2822. <ajc-test dir="new"
  2823. title="within and withincode (doesn't all work due to local class name issues)"
  2824. keywords="from-resolved_10x">
  2825. <compile files="WithinInners.java"/>
  2826. <run class="WithinInners"/>
  2827. </ajc-test>
  2828. <ajc-test dir="new"
  2829. title="around advice on calls within inner classes (including protected method calls)"
  2830. keywords="from-resolved_10x">
  2831. <compile files="AroundInnerCalls.java"/>
  2832. <run class="AroundInnerCalls"/>
  2833. </ajc-test>
  2834. <ajc-test dir="new" title="Arguments to runNext should be final when needed"
  2835. keywords="from-resolved_10x">
  2836. <compile files="Finals.java"/>
  2837. <run class="Finals"/>
  2838. </ajc-test>
  2839. <ajc-test dir="new" title="Method introductions"
  2840. keywords="from-resolved_10x">
  2841. <compile files="MethodIntroductions.java"/>
  2842. <run class="MethodIntroductions"/>
  2843. </ajc-test>
  2844. <ajc-test dir="new" title="Putting an introduced method on each interface"
  2845. keywords="from-resolved_10x">
  2846. <compile files="IntroducedMethodsOnEachInterface.java"/>
  2847. <run class="IntroducedMethodsOnEachInterface"/>
  2848. </ajc-test>
  2849. <ajc-test dir="new" title="Extending interfaces"
  2850. keywords="from-resolved_10x">
  2851. <compile files="BindingInterfaces.java"/>
  2852. <run class="BindingInterfaces"/>
  2853. </ajc-test>
  2854. <ajc-test dir="new" title="Introducing private methods on interfaces"
  2855. keywords="from-resolved_10x">
  2856. <compile files="IntroducingPrivateMethodsOnInterfaces.java"/>
  2857. <run class="IntroducingPrivateMethodsOnInterfaces"/>
  2858. </ajc-test>
  2859. <ajc-test dir="new"
  2860. title="Issuing errors for assigning variables thisJoinPoint -- not assigning thisJoinPoint."
  2861. keywords="from-resolved_10x">
  2862. <compile files="ThisJoinPointAssignments.java"/>
  2863. <run class="ThisJoinPointAssignments"/>
  2864. </ajc-test>
  2865. <ajc-test dir="new"
  2866. title="Static references inside of introduced bodies get bound correctly."
  2867. keywords="from-resolved_10x">
  2868. <compile files="StaticIntroducedReferences.java"/>
  2869. <run class="StaticIntroducedReferences"/>
  2870. </ajc-test>
  2871. <ajc-test dir="new/cflowObjectCreations" pr="307"
  2872. title="cflow and object creations [of eachcflow]"
  2873. keywords="from-resolved_10x">
  2874. <compile files="Driver.java"/>
  2875. <run class="Driver"/>
  2876. </ajc-test>
  2877. <ajc-test dir="new/twofiles"
  2878. title="Doesn't import MightHaveAspect when compiling with more than 1 file. [eachobject]"
  2879. keywords="from-resolved_10x">
  2880. <compile files="TheObject.java,TheAspect.java"/>
  2881. <run class="TheObject"/>
  2882. </ajc-test>
  2883. <ajc-test dir="new" pr="436"
  2884. title="test binding to formals in calls to constructors (binding to null) (eachobject !!! now misnamed)"
  2885. keywords="from-resolved_10x">
  2886. <compile files="BindingThisInsteadOfFormal.java"/>
  2887. <run class="BindingThisInsteadOfFormal"/>
  2888. </ajc-test>
  2889. <ajc-test dir="new"
  2890. title="After advice isn't being woven into after throwing advice"
  2891. keywords="from-resolved_10x">
  2892. <compile files="AfterThrowingNotWoven.java"/>
  2893. <run class="AfterThrowingNotWoven"/>
  2894. </ajc-test>
  2895. <ajc-test dir="new" title="Throwing an EmptyStackException."
  2896. keywords="from-resolved_10x">
  2897. <compile files="EmptyStack.java"/>
  2898. <run class="EmptyStack"/>
  2899. </ajc-test>
  2900. <ajc-test dir="new"
  2901. title="check that MightHaveAspect interface is created correctly for an aspect in deep package"
  2902. keywords="from-resolved_10x">
  2903. <compile files="EachObjectTarget.java,EachObjectInDeepPackage.java"/>
  2904. <run class="EachObjectTarget"/>
  2905. </ajc-test>
  2906. <ajc-test dir="new" title="Defines clfow$ajc0 more once. [eachcflow]"
  2907. keywords="from-resolved_10x">
  2908. <compile files="Binkley.java"/>
  2909. <run class="Binkley"/>
  2910. </ajc-test>
  2911. <ajc-test dir="new"
  2912. title="Various calls, receptions, and callsto tests [callsto]"
  2913. keywords="from-resolved_10x">
  2914. <compile files="CallsReceptionsCallsto.java"/>
  2915. <run class="CallsReceptionsCallsto"/>
  2916. </ajc-test>
  2917. <ajc-test dir="new" pr="320"
  2918. title="Was throwing exception, now just an error. [eachobject]"
  2919. keywords="from-resolved_10x">
  2920. <compile files="PR320.java"/>
  2921. <run class="PR320"/>
  2922. </ajc-test>
  2923. <ajc-test dir="new"
  2924. title="different version of aspect inheritance, particularly empty pointcuts and abstract cflows [eachcflow]"
  2925. keywords="from-resolved_10x,fail-unimplemented">
  2926. <compile files="AspectInheritance.java"/>
  2927. <run class="AspectInheritance"/>
  2928. </ajc-test>
  2929. <ajc-test dir="new" pr="339"
  2930. title="set advice on member initing throwing exception [eachobject]"
  2931. keywords="from-resolved_10x">
  2932. <compile files="PR339.java"/>
  2933. <run class="PR339"/>
  2934. </ajc-test>
  2935. <ajc-test dir="new" pr="417"
  2936. title="Testing class names with same name's with difference case as package. [eachobject]"
  2937. keywords="from-resolved_10x">
  2938. <compile files="test/TraceAspect.java,test/Test.java"/>
  2939. <run class="test.Test"/>
  2940. </ajc-test>
  2941. <ajc-test dir="new"
  2942. title="Null pointer on gets advice with coverage [painful]"
  2943. keywords="from-resolved_10x">
  2944. <compile files="NullPointerOnGets.java"/>
  2945. <run class="NullPointerOnGets"/>
  2946. </ajc-test>
  2947. <ajc-test dir="new" title="Basic test for cflow pointcuts [eachcflow]"
  2948. keywords="from-resolved_10x">
  2949. <compile files="CFlowPoints.java"/>
  2950. <run class="CFlowPoints"/>
  2951. </ajc-test>
  2952. <ajc-test dir="new"
  2953. title="Crashing when looking up the type of array members."
  2954. keywords="from-resolved_10x">
  2955. <compile files="ArrayCasts.java"/>
  2956. <run class="ArrayCasts"/>
  2957. </ajc-test>
  2958. <ajc-test dir="new"
  2959. title="PostfixExprs to various synthetic things are fixed correctly [eachobject]"
  2960. keywords="from-resolved_10x">
  2961. <compile files="Fixes.java"/>
  2962. <run class="Fixes"/>
  2963. </ajc-test>
  2964. <ajc-test dir="new"
  2965. title="Dave Binkley's problem with eachcflowroot. [eachcflow]"
  2966. keywords="from-resolved_10x">
  2967. <compile files="Binkley2.java"/>
  2968. <run class="Binkley2"/>
  2969. </ajc-test>
  2970. <ajc-test dir="new" pr="105" title="advice on an inherited method"
  2971. keywords="from-resolved_10x">
  2972. <compile files="AdviceOnInheritedMethod.java"/>
  2973. <run class="AdviceOnInheritedMethod"/>
  2974. </ajc-test>
  2975. <ajc-test dir="new" pr="114"
  2976. title=", PR#115 checks the ordering of catch clauses"
  2977. keywords="from-resolved_10x">
  2978. <compile files="OrderOfCatches.java"/>
  2979. <run class="OrderOfCatches"/>
  2980. </ajc-test>
  2981. <ajc-test dir="new" title="various declared exception permutations"
  2982. keywords="from-resolved_10x">
  2983. <compile files="DeclaredExcs.java"/>
  2984. <run class="DeclaredExcs"/>
  2985. </ajc-test>
  2986. <ajc-test dir="new"
  2987. title="ordering of advice kinds as well as cflow and dominates"
  2988. keywords="from-resolved_10x">
  2989. <compile files="AdviceOrdering.java"/>
  2990. <run class="AdviceOrdering"/>
  2991. </ajc-test>
  2992. <ajc-test dir="new" pr="241"
  2993. title="advice on default constructor for a class only referenced via reflection"
  2994. keywords="from-resolved_10x">
  2995. <compile files="OddConstructors.java"/>
  2996. <run class="OddConstructors"/>
  2997. </ajc-test>
  2998. <ajc-test dir="new" pr="289"
  2999. title="calling and called this params in calls points"
  3000. keywords="from-resolved_10x">
  3001. <compile files="CallsParams.java"/>
  3002. <run class="CallsParams"/>
  3003. </ajc-test>
  3004. <ajc-test dir="new" pr="322"
  3005. title="primitive parameters coercable to Object just like return values are"
  3006. keywords="from-resolved_10x">
  3007. <compile files="ObjectForInt.java"/>
  3008. <run class="ObjectForInt"/>
  3009. </ajc-test>
  3010. <!-- This test case requires bytecode generated according to the declaring type
  3011. rules in JLS 2nd edition. -1.4 must be passed to the eclipse compiler for
  3012. this behavior. -->
  3013. <ajc-test dir="new"
  3014. title="Does the matrix coverage thing for the new method signatures"
  3015. keywords="from-resolved_10x">
  3016. <compile files="MethodSignatures.java" options="-1.4"/>
  3017. <run class="MethodSignatures" vm="1.4"/>
  3018. </ajc-test>
  3019. <ajc-test dir="new"
  3020. title="join points in static/dynamic initializers aren't showing up."
  3021. keywords="from-resolved_10x">
  3022. <compile files="NonexistentInitializers.java"/>
  3023. <run class="NonexistentInitializers"/>
  3024. </ajc-test>
  3025. <ajc-test dir="new"
  3026. title="Gets and sets on a number of variables (field access ???)"
  3027. keywords="from-resolved_10x">
  3028. <compile files="Gets.java"/>
  3029. <run class="Gets"/>
  3030. </ajc-test>
  3031. <!-- This test case requires bytecode generated according to the declaring type
  3032. rules in JLS 2nd edition. -1.4 must be passed to the eclipse compiler for
  3033. this behavior. -->
  3034. <ajc-test dir="new" title="correct types of parameters at call-sites"
  3035. keywords="from-resolved_10x">
  3036. <compile files="CallTypes.java" options="-1.4"/>
  3037. <run class="CallTypes" vm="1.4"/>
  3038. </ajc-test>
  3039. <ajc-test dir="new"
  3040. title="Joinpoints are showing up on intermediate call sites"
  3041. keywords="from-resolved_10x">
  3042. <compile files="Counting1.java"/>
  3043. <run class="Counting1"/>
  3044. </ajc-test>
  3045. <ajc-test dir="new" title="Reception based on strictfp modifier"
  3046. keywords="from-resolved_10x">
  3047. <compile files="StrictFpReceptions.java"/>
  3048. <run class="StrictFpReceptions"/>
  3049. </ajc-test>
  3050. <ajc-test dir="new" pr="353"
  3051. title="Subclasses that do not redefine a method are not being handled correctly"
  3052. keywords="from-resolved_10x">
  3053. <compile files="PR353b.java"/>
  3054. <run class="PR353b"/>
  3055. </ajc-test>
  3056. <ajc-test dir="new"
  3057. title="making sure that super calls are bound to the right methods"
  3058. keywords="from-resolved_10x">
  3059. <compile files="SupersAndInterfaces.java"/>
  3060. <run class="SupersAndInterfaces"/>
  3061. </ajc-test>
  3062. <ajc-test dir="new" pr="317"
  3063. title="inheritance, around advice and abstract pointcuts [eachobject] (still)"
  3064. keywords="from-resolved_10x">
  3065. <compile files="OverridingPointcuts.java"/>
  3066. <run class="OverridingPointcuts"/>
  3067. </ajc-test>
  3068. <ajc-test dir="new/foemmel"
  3069. title="Priviledged aspect methods are missing for privates. [eachobject]"
  3070. keywords="from-resolved_10x">
  3071. <compile files="TheAspect.java,TheObject.java">
  3072. </compile>
  3073. <run class="TheObject"/>
  3074. </ajc-test>
  3075. <ajc-test dir="new"
  3076. title="exceptions thrown and caught in advice, particularly try+proceed"
  3077. keywords="from-resolved_10x">
  3078. <compile files="TryAndProceed.java"/>
  3079. <run class="TryAndProceed"/>
  3080. </ajc-test>
  3081. <ajc-test dir="new" title="Not and And operators in pointcuts not working"
  3082. keywords="from-resolved_10x">
  3083. <compile files="NotAndPointcut.java"/>
  3084. <run class="NotAndPointcut"/>
  3085. </ajc-test>
  3086. <ajc-test dir="new"
  3087. title="Member initializers should run before the current class constructor"
  3088. keywords="from-resolved_10x">
  3089. <compile files="MemberInitializationsAfterExplicitConstructorCalls.java"/>
  3090. <run class="MemberInitializationsAfterExplicitConstructorCalls"/>
  3091. </ajc-test>
  3092. <ajc-test dir="new"
  3093. title="Coverage tests for Member initializers should run before the current class constructor and after super"
  3094. keywords="from-resolved_10x">
  3095. <compile
  3096. files="MemberInitializationsAfterExplicitConstructorCallsCoverage.java"/>
  3097. <run class="MemberInitializationsAfterExplicitConstructorCallsCoverage"/>
  3098. </ajc-test>
  3099. <ajc-test dir="new"
  3100. title="thisJoinPoint{Static} not visible in if() pcd of named pointcut"
  3101. keywords="from-resolved_10x">
  3102. <compile files="IfPCDExprJoinPointVisibleCE.java"/>
  3103. <run class="IfPCDExprJoinPointVisibleCE"/>
  3104. </ajc-test>
  3105. <ajc-test dir="new"
  3106. title="pcd if() expression visibility at compile-time (minimal operation)"
  3107. keywords="from-resolved_10x">
  3108. <compile files="IfPCDExprVisibility.java" options="-Xlint:ignore"/>
  3109. <run class="IfPCDExprVisibility"/>
  3110. </ajc-test>
  3111. <ajc-test dir="new"
  3112. title="pcd if() NPE in compiler when unwinding assignment in pcd if(expr)"
  3113. keywords="from-resolved_10x">
  3114. <compile files="IfPCDExprAssignUnparseFailure.java"/>
  3115. <run class="IfPCDExprAssignUnparseFailure"/>
  3116. </ajc-test>
  3117. <ajc-test dir="new"
  3118. title="pcd if() dup methods produced when pointcut after advice etc (javac)"
  3119. keywords="from-resolved_10x">
  3120. <compile files="IfPCDDupMethod.java"/>
  3121. <run class="IfPCDDupMethod"/>
  3122. </ajc-test>
  3123. <ajc-test dir="new"
  3124. title="pcd if() variants: [anonymous, named] x [execution, call, callTyped, get, set, initializations] x [before, after, around]"
  3125. keywords="from-resolved_10x">
  3126. <compile files="IfPCDAdviceMethods.java"/>
  3127. <run class="IfPCDAdviceMethods"/>
  3128. </ajc-test>
  3129. <ajc-test dir="new/pr456" pr="456" title="advice on advice in usejavac mode"
  3130. keywords="from-resolved_10x">
  3131. <compile options="-usejavac"
  3132. files="Test_AroundVarBug.java,AroundVarBug.java"/>
  3133. <run class="Test_AroundVarBug"/>
  3134. </ajc-test>
  3135. <ajc-test dir="new" pr="476" title="initialization order with this"
  3136. keywords="from-resolved_10x">
  3137. <compile files="InitializationOrder.java"/>
  3138. <run class="InitializationOrder"/>
  3139. </ajc-test>
  3140. <ajc-test dir="new" pr="496"
  3141. title="!within and !this handling for callee-side call points"
  3142. keywords="from-resolved_10x">
  3143. <compile files="NotThis.java"/>
  3144. <run class="NotThis"/>
  3145. </ajc-test>
  3146. <ajc-test dir="new/innerInterfaces" pr="494"
  3147. title="private inner interfaces and bytecode visibility"
  3148. keywords="from-resolved_10x">
  3149. <compile files="p/Driver.java,p/InnerTest.java,other/Test.java"/>
  3150. <run class="p.Driver"/>
  3151. </ajc-test>
  3152. <!-- This has a complicated set of expected join points.
  3153. This test should be borken up into more manageable chunks
  3154. and more carefully analyzed for correctness in the future.
  3155. -->
  3156. <ajc-test dir="new" pr="490"
  3157. title="elaborated into testing of around on all join points"
  3158. keywords="from-resolved_10x">
  3159. <compile files="AroundAll.java"/>
  3160. <run class="AroundAll"/>
  3161. </ajc-test>
  3162. <ajc-test dir="new"
  3163. title="type name hygiene when code comes from aspects in different packages"
  3164. keywords="from-resolved_10x">
  3165. <compile
  3166. files="typeNameConflicts/Driver.java,typeNameConflicts/p1/C.java,typeNameConflicts/aspects/A.java"/>
  3167. <run class="typeNameConflicts.Driver"/>
  3168. </ajc-test>
  3169. <ajc-test dir="new" title="cflowbelow dependencies (from Chris Dutchyn)"
  3170. keywords="from-resolved_10x">
  3171. <compile files="CflowBelowTest.java"/>
  3172. <run class="CflowBelowTest"/>
  3173. </ajc-test>
  3174. <!-- This test case requires bytecode generated according to the declaring type
  3175. rules in JLS 2nd edition. -1.4 must be passed to the eclipse compiler for
  3176. this behavior. That means that this case will only work under 1.4. -->
  3177. <ajc-test dir="new"
  3178. title="target type matching with messy interface hierarchies"
  3179. keywords="from-resolved_10x">
  3180. <compile files="CallTypesI.java" options="-1.4"/>
  3181. <run class="CallTypesI" vm="1.4"/>
  3182. </ajc-test>
  3183. <!-- around advice not implemented on initializer join points -->
  3184. <ajc-test dir="new" pr="490"
  3185. title="PR#458 Compiler was incorrectly flagging error in advice on initialization and static initialization"
  3186. keywords="from-resolved_10x,knownLimitation">
  3187. <compile files="StaticInitCE.java"/>
  3188. <run class="StaticInitCE"/>
  3189. </ajc-test>
  3190. <ajc-test dir="new" pr="493"
  3191. title="Compiler incorrectly flagging *1 (non-alphabetic start to signature pattern)"
  3192. keywords="from-resolved_10x">
  3193. <compile files="NonAlphaSignaturePatternCE.java"/>
  3194. <run class="NonAlphaSignaturePatternCE"/>
  3195. </ajc-test>
  3196. <ajc-test dir="new"
  3197. title="Unable to bind privately-introduced field name from introduced method in the same aspect"
  3198. keywords="from-resolved_10x">
  3199. <compile files="IntroducedFieldsNotBinding.java"/>
  3200. <run class="IntroducedFieldsNotBinding"/>
  3201. </ajc-test>
  3202. <ajc-test dir="new/anonInnerClass" pr="297"
  3203. title="anonymous inner class with aspect" keywords="from-resolved_10x">
  3204. <compile files="Driver.java"/>
  3205. <run class="Driver"/>
  3206. </ajc-test>
  3207. <ajc-test dir="new" pr="335"
  3208. title="Arguments are not being passed in to calls advice"
  3209. keywords="from-resolved_10x">
  3210. <compile files="PR335.java"/>
  3211. <run class="PR335"/>
  3212. </ajc-test>
  3213. <ajc-test dir="design/intro" title="interfaces as mixins with introduction"
  3214. keywords="from-resolved_10x">
  3215. <compile files="Interfaces.java"/>
  3216. <run class="Interfaces"/>
  3217. </ajc-test>
  3218. <ajc-test dir="new"
  3219. title="functional modifiers work correctly with introduced members"
  3220. keywords="from-resolved_10x">
  3221. <compile files="IntroducedModifiers.java"/>
  3222. <run class="IntroducedModifiers"/>
  3223. </ajc-test>
  3224. <ajc-test dir="new"
  3225. title="ExceptionInInitializerError accessing cflow in aspect initialization - before variants"
  3226. keywords="from-resolved_10x">
  3227. <compile files="CflowInitInAspectVariantsBefore.java"/>
  3228. <run class="CflowInitInAspectVariantsBefore"/>
  3229. </ajc-test>
  3230. <ajc-test dir="new"
  3231. title="NoClassDefFoundError accessing cflow in aspect initialization - after variants"
  3232. keywords="from-resolved_10x">
  3233. <compile files="CflowInitInAspectVariantsAfter.java"/>
  3234. <run class="CflowInitInAspectVariantsAfter"/>
  3235. </ajc-test>
  3236. <ajc-test dir="new" title="InternalCompilerError in JpPlan when args alone"
  3237. keywords="from-resolved_10x">
  3238. <compile files="ArgsAlone.java"/>
  3239. <run class="ArgsAlone"/>
  3240. </ajc-test>
  3241. <ajc-test dir="new" pr="527"
  3242. title="compile error using pcd if() with advice on introduced methods."
  3243. keywords="from-resolved_10x">
  3244. <compile files="PR527.java"/>
  3245. <run class="PR527"/>
  3246. </ajc-test>
  3247. <ajc-test dir="new" pr="528"
  3248. title="compile errors boolean using cflow and unimplemented method using around advice on methods introduced by interface"
  3249. keywords="from-resolved_10x">
  3250. <compile files="PR528.java"/>
  3251. <run class="PR528"/>
  3252. </ajc-test>
  3253. <ajc-test dir="new" pr="534" title="aspect as member of interface"
  3254. keywords="from-resolved_10x">
  3255. <compile files="AspectInInterfaceCP.java"/>
  3256. <run class="AspectInInterfaceCP"/>
  3257. </ajc-test>
  3258. <ajc-test dir="new" pr="535"
  3259. title="missing method name to synthetic invocation"
  3260. keywords="from-resolved_10x,new-messages-vary">
  3261. <compile files="PR535.java"/>
  3262. <run class="PR535"/>
  3263. </ajc-test>
  3264. <ajc-test dir="new" pr="536"
  3265. title="protected subclass impl of superclass method with default access and variants"
  3266. keywords="from-resolved_10x">
  3267. <compile files="RestrictingVisibilityCP.java"/>
  3268. <run class="RestrictingVisibilityCP"/>
  3269. </ajc-test>
  3270. <ajc-test dir="new" pr="519" title="Exception planning advice"
  3271. keywords="from-resolved_10x">
  3272. <compile files="PR519.java"/>
  3273. <run class="PR519"/>
  3274. </ajc-test>
  3275. <ajc-test dir="new" pr="521"
  3276. title="unreproduced bug with advice - probably UTR"
  3277. keywords="from-resolved_10x">
  3278. <compile files="PR520.java"/>
  3279. <run class="PR520"/>
  3280. </ajc-test>
  3281. <ajc-test dir="new" pr="494"
  3282. title="introduced inner interfaces accessible inside aspect"
  3283. keywords="from-resolved_10x">
  3284. <compile files="IntroduceInnerInterfaceCP.java"/>
  3285. <run class="IntroduceInnerInterfaceCP"/>
  3286. </ajc-test>
  3287. <ajc-test dir="new" pr="525"
  3288. title="validate (enclosing) join point and source locations"
  3289. keywords="from-resolved_10x">
  3290. <compile files="NegativeSourceLocation.java" options="-Xlint:ignore"/>
  3291. <run class="NegativeSourceLocation"/>
  3292. </ajc-test>
  3293. <ajc-test dir="new" pr="544"
  3294. title="advice formals are just like method formals"
  3295. keywords="from-resolved_10x">
  3296. <compile files="AdviceFormalsCp.java"/>
  3297. <run class="AdviceFormalsCp"/>
  3298. </ajc-test>
  3299. <ajc-test dir="new" pr="544"
  3300. title="advice formals produce errors just like method formals"
  3301. keywords="from-resolved_10x">
  3302. <compile files="AdviceFormalsCf.java">
  3303. <message kind="error" line="28"/>
  3304. <message kind="error" line="29"/>
  3305. <message kind="error" line="36"/>
  3306. <message kind="error" line="37"/>
  3307. </compile>
  3308. </ajc-test>
  3309. <ajc-test dir="new"
  3310. title="advice throws clauses must be compatible with joinpoints they apply to"
  3311. keywords="from-resolved_10x">
  3312. <compile files="AdviceThrowsCp.java"/>
  3313. <run class="AdviceThrowsCp"/>
  3314. </ajc-test>
  3315. <ajc-test dir="new" pr="570"
  3316. title="potential method conflicts with introductions and interfaces and PR#561"
  3317. keywords="from-resolved_10x">
  3318. <compile files="MethodConflictsCP.java"/>
  3319. <run class="MethodConflictsCP"/>
  3320. </ajc-test>
  3321. <ajc-test dir="new" pr="570"
  3322. title="illegal method conflicts with introductions and interfaces and PR#561"
  3323. keywords="from-resolved_10x">
  3324. <compile files="MethodConflictsCF.java">
  3325. <message kind="error" line="8"/>
  3326. <message kind="error" line="20"/>
  3327. <message kind="error" line="28"/>
  3328. </compile>
  3329. </ajc-test>
  3330. <ajc-test dir="new" title="AspectOf available for different aspect types"
  3331. keywords="from-resolved_10x">
  3332. <compile files="AspectOf.java"/>
  3333. <run class="AspectOf"/>
  3334. </ajc-test>
  3335. <ajc-test dir="new/privilegedAspects"
  3336. title="access to all members of class and inner class from privileged aspect"
  3337. keywords="from-resolved_10x">
  3338. <compile
  3339. files="driver/PrivilegedAspect.java,util/Util.java,pack/DefaultTarget.java,pack/PublicTarget.java"/>
  3340. <run class="driver.PrivilegedAspect"/>
  3341. </ajc-test>
  3342. <ajc-test dir="new"
  3343. title="cflow alone with around produces compiler bcg StackOverflowError"
  3344. keywords="from-resolved_10x">
  3345. <compile files="CflowAlone.java"/>
  3346. <run class="CflowAlone"/>
  3347. </ajc-test>
  3348. <ajc-test dir="new"
  3349. title="get/set join points run for complex assignment operators (+=, etc.) (working)"
  3350. keywords="from-resolved_10x">
  3351. <compile files="AssignOps.java"/>
  3352. <run class="AssignOps"/>
  3353. </ajc-test>
  3354. <ajc-test dir="new/introTypeMissing"
  3355. title="this available in introduced field initializers"
  3356. keywords="from-resolved_10x">
  3357. <compile files="ThisInIntroFieldInit.java"/>
  3358. <run class="ThisInIntroFieldInit"/>
  3359. </ajc-test>
  3360. <ajc-test dir="new/introTypeMissing"
  3361. title="Introduced type unavailable to cast expressions in introduced methods"
  3362. keywords="from-resolved_10x">
  3363. <compile files="Cast.java,TargetClass.java,Util.java"/>
  3364. <run class="Cast"/>
  3365. </ajc-test>
  3366. <ajc-test dir="new/introTypeMissing"
  3367. title="Introduced type unavailable to qualified new expressions in introduced methods"
  3368. keywords="from-resolved_10x">
  3369. <compile files="Inner.java,TargetClass.java,Util.java"/>
  3370. <run class="Inner"/>
  3371. </ajc-test>
  3372. <ajc-test dir="new/introTypeMissing"
  3373. title="Introduced type unavailable to cast expressions in introduced field initializers"
  3374. keywords="from-resolved_10x">
  3375. <compile files="CastInFieldInit.java,TargetClass.java,Util.java"/>
  3376. <run class="CastInFieldInit"/>
  3377. </ajc-test>
  3378. <ajc-test dir="new/introTypeMissing"
  3379. title="Aspect type unavailable to qualified new expressions in body of introduced methods"
  3380. keywords="from-resolved_10x">
  3381. <compile files="AspectInIntroducedMethod.java"/>
  3382. <run class="AspectInIntroducedMethod"/>
  3383. </ajc-test>
  3384. <!-- This behavior is different from 1.0, but we might want to consider allowing it
  3385. Using the eclipse compiler it would be much easier to permit than forbid. -->
  3386. <ajc-test dir="new/introTypeMissing"
  3387. title="Introduced type unavailable to instanceof expressions in introduced methods"
  3388. keywords="from-resolved_10x,knownLimitation">
  3389. <compile files="InstanceOf.java,TargetClass.java,Util.java">
  3390. <message kind="error" line="19"/>
  3391. <message kind="error" line="20"/>
  3392. <message kind="error" line="21"/>
  3393. <message kind="error" line="22"/>
  3394. <message kind="error" line="23"/>
  3395. <message kind="error" line="24"/>
  3396. <message kind="error" line="25"/>
  3397. <message kind="error" line="26"/>
  3398. </compile>
  3399. </ajc-test>
  3400. <ajc-test dir="new/introTypeMissing"
  3401. title="Introduced type unavailable to qualified new expressions in introduced field initializers"
  3402. keywords="from-resolved_10x">
  3403. <compile files="InnerInFieldInit.java,TargetClass.java,Util.java"/>
  3404. <run class="InnerInFieldInit"/>
  3405. </ajc-test>
  3406. <ajc-test dir="new" pr="595"
  3407. title="variable slots and finally/catch causing verify errors"
  3408. keywords="from-resolved_10final,from-resolved_10x">
  3409. <compile files="AfterFinally.java"/>
  3410. <run class="AfterFinally"/>
  3411. </ajc-test>
  3412. <ajc-test dir="new"
  3413. title="enclosing join point not exported properly in pre-initialization join point"
  3414. keywords="from-resolved_10x,knownLimitation">
  3415. <compile files="PreInitialization.java"/>
  3416. <run class="PreInitialization"/>
  3417. </ajc-test>
  3418. <ajc-test dir="new" pr="590"
  3419. title="after advice on static method with pcd if() using result"
  3420. keywords="from-resolved_10x">
  3421. <compile files="PR590.java">
  3422. <message kind="error" line="20"/>
  3423. <message kind="error" line="23"/>
  3424. </compile>
  3425. </ajc-test>
  3426. <ajc-test dir="new" pr="590"
  3427. title="after advice on static method with pcd if() using result through pointcut"
  3428. keywords="from-resolved_10x">
  3429. <compile files="PR590a.java" options="-Xlint:ignore">
  3430. <message kind="error" line="29"/>
  3431. <message kind="error" line="31"/>
  3432. </compile>
  3433. </ajc-test>
  3434. <ajc-test dir="new/PR600" pr="600"
  3435. title="AbstractMethodError for introduced methods (order 1)"
  3436. keywords="from-resolved_10x">
  3437. <compile files="Main.java,My_error.java,A.java,B.java,C.java"/>
  3438. <run class="Main"/>
  3439. </ajc-test>
  3440. <ajc-test dir="new/PR600" pr="600"
  3441. title="AbstractMethodError for introduced methods (order 2)"
  3442. keywords="from-resolved_10x">
  3443. <compile files="Main.java,My_error.java,C.java,A.java,B.java"/>
  3444. <run class="Main"/>
  3445. </ajc-test>
  3446. <ajc-test dir="new/PR600" pr="600"
  3447. title="AbstractMethodError for introduced methods (order 3)"
  3448. keywords="from-resolved_10x">
  3449. <compile files="My_error.java,A.java,B.java,C.java,Main.java"/>
  3450. <run class="Main"/>
  3451. </ajc-test>
  3452. <ajc-test dir="new/PR600" pr="600"
  3453. title="AbstractMethodError for introduced methods (order 4)"
  3454. keywords="from-resolved_10x">
  3455. <compile files="A.java,B.java,C.java,Main.java,My_error.java"/>
  3456. <run class="Main"/>
  3457. </ajc-test>
  3458. <ajc-test dir="new/PR600" pr="600"
  3459. title="AbstractMethodError for introduced methods (order 5)"
  3460. keywords="from-resolved_10x">
  3461. <compile files="A.java,B.java,Main.java,C.java,My_error.java"/>
  3462. <run class="Main"/>
  3463. </ajc-test>
  3464. <ajc-test dir="new" title="declare error and abstract pointcuts"
  3465. keywords="from-resolved_10x">
  3466. <compile files="AbstractDeclare.java">
  3467. <message kind="error" line="3"/>
  3468. <message kind="error" line="4"/>
  3469. </compile>
  3470. </ajc-test>
  3471. <ajc-test dir="new/runtime"
  3472. title="Exercise runtime classes (optionally in 1.1 VM)"
  3473. keywords="from-resolved_10x">
  3474. <compile files="AllRuntime.java,TesterDriver.java"/>
  3475. <run class="TesterDriver"/>
  3476. </ajc-test>
  3477. <ajc-test dir="new"
  3478. title="VerifyError after around advice falls off end of tryCatch"
  3479. keywords="from-resolved_10x">
  3480. <compile files="TryOffEnd.java">
  3481. <message kind="warning" line="13"/>
  3482. <message kind="warning" line="21"/>
  3483. </compile>
  3484. <run class="TryOffEnd"/>
  3485. </ajc-test>
  3486. <ajc-test dir="new" pr="635" title="Named within pointcuts failing"
  3487. keywords="from-resolved_10x">
  3488. <compile files="NamedWithinPointcuts.java"/>
  3489. <run class="NamedWithinPointcuts"/>
  3490. </ajc-test>
  3491. <ajc-test dir="new/subaspects" pr="647"
  3492. title="aspect with private abstract pointcut"
  3493. keywords="from-resolved_10x,fail-unimplemented">
  3494. <compile files="PrivatePointcutCE.java">
  3495. <message kind="error" line="5"/>
  3496. </compile>
  3497. </ajc-test>
  3498. <ajc-test dir="new/subaspects" pr="647"
  3499. title="concrete aspect unable to access abstract package-private pointcut in parent for overriding"
  3500. keywords="from-resolved_10x"
  3501. comment="XXX getting error - confirm line numbers">
  3502. <compile files="parent/ParentCE.java,child/ChildCE.java">
  3503. <message kind="error" file="child/ChildCE.java" line="21"/>
  3504. <message kind="error" file="child/ChildCE.java" line="31"/>
  3505. <message kind="error" file="parent/ParentCE.java" line="8"/>
  3506. <message kind="error" file="parent/ParentCE.java" line="10"/>
  3507. <message kind="error" file="parent/ParentCE.java" line="12"/>
  3508. <message kind="error" file="parent/ParentCE.java" line="22"/>
  3509. </compile>
  3510. </ajc-test>
  3511. <ajc-test dir="new/subaspects" pr="647"
  3512. title="inner, outer, and outside-package subaspects of an aspect with abstract protected-, public-, and default-access pointcuts"
  3513. keywords="from-resolved_10x">
  3514. <compile
  3515. files="parent/SubAspectVisibility.java,parent/ForeignChildHelper.java,child/ForeignChildAspect.java"/>
  3516. <run class="parent.SubAspectVisibility"/>
  3517. </ajc-test>
  3518. <ajc-test dir="new/subaspects" pr="647"
  3519. title="inner subaspects of an aspect with private pointcut"
  3520. keywords="from-resolved_10x">
  3521. <compile files="parent/PrivatePointcut.java"/>
  3522. <run class="parent.PrivatePointcut"/>
  3523. </ajc-test>
  3524. <ajc-test dir="new/subaspects" pr="647"
  3525. title="outer subaspects of an aspect with private pointcut"
  3526. keywords="from-resolved_10x">
  3527. <compile files="parent/PrivatePointcutOuterClass.java"/>
  3528. <run class="parent.PrivatePointcutOuterClass"/>
  3529. </ajc-test>
  3530. <ajc-test dir="new/subaspects" pr="647"
  3531. title="abstract aspect used statically should not cause instantiation of advice or pointcut"
  3532. keywords="from-resolved_10x">
  3533. <compile files="AbstractAspectUsedStatically.java"/>
  3534. <run class="AbstractAspectUsedStatically"/>
  3535. </ajc-test>
  3536. <ajc-test dir="new"
  3537. title="private inner interface accessible in scope when declared on outer class"
  3538. keywords="from-resolved_10x">
  3539. <compile files="DeclareAccess.java"/>
  3540. <run class="DeclareAccess"/>
  3541. </ajc-test>
  3542. <ajc-test dir="new"
  3543. title="accessing protected superclass members in and outside CCC from body of method introduction"
  3544. keywords="from-resolved_10x">
  3545. <compile files="SuperInIntroduction.java"/>
  3546. <run class="SuperInIntroduction"/>
  3547. </ajc-test>
  3548. <ajc-test dir="new"
  3549. title="accessing private superclass members from body of method introduction"
  3550. keywords="from-resolved_10x">
  3551. <compile files="SuperInIntroductionCE.java">
  3552. <message kind="error" line="25"/>
  3553. <message kind="error" line="26"/>
  3554. </compile>
  3555. </ajc-test>
  3556. <ajc-test dir="new" title="simple test for around and casting"
  3557. keywords="from-resolved_10x">
  3558. <compile files="AroundCasting.java"/>
  3559. <run class="AroundCasting"/>
  3560. </ajc-test>
  3561. <ajc-test dir="new/aroundinner" pr="620"
  3562. title="aroundInner 1 - around advice inner Thread subclass running proceed but not writing field"
  3563. keywords="from-resolved_10x">
  3564. <compile files="ThreadNoField.java,Common.java"/>
  3565. <run class="ThreadNoField"/>
  3566. </ajc-test>
  3567. <ajc-test dir="new/aroundinner" pr="620"
  3568. title="aroundInner 2 - around advice inner Runnable running proceed and writing method-final proxy"
  3569. keywords="from-resolved_10x">
  3570. <compile files="Proxy.java,Common.java"/>
  3571. <run class="Proxy"/>
  3572. </ajc-test>
  3573. <ajc-test dir="new/aroundinner" pr="620"
  3574. title="aroundInner 3 - around advice inner class running proceed and writing field"
  3575. keywords="from-resolved_10x">
  3576. <compile files="Minimal.java,Common.java"/>
  3577. <run class="Minimal"/>
  3578. </ajc-test>
  3579. <ajc-test dir="new/aroundinner" pr="620"
  3580. title="aroundInner 4 - around advice inner Thread subclass running proceed and writing field"
  3581. keywords="from-resolved_10x">
  3582. <compile files="ThreadSub.java,Common.java"/>
  3583. <run class="ThreadSub"/>
  3584. </ajc-test>
  3585. <ajc-test dir="new/aroundinner" pr="620"
  3586. title="aroundInner 5 - around advice inner Runnable (subinterface) running proceed and writing field introduced on subinterface"
  3587. keywords="from-resolved_10x">
  3588. <compile files="RunnableSub.java,Common.java"/>
  3589. <run class="RunnableSub"/>
  3590. </ajc-test>
  3591. <ajc-test dir="new" pr="636"
  3592. title="Named local class closing over proceed invocation"
  3593. keywords="from-resolved_10x">
  3594. <compile files="LocalClassClosingOverProceed.java"/>
  3595. <run class="LocalClassClosingOverProceed"/>
  3596. </ajc-test>
  3597. <ajc-test dir="new"
  3598. title="beautiful recursive computation of factorial with around is now supported"
  3599. keywords="from-resolved_10x">
  3600. <compile files="CircularAdvice.java"/>
  3601. <run class="CircularAdvice"/>
  3602. </ajc-test>
  3603. <ajc-test dir="new" pr="632"
  3604. title="multi-dispatch not used for named pcd references"
  3605. keywords="from-resolved_10x">
  3606. <compile files="MultiDispatchCf.java">
  3607. <message kind="error" line="54"/>
  3608. <message kind="error" line="57"/>
  3609. <message kind="error" line="60"/>
  3610. <message kind="error" line="71"/>
  3611. </compile>
  3612. </ajc-test>
  3613. <ajc-test dir="new" pr="632"
  3614. title="multi-dispatch implemented through around + args"
  3615. keywords="from-resolved_10x">
  3616. <compile files="MultiDispatchCp.java"/>
  3617. <run class="MultiDispatchCp"/>
  3618. </ajc-test>
  3619. <ajc-test dir="new"
  3620. title="unrecognized aspect should not net Cloneable and Serializable warnings"
  3621. keywords="from-resolved_10x">
  3622. <compile files="UnrecognizedAspectCE.java">
  3623. <message kind="error" line="3"/>
  3624. </compile>
  3625. </ajc-test>
  3626. <ajc-test dir="new"
  3627. title="unreachable code generated by around advice on the execution of void methods"
  3628. keywords="from-resolved_10x">
  3629. <compile files="AroundVoid.java"/>
  3630. <run class="AroundVoid"/>
  3631. </ajc-test>
  3632. <ajc-test dir="new" pr="654"
  3633. title="Overriding method implementations using introduction on interfaces"
  3634. keywords="from-resolved_10x,fail-unimplemented">
  3635. <compile files="IntroductionsOverriding.java"/>
  3636. <run class="IntroductionsOverriding"/>
  3637. </ajc-test>
  3638. <ajc-test dir="new" pr="654"
  3639. title="more coverage for around and concrete methods on interfaces"
  3640. keywords="from-resolved_10x">
  3641. <compile files="MultiAndAround.java"/>
  3642. <run class="MultiAndAround"/>
  3643. </ajc-test>
  3644. <ajc-test dir="new" title="invalid number and type of proceed arguments"
  3645. keywords="from-resolved_10x">
  3646. <compile files="InvalidProceedArgsCE.java">
  3647. <message kind="error" line="10"/>
  3648. <message kind="error" line="15"/>
  3649. <message kind="error" line="17"/>
  3650. <message kind="error" line="20"/>
  3651. <message kind="error" line="22"/>
  3652. <message kind="error" line="27"/>
  3653. <message kind="error" line="29"/>
  3654. <message kind="error" line="31"/>
  3655. <message kind="error" line="37"/>
  3656. <message kind="error" line="39"/>
  3657. <message kind="error" line="43"/>
  3658. <message kind="error" line="46"/>
  3659. </compile>
  3660. </ajc-test>
  3661. <ajc-test dir="new" pr="694" title="after returning advice order"
  3662. keywords="from-resolved_10x">
  3663. <compile files="Cricket.java"/>
  3664. <run class="Cricket"/>
  3665. </ajc-test>
  3666. <ajc-test dir="new" pr="694" title="after returning advice param"
  3667. keywords="from-resolved_10x">
  3668. <compile files="AfterReturningParam.java"/>
  3669. <run class="AfterReturningParam"/>
  3670. </ajc-test>
  3671. <ajc-test dir="new" pr="695"
  3672. title="! and declaring types with callee-side call join points"
  3673. keywords="from-resolved_10x">
  3674. <compile files="NotAndDeclaringTypes.java"/>
  3675. <run class="NotAndDeclaringTypes"/>
  3676. </ajc-test>
  3677. <ajc-test dir="new" pr="479"
  3678. title=". Binding the wrong arguments in withincode(..)."
  3679. keywords="from-resolved_10x">
  3680. <compile files="BindingArgumentsInWithincode.java"/>
  3681. <run class="BindingArgumentsInWithincode"/>
  3682. </ajc-test>
  3683. <ajc-test dir="new" pr="479"
  3684. title=". Matching arguments in cflow correctly."
  3685. keywords="from-resolved_10x">
  3686. <compile files="MatchingArgumentsInCflow.java"/>
  3687. <run class="MatchingArgumentsInCflow"/>
  3688. </ajc-test>
  3689. <ajc-test dir="new" pr="480"
  3690. title=". Binding variables with numbers in their name with pertarget(..)'s."
  3691. keywords="from-resolved_10x">
  3692. <compile files="PerTargetAndVariablesWithNumbersInTheirNames.java"/>
  3693. <run class="PerTargetAndVariablesWithNumbersInTheirNames"/>
  3694. </ajc-test>
  3695. <ajc-test dir="new" pr="554"
  3696. title="second arg in formal on shared joinpoint with pcd if() causes verify error ??"
  3697. keywords="from-resolved_10rc3">
  3698. <compile files="PR554.java"/>
  3699. <run class="PR554"/>
  3700. </ajc-test>
  3701. <ajc-test dir="new/privilegedAspects" pr="555"
  3702. title="access to private members from privileged aspect"
  3703. keywords="from-resolved_10rc3">
  3704. <compile
  3705. files="driver/PR555.java,util/Util.java,pack/DefaultTarget.java"/>
  3706. <run class="driver.PR555"/>
  3707. </ajc-test>
  3708. <ajc-test dir="new" pr="555"
  3709. title="inner classes of privileged aspects cannot see target class private members"
  3710. keywords="from-resolved_10rc3">
  3711. <compile files="InnerClassInPrivilegedAspect.java"/>
  3712. <run class="InnerClassInPrivilegedAspect"/>
  3713. </ajc-test>
  3714. <ajc-test dir="new/packageAccessPR556" pr="556"
  3715. title="aspects should get package access outside the file"
  3716. keywords="from-resolved_10rc3">
  3717. <compile files="base1/p/C1.java,base2/p/C2.java"/>
  3718. <run class="p.C1"/>
  3719. </ajc-test>
  3720. <ajc-test dir="new" pr="559"
  3721. title="subclass advice not run for join points selected by superclass cflow-based pointcuts"
  3722. keywords="from-resolved_10rc3">
  3723. <compile files="PR559.java"/>
  3724. <run class="PR559"/>
  3725. </ajc-test>
  3726. <ajc-test dir="new" pr="559"
  3727. title="more issues with abstract aspects and cflow pointcuts"
  3728. keywords="from-resolved_10rc3,fail-unimplemented">
  3729. <compile files="AbstractCflows.java"/>
  3730. <run class="AbstractCflows"/>
  3731. </ajc-test>
  3732. <ajc-test dir="new" pr="560"
  3733. title="compile fails for aspect derived from percflow base aspect unless pointcut excludes base aspect and subaspects"
  3734. keywords="from-resolved_10rc3">
  3735. <compile files="PR560.java"/>
  3736. <run class="PR560"/>
  3737. </ajc-test>
  3738. <!-- pointcuts aren't checked for circularities unless they're used -->
  3739. <ajc-test dir="new" pr="568" title="cyclic pointcut definitions"
  3740. keywords="from-resolved_10rc3,knownLimitation">
  3741. <compile files="CyclicPointcuts.java">
  3742. <message kind="error" line="11"/>
  3743. <message kind="error" line="14"/>
  3744. <message kind="error" line="18"/>
  3745. <message kind="error" line="32"/>
  3746. <message kind="error" line="43"/>
  3747. </compile>
  3748. </ajc-test>
  3749. <ajc-test dir="new" pr="573"
  3750. title="pertarget stack overflow getting name of anonymous (Interface) class"
  3751. keywords="from-resolved_10rc3">
  3752. <compile files="PR573.java"/>
  3753. <run class="PR573"/>
  3754. </ajc-test>
  3755. <ajc-test dir="new" pr="573"
  3756. title="pertarget stack overflow getting name of anonymous (Object) class"
  3757. keywords="from-resolved_10rc3">
  3758. <compile files="PR573_1.java"/>
  3759. <run class="PR573_1"/>
  3760. </ajc-test>
  3761. <ajc-test dir="new" pr="573"
  3762. title="pertarget runtime stack overflow (getting name of anonymous (Object) class?)"
  3763. keywords="from-resolved_10rc3">
  3764. <compile files="PR573_2.java"/>
  3765. <run class="PR573_2"/>
  3766. </ajc-test>
  3767. <ajc-test dir="new"
  3768. title="PR584 Can construct inner classes using qualified expressions"
  3769. keywords="from-resolved_10rc3,purejava">
  3770. <compile files="PR584.java"/>
  3771. <run class="PR584"/>
  3772. </ajc-test>
  3773. <ajc-test dir="new" pr="685"
  3774. title="subaspect method declaration on superaspect inner interface (names)"
  3775. keywords="from-resolved_104">
  3776. <compile files="InnerInterfaceNames.java"/>
  3777. <run class="InnerInterfaceNames"/>
  3778. </ajc-test>
  3779. <ajc-test dir="new" pr="685"
  3780. title="subaspect method declaration on superaspect inner interface (access)"
  3781. keywords="from-resolved_104">
  3782. <compile files="InnerInterfaceAccess.java"/>
  3783. <run class="InnerInterfaceAccess"/>
  3784. </ajc-test>
  3785. <ajc-test dir="new" pr="685"
  3786. title="subaspect method declaration on superaspect inner interface (types)"
  3787. keywords="from-resolved_104">
  3788. <compile files="InnerInterfaceTypes.java,InnerInterfaceTypesHelper.java"/>
  3789. <run class="InnerInterfaceTypes"/>
  3790. </ajc-test>
  3791. <ajc-test dir="new" pr="691" title="around AST type XXX"
  3792. keywords="from-resolved_104">
  3793. <compile files="PR691.java"/>
  3794. <run class="PR691"/>
  3795. </ajc-test>
  3796. <ajc-test dir="new" pr="687"
  3797. title="around all execution with double assignment in initializer (simple)"
  3798. keywords="from-resolved_104">
  3799. <compile files="AroundDoubleAssignment.java"/>
  3800. <run class="AroundDoubleAssignment"/>
  3801. </ajc-test>
  3802. <ajc-test dir="new" pr="687"
  3803. title="around all execution with double assignment in initializer (coverage)"
  3804. keywords="from-resolved_104">
  3805. <compile files="AroundDoubleAssignmentC.java"/>
  3806. <run class="AroundDoubleAssignmentC"/>
  3807. </ajc-test>
  3808. <ajc-test dir="new"
  3809. title="changing this in around's proceed reported by Rich Price"
  3810. keywords="from-resolved_104">
  3811. <compile files="AroundChangeThis.java"/>
  3812. <run class="AroundChangeThis"/>
  3813. </ajc-test>
  3814. <ajc-test dir="new" pr="548"
  3815. title="default package for aspect introductions is not the current package"
  3816. keywords="from-resolved_10rc3,from-resolved_104">
  3817. <compile
  3818. files="introductionPackage/two/C.java,introductionPackage/one/C.java,introductionPackage/one/Aspect.java,introductionPackage/one/TestAspect.java"/>
  3819. <run class="one.TestAspect"/>
  3820. </ajc-test>
  3821. <ajc-test dir="new/PR569" pr="569"
  3822. title="anon class written to wrong directory"
  3823. keywords="from-resolved_104,from-resolved_104">
  3824. <compile files="a/IntroAnon.java,a/MyInterface.java,b/Dest.java"/>
  3825. <run class="a.IntroAnon"/>
  3826. </ajc-test>
  3827. <ajc-test dir="new" pr="603"
  3828. title="unqualified transitive pointcut references not resolved"
  3829. keywords="from-resolved_104">
  3830. <compile files="PointcutQualification.java"/>
  3831. <run class="PointcutQualification"/>
  3832. </ajc-test>
  3833. <ajc-test dir="new" pr="603"
  3834. title="unqualified transitive pointcut references not resolved - 2"
  3835. keywords="from-resolved_104">
  3836. <compile files="PointcutQualification2.java"/>
  3837. <run class="PointcutQualification2"/>
  3838. </ajc-test>
  3839. <ajc-test dir="new" pr="619"
  3840. title="direct use outside aspect of defined abstract pointcut"
  3841. keywords="from-resolved_104">
  3842. <compile files="AbstractPointcutAccess.java"/>
  3843. <run class="AbstractPointcutAccess"/>
  3844. </ajc-test>
  3845. <ajc-test dir="new" pr="619"
  3846. title="direct use outside aspect of undefined abstract pointcut"
  3847. keywords="from-resolved_104">
  3848. <compile files="AbstractPointcutAccessCE.java">
  3849. <message kind="error" line="9"/>
  3850. </compile>
  3851. </ajc-test>
  3852. <ajc-test dir="new" pr="619"
  3853. title="indirect use outside aspect of undefined abstract pointcut"
  3854. keywords="from-resolved_104">
  3855. <compile files="AbstractPointcutIndirectCE.java">
  3856. <message kind="error" line="9"/>
  3857. <message kind="error" line="5"/>
  3858. </compile>
  3859. </ajc-test>
  3860. <ajc-test dir="new" pr="658"
  3861. title="simple call join point tests for JoinPoint SourceLocation context"
  3862. keywords="from-resolved_104">
  3863. <compile files="SourceLocationCall.java"/>
  3864. <run class="SourceLocationCall"/>
  3865. </ajc-test>
  3866. <ajc-test dir="new" pr="661"
  3867. title="!target with second advice on casted call"
  3868. keywords="from-resolved_104">
  3869. <compile files="CallNotTarget.java"/>
  3870. <run class="CallNotTarget"/>
  3871. </ajc-test>
  3872. <ajc-test dir="new" pr="666" title="name binding in around cflow"
  3873. keywords="from-resolved_104">
  3874. <compile files="AroundCall.java"/>
  3875. <run class="AroundCall"/>
  3876. </ajc-test>
  3877. <ajc-test dir="new" pr="660" title="name binding in around cflow - 2"
  3878. keywords="from-resolved_104">
  3879. <compile files="ArgsInCflow2.java"/>
  3880. <run class="ArgsInCflow2"/>
  3881. </ajc-test>
  3882. <ajc-test dir="new" pr="677"
  3883. title="around name-binding in cflows using factorial"
  3884. keywords="from-resolved_104">
  3885. <compile files="FactorialCflow.java"/>
  3886. <run class="FactorialCflow"/>
  3887. </ajc-test>
  3888. <ajc-test dir="new" pr="715" title="incrementing objects, arrays - 2"
  3889. keywords="from-resolved_104,purejava">
  3890. <compile files="ArrayInc2CE.java">
  3891. <message kind="error" line="12"/>
  3892. <message kind="error" line="13"/>
  3893. <message kind="error" line="14"/>
  3894. <message kind="error" line="15"/>
  3895. </compile>
  3896. </ajc-test>
  3897. <ajc-test dir="new" pr="715" title="incrementing objects, arrays CE"
  3898. keywords="from-resolved_104,purejava,messages-vary">
  3899. <compile files="ArrayIncCE.java"
  3900. options="!eclipse">
  3901. <message kind="error" line="15"/>
  3902. <message kind="error" line="16"/>
  3903. <message kind="error" line="17"/>
  3904. <message kind="error" line="18"/>
  3905. <message kind="error" line="19"/>
  3906. </compile>
  3907. </ajc-test>
  3908. <ajc-test dir="new" pr="715" title="incrementing objects, arrays - 3"
  3909. keywords="from-resolved_104,purejava">
  3910. <compile files="ArrayInc3CE.java">
  3911. <message kind="error" line="15"/>
  3912. <message kind="error" line="16"/>
  3913. <message kind="error" line="17"/>
  3914. <message kind="error" line="18"/>
  3915. <message kind="error" line="19"/>
  3916. </compile>
  3917. </ajc-test>
  3918. <ajc-test dir="new" pr="715" title="incrementing objects, arrays"
  3919. keywords="from-resolved_104,purejava">
  3920. <compile files="ArrayInc.java"/>
  3921. <run class="ArrayInc"/>
  3922. </ajc-test>
  3923. <ajc-test dir="new" title="replacing this or target in around advice"
  3924. keywords="from-resolved_104">
  3925. <compile files="TargetObjectReplacement.java"/>
  3926. <run class="TargetObjectReplacement"/>
  3927. </ajc-test>
  3928. <ajc-test dir="new"
  3929. title="after returning from initialization and after executing constructor"
  3930. keywords="from-resolved_104">
  3931. <compile files="ConstructorExecInit.java"/>
  3932. <run class="ConstructorExecInit"/>
  3933. </ajc-test>
  3934. <ajc-test dir="new"
  3935. title="after returning from initialization causes ExceptionInInitializer in aspect">
  3936. <compile files="ConstructorExecInitFails.java"/>
  3937. <run class="ConstructorExecInitFails"/>
  3938. </ajc-test>
  3939. <ajc-test dir="new" pr="659"
  3940. title="name binding in before cflow containing cflowbelow"
  3941. keywords="from-resolved_104">
  3942. <compile files="ArgsInCflow.java" options="!eclipse">
  3943. <message kind="error" line="29"/>
  3944. <message kind="error" line="32"/>
  3945. </compile>
  3946. </ajc-test>
  3947. <ajc-test dir="pureJava" pr="737"
  3948. title="no circularity errors simply because of inners (1)"
  3949. keywords="from-resolved_105,purejava">
  3950. <compile files="circle/Test1CP.java"/>
  3951. <run class="circle.Test1CP"/>
  3952. </ajc-test>
  3953. <ajc-test dir="pureJava" pr="737"
  3954. title="no circularity errors simply because of inners (2)"
  3955. keywords="from-resolved_105,purejava">
  3956. <compile files="circle/Test2CP.java"/>
  3957. <run class="circle.Test2CP"/>
  3958. </ajc-test>
  3959. <ajc-test dir="pureJava" pr="737"
  3960. title="should have circular inheritance errors (1)"
  3961. keywords="from-resolved_105,purejava,messages-vary">
  3962. <compile files="circle/Test1CF.java"
  3963. options="!eclipse">
  3964. <message kind="error" line="7"/>
  3965. <message kind="error" line="15"/>
  3966. <message kind="error" line="17"/>
  3967. </compile>
  3968. </ajc-test>
  3969. <ajc-test dir="pureJava" pr="737"
  3970. title="should have circular inheritance errors (2)"
  3971. keywords="from-resolved_105,purejava,messages-vary">
  3972. <compile files="circle/Test2CF.java"
  3973. options="!eclipse">
  3974. <message kind="error" line="6"/>
  3975. <message kind="error" line="10"/>
  3976. <message kind="error" line="15"/>
  3977. </compile>
  3978. </ajc-test>
  3979. <ajc-test dir="new/pr728" pr="728" title="file order in type searching"
  3980. keywords="from-resolved_105">
  3981. <compile files="AnotherClass.java,Interface.java"/>
  3982. <run class="AnotherClass"/>
  3983. </ajc-test>
  3984. <ajc-test dir="pureJava" pr="728"
  3985. title="interface using preceding subinterface in its definition"
  3986. keywords="from-resolved_105,purejava">
  3987. <compile files="ParentUsingChild.java"/>
  3988. <run class="ParentUsingChild"/>
  3989. </ajc-test>
  3990. <ajc-test dir="new" pr="645"
  3991. title="Parent interface using public inner interface of child in same file"
  3992. keywords="from-resolved_105,purejava">
  3993. <compile files="ParentInterfaceUsingChildInnerInterface.java"/>
  3994. <run class="ParentInterfaceUsingChildInnerInterface"/>
  3995. </ajc-test>
  3996. <ajc-test dir="errors"
  3997. title="a type is not allowed to extend or implement its own innner type"
  3998. keywords="from-resolved_105,purejava">
  3999. <compile files="NestedInterfaceTest.java">
  4000. <message kind="error" line="1"/>
  4001. </compile>
  4002. </ajc-test>
  4003. <ajc-test dir="pureJava" title="try requires block JLS 14.19"
  4004. keywords="from-resolved_105,purejava,messages-vary">
  4005. <compile files="TryBlockRequiredCE.java"
  4006. options="!eclipse">
  4007. <message kind="error" line="6"/>
  4008. </compile>
  4009. </ajc-test>
  4010. <ajc-test dir="pureJava" pr="722" title="loop expressions not declarations"
  4011. keywords="from-resolved_105,purejava,messages-vary">
  4012. <compile files="DeclarationsInLoopsCE.java"
  4013. options="!eclipse">
  4014. <message kind="error" line="7"/>
  4015. </compile>
  4016. </ajc-test>
  4017. <ajc-test dir="new" pr="663"
  4018. title="no error when public class is in file of a different name"
  4019. keywords="from-resolved_105,purejava">
  4020. <compile options="-strict" files="PublicClassWrongFilename.java">
  4021. <message kind="error" line="3"/>
  4022. </compile>
  4023. </ajc-test>
  4024. <ajc-test dir="pureJava" pr="739"
  4025. title="local variables must be final to be accessed from inner class"
  4026. keywords="from-resolved_105,purejava">
  4027. <compile files="LocalsFromInnerCE.java">
  4028. <message kind="error" line="6"/>
  4029. <message kind="error" line="13"/>
  4030. <message kind="error" line="19"/>
  4031. <message kind="error" line="25"/>
  4032. <message kind="error" line="32"/>
  4033. <message kind="error" line="40"/>
  4034. <message kind="error" line="51"/>
  4035. <message kind="error" line="61"/>
  4036. <message kind="error" line="67"/>
  4037. <message kind="error" line="75"/>
  4038. <message kind="error" line="81"/>
  4039. </compile>
  4040. </ajc-test>
  4041. <ajc-test dir="pureJava" pr="739"
  4042. title="final local variables may be accessed from inner class"
  4043. keywords="from-resolved_105,purejava">
  4044. <compile files="LocalsFromInnerCP.java"/>
  4045. <run class="LocalsFromInnerCP"/>
  4046. </ajc-test>
  4047. <ajc-test dir="pureJava" pr="723" title="missing package identifier"
  4048. keywords="from-resolved_105,purejava">
  4049. <compile files="MissingPackageCE.java">
  4050. <message kind="error" line="2"/>
  4051. </compile>
  4052. </ajc-test>
  4053. <ajc-test dir="pureJava" pr="721"
  4054. title="interface declaration not permitted in local method scope"
  4055. keywords="from-resolved_105">
  4056. <compile files="LocalInterfaceCE.java">
  4057. <message kind="error" line="5"/>
  4058. <message kind="error" line="8"/>
  4059. <message kind="error" line="11"/>
  4060. <message kind="error" line="15"/>
  4061. </compile>
  4062. </ajc-test>
  4063. <ajc-test dir="new" title="simple declare warning (NPE)"
  4064. keywords="from-resolved_105">
  4065. <compile files="DeclareWarningMain.java">
  4066. <message kind="warning" line="5"/>
  4067. </compile>
  4068. <run class="DeclareWarningMain"/>
  4069. </ajc-test>
  4070. <ajc-test dir="new"
  4071. title="package typepattern with no packages (in default package)"
  4072. keywords="from-resolved_105,knownLimitation">
  4073. <compile options="-Xlint" files="TypeNames.java">
  4074. <message kind="warning" line="34"/>
  4075. <message kind="warning" line="39"/>
  4076. <message kind="warning" line="43"/>
  4077. <message kind="warning" line="47"/>
  4078. </compile>
  4079. <run class="TypeNames"/>
  4080. </ajc-test>
  4081. <ajc-test dir="new" pr="701"
  4082. title="CE for ambiguous type reference (two files in package)"
  4083. keywords="from-resolved_105,purejava">
  4084. <compile
  4085. files="ambiguousClass/AmbiguousReferent.java,ambiguousClass/AmbiguousClassReference.java">
  4086. <message kind="error" line="5"/>
  4087. </compile>
  4088. </ajc-test>
  4089. <ajc-test dir="new"
  4090. title="initializer can throw so long as all constructors declare so"
  4091. keywords="from-resolved_105,purejava">
  4092. <compile files="InitializerWithThrow.java"/>
  4093. <run class="InitializerWithThrow"/>
  4094. </ajc-test>
  4095. <ajc-test dir="pureJava"
  4096. title="interfaces may not contain initializers (bug found by jacks)"
  4097. keywords="from-resolved_105,purejava">
  4098. <compile files="InterfaceMembersCf.java">
  4099. <message kind="error" line="2"/>
  4100. <message kind="error" line="3"/>
  4101. </compile>
  4102. </ajc-test>
  4103. <ajc-test dir="new" pr="755"
  4104. title="ajc dies on cflow into field init anon class see knownbugs.txt"
  4105. keywords="from-resolved_105">
  4106. <compile files="CflowOfFieldInitAnonMethods.java" options="!eclipse">
  4107. </compile>
  4108. <run class="CflowOfFieldInitAnonMethods" options="!eclipse"/>
  4109. </ajc-test>
  4110. <ajc-test dir="pureJava"
  4111. title="initializers must be able to complete normally (found by jacks)"
  4112. keywords="from-resolved_105,purejava,messages-vary">
  4113. <compile files="InitializerFlowCf.java"
  4114. options="!eclipse">
  4115. <message kind="error" line="2"/>
  4116. <message kind="error" line="4"/>
  4117. </compile>
  4118. </ajc-test>
  4119. <ajc-test dir="new" pr="757" title="Incrementing interface-introduced field"
  4120. keywords="from-resolved_105">
  4121. <compile files="IntroducedFieldInc.java"/>
  4122. <run class="IntroducedFieldInc"/>
  4123. </ajc-test>
  4124. <ajc-test dir="pureJava" title="more tests of super alone"
  4125. keywords="from-resolved_105,purejava">
  4126. <compile files="SuperIsWeird.java">
  4127. <message kind="error" line="9"/>
  4128. <message kind="error" line="13"/>
  4129. <message kind="error" line="20"/>
  4130. <message kind="error" line="21"/>
  4131. </compile>
  4132. </ajc-test>
  4133. <ajc-test dir="new"
  4134. title="The dynamic type, not the static one, should be used in if pcds"
  4135. keywords="from-resolved_105">
  4136. <compile files="StaticTypeInIf.java"/>
  4137. <run class="StaticTypeInIf"/>
  4138. </ajc-test>
  4139. <ajc-test dir="new"
  4140. title="bad interaction with after returning, around and void methods (from Rich Price)"
  4141. keywords="from-resolved_105">
  4142. <compile files="AfterReturningResult.java"/>
  4143. <run class="AfterReturningResult"/>
  4144. </ajc-test>
  4145. <ajc-test dir="new"
  4146. title="type pattern matching for inner classes (from Ken Horn)"
  4147. keywords="from-resolved_105">
  4148. <compile files="TypePat.java"/>
  4149. <run class="test.TypePat"/>
  4150. </ajc-test>
  4151. <ajc-test dir="new" pr="771" title="static initializer member name"
  4152. keywords="from-resolved_105">
  4153. <compile files="StaticInitName.java"/>
  4154. <run class="StaticInitName"/>
  4155. </ajc-test>
  4156. <ajc-test dir="new" pr="770" title="cflow pcd syntax error"
  4157. keywords="from-resolved_105">
  4158. <compile files="IllegalCflowCE.java">
  4159. <message kind="error" line="4"/>
  4160. </compile>
  4161. </ajc-test>
  4162. <ajc-test dir="new" pr="764"
  4163. title="binding args with indeterminate prefix and suffix"
  4164. keywords="from-resolved_105">
  4165. <compile files="IndeterminateArgs.java"/>
  4166. <run class="IndeterminateArgs"/>
  4167. </ajc-test>
  4168. <ajc-test dir="new" pr="764"
  4169. title="flag errors when binding args with indeterminate prefix and suffix"
  4170. keywords="from-resolved_105,knownLimitation">
  4171. <compile files="IndeterminateArgsCE.java">
  4172. <message kind="error" line="67"/>
  4173. <message kind="error" line="68"/>
  4174. <message kind="error" line="70"/>
  4175. <message kind="error" line="72"/>
  4176. </compile>
  4177. </ajc-test>
  4178. <ajc-test dir="new" pr="764"
  4179. title="check arg types with indeterminate prefix and suffix"
  4180. keywords="from-resolved_105">
  4181. <compile files="IndeterminateArgType.java"/>
  4182. <run class="IndeterminateArgType"/>
  4183. </ajc-test>
  4184. <ajc-test dir="new" pr="764"
  4185. title="testing and binding args with single indeterminate prefix and suffix"
  4186. keywords="from-resolved_105">
  4187. <compile files="IndeterminateArg.java"/>
  4188. <run class="IndeterminateArg"/>
  4189. </ajc-test>
  4190. <ajc-test dir="new" pr="764"
  4191. title="binding handler args with indeterminate prefix and suffix"
  4192. keywords="from-resolved_105">
  4193. <compile files="IndeterminateHandlerArg.java"/>
  4194. <run class="IndeterminateHandlerArg"/>
  4195. </ajc-test>
  4196. <ajc-test dir="pureJava"
  4197. title="Locals inside other locals, ordering of processing [eh]"
  4198. keywords="from-resolved_105">
  4199. <compile files="LocalInners2.java"/>
  4200. <run class="LocalInners2"/>
  4201. </ajc-test>
  4202. <ajc-test dir="pureJava" pr="752"
  4203. title="subclass access to enclosing super class private members"
  4204. keywords="from-resolved_105,purejava,fail-unimplemented">
  4205. <compile files="SubclassAccessToEnclosingSuperClassPrivate.java"/>
  4206. <run class="SubclassAccessToEnclosingSuperClassPrivate"/>
  4207. </ajc-test>
  4208. <ajc-test dir="new/nolang" pr="762"
  4209. title="Compiling java.lang.Object with ajc yields non-verifying bytecode"
  4210. keywords="from-resolved_105"
  4211. comment="XXX weak/bad test">
  4212. <compile files="java/lang/Object.java,java/lang/String.java">
  4213. </compile>
  4214. </ajc-test>
  4215. <ajc-test dir="new"
  4216. title="method-local class defined in around return statement"
  4217. keywords="from-resolved_105">
  4218. <compile files="MethodLocalAroundReturns.java"/>
  4219. <run class="MethodLocalAroundReturns"/>
  4220. </ajc-test>
  4221. <ajc-test dir="new" title="CE expected for assignment to arg in if pcd"
  4222. keywords="from-resolved_105">
  4223. <compile files="IfPCDAssignmentCE.java">
  4224. <message kind="error" line="16"/>
  4225. <message kind="error" line="20"/>
  4226. </compile>
  4227. </ajc-test>
  4228. <ajc-test dir="new" title="advising field get/sets when accessing via super"
  4229. keywords="from-resolved_105">
  4230. <compile files="SuperField.java"/>
  4231. <run class="SuperField"/>
  4232. </ajc-test>
  4233. <ajc-test dir="new" title="accessing private members in outer types"
  4234. keywords="from-resolved_105">
  4235. <compile files="FieldInnerAccess.java"/>
  4236. <run class="FieldInnerAccess"/>
  4237. </ajc-test>
  4238. <ajc-test dir="pureJava" title="various tests of switch bounds"
  4239. keywords="from-resolved_106,purejava">
  4240. <compile files="SwitchBounds.java"/>
  4241. <run class="SwitchBounds"/>
  4242. </ajc-test>
  4243. <ajc-test dir="new" pr="601"
  4244. title="VerifyError if nested sync returning result"
  4245. comment="XXX inconsistent behavior?"
  4246. keywords="from-resolved_10final,purejava">
  4247. <compile files="NestedSyncWithResult.java"/>
  4248. <run class="NestedSyncWithResult"/>
  4249. </ajc-test>
  4250. <ajc-test dir="new" pr="853"
  4251. title="declare interface extends class">
  4252. <compile files="DeclareInterfaceExtendsClass.java">
  4253. <message kind="error" line="10"/>
  4254. </compile>
  4255. </ajc-test>
  4256. <ajc-test dir="new" pr="853"
  4257. title="declare interface implements class">
  4258. <compile files="DeclareInterfaceImplementsClass.java">
  4259. <message kind="error" line="10"/>
  4260. </compile>
  4261. </ajc-test>
  4262. <ajc-test dir="pureJava" title="assert flow"
  4263. keywords="from-14tests,purejava">
  4264. <compile options="-source14" files="AssertsCF.java">
  4265. <message kind="error" line="8"/>
  4266. <message kind="error" line="11"/>
  4267. </compile>
  4268. </ajc-test>
  4269. <ajc-test dir="pureJava" title="assert flow - 2"
  4270. keywords="from-14tests,purejava">
  4271. <compile options="-source14" files="AssertsCF2.java">
  4272. <message kind="error" line="6"/>
  4273. </compile>
  4274. </ajc-test>
  4275. <ajc-test dir="pureJava" title="assert typing"
  4276. keywords="from-14tests,purejava,fail-publicType">
  4277. <compile options="-source14" files="AssertsCF1.java">
  4278. <message kind="error" line="5"/>
  4279. </compile>
  4280. </ajc-test>
  4281. <ajc-test dir="pureJava" title="asserts" keywords="from-14tests">
  4282. <compile options="-source14" files="Asserts.java"/>
  4283. <run class="Asserts" vm="1.4"/>
  4284. </ajc-test>
  4285. <ajc-test dir="pureJava" title="assert coverage tests [requires 1.4]"
  4286. keywords="from-14tests,purejava">
  4287. <compile options="-source14" files="AssertsCv.java"/>
  4288. <run class="AssertsCv" vm="1.4"/>
  4289. </ajc-test>
  4290. <ajc-test dir="pureJava"
  4291. title="assert coverage tests in one package [requires 1.4]"
  4292. keywords="from-14tests,purejava,fail-unimplemented">
  4293. <compile options="-source14" files="AssertInOnePackage.java"/>
  4294. <run class="AssertInOnePackage" vm="1.4"/>
  4295. </ajc-test>
  4296. <ajc-test dir="new" title="assert tests in introduction [requires 1.4]"
  4297. keywords="from-14tests,fail-unimplemented">
  4298. <compile options="-source14" files="AssertInIntro.java"/>
  4299. <run class="AssertInIntro" vm="1.4"/>
  4300. </ajc-test>
  4301. <ajc-test dir="pureJava" title="compiling asserts in methods"
  4302. keywords="from-14tests,purejava">
  4303. <compile options="-source14,-usejavac" files="AssertInMethod.java"/>
  4304. <run class="AssertInMethod" vm="1.4"/>
  4305. </ajc-test>
  4306. <ajc-test dir="pureJava" pr="725"
  4307. title="asserts in aspect and declared methods [requires 1.4]"
  4308. keywords="from-14tests,purejava">
  4309. <compile options="-source14,-usejavac"
  4310. files="IntroducedAssertion.java"/>
  4311. <run class="IntroducedAssertion" vm="1.4"/>
  4312. </ajc-test>
  4313. <ajc-test dir="design/around"
  4314. title="around and return types + inlining optimizations"
  4315. comment="XXX not a 1.4 test, but source uses 1.4 APIs"
  4316. keywords="from-14tests">
  4317. <compile options="-XOcodeSize,-source14"
  4318. files="ReturnCastProceed.java,StackChecker.java">
  4319. <message kind="warning" line="68"/>
  4320. </compile>
  4321. <run class="ReturnCastProceed" vm="1.4"/>
  4322. </ajc-test>
  4323. <ajc-test dir="base/test131"
  4324. title="various forms of package name pattern matching work"
  4325. keywords="from-broken14usejavac">
  4326. <compile files="Driver.java,p1/C1.java,p1/p2/C2.java"/>
  4327. <run class="Driver"/>
  4328. </ajc-test>
  4329. <ajc-test dir="new" pr="134"
  4330. title="import of a class in the default package"
  4331. keywords="from-broken14usejavac,purejava">
  4332. <compile files="ImportFromUnnamed.java,DeclaredExcs.java"/>
  4333. <run class="ImportFromUnnamed"/>
  4334. </ajc-test>
  4335. <ajc-test dir="pureJava" pr="386"
  4336. title="Referencing static interfaces with import statements"
  4337. keywords="from-broken14usejavac,purejava">
  4338. <compile files="ClassWithStaticInnerInterfaces.java"/>
  4339. <compile files="ImportingStaticInnerInterfaces_PR386.java"/>
  4340. <run class="ImportingStaticInnerInterfaces_PR386"/>
  4341. </ajc-test>
  4342. <ajc-test dir="pureJava" pr="386"
  4343. title="Referencing static interfaces with import statements stars"
  4344. keywords="purejava,from-broken14usejavac">
  4345. <compile files="ClassWithStaticInnerInterfaces.java"/>
  4346. <compile files="ImportingStaticInnerInterfacesStars_PR386.java"/>
  4347. <run class="ImportingStaticInnerInterfacesStars_PR386"/>
  4348. </ajc-test>
  4349. <ajc-test dir="pureJava" pr="386"
  4350. title="Referencing static interfaces with import statements stars 2"
  4351. keywords="purejava,from-broken14usejavac">
  4352. <compile files="ClassWithStaticInnerInterfaces.java"/>
  4353. <compile files="ImportingStaticInnerInterfacesStars2_PR386.java"/>
  4354. <run class="ImportingStaticInnerInterfacesStars2_PR386"/>
  4355. </ajc-test>
  4356. <ajc-test dir="pureJava" pr="386"
  4357. title="Referencing static interfaces with import statements stars 3"
  4358. keywords="purejava,from-broken14usejavac">
  4359. <compile files="ClassWithStaticInnerInterfaces.java"/>
  4360. <compile files="ImportingStaticInnerInterfacesStars3_PR386.java"/>
  4361. <run class="ImportingStaticInnerInterfacesStars3_PR386"/>
  4362. </ajc-test>
  4363. <ajc-test dir="pureJava" pr="386"
  4364. title="Referencing interfaces with import statements"
  4365. keywords="purejava,from-broken14usejavac">
  4366. <compile
  4367. files="ClassWithInnerInterfaces.java,ImportingInnerInterfaces_PR386.java"/>
  4368. <run class="ImportingInnerInterfaces_PR386"/>
  4369. </ajc-test>
  4370. <ajc-test dir="pureJava" pr="386"
  4371. title="Referencing interfaces with import statements stars"
  4372. keywords="purejava,from-broken14usejavac">
  4373. <compile
  4374. files="ClassWithInnerInterfaces.java,ImportingInnerInterfacesStars_PR386.java"/>
  4375. <run class="ImportingInnerInterfacesStars_PR386"/>
  4376. </ajc-test>
  4377. <ajc-test dir="pureJava" pr="386"
  4378. title="Referencing interfaces with import statements stars 2"
  4379. keywords="purejava,from-broken14usejavac">
  4380. <compile
  4381. files="ClassWithInnerInterfaces.java,ImportingInnerInterfacesStars2_PR386.java"/>
  4382. <run class="ImportingInnerInterfacesStars2_PR386"/>
  4383. </ajc-test>
  4384. <ajc-test dir="pureJava" pr="386"
  4385. title="Referencing interfaces with import statements stars 3"
  4386. keywords="purejava,from-broken14usejavac">
  4387. <compile
  4388. files="ClassWithInnerInterfaces.java,ImportingInnerInterfacesStars3_PR386.java"/>
  4389. <run class="ImportingInnerInterfacesStars3_PR386"/>
  4390. </ajc-test>
  4391. <ajc-test dir="new" pr="657"
  4392. title="assert statement in advice coverage [requires 1.4]"
  4393. keywords="from-14tests,fail-in-eclipse">
  4394. <compile options="-source14" files="AssertInAdvice.java"/>
  4395. <run class="AssertInAdvice" vm="1.4"/>
  4396. </ajc-test>
  4397. <ajc-test dir="new" pr="657"
  4398. title="assert statement in advice [requires 1.4]"
  4399. keywords="from-14tests,fail-in-eclipse">
  4400. <compile options="-source14" files="AssertInAdviceBug.java"/>
  4401. <run class="AssertInAdviceBug" vm="1.4"/>
  4402. </ajc-test>
  4403. <ajc-test dir="new" pr="823"
  4404. title="declaring a private method on an inner interface"
  4405. keywords="tofix">
  4406. <compile files="PrivateMethodOnInnerInterface.java"/>
  4407. <run class="PrivateMethodOnInnerInterface"/>
  4408. </ajc-test>
  4409. <ajc-test dir="new" pr="829"
  4410. title="CE expected when declaring fields on arrays" keywords="tofix">
  4411. <compile files="ArrayFieldDeclarationCE.java">
  4412. <message kind="error" line="14"/>
  4413. </compile>
  4414. </ajc-test>
  4415. <ajc-test dir="pureJava" pr="866"
  4416. title="non-constant static final fields marked as final in .class">
  4417. <compile files="FinalStaticField.java"/>
  4418. <run class="FinalStaticField"/>
  4419. </ajc-test>
  4420. <ajc-test dir="new" pr="883"
  4421. title="signature of handler join point">
  4422. <compile files="HandlerSignature.java"/>
  4423. <run class="HandlerSignature"/>
  4424. </ajc-test>
  4425. <ajc-test dir="new" pr="885"
  4426. title="source locations within expressions">
  4427. <compile files="SourceLocationWithinExpr.java"/>
  4428. <run class="SourceLocationWithinExpr"/>
  4429. </ajc-test>
  4430. <ajc-test dir="new" pr="888"
  4431. title="crashes given method in declared method">
  4432. <compile files="DeclareMethodCE.java">
  4433. <message kind="error" line="8"/>
  4434. </compile>
  4435. </ajc-test>
  4436. <ajc-test dir="new" pr="889"
  4437. title="after returning advice on interface constructor">
  4438. <compile files="AfterReturningInterfaceConstructor.java"/>
  4439. <run class="AfterReturningInterfaceConstructor"/>
  4440. </ajc-test>
  4441. <ajc-test dir="bugs" pr="900"
  4442. title="after advice on static call join point">
  4443. <compile files="AfterStaticCall.java"/>
  4444. <run class="AfterStaticCall"/>
  4445. </ajc-test>
  4446. <ajc-test dir="bugs" pr="901"
  4447. title="incompatible class change error"
  4448. comment="XXX Jim and Erik found/fixed this - need basis">
  4449. <compile files="IncompatibleClassChangeErrorBug.java"/>
  4450. <run class="IncompatibleClassChangeErrorBug"/>
  4451. </ajc-test>
  4452. <ajc-test dir="bugs" pr="903"
  4453. title="simple cflow of method execution">
  4454. <compile files="ExecutionCflow.java"/>
  4455. <run class="ExecutionCflow"/>
  4456. </ajc-test>
  4457. <ajc-test dir="bugs" pr="909"
  4458. title="using instance as class reference to constant field"
  4459. comment="XXX need to verify run">
  4460. <compile files="InstanceAsClassRefToConstant.java"/>
  4461. </ajc-test>
  4462. <!-- .................................... option tests -->
  4463. <!-- .................................... -warn tests -->
  4464. <ajc-test dir="options"
  4465. title="options -warn:deprecation">
  4466. <compile files="WarnDeprecated.java"
  4467. options="!eclipse,-warn:deprecation">
  4468. <message kind="warning" line="10"/>
  4469. </compile>
  4470. </ajc-test>
  4471. <!-- .................................... -Xlint tests -->
  4472. <!-- ............... positive -Xlint tests -->
  4473. <ajc-test dir="options"
  4474. title="options -Xlint args()"
  4475. keywords="lint">
  4476. <compile files="XLintTypeArgsPCD.java"
  4477. options="!Xlint">
  4478. <message kind="warning" line="10"/>
  4479. </compile>
  4480. </ajc-test>
  4481. <ajc-test dir="options"
  4482. title="options declare field on bad type">
  4483. <compile files="XLintTypeDeclareField.java" options="!eclipse">
  4484. <message kind="error" line="10"/>
  4485. </compile>
  4486. </ajc-test>
  4487. <ajc-test dir="options"
  4488. title="options declare method on bad type">
  4489. <compile files="XLintTypeDeclareMethod.java" options="!eclipse">
  4490. <message kind="error" line="10"/>
  4491. </compile>
  4492. </ajc-test>
  4493. <ajc-test dir="options"
  4494. title="options -Xlint declare parent"
  4495. keywords="lint">
  4496. <compile files="XLintTypeDeclareParent.java"
  4497. options="!Xlint">
  4498. <message kind="warning" line="10"/>
  4499. </compile>
  4500. </ajc-test>
  4501. <ajc-test dir="options"
  4502. title="options -Xlint target()"
  4503. keywords="lint">
  4504. <compile files="XLintTypeTargetPCD.java"
  4505. options="!Xlint">
  4506. <message kind="warning" line="10"/>
  4507. </compile>
  4508. </ajc-test>
  4509. <ajc-test dir="options"
  4510. title="options -Xlint this()"
  4511. keywords="lint">
  4512. <compile files="XLintTypeThisPCD.java"
  4513. options="!Xlint">
  4514. <message kind="warning" line="10"/>
  4515. </compile>
  4516. </ajc-test>
  4517. <!-- ............... negative -Xlint tests -->
  4518. <ajc-test dir="options"
  4519. title="options negative -Xlint args()"
  4520. keywords="lint">
  4521. <compile files="XLintTypeArgsPCD.java" options="-Xlint:ignore"/>
  4522. </ajc-test>
  4523. <ajc-test dir="options"
  4524. title="options negative -Xlint declare parent"
  4525. keywords="lint">
  4526. <compile files="XLintTypeDeclareParent.java" options="-Xlint:ignore"/>
  4527. </ajc-test>
  4528. <ajc-test dir="options"
  4529. title="options negative -Xlint target()"
  4530. keywords="lint">
  4531. <compile files="XLintTypeTargetPCD.java" options="-Xlint:ignore"/>
  4532. </ajc-test>
  4533. <ajc-test dir="options"
  4534. title="options negative -Xlint this()"
  4535. keywords="lint">
  4536. <compile files="XLintTypeThisPCD.java" options="-Xlint:ignore"/>
  4537. </ajc-test>
  4538. <!-- .................................... -injars tests -->
  4539. <ajc-test dir="options/injars/simple"
  4540. title="source for options -injars">
  4541. <compile files="Simple.java,Main.java"/>
  4542. <run class="Main"/>
  4543. </ajc-test>
  4544. <ajc-test dir="options/injars/simple"
  4545. title="options -injars">
  4546. <compile files="Simple.java,main.jar"
  4547. options="!eclipse"/>
  4548. <run class="Main"/>
  4549. </ajc-test>
  4550. <!-- .................................... aspectpath tests -->
  4551. <!-- The jars used by this test can be regenerated with
  4552. org.aspectj.ajdt.core/testsrc/org.aspectj.ajdt.internal.compiler.batch.BcweaverJarMaker
  4553. -->
  4554. <ajc-test dir="new/options11"
  4555. comment="XXX not validated correct yet"
  4556. title="testing new options">
  4557. <compile files="Main.java,injar.jar,Aspect.java"
  4558. aspectpath="aspectlib1.jar,aspectlib2.jar"/>
  4559. <!-- can't run until we support classpath including the above jars
  4560. <run class="Main"/>
  4561. -->
  4562. </ajc-test>
  4563. <ajc-test dir="new" pr="774"
  4564. title="interface self-reference in anonymous instance">
  4565. <compile files="AnonymousSelfReference.java"/>
  4566. <run class="AnonymousSelfReference"/>
  4567. </ajc-test>
  4568. <ajc-test dir="new" pr="776"
  4569. title="self-reference from (aspect-declared) method-local class">
  4570. <compile files="MethodSelfReference.java"/>
  4571. <run class="MethodSelfReference"/>
  4572. </ajc-test>
  4573. <ajc-test dir="new" title="expect CE for unterminated declare error">
  4574. <compile files="UnterminatedDeclareErrorCE.java">
  4575. <message kind="error" line="5"/>
  4576. </compile>
  4577. </ajc-test>
  4578. <ajc-test dir="new"
  4579. title="expect CE for declaration collision between subaspects instead of domination order">
  4580. <compile files="DeclarationCollisionCE.java">
  4581. <message kind="error" line="10"/>
  4582. <message kind="error" line="20"/>
  4583. <message kind="error" line="27"/>
  4584. </compile>
  4585. </ajc-test>
  4586. <ajc-test dir="new"
  4587. title="subtype pattern in dominates should pick out aspect subtypes">
  4588. <compile files="DominatesTypePattern.java"/>
  4589. <run class="DominatesTypePattern"/>
  4590. </ajc-test>
  4591. <ajc-test dir="new"
  4592. title="subtype pattern in dominates will conflict with type pattern">
  4593. <compile files="DominatesTypePatternCE.java">
  4594. <message kind="error" line="15"/>
  4595. </compile>
  4596. </ajc-test>
  4597. <ajc-test dir="new" pr="827"
  4598. title="after returning advice on interface and implementation constructor"
  4599. keywords="tofix">
  4600. <compile files="AfterReturningConstructor.java"/>
  4601. <run class="AfterReturningConstructor"/>
  4602. </ajc-test>
  4603. <ajc-test dir="new" pr="832"
  4604. title="after throwing advice with non-throwable formal">
  4605. <compile files="AfterThrowingNonThrowable.java">
  4606. <message kind="error" line="41"/>
  4607. </compile>
  4608. </ajc-test>
  4609. <ajc-test dir="new" pr="829" title="declare array field using postfix"
  4610. keywords="tofix">
  4611. <compile files="ArrayFieldDeclaration.java">
  4612. <message kind="error" line="17"/>
  4613. </compile>
  4614. </ajc-test>
  4615. <ajc-test dir="new" pr="851"
  4616. title="prohibit declaring new aspect constructor with arguments">
  4617. <compile files="DeclareAspectConstructorCE.java">
  4618. <message kind="error" line="10"/>
  4619. </compile>
  4620. </ajc-test>
  4621. <ajc-test dir="new" pr="851"
  4622. title="prohibit declaring only aspect constructor with arguments">
  4623. <compile files="DeclareOnlyAspectConstructorCE.java">
  4624. <message kind="error" line="10"/>
  4625. </compile>
  4626. </ajc-test>
  4627. <!-- The follwing three idioms are allowed. Within a declare parents,
  4628. implements and extends can be used interchangably. We could
  4629. provide -Xlint style warnings for misuse.
  4630. -->
  4631. <ajc-test dir="new" pr="853"
  4632. title="declare class extends interface">
  4633. <compile files="DeclareClassExtendsInterface.java">
  4634. </compile>
  4635. </ajc-test>
  4636. <ajc-test dir="new" pr="853"
  4637. title="declare class implements class">
  4638. <compile files="DeclareClassImplementsClass.java">
  4639. </compile>
  4640. </ajc-test>
  4641. <ajc-test dir="new" pr="853"
  4642. title="declare interface implements interface">
  4643. <compile files="DeclareInterfaceImplementsInterface.java">
  4644. </compile>
  4645. </ajc-test>
  4646. <ajc-test dir="new"
  4647. title="if and cflow arg binding">
  4648. <compile files="CflowBinding.java">
  4649. <message kind="error" line="13"/>
  4650. </compile>
  4651. </ajc-test>
  4652. <ajc-test dir="bugs" pr="902"
  4653. title="circularity in declare dominates">
  4654. <compile files="CircularDominates.java">
  4655. <message kind="error" line="18"/>
  4656. </compile>
  4657. </ajc-test>
  4658. <ajc-test dir="bugs" pr="28702" title="percflow code hangs compiler">
  4659. <compile files="CloseConnectionsCflow.java">
  4660. </compile>
  4661. </ajc-test>
  4662. <ajc-test dir="bugs" pr="28703" title="assert and pertarget crashes compiler">
  4663. <compile files="EnsureOverriding.java" options="-1.4"/>
  4664. <run class="EnsureOverriding"/>
  4665. </ajc-test>
  4666. <ajc-test dir="bugs" pr="28852"
  4667. title="Verification error tracing constructor that takes arguments">
  4668. <compile files="ConstructorArgTracing.java"/>
  4669. <run class="ConstructorArgTracing"/>
  4670. </ajc-test>
  4671. <ajc-test dir="bugs" pr="29106" title="declared exceptions in inter-type decls">
  4672. <compile files="ExceptionsOnInters.java"/>
  4673. <run class="ExceptionsOnInters"/>
  4674. </ajc-test>
  4675. <ajc-test dir="bugs" pr="28921"
  4676. title="Verify error on non-Throwable in declare soft">
  4677. <compile files="DeclareSoftCf.java" options="-Xlint:warning">
  4678. <message kind="warning" line="28"/>
  4679. <message kind="error" line="29"/>
  4680. </compile>
  4681. </ajc-test>
  4682. <ajc-test dir="bugs" pr="29113" title="inter-type fields with array types">
  4683. <compile files="InterFieldArrays.java"/>
  4684. <run class="InterFieldArrays"/>
  4685. </ajc-test>
  4686. <ajc-test dir="new"
  4687. title="unmatched type name in a declare parents should result in a warning in -Xlint mode"
  4688. keywords="tofix">
  4689. <compile options="-Xlint" files="MissingTypeInDeclareParents.java">
  4690. <message kind="warning" line="20"/>
  4691. </compile>
  4692. <run class="MissingTypeInDeclareParents"/>
  4693. </ajc-test>
  4694. <ajc-test dir="new" pr="838"
  4695. title="checking around join point for advice return type - numeric">
  4696. <compile files="AroundNumericCastCE.java">
  4697. <message kind="error" line="12"/>
  4698. <message kind="error" line="17"/>
  4699. </compile>
  4700. </ajc-test>
  4701. <ajc-test dir="new" pr="836" title="void around advice without proceed">
  4702. <compile files="VoidAround.java">
  4703. <message kind="error" line="11"/>
  4704. <message kind="error" line="29"/>
  4705. </compile>
  4706. </ajc-test>
  4707. <ajc-test dir="new/PR852" pr="852"
  4708. title="declaring method on superclass and subclass">
  4709. <compile files="aspectPack/Aspect.java,target/SubClass.java,target/SuperClass.java">
  4710. <dir-changes added="target.SubClass,target.SuperClass"/>
  4711. </compile>
  4712. <run class="aspectPack.Aspect"/>
  4713. </ajc-test>
  4714. <!-- Can't handle packages named 'aspect' in parser
  4715. -->
  4716. <ajc-test dir="new/PR852" pr="852"
  4717. title="declaring method on superclass and subclass"
  4718. keywords="knownLimitation">
  4719. <compile files="aspect/Aspect.java,target/SubClass.java,target/SuperClass.java">
  4720. <dir-changes added="target.SubClass,target.SuperClass"/>
  4721. </compile>
  4722. <run class="aspect.Aspect"/>
  4723. </ajc-test>
  4724. <!-- The correct behavior of this program is to produce an Xlint
  4725. warning for the lack of access to the needed type, and then
  4726. to generate code with link errors that will throw a NoSuchMethodError
  4727. when run.
  4728. -->
  4729. <ajc-test dir="bugs" pr="906"
  4730. title="privileged access to code outside the control of the compiler">
  4731. <compile files="PrivilegeBeyondScope.java" options="-Xlint:warning">
  4732. <message kind="warning" line="23"/>
  4733. </compile>
  4734. </ajc-test>
  4735. <ajc-test dir="new/PR862" pr="862"
  4736. title="import any inner from interface implementor"
  4737. keywords="purejava">
  4738. <compile files="pack/ImportInnerFromInterfaceImplementor.java">
  4739. <dir-changes added="pack.ImportInnerFromInterfaceImplementor"/>
  4740. </compile>
  4741. <run class="pack.ImportInnerFromInterfaceImplementor"/>
  4742. </ajc-test>
  4743. <ajc-test dir="new/finalfield" pr="28974"
  4744. title="introducing final fields (simple)">
  4745. <compile files="Introducer.java,Receiver.java,User1.java"/>
  4746. <run class="User1"/>
  4747. </ajc-test>
  4748. <ajc-test dir="new/finalfield" pr="28974"
  4749. title="introducing final fields and using as constants">
  4750. <compile files="Introducer.java,Receiver.java,User2.java"/>
  4751. <run class="User2"/>
  4752. </ajc-test>
  4753. <ajc-test dir="new/finalfield" pr="28974"
  4754. title="introducing final fields and checking errors">
  4755. <compile files="Introducer.java,Receiver.java,UserCf.java">
  4756. <message kind="error" line="6"/>
  4757. </compile>
  4758. </ajc-test>
  4759. <ajc-test dir="bugs" pr="29691"
  4760. title="Static inner aspects cannot reference user defined pointcuts">
  4761. <compile files="PcdLookup.java" />
  4762. <run class="PcdLookup"/>
  4763. </ajc-test>
  4764. <ajc-test dir="bugs" pr="29691"
  4765. title="Static inner aspects cannot reference user defined pointcuts">
  4766. <compile files="SoftWithin.java" />
  4767. <run class="SoftWithin"/>
  4768. </ajc-test>
  4769. <ajc-test dir="bugs" pr="29689"
  4770. title="Declare precedence should not allow multiple * patterns">
  4771. <compile files="CircularPrecedence.java">
  4772. <message kind="error" line="14"/>
  4773. </compile>
  4774. </ajc-test>
  4775. <ajc-test dir="bugs" pr="29662"
  4776. title="VerifyError on accessing objects not accessible to the weaver">
  4777. <compile files="AroundAccess.java">
  4778. </compile>
  4779. <run class="AroundAccess"/>
  4780. </ajc-test>
  4781. <ajc-test dir="new" pr="804"
  4782. title="aspect static initializers should run before instance constructed"
  4783. keywords="tofix">
  4784. <compile files="AspectStaticInit.java"/>
  4785. <run class="AspectStaticInit"/>
  4786. </ajc-test>
  4787. <ajc-test dir="bugs" pr="29959"
  4788. title="super call in intertype method declaration body causes VerifyError">
  4789. <compile files="SuperToIntro.java"/>
  4790. <run class="SuperToIntro"/>
  4791. </ajc-test>
  4792. </suite>