fixincl.x 330 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487
  1. /* -*- buffer-read-only: t -*- vi: set ro:
  2. *
  3. * DO NOT EDIT THIS FILE (fixincl.x)
  4. *
  5. * It has been AutoGen-ed February 27, 2022 at 07:47:03 PM by AutoGen 5.18.16
  6. * From the definitions inclhack.def
  7. * and the template file fixincl
  8. */
  9. /* DO NOT SVN-MERGE THIS FILE, EITHER Sun Feb 27 19:47:03 UTC 2022
  10. *
  11. * You must regenerate it. Use the ./genfixes script.
  12. *
  13. *
  14. * This is part of the fixincl program used to install modified versions of
  15. * certain ANSI-incompatible system header files which are fixed to work
  16. * correctly with ANSI C and placed in a directory that GNU C will search.
  17. *
  18. * This file contains 267 fixup descriptions.
  19. *
  20. * See README for more information.
  21. *
  22. * inclhack copyright (c) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
  23. * 2006, 2007, 2008
  24. * The Free Software Foundation, Inc.
  25. *
  26. * inclhack is free software: you can redistribute it and/or modify it
  27. * under the terms of the GNU General Public License as published by the
  28. * Free Software Foundation, either version 3 of the License, or
  29. * (at your option) any later version.
  30. *
  31. * inclhack is distributed in the hope that it will be useful, but
  32. * WITHOUT ANY WARRANTY; without even the implied warranty of
  33. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  34. * See the GNU General Public License for more details.
  35. *
  36. * You should have received a copy of the GNU General Public License along
  37. * with this program. If not, see <http://www.gnu.org/licenses/>.
  38. */
  39. #ifndef SED_PROGRAM
  40. #define SED_PROGRAM "/usr/bin/sed"
  41. #endif
  42. static char const sed_cmd_z[] = SED_PROGRAM;
  43. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  44. *
  45. * Description of Aab_Aix_Stdio fix
  46. */
  47. tSCC zAab_Aix_StdioName[] =
  48. "AAB_aix_stdio";
  49. /*
  50. * File name selection pattern
  51. */
  52. tSCC zAab_Aix_StdioList[] =
  53. "stdio.h\0";
  54. /*
  55. * Machine/OS name selection pattern
  56. */
  57. tSCC* apzAab_Aix_StdioMachs[] = {
  58. "*-*-aix*",
  59. (const char*)NULL };
  60. /*
  61. * content selection pattern - do fix if pattern found
  62. */
  63. tSCC zAab_Aix_StdioSelect0[] =
  64. "define fopen fopen64";
  65. #define AAB_AIX_STDIO_TEST_CT 1
  66. static tTestDesc aAab_Aix_StdioTests[] = {
  67. { TT_EGREP, zAab_Aix_StdioSelect0, (regex_t*)NULL }, };
  68. /*
  69. * Fix Command Arguments for Aab_Aix_Stdio
  70. */
  71. static const char* apzAab_Aix_StdioPatch[] = {
  72. "wrap",
  73. "",
  74. "\n\
  75. #if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n\
  76. #define __need__aix_stdio_h_fix\n\
  77. #ifdef __need__aix_stdio_h_fix\n\
  78. #undef fseeko\n\
  79. #undef ftello\n\
  80. #undef fgetpos\n\
  81. #undef fsetpos\n\
  82. #undef fopen\n\
  83. #undef freopen\n\
  84. /* Alias the symbols using asm */\n\
  85. extern \"C\" {\n\
  86. extern int fgetpos(FILE *, fpos64_t *) __asm__(\"fgetpos64\");\n\
  87. extern FILE *fopen(const char *, const char *) __asm__(\"fopen64\");\n\
  88. extern FILE *freopen(const char *, const char *, FILE *) __asm__(\"freopen64\");\n\
  89. extern int fseeko(FILE *, off64_t, int) __asm__(\"fseeko64\");\n\
  90. extern int fsetpos(FILE *, const fpos64_t *) __asm__(\"fsetpos64\");\n\
  91. extern off64_t ftello(FILE *) __asm__(\"ftello64\");\n\
  92. }\n\
  93. #endif\n\
  94. #endif\n",
  95. (char*)NULL };
  96. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  97. *
  98. * Description of Aab_Aix_Fcntl fix
  99. */
  100. tSCC zAab_Aix_FcntlName[] =
  101. "AAB_aix_fcntl";
  102. /*
  103. * File name selection pattern
  104. */
  105. tSCC zAab_Aix_FcntlList[] =
  106. "fcntl.h\0";
  107. /*
  108. * Machine/OS name selection pattern
  109. */
  110. tSCC* apzAab_Aix_FcntlMachs[] = {
  111. "*-*-aix*",
  112. (const char*)NULL };
  113. /*
  114. * content selection pattern - do fix if pattern found
  115. */
  116. tSCC zAab_Aix_FcntlSelect0[] =
  117. "define open[ \t]open64";
  118. #define AAB_AIX_FCNTL_TEST_CT 1
  119. static tTestDesc aAab_Aix_FcntlTests[] = {
  120. { TT_EGREP, zAab_Aix_FcntlSelect0, (regex_t*)NULL }, };
  121. /*
  122. * Fix Command Arguments for Aab_Aix_Fcntl
  123. */
  124. static const char* apzAab_Aix_FcntlPatch[] = {
  125. "wrap",
  126. "",
  127. "\n\
  128. #if defined __GNUG__ && defined _LARGE_FILES && defined __cplusplus\n\
  129. #define __need__aix_fcntl_h_fix\n\
  130. #ifdef __need__aix_fcntl_h_fix\n\
  131. #undef open\n\
  132. #undef creat\n\
  133. #undef openat\n\
  134. /* Alias the symbols using asm */\n\
  135. extern \"C\" {\n\
  136. extern int open(const char *, int, ...) __asm__(\"open64\");\n\
  137. extern int creat(const char *, mode_t) __asm__(\"creat64\");\n\
  138. #if (_XOPEN_SOURCE >= 700)\n\
  139. extern int openat(int, const char *, int, ...) __asm__(\"open64at\");\n\
  140. #endif\n\
  141. }\n\
  142. #endif\n\
  143. #endif\n",
  144. (char*)NULL };
  145. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  146. *
  147. * Description of Aab_Darwin7_9_Long_Double_Funcs fix
  148. */
  149. tSCC zAab_Darwin7_9_Long_Double_FuncsName[] =
  150. "AAB_darwin7_9_long_double_funcs";
  151. /*
  152. * File name selection pattern
  153. */
  154. tSCC zAab_Darwin7_9_Long_Double_FuncsList[] =
  155. "architecture/ppc/math.h\0";
  156. /*
  157. * Machine/OS name selection pattern
  158. */
  159. tSCC* apzAab_Darwin7_9_Long_Double_FuncsMachs[] = {
  160. "*-*-darwin7.9*",
  161. (const char*)NULL };
  162. /*
  163. * content bypass pattern - skip fix if pattern found
  164. */
  165. tSCC zAab_Darwin7_9_Long_Double_FuncsBypass0[] =
  166. "powl";
  167. #define AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT 1
  168. static tTestDesc aAab_Darwin7_9_Long_Double_FuncsTests[] = {
  169. { TT_NEGREP, zAab_Darwin7_9_Long_Double_FuncsBypass0, (regex_t*)NULL }, };
  170. /*
  171. * Fix Command Arguments for Aab_Darwin7_9_Long_Double_Funcs
  172. */
  173. static const char* apzAab_Darwin7_9_Long_Double_FuncsPatch[] = {
  174. "/* This file prototypes the long double functions available on Mac OS\n\
  175. 10.3.9. */\n\
  176. #ifndef __MATH__\n\
  177. # undef __APPLE_CC__\n\
  178. # define __APPLE_CC__ 1345\n\
  179. # include_next <architecture/ppc/math.h>\n\
  180. # undef __APPLE_CC__\n\
  181. # define __APPLE_CC__ 1\n\
  182. # ifndef __LIBMLDBL_COMPAT\n\
  183. # ifdef __LONG_DOUBLE_128__\n\
  184. # define __LIBMLDBL_COMPAT(sym) __asm(\"_\" #sym \"$LDBL128\")\n\
  185. # else\n\
  186. # define __LIBMLDBL_COMPAT(sym)\n\
  187. # endif /* __LONG_DOUBLE_128__ */\n\
  188. # endif /* __LIBMLDBL_COMPAT */\n\
  189. # ifdef __cplusplus\n\
  190. extern \"C\" {\n\
  191. # endif\n\
  192. extern long double acosl( long double ) __LIBMLDBL_COMPAT(acosl);\n\
  193. extern long double asinl( long double ) __LIBMLDBL_COMPAT(asinl);\n\
  194. extern long double atanl( long double ) __LIBMLDBL_COMPAT(atanl);\n\
  195. extern long double atan2l( long double, long double ) __LIBMLDBL_COMPAT(atan2l);\n\
  196. extern long double cosl( long double ) __LIBMLDBL_COMPAT(cosl);\n\
  197. extern long double sinl( long double ) __LIBMLDBL_COMPAT(sinl);\n\
  198. extern long double tanl( long double ) __LIBMLDBL_COMPAT(tanl);\n\
  199. extern long double acoshl( long double ) __LIBMLDBL_COMPAT(acoshl);\n\
  200. extern long double asinhl( long double ) __LIBMLDBL_COMPAT(asinhl);\n\
  201. extern long double atanhl( long double ) __LIBMLDBL_COMPAT(atanhl);\n\
  202. extern long double coshl( long double ) __LIBMLDBL_COMPAT(coshl);\n\
  203. extern long double sinhl( long double ) __LIBMLDBL_COMPAT(sinhl);\n\
  204. extern long double tanhl( long double ) __LIBMLDBL_COMPAT(tanhl);\n\
  205. extern long double expl( long double ) __LIBMLDBL_COMPAT(expl);\n\
  206. extern long double exp2l( long double ) __LIBMLDBL_COMPAT(exp2l);\n\
  207. extern long double expm1l( long double ) __LIBMLDBL_COMPAT(expm1l);\n\
  208. extern long double logl( long double ) __LIBMLDBL_COMPAT(logl);\n\
  209. extern long double log10l( long double ) __LIBMLDBL_COMPAT(log10l);\n\
  210. extern long double log2l( long double ) __LIBMLDBL_COMPAT(log2l);\n\
  211. extern long double log1pl( long double ) __LIBMLDBL_COMPAT(log1pl);\n\
  212. extern long double logbl( long double ) __LIBMLDBL_COMPAT(logbl);\n\
  213. extern long double modfl( long double, long double * ) __LIBMLDBL_COMPAT(modfl);\n\
  214. extern long double ldexpl( long double, int ) __LIBMLDBL_COMPAT(ldexpl);\n\
  215. extern long double frexpl( long double, int * ) __LIBMLDBL_COMPAT(frexpl);\n\
  216. extern int ilogbl( long double ) __LIBMLDBL_COMPAT(ilogbl);\n\
  217. extern long double scalbnl( long double, int ) __LIBMLDBL_COMPAT(scalbnl);\n\
  218. extern long double scalblnl( long double, long int ) __LIBMLDBL_COMPAT(scalblnl);\n\
  219. extern long double fabsl( long double ) __LIBMLDBL_COMPAT(fabsl);\n\
  220. extern long double cbrtl( long double ) __LIBMLDBL_COMPAT(cbrtl);\n\
  221. extern long double hypotl( long double, long double ) __LIBMLDBL_COMPAT(hypotl);\n\
  222. extern long double powl( long double, long double ) __LIBMLDBL_COMPAT(powl);\n\
  223. extern long double sqrtl( long double ) __LIBMLDBL_COMPAT(sqrtl);\n\
  224. extern long double erfl( long double ) __LIBMLDBL_COMPAT(erfl);\n\
  225. extern long double erfcl( long double ) __LIBMLDBL_COMPAT(erfcl);\n\
  226. extern long double lgammal( long double ) __LIBMLDBL_COMPAT(lgammal);\n\
  227. extern long double tgammal( long double ) __LIBMLDBL_COMPAT(tgammal);\n\
  228. extern long double ceill( long double ) __LIBMLDBL_COMPAT(ceill);\n\
  229. extern long double floorl( long double ) __LIBMLDBL_COMPAT(floorl);\n\
  230. extern long double nearbyintl( long double ) __LIBMLDBL_COMPAT(nearbyintl);\n\
  231. extern long double rintl( long double ) __LIBMLDBL_COMPAT(rintl);\n\
  232. extern long int lrintl( long double ) __LIBMLDBL_COMPAT(lrintl);\n\
  233. extern long long int llrintl( long double ) __LIBMLDBL_COMPAT(llrintl);\n\
  234. extern long double roundl( long double ) __LIBMLDBL_COMPAT(roundl);\n\
  235. extern long int lroundl( long double ) __LIBMLDBL_COMPAT(lroundl);\n\
  236. extern long long int llroundl( long double ) __LIBMLDBL_COMPAT(llroundl);\n\
  237. extern long double truncl( long double ) __LIBMLDBL_COMPAT(truncl);\n\
  238. extern long double fmodl( long double, long double) __LIBMLDBL_COMPAT(fmodl);\n\
  239. extern long double remainderl( long double, long double ) __LIBMLDBL_COMPAT(remainderl);\n\
  240. extern long double remquol( long double, long double, int * ) __LIBMLDBL_COMPAT(remquol);\n\
  241. extern long double copysignl( long double, long double ) __LIBMLDBL_COMPAT(copysignl);\n\
  242. extern long double nanl( const char * ) __LIBMLDBL_COMPAT(nanl);\n\
  243. extern long double nextafterl( long double, long double ) __LIBMLDBL_COMPAT(nextafterl);\n\
  244. extern long double nexttowardl( long double, long double ) __LIBMLDBL_COMPAT(nexttowardl);\n\
  245. extern long double fdiml( long double, long double ) __LIBMLDBL_COMPAT(fdiml);\n\
  246. extern long double fmaxl( long double, long double ) __LIBMLDBL_COMPAT(fmaxl);\n\
  247. extern long double fminl( long double, long double ) __LIBMLDBL_COMPAT(fminl);\n\
  248. extern long double fmal( long double, long double, long double ) __LIBMLDBL_COMPAT(fmal);\n\
  249. # ifdef __cplusplus\n\
  250. }\n\
  251. # endif\n\
  252. #endif /* __MATH__ */",
  253. (char*)NULL };
  254. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  255. *
  256. * Description of Darwin_Api_Availability fix
  257. */
  258. tSCC zDarwin_Api_AvailabilityName[] =
  259. "darwin_api_availability";
  260. /*
  261. * File name selection pattern
  262. */
  263. tSCC zDarwin_Api_AvailabilityList[] =
  264. "os/availability.h\0";
  265. /*
  266. * Machine/OS name selection pattern
  267. */
  268. tSCC* apzDarwin_Api_AvailabilityMachs[] = {
  269. "*-*-darwin*",
  270. (const char*)NULL };
  271. /*
  272. * content selection pattern - do fix if pattern found
  273. */
  274. tSCC zDarwin_Api_AvailabilitySelect0[] =
  275. " *#define __API_AVAILABLE.*\n\
  276. *#define __API_DEPRECATED.*\n\
  277. *#define __API_DEPRECATED_WITH_REPLACEMENT.*\n\
  278. *#define __API_UNAVAILABLE.*\n";
  279. /*
  280. * content bypass pattern - skip fix if pattern found
  281. */
  282. tSCC zDarwin_Api_AvailabilityBypass0[] =
  283. "__IPHONE_OS_VERSION_MIN_REQUIRED";
  284. #define DARWIN_API_AVAILABILITY_TEST_CT 2
  285. static tTestDesc aDarwin_Api_AvailabilityTests[] = {
  286. { TT_NEGREP, zDarwin_Api_AvailabilityBypass0, (regex_t*)NULL },
  287. { TT_EGREP, zDarwin_Api_AvailabilitySelect0, (regex_t*)NULL }, };
  288. /*
  289. * Fix Command Arguments for Darwin_Api_Availability
  290. */
  291. static const char* apzDarwin_Api_AvailabilityPatch[] = {
  292. "format",
  293. " #define API_AVAILABLE(...)\n\
  294. #define API_DEPRECATED(...)\n\
  295. #define API_DEPRECATED_WITH_REPLACEMENT(...)\n\
  296. #define API_UNAVAILABLE(...)\n",
  297. (char*)NULL };
  298. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  299. *
  300. * Description of Aab_Fd_Zero_Asm_Posix_Types_H fix
  301. */
  302. tSCC zAab_Fd_Zero_Asm_Posix_Types_HName[] =
  303. "AAB_fd_zero_asm_posix_types_h";
  304. /*
  305. * File name selection pattern
  306. */
  307. tSCC zAab_Fd_Zero_Asm_Posix_Types_HList[] =
  308. "asm/posix_types.h\0";
  309. /*
  310. * Machine/OS name selection pattern
  311. */
  312. tSCC* apzAab_Fd_Zero_Asm_Posix_Types_HMachs[] = {
  313. "i[34567]86-*-linux*",
  314. (const char*)NULL };
  315. /*
  316. * content bypass pattern - skip fix if pattern found
  317. */
  318. tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass0[] =
  319. "} while";
  320. tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass1[] =
  321. "x86_64";
  322. tSCC zAab_Fd_Zero_Asm_Posix_Types_HBypass2[] =
  323. "posix_types_64";
  324. #define AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT 3
  325. static tTestDesc aAab_Fd_Zero_Asm_Posix_Types_HTests[] = {
  326. { TT_NEGREP, zAab_Fd_Zero_Asm_Posix_Types_HBypass0, (regex_t*)NULL },
  327. { TT_NEGREP, zAab_Fd_Zero_Asm_Posix_Types_HBypass1, (regex_t*)NULL },
  328. { TT_NEGREP, zAab_Fd_Zero_Asm_Posix_Types_HBypass2, (regex_t*)NULL }, };
  329. /*
  330. * Fix Command Arguments for Aab_Fd_Zero_Asm_Posix_Types_H
  331. */
  332. static const char* apzAab_Fd_Zero_Asm_Posix_Types_HPatch[] = {
  333. "/* This file fixes a bug in the __FD_ZERO macro\n\
  334. for older versions of the Linux kernel. */\n\
  335. #ifndef _POSIX_TYPES_H_WRAPPER\n\
  336. #include <features.h>\n\
  337. #include_next <asm/posix_types.h>\n\n\
  338. #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
  339. #undef __FD_ZERO\n\
  340. #define __FD_ZERO(fdsetp) \\\n\
  341. do { \\\n\
  342. int __d0, __d1; \\\n\
  343. __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
  344. : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
  345. : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
  346. \"1\" ((__kernel_fd_set *) (fdsetp)) :\"memory\"); \\\n\
  347. } while (0)\n\
  348. #endif\n\n\
  349. #define _POSIX_TYPES_H_WRAPPER\n\
  350. #endif /* _POSIX_TYPES_H_WRAPPER */",
  351. (char*)NULL };
  352. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  353. *
  354. * Description of Aab_Fd_Zero_Gnu_Types_H fix
  355. */
  356. tSCC zAab_Fd_Zero_Gnu_Types_HName[] =
  357. "AAB_fd_zero_gnu_types_h";
  358. /*
  359. * File name selection pattern
  360. */
  361. tSCC zAab_Fd_Zero_Gnu_Types_HList[] =
  362. "gnu/types.h\0";
  363. /*
  364. * Machine/OS name selection pattern
  365. */
  366. tSCC* apzAab_Fd_Zero_Gnu_Types_HMachs[] = {
  367. "i[34567]86-*-linux*",
  368. (const char*)NULL };
  369. #define AAB_FD_ZERO_GNU_TYPES_H_TEST_CT 0
  370. #define aAab_Fd_Zero_Gnu_Types_HTests (tTestDesc*)NULL
  371. /*
  372. * Fix Command Arguments for Aab_Fd_Zero_Gnu_Types_H
  373. */
  374. static const char* apzAab_Fd_Zero_Gnu_Types_HPatch[] = {
  375. "/* This file fixes a bug in the __FD_ZERO macro present in glibc 1.x. */\n\
  376. #ifndef _TYPES_H_WRAPPER\n\
  377. #include <features.h>\n\
  378. #include_next <gnu/types.h>\n\n\
  379. #if defined(__FD_ZERO) && !defined(__GLIBC__)\n\
  380. #undef __FD_ZERO\n\
  381. # define __FD_ZERO(fdsetp) \\\n\
  382. do { \\\n\
  383. int __d0, __d1; \\\n\
  384. __asm__ __volatile__(\"cld ; rep ; stosl\" \\\n\
  385. : \"=&c\" (__d0), \"=&D\" (__d1) \\\n\
  386. : \"a\" (0), \"0\" (__FDSET_LONGS), \\\n\
  387. \"1\" ((__fd_set *) (fdsetp)) :\"memory\"); \\\n\
  388. } while (0)\n\
  389. #endif\n\n\
  390. #define _TYPES_H_WRAPPER\n\
  391. #endif /* _TYPES_H_WRAPPER */",
  392. (char*)NULL };
  393. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  394. *
  395. * Description of Aab_Fd_Zero_Selectbits_H fix
  396. */
  397. tSCC zAab_Fd_Zero_Selectbits_HName[] =
  398. "AAB_fd_zero_selectbits_h";
  399. /*
  400. * File name selection pattern
  401. */
  402. tSCC zAab_Fd_Zero_Selectbits_HList[] =
  403. "selectbits.h\0";
  404. /*
  405. * Machine/OS name selection pattern
  406. */
  407. tSCC* apzAab_Fd_Zero_Selectbits_HMachs[] = {
  408. "i[34567]86-*-linux*",
  409. (const char*)NULL };
  410. #define AAB_FD_ZERO_SELECTBITS_H_TEST_CT 0
  411. #define aAab_Fd_Zero_Selectbits_HTests (tTestDesc*)NULL
  412. /*
  413. * Fix Command Arguments for Aab_Fd_Zero_Selectbits_H
  414. */
  415. static const char* apzAab_Fd_Zero_Selectbits_HPatch[] = {
  416. "/* This file fixes a bug in the __FD_ZERO macro present in glibc 2.0.x. */\n\
  417. #ifndef _SELECTBITS_H_WRAPPER\n\
  418. #include <features.h>\n\
  419. #include_next <selectbits.h>\n\n\
  420. #if defined(__FD_ZERO) && defined(__GLIBC__) \\\\\n\
  421. && defined(__GLIBC_MINOR__) && __GLIBC__ == 2 \\\\\n\
  422. && __GLIBC_MINOR__ == 0\n\
  423. #undef __FD_ZERO\n\
  424. #define __FD_ZERO(fdsetp) \\\\\n\
  425. do { \\\\\n\
  426. int __d0, __d1; \\\\\n\
  427. __asm__ __volatile__ (\"cld; rep; stosl\" \\\\\n\
  428. : \"=&c\" (__d0), \"=&D\" (__d1) \\\\\n\
  429. : \"a\" (0), \"0\" (sizeof (__fd_set) \\\\\n\
  430. / sizeof (__fd_mask)), \\\\\n\
  431. \"1\" ((__fd_mask *) (fdsetp)) \\\\\n\
  432. : \"memory\"); \\\\\n\
  433. } while (0)\n\
  434. #endif\n\n\
  435. #define _SELECTBITS_H_WRAPPER\n\
  436. #endif /* _SELECTBITS_H_WRAPPER */",
  437. (char*)NULL };
  438. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  439. *
  440. * Description of Aab_Solaris_Sys_Varargs_H fix
  441. */
  442. tSCC zAab_Solaris_Sys_Varargs_HName[] =
  443. "AAB_solaris_sys_varargs_h";
  444. /*
  445. * File name selection pattern
  446. */
  447. tSCC zAab_Solaris_Sys_Varargs_HList[] =
  448. "sys/varargs.h\0";
  449. /*
  450. * Machine/OS name selection pattern
  451. */
  452. tSCC* apzAab_Solaris_Sys_Varargs_HMachs[] = {
  453. "*-*-solaris*",
  454. (const char*)NULL };
  455. #define AAB_SOLARIS_SYS_VARARGS_H_TEST_CT 0
  456. #define aAab_Solaris_Sys_Varargs_HTests (tTestDesc*)NULL
  457. /*
  458. * Fix Command Arguments for Aab_Solaris_Sys_Varargs_H
  459. */
  460. static const char* apzAab_Solaris_Sys_Varargs_HPatch[] = {
  461. "#ifdef __STDC__\n\
  462. #include <stdarg.h>\n\
  463. #else\n\
  464. #include <varargs.h>\n\
  465. #endif",
  466. (char*)NULL };
  467. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  468. *
  469. * Description of Aab_Sun_Memcpy fix
  470. */
  471. tSCC zAab_Sun_MemcpyName[] =
  472. "AAB_sun_memcpy";
  473. /*
  474. * File name selection pattern
  475. */
  476. tSCC zAab_Sun_MemcpyList[] =
  477. "memory.h\0";
  478. /*
  479. * Machine/OS name selection pattern
  480. */
  481. #define apzAab_Sun_MemcpyMachs (const char**)NULL
  482. /*
  483. * content selection pattern - do fix if pattern found
  484. */
  485. tSCC zAab_Sun_MemcpySelect0[] =
  486. "/\\*\t@\\(#\\)(head/memory.h\t50.1\t |memory\\.h 1\\.[2-4] 8./../.. SMI; from S5R2 1\\.2\t)\\*/";
  487. #define AAB_SUN_MEMCPY_TEST_CT 1
  488. static tTestDesc aAab_Sun_MemcpyTests[] = {
  489. { TT_EGREP, zAab_Sun_MemcpySelect0, (regex_t*)NULL }, };
  490. /*
  491. * Fix Command Arguments for Aab_Sun_Memcpy
  492. */
  493. static const char* apzAab_Sun_MemcpyPatch[] = {
  494. "/* This file was generated by fixincludes */\n\
  495. #ifndef __memory_h__\n\
  496. #define __memory_h__\n\n\
  497. #ifdef __STDC__\n\
  498. extern void *memccpy();\n\
  499. extern void *memchr();\n\
  500. extern void *memcpy();\n\
  501. extern void *memset();\n\
  502. #else\n\
  503. extern char *memccpy();\n\
  504. extern char *memchr();\n\
  505. extern char *memcpy();\n\
  506. extern char *memset();\n\
  507. #endif /* __STDC__ */\n\n\
  508. extern int memcmp();\n\n\
  509. #endif /* __memory_h__ */",
  510. (char*)NULL };
  511. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  512. *
  513. * Description of Aab_Vxworks_Assert fix
  514. */
  515. tSCC zAab_Vxworks_AssertName[] =
  516. "AAB_vxworks_assert";
  517. /*
  518. * File name selection pattern
  519. */
  520. tSCC zAab_Vxworks_AssertList[] =
  521. "assert.h\0";
  522. /*
  523. * Machine/OS name selection pattern
  524. */
  525. tSCC* apzAab_Vxworks_AssertMachs[] = {
  526. "*-*-vxworks*",
  527. (const char*)NULL };
  528. #define AAB_VXWORKS_ASSERT_TEST_CT 0
  529. #define aAab_Vxworks_AssertTests (tTestDesc*)NULL
  530. /*
  531. * Fix Command Arguments for Aab_Vxworks_Assert
  532. */
  533. static const char* apzAab_Vxworks_AssertPatch[] = {
  534. "#ifdef _ASSERT_H\n\
  535. #undef _ASSERT_H\n\
  536. #undef assert\n\
  537. #endif\n\n\
  538. #define _ASSERT_H\n\n\
  539. #ifdef __cplusplus\n\
  540. extern \"C\" {\n\
  541. #endif\n\n\
  542. #if defined(__STDC__) || defined(__cplusplus)\n\
  543. extern void __assert (const char*);\n\
  544. #else\n\
  545. extern void __assert ();\n\
  546. #endif\n\n\
  547. #ifdef NDEBUG\n\
  548. #define assert(ign) ((void)0)\n\
  549. #else\n\n\
  550. #define ASSERT_STRINGIFY(str) ASSERT_STRINGIFY_HELPER(str)\n\
  551. #define ASSERT_STRINGIFY_HELPER(str) #str\n\n\
  552. #define assert(test) ((void) \\\n\
  553. ((test) ? ((void)0) : \\\n\
  554. __assert(\"Assertion failed: \" #test \", file \" \\\n\
  555. __FILE__ \", line \" ASSERT_STRINGIFY(__LINE__) \"\\n\")))\n\n\
  556. #endif\n\n\
  557. #ifdef __cplusplus\n\
  558. }\n\
  559. #endif",
  560. (char*)NULL };
  561. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  562. *
  563. * Description of Aab_Vxworks_Regs_Vxtypes fix
  564. */
  565. tSCC zAab_Vxworks_Regs_VxtypesName[] =
  566. "AAB_vxworks_regs_vxtypes";
  567. /*
  568. * File name selection pattern
  569. */
  570. tSCC zAab_Vxworks_Regs_VxtypesList[] =
  571. "regs.h\0";
  572. /*
  573. * Machine/OS name selection pattern
  574. */
  575. tSCC* apzAab_Vxworks_Regs_VxtypesMachs[] = {
  576. "*-*-vxworks*",
  577. (const char*)NULL };
  578. #define AAB_VXWORKS_REGS_VXTYPES_TEST_CT 0
  579. #define aAab_Vxworks_Regs_VxtypesTests (tTestDesc*)NULL
  580. /*
  581. * Fix Command Arguments for Aab_Vxworks_Regs_Vxtypes
  582. */
  583. static const char* apzAab_Vxworks_Regs_VxtypesPatch[] = {
  584. "#ifndef _REGS_H\n\
  585. #define _REGS_H\n\
  586. /* regs.h depends on CPU_FAMILY being properly defined, which\n\
  587. is done by vxCpu.h. */\n\
  588. #include <types/vxCpu.h>\n\
  589. /* regs.h includes a CPU_FAMILY-specific header that requires\n\
  590. vxTypesOld.h to already have been included. Those headers\n\
  591. contain proper _ASMLANGUAGE guards around their typedefs,\n\
  592. but vxTypesOld.h itself does not. So we avoid including\n\
  593. vxTypesOld.h from assembly. */\n\
  594. #ifndef _ASMLANGUAGE\n\
  595. #include <types/vxTypesOld.h>\n\
  596. #endif\n\
  597. #include_next <arch/../regs.h>\n\
  598. #endif",
  599. (char*)NULL };
  600. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  601. *
  602. * Description of Aab_Vxworks_Unistd fix
  603. */
  604. tSCC zAab_Vxworks_UnistdName[] =
  605. "AAB_vxworks_unistd";
  606. /*
  607. * File name selection pattern
  608. */
  609. tSCC zAab_Vxworks_UnistdList[] =
  610. "unistd.h\0";
  611. /*
  612. * Machine/OS name selection pattern
  613. */
  614. tSCC* apzAab_Vxworks_UnistdMachs[] = {
  615. "*-*-vxworks*",
  616. (const char*)NULL };
  617. #define AAB_VXWORKS_UNISTD_TEST_CT 0
  618. #define aAab_Vxworks_UnistdTests (tTestDesc*)NULL
  619. /*
  620. * Fix Command Arguments for Aab_Vxworks_Unistd
  621. */
  622. static const char* apzAab_Vxworks_UnistdPatch[] = {
  623. "#ifndef _UNISTD_H\n\
  624. #define _UNISTD_H\n\
  625. #include_next <unistd.h>\n\
  626. #include <ioLib.h>\n\
  627. #ifndef STDIN_FILENO\n\
  628. #define STDIN_FILENO 0\n\
  629. #endif\n\
  630. #ifndef STDOUT_FILENO\n\
  631. #define STDOUT_FILENO 1\n\
  632. #endif\n\
  633. #ifndef STDERR_FILENO\n\
  634. #define STDERR_FILENO 2\n\
  635. #endif\n\
  636. #endif /* _UNISTD_H */",
  637. (char*)NULL };
  638. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  639. *
  640. * Description of Aix_Assert fix
  641. */
  642. tSCC zAix_AssertName[] =
  643. "aix_assert";
  644. /*
  645. * File name selection pattern
  646. */
  647. tSCC zAix_AssertList[] =
  648. "assert.h\0";
  649. /*
  650. * Machine/OS name selection pattern
  651. */
  652. tSCC* apzAix_AssertMachs[] = {
  653. "*-*-aix*",
  654. (const char*)NULL };
  655. /*
  656. * content selection pattern - do fix if pattern found
  657. */
  658. tSCC zAix_AssertSelect0[] =
  659. "#define[ \t]static_assert[ \t]_Static_assert";
  660. #define AIX_ASSERT_TEST_CT 1
  661. static tTestDesc aAix_AssertTests[] = {
  662. { TT_EGREP, zAix_AssertSelect0, (regex_t*)NULL }, };
  663. /*
  664. * Fix Command Arguments for Aix_Assert
  665. */
  666. static const char* apzAix_AssertPatch[] = {
  667. "format",
  668. "#ifndef __cplusplus\n\
  669. %0\n\
  670. #endif",
  671. (char*)NULL };
  672. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  673. *
  674. * Description of Aix_Complex fix
  675. */
  676. tSCC zAix_ComplexName[] =
  677. "aix_complex";
  678. /*
  679. * File name selection pattern
  680. */
  681. tSCC zAix_ComplexList[] =
  682. "complex.h\0";
  683. /*
  684. * Machine/OS name selection pattern
  685. */
  686. tSCC* apzAix_ComplexMachs[] = {
  687. "*-*-aix*",
  688. (const char*)NULL };
  689. /*
  690. * content selection pattern - do fix if pattern found
  691. */
  692. tSCC zAix_ComplexSelect0[] =
  693. "#define[ \t]_Complex_I[ \t]__I";
  694. #define AIX_COMPLEX_TEST_CT 1
  695. static tTestDesc aAix_ComplexTests[] = {
  696. { TT_EGREP, zAix_ComplexSelect0, (regex_t*)NULL }, };
  697. /*
  698. * Fix Command Arguments for Aix_Complex
  699. */
  700. static const char* apzAix_ComplexPatch[] = {
  701. "format",
  702. "#define _Complex_I (__extension__ 1.0iF)",
  703. (char*)NULL };
  704. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  705. *
  706. * Description of Aix_Externc fix
  707. */
  708. tSCC zAix_ExterncName[] =
  709. "aix_externc";
  710. /*
  711. * File name selection pattern
  712. */
  713. tSCC zAix_ExterncList[] =
  714. "ctype.h\0fcntl.h\0langinfo.h\0ldfcn.h\0sys/localedef.h\0sys/times.h\0";
  715. /*
  716. * Machine/OS name selection pattern
  717. */
  718. tSCC* apzAix_ExterncMachs[] = {
  719. "*-*-aix*",
  720. (const char*)NULL };
  721. /*
  722. * content bypass pattern - skip fix if pattern found
  723. */
  724. tSCC zAix_ExterncBypass0[] =
  725. "extern \"C\"";
  726. #define AIX_EXTERNC_TEST_CT 1
  727. static tTestDesc aAix_ExterncTests[] = {
  728. { TT_NEGREP, zAix_ExterncBypass0, (regex_t*)NULL }, };
  729. /*
  730. * Fix Command Arguments for Aix_Externc
  731. */
  732. static const char* apzAix_ExterncPatch[] = {
  733. "wrap",
  734. "#ifdef __cplusplus\n\
  735. extern \"C\" {\n\
  736. #endif\n",
  737. "#ifdef __cplusplus\n\
  738. }\n\
  739. #endif\n",
  740. (char*)NULL };
  741. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  742. *
  743. * Description of Aix_Externcpp1 fix
  744. */
  745. tSCC zAix_Externcpp1Name[] =
  746. "aix_externcpp1";
  747. /*
  748. * File name selection pattern
  749. */
  750. tSCC zAix_Externcpp1List[] =
  751. "sys/socket.h\0";
  752. /*
  753. * Machine/OS name selection pattern
  754. */
  755. tSCC* apzAix_Externcpp1Machs[] = {
  756. "*-*-aix*",
  757. (const char*)NULL };
  758. /*
  759. * content selection pattern - do fix if pattern found
  760. */
  761. tSCC zAix_Externcpp1Select0[] =
  762. "#ifndef _KERNEL\n\
  763. #ifdef __cplusplus\n\
  764. extern \"C\" int naccept\\(int, struct sockaddr \\*, socklen_t \\*\\);";
  765. #define AIX_EXTERNCPP1_TEST_CT 1
  766. static tTestDesc aAix_Externcpp1Tests[] = {
  767. { TT_EGREP, zAix_Externcpp1Select0, (regex_t*)NULL }, };
  768. /*
  769. * Fix Command Arguments for Aix_Externcpp1
  770. */
  771. static const char* apzAix_Externcpp1Patch[] = {
  772. "format",
  773. "#ifndef _KERNEL\n\
  774. #ifdef __cplusplus\n\
  775. extern \"C++\" {\n\
  776. extern \"C\" int naccept(int, struct sockaddr *, socklen_t *);",
  777. (char*)NULL };
  778. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  779. *
  780. * Description of Aix_Externcpp2 fix
  781. */
  782. tSCC zAix_Externcpp2Name[] =
  783. "aix_externcpp2";
  784. /*
  785. * File name selection pattern
  786. */
  787. tSCC zAix_Externcpp2List[] =
  788. "sys/socket.h\0";
  789. /*
  790. * Machine/OS name selection pattern
  791. */
  792. tSCC* apzAix_Externcpp2Machs[] = {
  793. "*-*-aix*",
  794. (const char*)NULL };
  795. /*
  796. * content selection pattern - do fix if pattern found
  797. */
  798. tSCC zAix_Externcpp2Select0[] =
  799. "#endif /\\* COMPAT_43 \\*/\n\
  800. #else /\\* __cplusplus \\*/";
  801. #define AIX_EXTERNCPP2_TEST_CT 1
  802. static tTestDesc aAix_Externcpp2Tests[] = {
  803. { TT_EGREP, zAix_Externcpp2Select0, (regex_t*)NULL }, };
  804. /*
  805. * Fix Command Arguments for Aix_Externcpp2
  806. */
  807. static const char* apzAix_Externcpp2Patch[] = {
  808. "format",
  809. "#endif /* COMPAT_43 */\n\
  810. } /* extern \"C++\" */\n\
  811. #else /* __cplusplus */",
  812. (char*)NULL };
  813. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  814. *
  815. * Description of Aix_Inttypes fix
  816. */
  817. tSCC zAix_InttypesName[] =
  818. "aix_inttypes";
  819. /*
  820. * File name selection pattern
  821. */
  822. tSCC zAix_InttypesList[] =
  823. "sys/inttypes.h\0";
  824. /*
  825. * Machine/OS name selection pattern
  826. */
  827. tSCC* apzAix_InttypesMachs[] = {
  828. "*-*-aix*",
  829. (const char*)NULL };
  830. /*
  831. * content selection pattern - do fix if pattern found
  832. */
  833. tSCC zAix_InttypesSelect0[] =
  834. "#if !defined\\(__cplusplus\\) \\|\\| defined\\(__STDC_FORMAT_MACROS\\)";
  835. #define AIX_INTTYPES_TEST_CT 1
  836. static tTestDesc aAix_InttypesTests[] = {
  837. { TT_EGREP, zAix_InttypesSelect0, (regex_t*)NULL }, };
  838. /*
  839. * Fix Command Arguments for Aix_Inttypes
  840. */
  841. static const char* apzAix_InttypesPatch[] = {
  842. "format",
  843. "#if 1",
  844. (char*)NULL };
  845. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  846. *
  847. * Description of Aix_Malloc fix
  848. */
  849. tSCC zAix_MallocName[] =
  850. "aix_malloc";
  851. /*
  852. * File name selection pattern
  853. */
  854. tSCC zAix_MallocList[] =
  855. "malloc.h\0";
  856. /*
  857. * Machine/OS name selection pattern
  858. */
  859. tSCC* apzAix_MallocMachs[] = {
  860. "*-*-aix*",
  861. (const char*)NULL };
  862. /*
  863. * content selection pattern - do fix if pattern found
  864. */
  865. tSCC zAix_MallocSelect0[] =
  866. "#ifdef __cplusplus\n\
  867. extern \"C\" \\{\n\
  868. [ \t]extern \"builtin\" char \\*__alloca \\(size_t\\);";
  869. #define AIX_MALLOC_TEST_CT 1
  870. static tTestDesc aAix_MallocTests[] = {
  871. { TT_EGREP, zAix_MallocSelect0, (regex_t*)NULL }, };
  872. /*
  873. * Fix Command Arguments for Aix_Malloc
  874. */
  875. static const char* apzAix_MallocPatch[] = {
  876. "format",
  877. "#if (defined(__cplusplus) && defined(__IBMCPP__))\n\
  878. extern \"C\" {\n\
  879. \textern \"builtin\" char *__alloca (size_t);",
  880. (char*)NULL };
  881. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  882. *
  883. * Description of Aix_Net_If_Arp fix
  884. */
  885. tSCC zAix_Net_If_ArpName[] =
  886. "aix_net_if_arp";
  887. /*
  888. * File name selection pattern
  889. */
  890. tSCC zAix_Net_If_ArpList[] =
  891. "net/if_arp.h\0";
  892. /*
  893. * Machine/OS name selection pattern
  894. */
  895. tSCC* apzAix_Net_If_ArpMachs[] = {
  896. "*-*-aix*",
  897. (const char*)NULL };
  898. /*
  899. * content selection pattern - do fix if pattern found
  900. */
  901. tSCC zAix_Net_If_ArpSelect0[] =
  902. "^struct fc_softc \\{";
  903. #define AIX_NET_IF_ARP_TEST_CT 1
  904. static tTestDesc aAix_Net_If_ArpTests[] = {
  905. { TT_EGREP, zAix_Net_If_ArpSelect0, (regex_t*)NULL }, };
  906. /*
  907. * Fix Command Arguments for Aix_Net_If_Arp
  908. */
  909. static const char* apzAix_Net_If_ArpPatch[] = {
  910. "format",
  911. "typedef struct _fc_softc {",
  912. (char*)NULL };
  913. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  914. *
  915. * Description of Aix_Null fix
  916. */
  917. tSCC zAix_NullName[] =
  918. "aix_null";
  919. /*
  920. * File name selection pattern
  921. */
  922. tSCC zAix_NullList[] =
  923. "curses.h\0dbm.h\0locale.h\0stdio.h\0stdlib.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/dir.h\0sys/param.h\0sys/types.h\0";
  924. /*
  925. * Machine/OS name selection pattern
  926. */
  927. tSCC* apzAix_NullMachs[] = {
  928. "*-*-aix*",
  929. (const char*)NULL };
  930. /*
  931. * content selection pattern - do fix if pattern found
  932. */
  933. tSCC zAix_NullSelect0[] =
  934. "#define[ \t]+NULL[ \t]+\\(*0L*\\)*";
  935. /*
  936. * content bypass pattern - skip fix if pattern found
  937. */
  938. tSCC zAix_NullBypass0[] =
  939. "__null";
  940. #define AIX_NULL_TEST_CT 2
  941. static tTestDesc aAix_NullTests[] = {
  942. { TT_NEGREP, zAix_NullBypass0, (regex_t*)NULL },
  943. { TT_EGREP, zAix_NullSelect0, (regex_t*)NULL }, };
  944. /*
  945. * Fix Command Arguments for Aix_Null
  946. */
  947. static const char* apzAix_NullPatch[] = {
  948. "format",
  949. "#ifndef NULL\n\
  950. #ifdef __cplusplus\n\
  951. #ifdef __GNUG__\n\
  952. #define NULL __null\n\
  953. #else /* ! __GNUG__ */\n\
  954. #define NULL 0L\n\
  955. #endif /* __GNUG__ */\n\
  956. #else /* ! __cplusplus */\n\
  957. #define NULL ((void *)0)\n\
  958. #endif /* __cplusplus */\n\
  959. #endif /* !NULL */",
  960. (char*)NULL };
  961. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  962. *
  963. * Description of Aix_Once_Init_1 fix
  964. */
  965. tSCC zAix_Once_Init_1Name[] =
  966. "aix_once_init_1";
  967. /*
  968. * File name selection pattern
  969. */
  970. tSCC zAix_Once_Init_1List[] =
  971. "pthread.h\0";
  972. /*
  973. * Machine/OS name selection pattern
  974. */
  975. tSCC* apzAix_Once_Init_1Machs[] = {
  976. "*-*-aix*",
  977. (const char*)NULL };
  978. /*
  979. * content selection pattern - do fix if pattern found
  980. */
  981. tSCC zAix_Once_Init_1Select0[] =
  982. "#define[ \t]PTHREAD_ONCE_INIT \\\\\n\
  983. \\{ \\\\\n";
  984. #define AIX_ONCE_INIT_1_TEST_CT 1
  985. static tTestDesc aAix_Once_Init_1Tests[] = {
  986. { TT_EGREP, zAix_Once_Init_1Select0, (regex_t*)NULL }, };
  987. /*
  988. * Fix Command Arguments for Aix_Once_Init_1
  989. */
  990. static const char* apzAix_Once_Init_1Patch[] = {
  991. "format",
  992. "#define PTHREAD_ONCE_INIT \\\n\
  993. {{ \\\n",
  994. (char*)NULL };
  995. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  996. *
  997. * Description of Aix_Once_Init_2 fix
  998. */
  999. tSCC zAix_Once_Init_2Name[] =
  1000. "aix_once_init_2";
  1001. /*
  1002. * File name selection pattern
  1003. */
  1004. tSCC zAix_Once_Init_2List[] =
  1005. "pthread.h\0";
  1006. /*
  1007. * Machine/OS name selection pattern
  1008. */
  1009. tSCC* apzAix_Once_Init_2Machs[] = {
  1010. "*-*-aix*",
  1011. (const char*)NULL };
  1012. /*
  1013. * content selection pattern - do fix if pattern found
  1014. */
  1015. tSCC zAix_Once_Init_2Select0[] =
  1016. "[ \t]0 \\\\\n\
  1017. \\}\n";
  1018. #define AIX_ONCE_INIT_2_TEST_CT 1
  1019. static tTestDesc aAix_Once_Init_2Tests[] = {
  1020. { TT_EGREP, zAix_Once_Init_2Select0, (regex_t*)NULL }, };
  1021. /*
  1022. * Fix Command Arguments for Aix_Once_Init_2
  1023. */
  1024. static const char* apzAix_Once_Init_2Patch[] = {
  1025. "format",
  1026. "\t0 \\\n\
  1027. }}\n",
  1028. (char*)NULL };
  1029. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1030. *
  1031. * Description of Aix_Mutex_Initializer_1 fix
  1032. */
  1033. tSCC zAix_Mutex_Initializer_1Name[] =
  1034. "aix_mutex_initializer_1";
  1035. /*
  1036. * File name selection pattern
  1037. */
  1038. tSCC zAix_Mutex_Initializer_1List[] =
  1039. "pthread.h\0";
  1040. /*
  1041. * Machine/OS name selection pattern
  1042. */
  1043. tSCC* apzAix_Mutex_Initializer_1Machs[] = {
  1044. "*-*-aix*",
  1045. (const char*)NULL };
  1046. /*
  1047. * content selection pattern - do fix if pattern found
  1048. */
  1049. tSCC zAix_Mutex_Initializer_1Select0[] =
  1050. "#define[ \t]PTHREAD_MUTEX_INITIALIZER \\\\\n\
  1051. \\{ \\\\\n";
  1052. #define AIX_MUTEX_INITIALIZER_1_TEST_CT 1
  1053. static tTestDesc aAix_Mutex_Initializer_1Tests[] = {
  1054. { TT_EGREP, zAix_Mutex_Initializer_1Select0, (regex_t*)NULL }, };
  1055. /*
  1056. * Fix Command Arguments for Aix_Mutex_Initializer_1
  1057. */
  1058. static const char* apzAix_Mutex_Initializer_1Patch[] = {
  1059. "format",
  1060. "#define PTHREAD_MUTEX_INITIALIZER \\\n\
  1061. {{ \\\n",
  1062. (char*)NULL };
  1063. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1064. *
  1065. * Description of Aix_Cond_Initializer_1 fix
  1066. */
  1067. tSCC zAix_Cond_Initializer_1Name[] =
  1068. "aix_cond_initializer_1";
  1069. /*
  1070. * File name selection pattern
  1071. */
  1072. tSCC zAix_Cond_Initializer_1List[] =
  1073. "pthread.h\0";
  1074. /*
  1075. * Machine/OS name selection pattern
  1076. */
  1077. tSCC* apzAix_Cond_Initializer_1Machs[] = {
  1078. "*-*-aix*",
  1079. (const char*)NULL };
  1080. /*
  1081. * content selection pattern - do fix if pattern found
  1082. */
  1083. tSCC zAix_Cond_Initializer_1Select0[] =
  1084. "#define[ \t]PTHREAD_COND_INITIALIZER \\\\\n\
  1085. \\{ \\\\\n";
  1086. #define AIX_COND_INITIALIZER_1_TEST_CT 1
  1087. static tTestDesc aAix_Cond_Initializer_1Tests[] = {
  1088. { TT_EGREP, zAix_Cond_Initializer_1Select0, (regex_t*)NULL }, };
  1089. /*
  1090. * Fix Command Arguments for Aix_Cond_Initializer_1
  1091. */
  1092. static const char* apzAix_Cond_Initializer_1Patch[] = {
  1093. "format",
  1094. "#define PTHREAD_COND_INITIALIZER \\\n\
  1095. {{ \\\n",
  1096. (char*)NULL };
  1097. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1098. *
  1099. * Description of Aix_Rwlock_Initializer_1 fix
  1100. */
  1101. tSCC zAix_Rwlock_Initializer_1Name[] =
  1102. "aix_rwlock_initializer_1";
  1103. /*
  1104. * File name selection pattern
  1105. */
  1106. tSCC zAix_Rwlock_Initializer_1List[] =
  1107. "pthread.h\0";
  1108. /*
  1109. * Machine/OS name selection pattern
  1110. */
  1111. tSCC* apzAix_Rwlock_Initializer_1Machs[] = {
  1112. "*-*-aix*",
  1113. (const char*)NULL };
  1114. /*
  1115. * content selection pattern - do fix if pattern found
  1116. */
  1117. tSCC zAix_Rwlock_Initializer_1Select0[] =
  1118. "#define[ \t]PTHREAD_RWLOCK_INITIALIZER \\\\\n\
  1119. \\{ \\\\\n";
  1120. #define AIX_RWLOCK_INITIALIZER_1_TEST_CT 1
  1121. static tTestDesc aAix_Rwlock_Initializer_1Tests[] = {
  1122. { TT_EGREP, zAix_Rwlock_Initializer_1Select0, (regex_t*)NULL }, };
  1123. /*
  1124. * Fix Command Arguments for Aix_Rwlock_Initializer_1
  1125. */
  1126. static const char* apzAix_Rwlock_Initializer_1Patch[] = {
  1127. "format",
  1128. "#define PTHREAD_RWLOCK_INITIALIZER \\\n\
  1129. {{ \\\n",
  1130. (char*)NULL };
  1131. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1132. *
  1133. * Description of Aix_Physadr_T fix
  1134. */
  1135. tSCC zAix_Physadr_TName[] =
  1136. "aix_physadr_t";
  1137. /*
  1138. * File name selection pattern
  1139. */
  1140. tSCC zAix_Physadr_TList[] =
  1141. "sys/types.h\0";
  1142. /*
  1143. * Machine/OS name selection pattern
  1144. */
  1145. tSCC* apzAix_Physadr_TMachs[] = {
  1146. "*-*-aix*",
  1147. (const char*)NULL };
  1148. /*
  1149. * content selection pattern - do fix if pattern found
  1150. */
  1151. tSCC zAix_Physadr_TSelect0[] =
  1152. "typedef[ \t]*struct[ \t]*([{][^}]*[}][ \t]*\\*[ \t]*physadr_t;)";
  1153. #define AIX_PHYSADR_T_TEST_CT 1
  1154. static tTestDesc aAix_Physadr_TTests[] = {
  1155. { TT_EGREP, zAix_Physadr_TSelect0, (regex_t*)NULL }, };
  1156. /*
  1157. * Fix Command Arguments for Aix_Physadr_T
  1158. */
  1159. static const char* apzAix_Physadr_TPatch[] = {
  1160. "format",
  1161. "typedef struct __physadr_s %1",
  1162. (char*)NULL };
  1163. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1164. *
  1165. * Description of Aix_Pthread fix
  1166. */
  1167. tSCC zAix_PthreadName[] =
  1168. "aix_pthread";
  1169. /*
  1170. * File name selection pattern
  1171. */
  1172. tSCC zAix_PthreadList[] =
  1173. "pthread.h\0";
  1174. /*
  1175. * Machine/OS name selection pattern
  1176. */
  1177. #define apzAix_PthreadMachs (const char**)NULL
  1178. /*
  1179. * content selection pattern - do fix if pattern found
  1180. */
  1181. tSCC zAix_PthreadSelect0[] =
  1182. "(#define[\t ][A-Za-z_0-9]+)(\\\\\n\
  1183. [^A-Za-z_0-9 \t\n\
  1184. (])";
  1185. #define AIX_PTHREAD_TEST_CT 1
  1186. static tTestDesc aAix_PthreadTests[] = {
  1187. { TT_EGREP, zAix_PthreadSelect0, (regex_t*)NULL }, };
  1188. /*
  1189. * Fix Command Arguments for Aix_Pthread
  1190. */
  1191. static const char* apzAix_PthreadPatch[] = {
  1192. "format",
  1193. "%1 %2",
  1194. (char*)NULL };
  1195. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1196. *
  1197. * Description of Aix_Stdint_1 fix
  1198. */
  1199. tSCC zAix_Stdint_1Name[] =
  1200. "aix_stdint_1";
  1201. /*
  1202. * File name selection pattern
  1203. */
  1204. tSCC zAix_Stdint_1List[] =
  1205. "stdint-aix.h\0stdint.h\0";
  1206. /*
  1207. * Machine/OS name selection pattern
  1208. */
  1209. tSCC* apzAix_Stdint_1Machs[] = {
  1210. "*-*-aix*",
  1211. (const char*)NULL };
  1212. /*
  1213. * content selection pattern - do fix if pattern found
  1214. */
  1215. tSCC zAix_Stdint_1Select0[] =
  1216. "#define[ \t]UINT8_MAX[ \t]\\(255U\\)\n\
  1217. #define[ \t]UINT16_MAX[ \t]\\(65535U\\)";
  1218. #define AIX_STDINT_1_TEST_CT 1
  1219. static tTestDesc aAix_Stdint_1Tests[] = {
  1220. { TT_EGREP, zAix_Stdint_1Select0, (regex_t*)NULL }, };
  1221. /*
  1222. * Fix Command Arguments for Aix_Stdint_1
  1223. */
  1224. static const char* apzAix_Stdint_1Patch[] = {
  1225. "format",
  1226. "#define UINT8_MAX\t(255)\n\
  1227. #define UINT16_MAX\t(65535)",
  1228. (char*)NULL };
  1229. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1230. *
  1231. * Description of Aix_Stdint_2 fix
  1232. */
  1233. tSCC zAix_Stdint_2Name[] =
  1234. "aix_stdint_2";
  1235. /*
  1236. * File name selection pattern
  1237. */
  1238. tSCC zAix_Stdint_2List[] =
  1239. "stdint-aix.h\0stdint.h\0";
  1240. /*
  1241. * Machine/OS name selection pattern
  1242. */
  1243. tSCC* apzAix_Stdint_2Machs[] = {
  1244. "*-*-aix*",
  1245. (const char*)NULL };
  1246. /*
  1247. * content selection pattern - do fix if pattern found
  1248. */
  1249. tSCC zAix_Stdint_2Select0[] =
  1250. "#define[ \t]INTPTR_MIN[ \t]INT64_MIN\n\
  1251. #define[ \t]INTPTR_MAX[ \t]INT64_MAX\n\
  1252. #define[ \t]UINTPTR_MAX[ \t]UINT64_MAX\n\
  1253. #else\n\
  1254. #define[ \t]INTPTR_MIN[ \t]INT32_MIN\n\
  1255. #define[ \t]INTPTR_MAX[ \t]INT32_MAX\n\
  1256. #define[ \t]UINTPTR_MAX[ \t]UINT32_MAX";
  1257. #define AIX_STDINT_2_TEST_CT 1
  1258. static tTestDesc aAix_Stdint_2Tests[] = {
  1259. { TT_EGREP, zAix_Stdint_2Select0, (regex_t*)NULL }, };
  1260. /*
  1261. * Fix Command Arguments for Aix_Stdint_2
  1262. */
  1263. static const char* apzAix_Stdint_2Patch[] = {
  1264. "format",
  1265. "#define INTPTR_MIN\t(-INTPTR_MAX-1)\n\
  1266. #define INTPTR_MAX\t9223372036854775807L\n\
  1267. #define UINTPTR_MAX\t18446744073709551615UL\n\
  1268. #else\n\
  1269. #define INTPTR_MIN\t(-INTPTR_MAX-1)\n\
  1270. #define INTPTR_MAX\t2147483647L\n\
  1271. #define UINTPTR_MAX\t4294967295UL",
  1272. (char*)NULL };
  1273. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1274. *
  1275. * Description of Aix_Stdint_3 fix
  1276. */
  1277. tSCC zAix_Stdint_3Name[] =
  1278. "aix_stdint_3";
  1279. /*
  1280. * File name selection pattern
  1281. */
  1282. tSCC zAix_Stdint_3List[] =
  1283. "stdint-aix.h\0stdint.h\0";
  1284. /*
  1285. * Machine/OS name selection pattern
  1286. */
  1287. tSCC* apzAix_Stdint_3Machs[] = {
  1288. "*-*-aix*",
  1289. (const char*)NULL };
  1290. /*
  1291. * content selection pattern - do fix if pattern found
  1292. */
  1293. tSCC zAix_Stdint_3Select0[] =
  1294. "#define[ \t]PTRDIFF_MIN[ \t]INT64_MIN\n\
  1295. #define[ \t]PTRDIFF_MAX[ \t]INT64_MAX\n\
  1296. #else\n\
  1297. #define[ \t]PTRDIFF_MIN[ \t]*INT32_MIN\n\
  1298. #define[ \t]PTRDIFF_MAX[ \t]*INT32_MAX";
  1299. #define AIX_STDINT_3_TEST_CT 1
  1300. static tTestDesc aAix_Stdint_3Tests[] = {
  1301. { TT_EGREP, zAix_Stdint_3Select0, (regex_t*)NULL }, };
  1302. /*
  1303. * Fix Command Arguments for Aix_Stdint_3
  1304. */
  1305. static const char* apzAix_Stdint_3Patch[] = {
  1306. "format",
  1307. "#define PTRDIFF_MIN\t(-9223372036854775807L - 1)\n\
  1308. #define PTRDIFF_MAX\t9223372036854775807L\n\
  1309. #else\n\
  1310. #define PTRDIFF_MIN\t(-2147483647L - 1)\n\
  1311. #define PTRDIFF_MAX\t2147483647L",
  1312. (char*)NULL };
  1313. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1314. *
  1315. * Description of Aix_Stdint_4 fix
  1316. */
  1317. tSCC zAix_Stdint_4Name[] =
  1318. "aix_stdint_4";
  1319. /*
  1320. * File name selection pattern
  1321. */
  1322. tSCC zAix_Stdint_4List[] =
  1323. "stdint-aix.h\0stdint.h\0";
  1324. /*
  1325. * Machine/OS name selection pattern
  1326. */
  1327. tSCC* apzAix_Stdint_4Machs[] = {
  1328. "*-*-aix*",
  1329. (const char*)NULL };
  1330. /*
  1331. * content selection pattern - do fix if pattern found
  1332. */
  1333. tSCC zAix_Stdint_4Select0[] =
  1334. "#define[ \t]SIZE_MAX[ \t]UINT64_MAX\n\
  1335. #else\n\
  1336. #define[ \t]SIZE_MAX[ \t]*UINT32_MAX";
  1337. #define AIX_STDINT_4_TEST_CT 1
  1338. static tTestDesc aAix_Stdint_4Tests[] = {
  1339. { TT_EGREP, zAix_Stdint_4Select0, (regex_t*)NULL }, };
  1340. /*
  1341. * Fix Command Arguments for Aix_Stdint_4
  1342. */
  1343. static const char* apzAix_Stdint_4Patch[] = {
  1344. "format",
  1345. "#define SIZE_MAX\t18446744073709551615UL\n\
  1346. #else\n\
  1347. #define SIZE_MAX\t4294967295UL",
  1348. (char*)NULL };
  1349. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1350. *
  1351. * Description of Aix_Stdint_5 fix
  1352. */
  1353. tSCC zAix_Stdint_5Name[] =
  1354. "aix_stdint_5";
  1355. /*
  1356. * File name selection pattern
  1357. */
  1358. tSCC zAix_Stdint_5List[] =
  1359. "stdint-aix.h\0stdint.h\0";
  1360. /*
  1361. * Machine/OS name selection pattern
  1362. */
  1363. tSCC* apzAix_Stdint_5Machs[] = {
  1364. "*-*-aix*",
  1365. (const char*)NULL };
  1366. /*
  1367. * content selection pattern - do fix if pattern found
  1368. */
  1369. tSCC zAix_Stdint_5Select0[] =
  1370. "#define[ \t]UINT8_C\\(c\\)[ \t]__CONCAT__\\(c,U\\)\n\
  1371. #define[ \t]UINT16_C\\(c\\)[ \t]__CONCAT__\\(c,U\\)";
  1372. #define AIX_STDINT_5_TEST_CT 1
  1373. static tTestDesc aAix_Stdint_5Tests[] = {
  1374. { TT_EGREP, zAix_Stdint_5Select0, (regex_t*)NULL }, };
  1375. /*
  1376. * Fix Command Arguments for Aix_Stdint_5
  1377. */
  1378. static const char* apzAix_Stdint_5Patch[] = {
  1379. "format",
  1380. "#define UINT8_C(c)\tc\n\
  1381. #define UINT16_C(c)\tc",
  1382. (char*)NULL };
  1383. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1384. *
  1385. * Description of Aix_Stdio_Inline fix
  1386. */
  1387. tSCC zAix_Stdio_InlineName[] =
  1388. "aix_stdio_inline";
  1389. /*
  1390. * File name selection pattern
  1391. */
  1392. tSCC zAix_Stdio_InlineList[] =
  1393. "stdio.h\0";
  1394. /*
  1395. * Machine/OS name selection pattern
  1396. */
  1397. tSCC* apzAix_Stdio_InlineMachs[] = {
  1398. "*-*-aix*",
  1399. (const char*)NULL };
  1400. /*
  1401. * content selection pattern - do fix if pattern found
  1402. */
  1403. tSCC zAix_Stdio_InlineSelect0[] =
  1404. "#ifdef __cplusplus\\\n\
  1405. }\\\n\
  1406. \\\n\
  1407. #ifdef ferror\\\n";
  1408. #define AIX_STDIO_INLINE_TEST_CT 1
  1409. static tTestDesc aAix_Stdio_InlineTests[] = {
  1410. { TT_EGREP, zAix_Stdio_InlineSelect0, (regex_t*)NULL }, };
  1411. /*
  1412. * Fix Command Arguments for Aix_Stdio_Inline
  1413. */
  1414. static const char* apzAix_Stdio_InlinePatch[] = {
  1415. "format",
  1416. "#ifdef __cplusplus\n\
  1417. }\n\
  1418. #endif\n\n\
  1419. #if (defined(__cplusplus) && defined(__IBMCPP__))\n\
  1420. #ifdef ferror\n",
  1421. (char*)NULL };
  1422. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1423. *
  1424. * Description of Aix_Stdlib_Malloc fix
  1425. */
  1426. tSCC zAix_Stdlib_MallocName[] =
  1427. "aix_stdlib_malloc";
  1428. /*
  1429. * File name selection pattern
  1430. */
  1431. tSCC zAix_Stdlib_MallocList[] =
  1432. "stdlib.h\0";
  1433. /*
  1434. * Machine/OS name selection pattern
  1435. */
  1436. tSCC* apzAix_Stdlib_MallocMachs[] = {
  1437. "*-*-aix*",
  1438. (const char*)NULL };
  1439. /*
  1440. * content selection pattern - do fix if pattern found
  1441. */
  1442. tSCC zAix_Stdlib_MallocSelect0[] =
  1443. "#define[ \t]+malloc[ \t]+__linux_malloc";
  1444. #define AIX_STDLIB_MALLOC_TEST_CT 1
  1445. static tTestDesc aAix_Stdlib_MallocTests[] = {
  1446. { TT_EGREP, zAix_Stdlib_MallocSelect0, (regex_t*)NULL }, };
  1447. /*
  1448. * Fix Command Arguments for Aix_Stdlib_Malloc
  1449. */
  1450. static const char* apzAix_Stdlib_MallocPatch[] = {
  1451. "format",
  1452. "extern void *malloc(size_t) __asm__(\"__linux_malloc\");",
  1453. (char*)NULL };
  1454. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1455. *
  1456. * Description of Aix_Stdlib_Realloc fix
  1457. */
  1458. tSCC zAix_Stdlib_ReallocName[] =
  1459. "aix_stdlib_realloc";
  1460. /*
  1461. * File name selection pattern
  1462. */
  1463. tSCC zAix_Stdlib_ReallocList[] =
  1464. "stdlib.h\0";
  1465. /*
  1466. * Machine/OS name selection pattern
  1467. */
  1468. tSCC* apzAix_Stdlib_ReallocMachs[] = {
  1469. "*-*-aix*",
  1470. (const char*)NULL };
  1471. /*
  1472. * content selection pattern - do fix if pattern found
  1473. */
  1474. tSCC zAix_Stdlib_ReallocSelect0[] =
  1475. "#define[ \t]+realloc[ \t]+__linux_realloc";
  1476. #define AIX_STDLIB_REALLOC_TEST_CT 1
  1477. static tTestDesc aAix_Stdlib_ReallocTests[] = {
  1478. { TT_EGREP, zAix_Stdlib_ReallocSelect0, (regex_t*)NULL }, };
  1479. /*
  1480. * Fix Command Arguments for Aix_Stdlib_Realloc
  1481. */
  1482. static const char* apzAix_Stdlib_ReallocPatch[] = {
  1483. "format",
  1484. "extern void *realloc(void *, size_t) __asm__(\"__linux_realloc\");",
  1485. (char*)NULL };
  1486. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1487. *
  1488. * Description of Aix_Stdlib_Calloc fix
  1489. */
  1490. tSCC zAix_Stdlib_CallocName[] =
  1491. "aix_stdlib_calloc";
  1492. /*
  1493. * File name selection pattern
  1494. */
  1495. tSCC zAix_Stdlib_CallocList[] =
  1496. "stdlib.h\0";
  1497. /*
  1498. * Machine/OS name selection pattern
  1499. */
  1500. tSCC* apzAix_Stdlib_CallocMachs[] = {
  1501. "*-*-aix*",
  1502. (const char*)NULL };
  1503. /*
  1504. * content selection pattern - do fix if pattern found
  1505. */
  1506. tSCC zAix_Stdlib_CallocSelect0[] =
  1507. "#define[ \t]+calloc[ \t]+__linux_calloc";
  1508. #define AIX_STDLIB_CALLOC_TEST_CT 1
  1509. static tTestDesc aAix_Stdlib_CallocTests[] = {
  1510. { TT_EGREP, zAix_Stdlib_CallocSelect0, (regex_t*)NULL }, };
  1511. /*
  1512. * Fix Command Arguments for Aix_Stdlib_Calloc
  1513. */
  1514. static const char* apzAix_Stdlib_CallocPatch[] = {
  1515. "format",
  1516. "extern void *calloc(size_t, size_t) __asm__(\"__linux_calloc\");",
  1517. (char*)NULL };
  1518. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1519. *
  1520. * Description of Aix_Stdlib_Valloc fix
  1521. */
  1522. tSCC zAix_Stdlib_VallocName[] =
  1523. "aix_stdlib_valloc";
  1524. /*
  1525. * File name selection pattern
  1526. */
  1527. tSCC zAix_Stdlib_VallocList[] =
  1528. "stdlib.h\0";
  1529. /*
  1530. * Machine/OS name selection pattern
  1531. */
  1532. tSCC* apzAix_Stdlib_VallocMachs[] = {
  1533. "*-*-aix*",
  1534. (const char*)NULL };
  1535. /*
  1536. * content selection pattern - do fix if pattern found
  1537. */
  1538. tSCC zAix_Stdlib_VallocSelect0[] =
  1539. "#define[ \t]+valloc[ \t]+__linux_valloc";
  1540. #define AIX_STDLIB_VALLOC_TEST_CT 1
  1541. static tTestDesc aAix_Stdlib_VallocTests[] = {
  1542. { TT_EGREP, zAix_Stdlib_VallocSelect0, (regex_t*)NULL }, };
  1543. /*
  1544. * Fix Command Arguments for Aix_Stdlib_Valloc
  1545. */
  1546. static const char* apzAix_Stdlib_VallocPatch[] = {
  1547. "format",
  1548. "extern void *valloc(size_t) __asm__(\"__linux_valloc\");",
  1549. (char*)NULL };
  1550. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1551. *
  1552. * Description of Aix_Stdlib_Vec_Malloc fix
  1553. */
  1554. tSCC zAix_Stdlib_Vec_MallocName[] =
  1555. "aix_stdlib_vec_malloc";
  1556. /*
  1557. * File name selection pattern
  1558. */
  1559. tSCC zAix_Stdlib_Vec_MallocList[] =
  1560. "stdlib.h\0";
  1561. /*
  1562. * Machine/OS name selection pattern
  1563. */
  1564. tSCC* apzAix_Stdlib_Vec_MallocMachs[] = {
  1565. "*-*-aix*",
  1566. (const char*)NULL };
  1567. /*
  1568. * content selection pattern - do fix if pattern found
  1569. */
  1570. tSCC zAix_Stdlib_Vec_MallocSelect0[] =
  1571. "#define[ \t]+malloc[ \t]+vec_malloc";
  1572. #define AIX_STDLIB_VEC_MALLOC_TEST_CT 1
  1573. static tTestDesc aAix_Stdlib_Vec_MallocTests[] = {
  1574. { TT_EGREP, zAix_Stdlib_Vec_MallocSelect0, (regex_t*)NULL }, };
  1575. /*
  1576. * Fix Command Arguments for Aix_Stdlib_Vec_Malloc
  1577. */
  1578. static const char* apzAix_Stdlib_Vec_MallocPatch[] = {
  1579. "format",
  1580. "extern void *malloc(size_t) __asm__(\"vec_malloc\");",
  1581. (char*)NULL };
  1582. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1583. *
  1584. * Description of Aix_Stdlib_Vec_Calloc fix
  1585. */
  1586. tSCC zAix_Stdlib_Vec_CallocName[] =
  1587. "aix_stdlib_vec_calloc";
  1588. /*
  1589. * File name selection pattern
  1590. */
  1591. tSCC zAix_Stdlib_Vec_CallocList[] =
  1592. "stdlib.h\0";
  1593. /*
  1594. * Machine/OS name selection pattern
  1595. */
  1596. tSCC* apzAix_Stdlib_Vec_CallocMachs[] = {
  1597. "*-*-aix*",
  1598. (const char*)NULL };
  1599. /*
  1600. * content selection pattern - do fix if pattern found
  1601. */
  1602. tSCC zAix_Stdlib_Vec_CallocSelect0[] =
  1603. "#define[ \t]+calloc[ \t]+vec_calloc";
  1604. #define AIX_STDLIB_VEC_CALLOC_TEST_CT 1
  1605. static tTestDesc aAix_Stdlib_Vec_CallocTests[] = {
  1606. { TT_EGREP, zAix_Stdlib_Vec_CallocSelect0, (regex_t*)NULL }, };
  1607. /*
  1608. * Fix Command Arguments for Aix_Stdlib_Vec_Calloc
  1609. */
  1610. static const char* apzAix_Stdlib_Vec_CallocPatch[] = {
  1611. "format",
  1612. "extern void *calloc(size_t, size_t) __asm__(\"vec_calloc\");",
  1613. (char*)NULL };
  1614. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1615. *
  1616. * Description of Aix_Strtof_Const fix
  1617. */
  1618. tSCC zAix_Strtof_ConstName[] =
  1619. "aix_strtof_const";
  1620. /*
  1621. * File name selection pattern
  1622. */
  1623. tSCC zAix_Strtof_ConstList[] =
  1624. "stdlib.h\0";
  1625. /*
  1626. * Machine/OS name selection pattern
  1627. */
  1628. tSCC* apzAix_Strtof_ConstMachs[] = {
  1629. "*-*-aix*",
  1630. (const char*)NULL };
  1631. /*
  1632. * content selection pattern - do fix if pattern found
  1633. */
  1634. tSCC zAix_Strtof_ConstSelect0[] =
  1635. "((extern[ \t]+)?float[ \t]+strtof)\\(char \\*, char \\*\\*\\);";
  1636. #define AIX_STRTOF_CONST_TEST_CT 1
  1637. static tTestDesc aAix_Strtof_ConstTests[] = {
  1638. { TT_EGREP, zAix_Strtof_ConstSelect0, (regex_t*)NULL }, };
  1639. /*
  1640. * Fix Command Arguments for Aix_Strtof_Const
  1641. */
  1642. static const char* apzAix_Strtof_ConstPatch[] = {
  1643. "format",
  1644. "%1(const char *, char **);",
  1645. (char*)NULL };
  1646. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1647. *
  1648. * Description of Aix_Sysmachine fix
  1649. */
  1650. tSCC zAix_SysmachineName[] =
  1651. "aix_sysmachine";
  1652. /*
  1653. * File name selection pattern
  1654. */
  1655. tSCC zAix_SysmachineList[] =
  1656. "sys/machine.h\0";
  1657. /*
  1658. * Machine/OS name selection pattern
  1659. */
  1660. tSCC* apzAix_SysmachineMachs[] = {
  1661. "*-*-aix*",
  1662. (const char*)NULL };
  1663. /*
  1664. * content selection pattern - do fix if pattern found
  1665. */
  1666. tSCC zAix_SysmachineSelect0[] =
  1667. "\\\\ +\n";
  1668. #define AIX_SYSMACHINE_TEST_CT 1
  1669. static tTestDesc aAix_SysmachineTests[] = {
  1670. { TT_EGREP, zAix_SysmachineSelect0, (regex_t*)NULL }, };
  1671. /*
  1672. * Fix Command Arguments for Aix_Sysmachine
  1673. */
  1674. static const char* apzAix_SysmachinePatch[] = {
  1675. "format",
  1676. "\\\n",
  1677. (char*)NULL };
  1678. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1679. *
  1680. * Description of Aix_Syswait_2 fix
  1681. */
  1682. tSCC zAix_Syswait_2Name[] =
  1683. "aix_syswait_2";
  1684. /*
  1685. * File name selection pattern
  1686. */
  1687. tSCC zAix_Syswait_2List[] =
  1688. "sys/wait.h\0";
  1689. /*
  1690. * Machine/OS name selection pattern
  1691. */
  1692. tSCC* apzAix_Syswait_2Machs[] = {
  1693. "*-*-aix*",
  1694. (const char*)NULL };
  1695. /*
  1696. * content selection pattern - do fix if pattern found
  1697. */
  1698. tSCC zAix_Syswait_2Select0[] =
  1699. "\\? (\\(\\(\\(\\(unsigned[^)]*\\)[^)]*\\) >> [^)]*\\) \\& 0xff\\) : -1)";
  1700. #define AIX_SYSWAIT_2_TEST_CT 1
  1701. static tTestDesc aAix_Syswait_2Tests[] = {
  1702. { TT_EGREP, zAix_Syswait_2Select0, (regex_t*)NULL }, };
  1703. /*
  1704. * Fix Command Arguments for Aix_Syswait_2
  1705. */
  1706. static const char* apzAix_Syswait_2Patch[] = {
  1707. "format",
  1708. "? (int)%1",
  1709. (char*)NULL };
  1710. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1711. *
  1712. * Description of Aix_Volatile fix
  1713. */
  1714. tSCC zAix_VolatileName[] =
  1715. "aix_volatile";
  1716. /*
  1717. * File name selection pattern
  1718. */
  1719. tSCC zAix_VolatileList[] =
  1720. "sys/signal.h\0";
  1721. /*
  1722. * Machine/OS name selection pattern
  1723. */
  1724. tSCC* apzAix_VolatileMachs[] = {
  1725. "*-*-aix*",
  1726. (const char*)NULL };
  1727. /*
  1728. * content selection pattern - do fix if pattern found
  1729. */
  1730. tSCC zAix_VolatileSelect0[] =
  1731. "typedef volatile int sig_atomic_t";
  1732. #define AIX_VOLATILE_TEST_CT 1
  1733. static tTestDesc aAix_VolatileTests[] = {
  1734. { TT_EGREP, zAix_VolatileSelect0, (regex_t*)NULL }, };
  1735. /*
  1736. * Fix Command Arguments for Aix_Volatile
  1737. */
  1738. static const char* apzAix_VolatilePatch[] = {
  1739. "format",
  1740. "typedef int sig_atomic_t",
  1741. (char*)NULL };
  1742. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1743. *
  1744. * Description of Aix_Unistd fix
  1745. */
  1746. tSCC zAix_UnistdName[] =
  1747. "aix_unistd";
  1748. /*
  1749. * File name selection pattern
  1750. */
  1751. tSCC zAix_UnistdList[] =
  1752. "unistd.h\0";
  1753. /*
  1754. * Machine/OS name selection pattern
  1755. */
  1756. tSCC* apzAix_UnistdMachs[] = {
  1757. "*-*-aix*",
  1758. (const char*)NULL };
  1759. /*
  1760. * content selection pattern - do fix if pattern found
  1761. */
  1762. tSCC zAix_UnistdSelect0[] =
  1763. "[ \t]+static[ \t]+int[ \t]+getdtablesize\\(\\)";
  1764. #define AIX_UNISTD_TEST_CT 1
  1765. static tTestDesc aAix_UnistdTests[] = {
  1766. { TT_EGREP, zAix_UnistdSelect0, (regex_t*)NULL }, };
  1767. /*
  1768. * Fix Command Arguments for Aix_Unistd
  1769. */
  1770. static const char* apzAix_UnistdPatch[] = {
  1771. "format",
  1772. "\tstatic int\t\tgetdtablesize(void)",
  1773. (char*)NULL };
  1774. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1775. *
  1776. * Description of Alpha___Assert fix
  1777. */
  1778. tSCC zAlpha___AssertName[] =
  1779. "alpha___assert";
  1780. /*
  1781. * File name selection pattern
  1782. */
  1783. tSCC zAlpha___AssertList[] =
  1784. "assert.h\0";
  1785. /*
  1786. * Machine/OS name selection pattern
  1787. */
  1788. #define apzAlpha___AssertMachs (const char**)NULL
  1789. /*
  1790. * content selection pattern - do fix if pattern found
  1791. */
  1792. tSCC zAlpha___AssertSelect0[] =
  1793. "__assert\\(char \\*, char \\*, int\\)";
  1794. #define ALPHA___ASSERT_TEST_CT 1
  1795. static tTestDesc aAlpha___AssertTests[] = {
  1796. { TT_EGREP, zAlpha___AssertSelect0, (regex_t*)NULL }, };
  1797. /*
  1798. * Fix Command Arguments for Alpha___Assert
  1799. */
  1800. static const char* apzAlpha___AssertPatch[] = {
  1801. "format",
  1802. "__assert(const char *, const char *, int)",
  1803. (char*)NULL };
  1804. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1805. *
  1806. * Description of Alpha_Assert fix
  1807. */
  1808. tSCC zAlpha_AssertName[] =
  1809. "alpha_assert";
  1810. /*
  1811. * File name selection pattern
  1812. */
  1813. tSCC zAlpha_AssertList[] =
  1814. "assert.h\0";
  1815. /*
  1816. * Machine/OS name selection pattern
  1817. */
  1818. #define apzAlpha_AssertMachs (const char**)NULL
  1819. /*
  1820. * content selection pattern - do fix if pattern found
  1821. */
  1822. tSCC zAlpha_AssertSelect0[] =
  1823. "(#[ \t]*define assert\\(EX\\).*)\\(\\(int\\) \\(EX\\)\\)";
  1824. #define ALPHA_ASSERT_TEST_CT 1
  1825. static tTestDesc aAlpha_AssertTests[] = {
  1826. { TT_EGREP, zAlpha_AssertSelect0, (regex_t*)NULL }, };
  1827. /*
  1828. * Fix Command Arguments for Alpha_Assert
  1829. */
  1830. static const char* apzAlpha_AssertPatch[] = {
  1831. "format",
  1832. "%1(EX)",
  1833. (char*)NULL };
  1834. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1835. *
  1836. * Description of Alpha_Getopt fix
  1837. */
  1838. tSCC zAlpha_GetoptName[] =
  1839. "alpha_getopt";
  1840. /*
  1841. * File name selection pattern
  1842. */
  1843. tSCC zAlpha_GetoptList[] =
  1844. "stdio.h\0stdlib.h\0";
  1845. /*
  1846. * Machine/OS name selection pattern
  1847. */
  1848. #define apzAlpha_GetoptMachs (const char**)NULL
  1849. /*
  1850. * content selection pattern - do fix if pattern found
  1851. */
  1852. tSCC zAlpha_GetoptSelect0[] =
  1853. "getopt\\(int, char \\*\\[\\], *char \\*\\)";
  1854. #define ALPHA_GETOPT_TEST_CT 1
  1855. static tTestDesc aAlpha_GetoptTests[] = {
  1856. { TT_EGREP, zAlpha_GetoptSelect0, (regex_t*)NULL }, };
  1857. /*
  1858. * Fix Command Arguments for Alpha_Getopt
  1859. */
  1860. static const char* apzAlpha_GetoptPatch[] = {
  1861. "format",
  1862. "getopt(int, char *const[], const char *)",
  1863. (char*)NULL };
  1864. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1865. *
  1866. * Description of Alpha_If_Semicolon fix
  1867. */
  1868. tSCC zAlpha_If_SemicolonName[] =
  1869. "alpha_if_semicolon";
  1870. /*
  1871. * File name selection pattern
  1872. */
  1873. tSCC zAlpha_If_SemicolonList[] =
  1874. "net/if.h\0";
  1875. /*
  1876. * Machine/OS name selection pattern
  1877. */
  1878. #define apzAlpha_If_SemicolonMachs (const char**)NULL
  1879. /*
  1880. * content selection pattern - do fix if pattern found
  1881. */
  1882. tSCC zAlpha_If_SemicolonSelect0[] =
  1883. "struct[ \t]+sockaddr[ \t]+vmif_paddr[ \t]+/\\*";
  1884. #define ALPHA_IF_SEMICOLON_TEST_CT 1
  1885. static tTestDesc aAlpha_If_SemicolonTests[] = {
  1886. { TT_EGREP, zAlpha_If_SemicolonSelect0, (regex_t*)NULL }, };
  1887. /*
  1888. * Fix Command Arguments for Alpha_If_Semicolon
  1889. */
  1890. static const char* apzAlpha_If_SemicolonPatch[] = {
  1891. "format",
  1892. "struct sockaddr vmif_paddr;\t/*",
  1893. (char*)NULL };
  1894. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1895. *
  1896. * Description of Alpha_Parens fix
  1897. */
  1898. tSCC zAlpha_ParensName[] =
  1899. "alpha_parens";
  1900. /*
  1901. * File name selection pattern
  1902. */
  1903. tSCC zAlpha_ParensList[] =
  1904. "sym.h\0";
  1905. /*
  1906. * Machine/OS name selection pattern
  1907. */
  1908. #define apzAlpha_ParensMachs (const char**)NULL
  1909. /*
  1910. * content selection pattern - do fix if pattern found
  1911. */
  1912. tSCC zAlpha_ParensSelect0[] =
  1913. "#ifndef\\(__mips64\\)";
  1914. #define ALPHA_PARENS_TEST_CT 1
  1915. static tTestDesc aAlpha_ParensTests[] = {
  1916. { TT_EGREP, zAlpha_ParensSelect0, (regex_t*)NULL }, };
  1917. /*
  1918. * Fix Command Arguments for Alpha_Parens
  1919. */
  1920. static const char* apzAlpha_ParensPatch[] = {
  1921. "format",
  1922. "#ifndef __mips64",
  1923. (char*)NULL };
  1924. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1925. *
  1926. * Description of Alpha_Sbrk fix
  1927. */
  1928. tSCC zAlpha_SbrkName[] =
  1929. "alpha_sbrk";
  1930. /*
  1931. * File name selection pattern
  1932. */
  1933. tSCC zAlpha_SbrkList[] =
  1934. "unistd.h\0";
  1935. /*
  1936. * Machine/OS name selection pattern
  1937. */
  1938. #define apzAlpha_SbrkMachs (const char**)NULL
  1939. /*
  1940. * content selection pattern - do fix if pattern found
  1941. */
  1942. tSCC zAlpha_SbrkSelect0[] =
  1943. "char[ \t]*\\*[\t ]*sbrk[ \t]*\\(";
  1944. #define ALPHA_SBRK_TEST_CT 1
  1945. static tTestDesc aAlpha_SbrkTests[] = {
  1946. { TT_EGREP, zAlpha_SbrkSelect0, (regex_t*)NULL }, };
  1947. /*
  1948. * Fix Command Arguments for Alpha_Sbrk
  1949. */
  1950. static const char* apzAlpha_SbrkPatch[] = {
  1951. "format",
  1952. "void *sbrk(",
  1953. (char*)NULL };
  1954. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1955. *
  1956. * Description of Avoid_Bool_Define fix
  1957. */
  1958. tSCC zAvoid_Bool_DefineName[] =
  1959. "avoid_bool_define";
  1960. /*
  1961. * File name selection pattern
  1962. */
  1963. tSCC zAvoid_Bool_DefineList[] =
  1964. "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
  1965. /*
  1966. * Machine/OS name selection pattern
  1967. */
  1968. #define apzAvoid_Bool_DefineMachs (const char**)NULL
  1969. /*
  1970. * content selection pattern - do fix if pattern found
  1971. */
  1972. tSCC zAvoid_Bool_DefineSelect0[] =
  1973. "#[ \t]*define[ \t]+bool[ \t]";
  1974. /*
  1975. * content bypass pattern - skip fix if pattern found
  1976. */
  1977. tSCC zAvoid_Bool_DefineBypass0[] =
  1978. "__cplusplus";
  1979. #define AVOID_BOOL_DEFINE_TEST_CT 2
  1980. static tTestDesc aAvoid_Bool_DefineTests[] = {
  1981. { TT_NEGREP, zAvoid_Bool_DefineBypass0, (regex_t*)NULL },
  1982. { TT_EGREP, zAvoid_Bool_DefineSelect0, (regex_t*)NULL }, };
  1983. /*
  1984. * Fix Command Arguments for Avoid_Bool_Define
  1985. */
  1986. static const char* apzAvoid_Bool_DefinePatch[] = {
  1987. "format",
  1988. "#ifndef __cplusplus\n\
  1989. %0\n\
  1990. #endif",
  1991. "^[ \t]*#[ \t]*define[ \t]+bool[ \t].*",
  1992. (char*)NULL };
  1993. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  1994. *
  1995. * Description of Avoid_Bool_Type fix
  1996. */
  1997. tSCC zAvoid_Bool_TypeName[] =
  1998. "avoid_bool_type";
  1999. /*
  2000. * File name selection pattern
  2001. */
  2002. tSCC zAvoid_Bool_TypeList[] =
  2003. "curses.h\0curses_colr/curses.h\0term.h\0tinfo.h\0";
  2004. /*
  2005. * Machine/OS name selection pattern
  2006. */
  2007. #define apzAvoid_Bool_TypeMachs (const char**)NULL
  2008. /*
  2009. * content selection pattern - do fix if pattern found
  2010. */
  2011. tSCC zAvoid_Bool_TypeSelect0[] =
  2012. "^[ \t]*typedef[ \t].*[ \t]bool[ \t]*;";
  2013. /*
  2014. * content bypass pattern - skip fix if pattern found
  2015. */
  2016. tSCC zAvoid_Bool_TypeBypass0[] =
  2017. "__cplusplus";
  2018. #define AVOID_BOOL_TYPE_TEST_CT 2
  2019. static tTestDesc aAvoid_Bool_TypeTests[] = {
  2020. { TT_NEGREP, zAvoid_Bool_TypeBypass0, (regex_t*)NULL },
  2021. { TT_EGREP, zAvoid_Bool_TypeSelect0, (regex_t*)NULL }, };
  2022. /*
  2023. * Fix Command Arguments for Avoid_Bool_Type
  2024. */
  2025. static const char* apzAvoid_Bool_TypePatch[] = {
  2026. "format",
  2027. "#ifndef __cplusplus\n\
  2028. %0\n\
  2029. #endif",
  2030. (char*)NULL };
  2031. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2032. *
  2033. * Description of Avoid_Wchar_T_Type fix
  2034. */
  2035. tSCC zAvoid_Wchar_T_TypeName[] =
  2036. "avoid_wchar_t_type";
  2037. /*
  2038. * File name selection pattern
  2039. */
  2040. #define zAvoid_Wchar_T_TypeList (char*)NULL
  2041. /*
  2042. * Machine/OS name selection pattern
  2043. */
  2044. #define apzAvoid_Wchar_T_TypeMachs (const char**)NULL
  2045. /*
  2046. * content selection pattern - do fix if pattern found
  2047. */
  2048. tSCC zAvoid_Wchar_T_TypeSelect0[] =
  2049. "^[ \t]*typedef[ \t].*[ \t]wchar_t[ \t]*;";
  2050. /*
  2051. * content bypass pattern - skip fix if pattern found
  2052. */
  2053. tSCC zAvoid_Wchar_T_TypeBypass0[] =
  2054. "__cplusplus";
  2055. tSCC zAvoid_Wchar_T_TypeBypass1[] =
  2056. "_LINUX_NLS_H";
  2057. tSCC zAvoid_Wchar_T_TypeBypass2[] =
  2058. "XFree86: xc/lib/X11/Xlib\\.h";
  2059. #define AVOID_WCHAR_T_TYPE_TEST_CT 4
  2060. static tTestDesc aAvoid_Wchar_T_TypeTests[] = {
  2061. { TT_NEGREP, zAvoid_Wchar_T_TypeBypass0, (regex_t*)NULL },
  2062. { TT_NEGREP, zAvoid_Wchar_T_TypeBypass1, (regex_t*)NULL },
  2063. { TT_NEGREP, zAvoid_Wchar_T_TypeBypass2, (regex_t*)NULL },
  2064. { TT_EGREP, zAvoid_Wchar_T_TypeSelect0, (regex_t*)NULL }, };
  2065. /*
  2066. * Fix Command Arguments for Avoid_Wchar_T_Type
  2067. */
  2068. static const char* apzAvoid_Wchar_T_TypePatch[] = {
  2069. "format",
  2070. "#ifndef __cplusplus\n\
  2071. %0\n\
  2072. #endif",
  2073. (char*)NULL };
  2074. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2075. *
  2076. * Description of Bad_Struct_Term fix
  2077. */
  2078. tSCC zBad_Struct_TermName[] =
  2079. "bad_struct_term";
  2080. /*
  2081. * File name selection pattern
  2082. */
  2083. tSCC zBad_Struct_TermList[] =
  2084. "curses.h\0";
  2085. /*
  2086. * Machine/OS name selection pattern
  2087. */
  2088. #define apzBad_Struct_TermMachs (const char**)NULL
  2089. /*
  2090. * content selection pattern - do fix if pattern found
  2091. */
  2092. tSCC zBad_Struct_TermSelect0[] =
  2093. "^[ \t]*typedef[ \t]+struct[ \t]+term[ \t]*;";
  2094. #define BAD_STRUCT_TERM_TEST_CT 1
  2095. static tTestDesc aBad_Struct_TermTests[] = {
  2096. { TT_EGREP, zBad_Struct_TermSelect0, (regex_t*)NULL }, };
  2097. /*
  2098. * Fix Command Arguments for Bad_Struct_Term
  2099. */
  2100. static const char* apzBad_Struct_TermPatch[] = {
  2101. "format",
  2102. "struct term;",
  2103. (char*)NULL };
  2104. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2105. *
  2106. * Description of Badquote fix
  2107. */
  2108. tSCC zBadquoteName[] =
  2109. "badquote";
  2110. /*
  2111. * File name selection pattern
  2112. */
  2113. tSCC zBadquoteList[] =
  2114. "sundev/vuid_event.h\0";
  2115. /*
  2116. * Machine/OS name selection pattern
  2117. */
  2118. #define apzBadquoteMachs (const char**)NULL
  2119. /*
  2120. * content selection pattern - do fix if pattern found
  2121. */
  2122. tSCC zBadquoteSelect0[] =
  2123. "doesn't";
  2124. #define BADQUOTE_TEST_CT 1
  2125. static tTestDesc aBadquoteTests[] = {
  2126. { TT_EGREP, zBadquoteSelect0, (regex_t*)NULL }, };
  2127. /*
  2128. * Fix Command Arguments for Badquote
  2129. */
  2130. static const char* apzBadquotePatch[] = {
  2131. "format",
  2132. "does not",
  2133. (char*)NULL };
  2134. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2135. *
  2136. * Description of Broken_Assert_Stdio fix
  2137. */
  2138. tSCC zBroken_Assert_StdioName[] =
  2139. "broken_assert_stdio";
  2140. /*
  2141. * File name selection pattern
  2142. */
  2143. tSCC zBroken_Assert_StdioList[] =
  2144. "assert.h\0";
  2145. /*
  2146. * Machine/OS name selection pattern
  2147. */
  2148. #define apzBroken_Assert_StdioMachs (const char**)NULL
  2149. /*
  2150. * content selection pattern - do fix if pattern found
  2151. */
  2152. tSCC zBroken_Assert_StdioSelect0[] =
  2153. "stderr";
  2154. /*
  2155. * content bypass pattern - skip fix if pattern found
  2156. */
  2157. tSCC zBroken_Assert_StdioBypass0[] =
  2158. "include.*stdio\\.h";
  2159. #define BROKEN_ASSERT_STDIO_TEST_CT 2
  2160. static tTestDesc aBroken_Assert_StdioTests[] = {
  2161. { TT_NEGREP, zBroken_Assert_StdioBypass0, (regex_t*)NULL },
  2162. { TT_EGREP, zBroken_Assert_StdioSelect0, (regex_t*)NULL }, };
  2163. /*
  2164. * Fix Command Arguments for Broken_Assert_Stdio
  2165. */
  2166. static const char* apzBroken_Assert_StdioPatch[] = {
  2167. "wrap",
  2168. "#include <stdio.h>\n",
  2169. (char*)NULL };
  2170. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2171. *
  2172. * Description of Broken_Assert_Stdlib fix
  2173. */
  2174. tSCC zBroken_Assert_StdlibName[] =
  2175. "broken_assert_stdlib";
  2176. /*
  2177. * File name selection pattern
  2178. */
  2179. tSCC zBroken_Assert_StdlibList[] =
  2180. "assert.h\0";
  2181. /*
  2182. * Machine/OS name selection pattern
  2183. */
  2184. #define apzBroken_Assert_StdlibMachs (const char**)NULL
  2185. /*
  2186. * content selection pattern - do fix if pattern found
  2187. */
  2188. tSCC zBroken_Assert_StdlibSelect0[] =
  2189. "exit *\\(|abort *\\(";
  2190. /*
  2191. * content bypass pattern - skip fix if pattern found
  2192. */
  2193. tSCC zBroken_Assert_StdlibBypass0[] =
  2194. "include.*stdlib\\.h";
  2195. #define BROKEN_ASSERT_STDLIB_TEST_CT 2
  2196. static tTestDesc aBroken_Assert_StdlibTests[] = {
  2197. { TT_NEGREP, zBroken_Assert_StdlibBypass0, (regex_t*)NULL },
  2198. { TT_EGREP, zBroken_Assert_StdlibSelect0, (regex_t*)NULL }, };
  2199. /*
  2200. * Fix Command Arguments for Broken_Assert_Stdlib
  2201. */
  2202. static const char* apzBroken_Assert_StdlibPatch[] = {
  2203. "wrap",
  2204. "#ifdef __cplusplus\n\
  2205. #include <stdlib.h>\n\
  2206. #endif\n",
  2207. (char*)NULL };
  2208. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2209. *
  2210. * Description of Broken_Cabs fix
  2211. */
  2212. tSCC zBroken_CabsName[] =
  2213. "broken_cabs";
  2214. /*
  2215. * File name selection pattern
  2216. */
  2217. tSCC zBroken_CabsList[] =
  2218. "math.h\0architecture/*/math.h\0";
  2219. /*
  2220. * Machine/OS name selection pattern
  2221. */
  2222. #define apzBroken_CabsMachs (const char**)NULL
  2223. /*
  2224. * content selection pattern - do fix if pattern found
  2225. */
  2226. tSCC zBroken_CabsSelect0[] =
  2227. "^extern[ \t]+double[ \t]+cabs";
  2228. #define BROKEN_CABS_TEST_CT 1
  2229. static tTestDesc aBroken_CabsTests[] = {
  2230. { TT_EGREP, zBroken_CabsSelect0, (regex_t*)NULL }, };
  2231. /*
  2232. * Fix Command Arguments for Broken_Cabs
  2233. */
  2234. static const char* apzBroken_CabsPatch[] = { sed_cmd_z,
  2235. "-e", "s/^extern[ \t]*double[ \t]*cabs[ \t]*([^\\)]*);//",
  2236. "-e", "s/^extern[ \t]*long[ \t]*double[ \t]*cabsl[ \t]*([^\\)]*);//",
  2237. (char*)NULL };
  2238. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2239. *
  2240. * Description of Broken_Nan fix
  2241. */
  2242. tSCC zBroken_NanName[] =
  2243. "broken_nan";
  2244. /*
  2245. * File name selection pattern
  2246. */
  2247. tSCC zBroken_NanList[] =
  2248. "architecture/ppc/math.h\0architecture/*/math.h\0";
  2249. /*
  2250. * Machine/OS name selection pattern
  2251. */
  2252. #define apzBroken_NanMachs (const char**)NULL
  2253. /*
  2254. * content selection pattern - do fix if pattern found
  2255. */
  2256. tSCC zBroken_NanSelect0[] =
  2257. "#if defined\\(__APPLE_CC__\\) && \\(__APPLE_CC__ >= 1345\\)";
  2258. /*
  2259. * content bypass pattern - skip fix if pattern found
  2260. */
  2261. tSCC zBroken_NanBypass0[] =
  2262. "powl";
  2263. #define BROKEN_NAN_TEST_CT 2
  2264. static tTestDesc aBroken_NanTests[] = {
  2265. { TT_NEGREP, zBroken_NanBypass0, (regex_t*)NULL },
  2266. { TT_EGREP, zBroken_NanSelect0, (regex_t*)NULL }, };
  2267. /*
  2268. * Fix Command Arguments for Broken_Nan
  2269. */
  2270. static const char* apzBroken_NanPatch[] = {
  2271. "format",
  2272. "#if 1",
  2273. (char*)NULL };
  2274. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2275. *
  2276. * Description of Bsd_Stdio_Attrs_Conflict fix
  2277. */
  2278. tSCC zBsd_Stdio_Attrs_ConflictName[] =
  2279. "bsd_stdio_attrs_conflict";
  2280. /*
  2281. * File name selection pattern
  2282. */
  2283. tSCC zBsd_Stdio_Attrs_ConflictList[] =
  2284. "stdio.h\0";
  2285. /*
  2286. * Machine/OS name selection pattern
  2287. */
  2288. tSCC* apzBsd_Stdio_Attrs_ConflictMachs[] = {
  2289. "*-*-*bsd*",
  2290. "*-*-*darwin*",
  2291. (const char*)NULL };
  2292. /*
  2293. * content selection pattern - do fix if pattern found
  2294. */
  2295. tSCC zBsd_Stdio_Attrs_ConflictSelect0[] =
  2296. "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
  2297. #define BSD_STDIO_ATTRS_CONFLICT_TEST_CT 1
  2298. static tTestDesc aBsd_Stdio_Attrs_ConflictTests[] = {
  2299. { TT_EGREP, zBsd_Stdio_Attrs_ConflictSelect0, (regex_t*)NULL }, };
  2300. /*
  2301. * Fix Command Arguments for Bsd_Stdio_Attrs_Conflict
  2302. */
  2303. static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
  2304. "format",
  2305. "#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)\n\
  2306. #define _BSD_STRINGX(_BSD_X) #_BSD_X\n\
  2307. int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
  2308. (char*)NULL };
  2309. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2310. *
  2311. * Description of Ctrl_Quotes_Def fix
  2312. */
  2313. tSCC zCtrl_Quotes_DefName[] =
  2314. "ctrl_quotes_def";
  2315. /*
  2316. * File name selection pattern
  2317. */
  2318. #define zCtrl_Quotes_DefList (char*)NULL
  2319. /*
  2320. * Machine/OS name selection pattern
  2321. */
  2322. #define apzCtrl_Quotes_DefMachs (const char**)NULL
  2323. /*
  2324. * content selection pattern - do fix if pattern found
  2325. */
  2326. tSCC zCtrl_Quotes_DefSelect0[] =
  2327. "define[ \t]+[A-Z0-9_]+CTRL\\([a-zA-Z][,)]";
  2328. #define CTRL_QUOTES_DEF_TEST_CT 1
  2329. static tTestDesc aCtrl_Quotes_DefTests[] = {
  2330. { TT_EGREP, zCtrl_Quotes_DefSelect0, (regex_t*)NULL }, };
  2331. /*
  2332. * Fix Command Arguments for Ctrl_Quotes_Def
  2333. */
  2334. static const char* apzCtrl_Quotes_DefPatch[] = {
  2335. "char_macro_def",
  2336. "CTRL",
  2337. (char*)NULL };
  2338. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2339. *
  2340. * Description of Ctrl_Quotes_Use fix
  2341. */
  2342. tSCC zCtrl_Quotes_UseName[] =
  2343. "ctrl_quotes_use";
  2344. /*
  2345. * File name selection pattern
  2346. */
  2347. #define zCtrl_Quotes_UseList (char*)NULL
  2348. /*
  2349. * Machine/OS name selection pattern
  2350. */
  2351. #define apzCtrl_Quotes_UseMachs (const char**)NULL
  2352. /*
  2353. * content selection pattern - do fix if pattern found
  2354. */
  2355. tSCC zCtrl_Quotes_UseSelect0[] =
  2356. "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+CTRL[ \t]*\\( *[^,']";
  2357. #define CTRL_QUOTES_USE_TEST_CT 1
  2358. static tTestDesc aCtrl_Quotes_UseTests[] = {
  2359. { TT_EGREP, zCtrl_Quotes_UseSelect0, (regex_t*)NULL }, };
  2360. /*
  2361. * Fix Command Arguments for Ctrl_Quotes_Use
  2362. */
  2363. static const char* apzCtrl_Quotes_UsePatch[] = {
  2364. "char_macro_use",
  2365. "CTRL",
  2366. (char*)NULL };
  2367. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2368. *
  2369. * Description of Cxx_Unready fix
  2370. */
  2371. tSCC zCxx_UnreadyName[] =
  2372. "cxx_unready";
  2373. /*
  2374. * File name selection pattern
  2375. */
  2376. tSCC zCxx_UnreadyList[] =
  2377. "sys/mman.h\0rpc/types.h\0";
  2378. /*
  2379. * Machine/OS name selection pattern
  2380. */
  2381. #define apzCxx_UnreadyMachs (const char**)NULL
  2382. /*
  2383. * content selection pattern - do fix if pattern found
  2384. */
  2385. tSCC zCxx_UnreadySelect0[] =
  2386. "[^#]+malloc.*;";
  2387. /*
  2388. * content bypass pattern - skip fix if pattern found
  2389. */
  2390. tSCC zCxx_UnreadyBypass0[] =
  2391. "\"C\"|__BEGIN_DECLS";
  2392. #define CXX_UNREADY_TEST_CT 2
  2393. static tTestDesc aCxx_UnreadyTests[] = {
  2394. { TT_NEGREP, zCxx_UnreadyBypass0, (regex_t*)NULL },
  2395. { TT_EGREP, zCxx_UnreadySelect0, (regex_t*)NULL }, };
  2396. /*
  2397. * Fix Command Arguments for Cxx_Unready
  2398. */
  2399. static const char* apzCxx_UnreadyPatch[] = {
  2400. "wrap",
  2401. "#ifdef __cplusplus\n\
  2402. extern \"C\" {\n\
  2403. #endif\n",
  2404. "#ifdef __cplusplus\n\
  2405. }\n\
  2406. #endif\n",
  2407. (char*)NULL };
  2408. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2409. *
  2410. * Description of Darwin_Availabilityinternal fix
  2411. */
  2412. tSCC zDarwin_AvailabilityinternalName[] =
  2413. "darwin_availabilityinternal";
  2414. /*
  2415. * File name selection pattern
  2416. */
  2417. tSCC zDarwin_AvailabilityinternalList[] =
  2418. "AvailabilityInternal.h\0";
  2419. /*
  2420. * Machine/OS name selection pattern
  2421. */
  2422. tSCC* apzDarwin_AvailabilityinternalMachs[] = {
  2423. "*-*-darwin*",
  2424. (const char*)NULL };
  2425. /*
  2426. * content selection pattern - do fix if pattern found
  2427. */
  2428. tSCC zDarwin_AvailabilityinternalSelect0[] =
  2429. "#define[ \t]+(__API_[ADU]\\([^)]*\\)).*";
  2430. #define DARWIN_AVAILABILITYINTERNAL_TEST_CT 1
  2431. static tTestDesc aDarwin_AvailabilityinternalTests[] = {
  2432. { TT_EGREP, zDarwin_AvailabilityinternalSelect0, (regex_t*)NULL }, };
  2433. /*
  2434. * Fix Command Arguments for Darwin_Availabilityinternal
  2435. */
  2436. static const char* apzDarwin_AvailabilityinternalPatch[] = {
  2437. "format",
  2438. "#if defined(__has_attribute)\n\
  2439. #if __has_attribute(availability)\n\
  2440. %0\n\
  2441. #else\n\
  2442. #define %1\n\
  2443. #endif\n\
  2444. #else\n\
  2445. #define %1\n\
  2446. #endif",
  2447. (char*)NULL };
  2448. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2449. *
  2450. * Description of Darwin_9_Long_Double_Funcs_2 fix
  2451. */
  2452. tSCC zDarwin_9_Long_Double_Funcs_2Name[] =
  2453. "darwin_9_long_double_funcs_2";
  2454. /*
  2455. * File name selection pattern
  2456. */
  2457. tSCC zDarwin_9_Long_Double_Funcs_2List[] =
  2458. "math.h\0";
  2459. /*
  2460. * Machine/OS name selection pattern
  2461. */
  2462. tSCC* apzDarwin_9_Long_Double_Funcs_2Machs[] = {
  2463. "*-*-darwin*",
  2464. (const char*)NULL };
  2465. /*
  2466. * content selection pattern - do fix if pattern found
  2467. */
  2468. tSCC zDarwin_9_Long_Double_Funcs_2Select0[] =
  2469. "#include[ \\t]+\\\"";
  2470. #define DARWIN_9_LONG_DOUBLE_FUNCS_2_TEST_CT 1
  2471. static tTestDesc aDarwin_9_Long_Double_Funcs_2Tests[] = {
  2472. { TT_EGREP, zDarwin_9_Long_Double_Funcs_2Select0, (regex_t*)NULL }, };
  2473. /*
  2474. * Fix Command Arguments for Darwin_9_Long_Double_Funcs_2
  2475. */
  2476. static const char* apzDarwin_9_Long_Double_Funcs_2Patch[] = {
  2477. "format",
  2478. "%1<%2.h>",
  2479. "([ \\t]*#[ \\t]*include[ \\t]+)\"([a-z0-9/]+)\\.h\"",
  2480. (char*)NULL };
  2481. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2482. *
  2483. * Description of Darwin_Externc fix
  2484. */
  2485. tSCC zDarwin_ExterncName[] =
  2486. "darwin_externc";
  2487. /*
  2488. * File name selection pattern
  2489. */
  2490. tSCC zDarwin_ExterncList[] =
  2491. "mach-o/swap.h\0mach/mach_time.h\0mach/mach_traps.h\0mach/message.h\0mach/mig.h\0mach/semaphore.h\0";
  2492. /*
  2493. * Machine/OS name selection pattern
  2494. */
  2495. tSCC* apzDarwin_ExterncMachs[] = {
  2496. "*-*-darwin*",
  2497. (const char*)NULL };
  2498. /*
  2499. * content bypass pattern - skip fix if pattern found
  2500. */
  2501. tSCC zDarwin_ExterncBypass0[] =
  2502. "extern \"C\"";
  2503. tSCC zDarwin_ExterncBypass1[] =
  2504. "__BEGIN_DECLS";
  2505. #define DARWIN_EXTERNC_TEST_CT 2
  2506. static tTestDesc aDarwin_ExterncTests[] = {
  2507. { TT_NEGREP, zDarwin_ExterncBypass0, (regex_t*)NULL },
  2508. { TT_NEGREP, zDarwin_ExterncBypass1, (regex_t*)NULL }, };
  2509. /*
  2510. * Fix Command Arguments for Darwin_Externc
  2511. */
  2512. static const char* apzDarwin_ExterncPatch[] = {
  2513. "wrap",
  2514. "#ifdef __cplusplus\n\
  2515. extern \"C\" {\n\
  2516. #endif\n",
  2517. "#ifdef __cplusplus\n\
  2518. }\n\
  2519. #endif\n",
  2520. (char*)NULL };
  2521. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2522. *
  2523. * Description of Darwin_Gcc4_Breakage fix
  2524. */
  2525. tSCC zDarwin_Gcc4_BreakageName[] =
  2526. "darwin_gcc4_breakage";
  2527. /*
  2528. * File name selection pattern
  2529. */
  2530. tSCC zDarwin_Gcc4_BreakageList[] =
  2531. "AvailabilityMacros.h\0";
  2532. /*
  2533. * Machine/OS name selection pattern
  2534. */
  2535. tSCC* apzDarwin_Gcc4_BreakageMachs[] = {
  2536. "*-*-darwin*",
  2537. (const char*)NULL };
  2538. /*
  2539. * content selection pattern - do fix if pattern found
  2540. */
  2541. tSCC zDarwin_Gcc4_BreakageSelect0[] =
  2542. "\\(__GNUC__ >= 3\\) && \\(__GNUC_MINOR__ >= 1\\)";
  2543. #define DARWIN_GCC4_BREAKAGE_TEST_CT 1
  2544. static tTestDesc aDarwin_Gcc4_BreakageTests[] = {
  2545. { TT_EGREP, zDarwin_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
  2546. /*
  2547. * Fix Command Arguments for Darwin_Gcc4_Breakage
  2548. */
  2549. static const char* apzDarwin_Gcc4_BreakagePatch[] = {
  2550. "format",
  2551. "((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))",
  2552. (char*)NULL };
  2553. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2554. *
  2555. * Description of Darwin_Ll_Funcs_Avail fix
  2556. */
  2557. tSCC zDarwin_Ll_Funcs_AvailName[] =
  2558. "darwin_ll_funcs_avail";
  2559. /*
  2560. * File name selection pattern
  2561. */
  2562. tSCC zDarwin_Ll_Funcs_AvailList[] =
  2563. "architecture/ppc/math.h\0architecture/i386/math.h\0";
  2564. /*
  2565. * Machine/OS name selection pattern
  2566. */
  2567. tSCC* apzDarwin_Ll_Funcs_AvailMachs[] = {
  2568. "*-*-darwin*",
  2569. (const char*)NULL };
  2570. /*
  2571. * content selection pattern - do fix if pattern found
  2572. */
  2573. tSCC zDarwin_Ll_Funcs_AvailSelect0[] =
  2574. "#if[^_]*__STDC_VERSION__[^_]*__STDC_VERSION__[^1]*199901L[^_]*__STRICT_ANSI__[^_]*__GNUC__[^)]*";
  2575. #define DARWIN_LL_FUNCS_AVAIL_TEST_CT 1
  2576. static tTestDesc aDarwin_Ll_Funcs_AvailTests[] = {
  2577. { TT_EGREP, zDarwin_Ll_Funcs_AvailSelect0, (regex_t*)NULL }, };
  2578. /*
  2579. * Fix Command Arguments for Darwin_Ll_Funcs_Avail
  2580. */
  2581. static const char* apzDarwin_Ll_Funcs_AvailPatch[] = { sed_cmd_z,
  2582. "-e", "s/#if[^_]*__STDC_VERSION__[^_]*__STDC_VERSION__[^_]*199901L[^_]*__STRICT_ANSI__[^_]*__GNUC__[^\\)]*)/#if !(__DARWIN_NO_LONG_LONG)/",
  2583. (char*)NULL };
  2584. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2585. *
  2586. * Description of Darwin_Longjmp_Noreturn fix
  2587. */
  2588. tSCC zDarwin_Longjmp_NoreturnName[] =
  2589. "darwin_longjmp_noreturn";
  2590. /*
  2591. * File name selection pattern
  2592. */
  2593. tSCC zDarwin_Longjmp_NoreturnList[] =
  2594. "i386/setjmp.h\0";
  2595. /*
  2596. * Machine/OS name selection pattern
  2597. */
  2598. tSCC* apzDarwin_Longjmp_NoreturnMachs[] = {
  2599. "*-*-darwin*",
  2600. (const char*)NULL };
  2601. /*
  2602. * content selection pattern - do fix if pattern found
  2603. */
  2604. tSCC zDarwin_Longjmp_NoreturnSelect0[] =
  2605. "(.*longjmp\\(.*jmp_buf.*[^)]+\\));";
  2606. /*
  2607. * content bypass pattern - skip fix if pattern found
  2608. */
  2609. tSCC zDarwin_Longjmp_NoreturnBypass0[] =
  2610. "__dead2";
  2611. #define DARWIN_LONGJMP_NORETURN_TEST_CT 2
  2612. static tTestDesc aDarwin_Longjmp_NoreturnTests[] = {
  2613. { TT_NEGREP, zDarwin_Longjmp_NoreturnBypass0, (regex_t*)NULL },
  2614. { TT_EGREP, zDarwin_Longjmp_NoreturnSelect0, (regex_t*)NULL }, };
  2615. /*
  2616. * Fix Command Arguments for Darwin_Longjmp_Noreturn
  2617. */
  2618. static const char* apzDarwin_Longjmp_NoreturnPatch[] = {
  2619. "format",
  2620. "%1 __attribute__ ((__noreturn__));",
  2621. (char*)NULL };
  2622. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2623. *
  2624. * Description of Darwin_Os_Trace_1 fix
  2625. */
  2626. tSCC zDarwin_Os_Trace_1Name[] =
  2627. "darwin_os_trace_1";
  2628. /*
  2629. * File name selection pattern
  2630. */
  2631. tSCC zDarwin_Os_Trace_1List[] =
  2632. "os/trace.h\0";
  2633. /*
  2634. * Machine/OS name selection pattern
  2635. */
  2636. tSCC* apzDarwin_Os_Trace_1Machs[] = {
  2637. "*-*-darwin*",
  2638. (const char*)NULL };
  2639. /*
  2640. * content selection pattern - do fix if pattern found
  2641. */
  2642. tSCC zDarwin_Os_Trace_1Select0[] =
  2643. "^(_os_trace_verify_printf.*) (__attribute__.*)";
  2644. #define DARWIN_OS_TRACE_1_TEST_CT 1
  2645. static tTestDesc aDarwin_Os_Trace_1Tests[] = {
  2646. { TT_EGREP, zDarwin_Os_Trace_1Select0, (regex_t*)NULL }, };
  2647. /*
  2648. * Fix Command Arguments for Darwin_Os_Trace_1
  2649. */
  2650. static const char* apzDarwin_Os_Trace_1Patch[] = {
  2651. "format",
  2652. "%1",
  2653. (char*)NULL };
  2654. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2655. *
  2656. * Description of Darwin_Os_Trace_2 fix
  2657. */
  2658. tSCC zDarwin_Os_Trace_2Name[] =
  2659. "darwin_os_trace_2";
  2660. /*
  2661. * File name selection pattern
  2662. */
  2663. tSCC zDarwin_Os_Trace_2List[] =
  2664. "os/trace.h\0";
  2665. /*
  2666. * Machine/OS name selection pattern
  2667. */
  2668. tSCC* apzDarwin_Os_Trace_2Machs[] = {
  2669. "*-*-darwin*",
  2670. (const char*)NULL };
  2671. /*
  2672. * content selection pattern - do fix if pattern found
  2673. */
  2674. tSCC zDarwin_Os_Trace_2Select0[] =
  2675. "typedef.*\\^os_trace_payload_t.*";
  2676. #define DARWIN_OS_TRACE_2_TEST_CT 1
  2677. static tTestDesc aDarwin_Os_Trace_2Tests[] = {
  2678. { TT_EGREP, zDarwin_Os_Trace_2Select0, (regex_t*)NULL }, };
  2679. /*
  2680. * Fix Command Arguments for Darwin_Os_Trace_2
  2681. */
  2682. static const char* apzDarwin_Os_Trace_2Patch[] = {
  2683. "format",
  2684. "#if __BLOCKS__\n\
  2685. %0\n\
  2686. #endif",
  2687. (char*)NULL };
  2688. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2689. *
  2690. * Description of Darwin_Os_Trace_3 fix
  2691. */
  2692. tSCC zDarwin_Os_Trace_3Name[] =
  2693. "darwin_os_trace_3";
  2694. /*
  2695. * File name selection pattern
  2696. */
  2697. tSCC zDarwin_Os_Trace_3List[] =
  2698. "os/trace.h\0";
  2699. /*
  2700. * Machine/OS name selection pattern
  2701. */
  2702. tSCC* apzDarwin_Os_Trace_3Machs[] = {
  2703. "*-*-darwin*",
  2704. (const char*)NULL };
  2705. /*
  2706. * content selection pattern - do fix if pattern found
  2707. */
  2708. tSCC zDarwin_Os_Trace_3Select0[] =
  2709. "__(API|OSX)_.*\n\
  2710. OS_EXPORT.*\n\
  2711. .*\n\
  2712. _os_trace.*os_trace_payload_t payload);";
  2713. #define DARWIN_OS_TRACE_3_TEST_CT 1
  2714. static tTestDesc aDarwin_Os_Trace_3Tests[] = {
  2715. { TT_EGREP, zDarwin_Os_Trace_3Select0, (regex_t*)NULL }, };
  2716. /*
  2717. * Fix Command Arguments for Darwin_Os_Trace_3
  2718. */
  2719. static const char* apzDarwin_Os_Trace_3Patch[] = {
  2720. "format",
  2721. "#if __BLOCKS__\n\
  2722. %0\n\
  2723. #endif",
  2724. (char*)NULL };
  2725. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2726. *
  2727. * Description of Darwin_Os_Base_1 fix
  2728. */
  2729. tSCC zDarwin_Os_Base_1Name[] =
  2730. "darwin_os_base_1";
  2731. /*
  2732. * File name selection pattern
  2733. */
  2734. tSCC zDarwin_Os_Base_1List[] =
  2735. "os/base.h\0";
  2736. /*
  2737. * Machine/OS name selection pattern
  2738. */
  2739. tSCC* apzDarwin_Os_Base_1Machs[] = {
  2740. "*-*-darwin*",
  2741. (const char*)NULL };
  2742. /*
  2743. * content selection pattern - do fix if pattern found
  2744. */
  2745. tSCC zDarwin_Os_Base_1Select0[] =
  2746. "#define __has_attribute.*\n\
  2747. #endif";
  2748. #define DARWIN_OS_BASE_1_TEST_CT 1
  2749. static tTestDesc aDarwin_Os_Base_1Tests[] = {
  2750. { TT_EGREP, zDarwin_Os_Base_1Select0, (regex_t*)NULL }, };
  2751. /*
  2752. * Fix Command Arguments for Darwin_Os_Base_1
  2753. */
  2754. static const char* apzDarwin_Os_Base_1Patch[] = {
  2755. "format",
  2756. "%0\n\
  2757. #ifndef __has_extension\n\
  2758. #define __has_extension(x) 0\n\
  2759. #endif",
  2760. (char*)NULL };
  2761. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2762. *
  2763. * Description of Darwin_Dispatch_Object_1 fix
  2764. */
  2765. tSCC zDarwin_Dispatch_Object_1Name[] =
  2766. "darwin_dispatch_object_1";
  2767. /*
  2768. * File name selection pattern
  2769. */
  2770. tSCC zDarwin_Dispatch_Object_1List[] =
  2771. "dispatch/object.h\0";
  2772. /*
  2773. * Machine/OS name selection pattern
  2774. */
  2775. tSCC* apzDarwin_Dispatch_Object_1Machs[] = {
  2776. "*-*-darwin*",
  2777. (const char*)NULL };
  2778. /*
  2779. * content selection pattern - do fix if pattern found
  2780. */
  2781. tSCC zDarwin_Dispatch_Object_1Select0[] =
  2782. "typedef void.*\\^dispatch_block_t.*";
  2783. #define DARWIN_DISPATCH_OBJECT_1_TEST_CT 1
  2784. static tTestDesc aDarwin_Dispatch_Object_1Tests[] = {
  2785. { TT_EGREP, zDarwin_Dispatch_Object_1Select0, (regex_t*)NULL }, };
  2786. /*
  2787. * Fix Command Arguments for Darwin_Dispatch_Object_1
  2788. */
  2789. static const char* apzDarwin_Dispatch_Object_1Patch[] = {
  2790. "format",
  2791. "#if __BLOCKS__\n\
  2792. %0\n\
  2793. #endif",
  2794. (char*)NULL };
  2795. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2796. *
  2797. * Description of Darwin_Private_Extern fix
  2798. */
  2799. tSCC zDarwin_Private_ExternName[] =
  2800. "darwin_private_extern";
  2801. /*
  2802. * File name selection pattern
  2803. */
  2804. tSCC zDarwin_Private_ExternList[] =
  2805. "mach-o/dyld.h\0";
  2806. /*
  2807. * Machine/OS name selection pattern
  2808. */
  2809. tSCC* apzDarwin_Private_ExternMachs[] = {
  2810. "*-*-darwin*",
  2811. (const char*)NULL };
  2812. /*
  2813. * content selection pattern - do fix if pattern found
  2814. */
  2815. tSCC zDarwin_Private_ExternSelect0[] =
  2816. "__private_extern__ [a-z_]+ _dyld_";
  2817. #define DARWIN_PRIVATE_EXTERN_TEST_CT 1
  2818. static tTestDesc aDarwin_Private_ExternTests[] = {
  2819. { TT_EGREP, zDarwin_Private_ExternSelect0, (regex_t*)NULL }, };
  2820. /*
  2821. * Fix Command Arguments for Darwin_Private_Extern
  2822. */
  2823. static const char* apzDarwin_Private_ExternPatch[] = {
  2824. "format",
  2825. "extern",
  2826. "__private_extern__",
  2827. (char*)NULL };
  2828. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2829. *
  2830. * Description of Darwin_Stdint_1 fix
  2831. */
  2832. tSCC zDarwin_Stdint_1Name[] =
  2833. "darwin_stdint_1";
  2834. /*
  2835. * File name selection pattern
  2836. */
  2837. tSCC zDarwin_Stdint_1List[] =
  2838. "stdint-darwin.h\0stdint.h\0";
  2839. /*
  2840. * Machine/OS name selection pattern
  2841. */
  2842. tSCC* apzDarwin_Stdint_1Machs[] = {
  2843. "*-*-darwin*",
  2844. (const char*)NULL };
  2845. /*
  2846. * content selection pattern - do fix if pattern found
  2847. */
  2848. tSCC zDarwin_Stdint_1Select0[] =
  2849. "#define UINT8_C\\(v\\)[ \t]+\\(v ## U\\)\n\
  2850. #define UINT16_C\\(v\\)[ \t]+\\(v ## U\\)";
  2851. #define DARWIN_STDINT_1_TEST_CT 1
  2852. static tTestDesc aDarwin_Stdint_1Tests[] = {
  2853. { TT_EGREP, zDarwin_Stdint_1Select0, (regex_t*)NULL }, };
  2854. /*
  2855. * Fix Command Arguments for Darwin_Stdint_1
  2856. */
  2857. static const char* apzDarwin_Stdint_1Patch[] = {
  2858. "format",
  2859. "#define UINT8_C(v)\tv\n\
  2860. #define UINT16_C(v)\tv",
  2861. (char*)NULL };
  2862. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2863. *
  2864. * Description of Darwin_Stdint_2 fix
  2865. */
  2866. tSCC zDarwin_Stdint_2Name[] =
  2867. "darwin_stdint_2";
  2868. /*
  2869. * File name selection pattern
  2870. */
  2871. tSCC zDarwin_Stdint_2List[] =
  2872. "stdint-darwin.h\0stdint.h\0";
  2873. /*
  2874. * Machine/OS name selection pattern
  2875. */
  2876. tSCC* apzDarwin_Stdint_2Machs[] = {
  2877. "*-*-darwin*",
  2878. (const char*)NULL };
  2879. /*
  2880. * content selection pattern - do fix if pattern found
  2881. */
  2882. tSCC zDarwin_Stdint_2Select0[] =
  2883. "#if __WORDSIZE == 64\n\
  2884. #define INTPTR_MIN[ \t]+INT64_MIN\n\
  2885. #define INTPTR_MAX[ \t]+INT64_MAX\n\
  2886. #else\n\
  2887. #define INTPTR_MIN[ \t]+INT32_MIN\n\
  2888. #define INTPTR_MAX[ \t]+INT32_MAX\n\
  2889. #endif";
  2890. #define DARWIN_STDINT_2_TEST_CT 1
  2891. static tTestDesc aDarwin_Stdint_2Tests[] = {
  2892. { TT_EGREP, zDarwin_Stdint_2Select0, (regex_t*)NULL }, };
  2893. /*
  2894. * Fix Command Arguments for Darwin_Stdint_2
  2895. */
  2896. static const char* apzDarwin_Stdint_2Patch[] = {
  2897. "format",
  2898. "#if __WORDSIZE == 64\n\
  2899. #define INTPTR_MAX 9223372036854775807L\n\
  2900. #define INTPTR_MIN (-INTPTR_MAX-1)\n\
  2901. #else\n\
  2902. #define INTPTR_MAX 2147483647L\n\
  2903. #define INTPTR_MIN (-INTPTR_MAX-1)\n\
  2904. #endif",
  2905. (char*)NULL };
  2906. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2907. *
  2908. * Description of Darwin_Stdint_3 fix
  2909. */
  2910. tSCC zDarwin_Stdint_3Name[] =
  2911. "darwin_stdint_3";
  2912. /*
  2913. * File name selection pattern
  2914. */
  2915. tSCC zDarwin_Stdint_3List[] =
  2916. "stdint-darwin.h\0stdint.h\0";
  2917. /*
  2918. * Machine/OS name selection pattern
  2919. */
  2920. tSCC* apzDarwin_Stdint_3Machs[] = {
  2921. "*-*-darwin*",
  2922. (const char*)NULL };
  2923. /*
  2924. * content selection pattern - do fix if pattern found
  2925. */
  2926. tSCC zDarwin_Stdint_3Select0[] =
  2927. "#if __WORDSIZE == 64\n\
  2928. #define UINTPTR_MAX[ \t]+UINT64_MAX\n\
  2929. #else\n\
  2930. #define UINTPTR_MAX[ \t]+UINT32_MAX\n\
  2931. #endif";
  2932. #define DARWIN_STDINT_3_TEST_CT 1
  2933. static tTestDesc aDarwin_Stdint_3Tests[] = {
  2934. { TT_EGREP, zDarwin_Stdint_3Select0, (regex_t*)NULL }, };
  2935. /*
  2936. * Fix Command Arguments for Darwin_Stdint_3
  2937. */
  2938. static const char* apzDarwin_Stdint_3Patch[] = {
  2939. "format",
  2940. "#if __WORDSIZE == 64\n\
  2941. #define UINTPTR_MAX 18446744073709551615UL\n\
  2942. #else\n\
  2943. #define UINTPTR_MAX 4294967295UL\n\
  2944. #endif",
  2945. (char*)NULL };
  2946. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2947. *
  2948. * Description of Darwin_Stdint_4 fix
  2949. */
  2950. tSCC zDarwin_Stdint_4Name[] =
  2951. "darwin_stdint_4";
  2952. /*
  2953. * File name selection pattern
  2954. */
  2955. tSCC zDarwin_Stdint_4List[] =
  2956. "stdint-darwin.h\0stdint.h\0";
  2957. /*
  2958. * Machine/OS name selection pattern
  2959. */
  2960. tSCC* apzDarwin_Stdint_4Machs[] = {
  2961. "*-*-darwin*",
  2962. (const char*)NULL };
  2963. /*
  2964. * content selection pattern - do fix if pattern found
  2965. */
  2966. tSCC zDarwin_Stdint_4Select0[] =
  2967. "#if __WORDSIZE == 64\n\
  2968. #define SIZE_MAX[ \t]+UINT64_MAX\n\
  2969. #else\n\
  2970. #define SIZE_MAX[ \t]+UINT32_MAX\n\
  2971. #endif";
  2972. #define DARWIN_STDINT_4_TEST_CT 1
  2973. static tTestDesc aDarwin_Stdint_4Tests[] = {
  2974. { TT_EGREP, zDarwin_Stdint_4Select0, (regex_t*)NULL }, };
  2975. /*
  2976. * Fix Command Arguments for Darwin_Stdint_4
  2977. */
  2978. static const char* apzDarwin_Stdint_4Patch[] = {
  2979. "format",
  2980. "#if __WORDSIZE == 64\n\
  2981. #define SIZE_MAX 18446744073709551615UL\n\
  2982. #else\n\
  2983. #define SIZE_MAX 4294967295UL\n\
  2984. #endif",
  2985. (char*)NULL };
  2986. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  2987. *
  2988. * Description of Darwin_Stdint_5 fix
  2989. */
  2990. tSCC zDarwin_Stdint_5Name[] =
  2991. "darwin_stdint_5";
  2992. /*
  2993. * File name selection pattern
  2994. */
  2995. tSCC zDarwin_Stdint_5List[] =
  2996. "stdint-darwin.h\0stdint.h\0";
  2997. /*
  2998. * Machine/OS name selection pattern
  2999. */
  3000. tSCC* apzDarwin_Stdint_5Machs[] = {
  3001. "*-*-darwin*",
  3002. (const char*)NULL };
  3003. /*
  3004. * content selection pattern - do fix if pattern found
  3005. */
  3006. tSCC zDarwin_Stdint_5Select0[] =
  3007. "#define INTMAX_MIN[ \t]+INT64_MIN\n\
  3008. #define INTMAX_MAX[ \t]+INT64_MAX\n\n\
  3009. #define UINTMAX_MAX[ \t]+UINT64_MAX";
  3010. #define DARWIN_STDINT_5_TEST_CT 1
  3011. static tTestDesc aDarwin_Stdint_5Tests[] = {
  3012. { TT_EGREP, zDarwin_Stdint_5Select0, (regex_t*)NULL }, };
  3013. /*
  3014. * Fix Command Arguments for Darwin_Stdint_5
  3015. */
  3016. static const char* apzDarwin_Stdint_5Patch[] = {
  3017. "format",
  3018. "#if __WORDSIZE == 64\n\
  3019. #define INTMAX_MIN (-9223372036854775807L - 1)\n\
  3020. #define INTMAX_MAX 9223372036854775807L\n\
  3021. #define UINTMAX_MAX 18446744073709551615UL\n\
  3022. #else\n\
  3023. #define INTMAX_MIN (-9223372036854775807LL - 1)\n\
  3024. #define INTMAX_MAX 9223372036854775807LL\n\
  3025. #define UINTMAX_MAX 18446744073709551615ULL\n\
  3026. #endif",
  3027. (char*)NULL };
  3028. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3029. *
  3030. * Description of Darwin_Stdint_6 fix
  3031. */
  3032. tSCC zDarwin_Stdint_6Name[] =
  3033. "darwin_stdint_6";
  3034. /*
  3035. * File name selection pattern
  3036. */
  3037. tSCC zDarwin_Stdint_6List[] =
  3038. "stdint-darwin.h\0stdint.h\0";
  3039. /*
  3040. * Machine/OS name selection pattern
  3041. */
  3042. tSCC* apzDarwin_Stdint_6Machs[] = {
  3043. "*-*-darwin*",
  3044. (const char*)NULL };
  3045. /*
  3046. * content selection pattern - do fix if pattern found
  3047. */
  3048. tSCC zDarwin_Stdint_6Select0[] =
  3049. "#if __WORDSIZE == 64\n\
  3050. #define PTRDIFF_MIN[ \t]+INT64_MIN\n\
  3051. #define PTRDIFF_MAX[ \t]+INT64_MAX\n\
  3052. #else\n\
  3053. #define PTRDIFF_MIN[ \t]+INT32_MIN\n\
  3054. #define PTRDIFF_MAX[ \t]+INT32_MAX\n\
  3055. #endif";
  3056. #define DARWIN_STDINT_6_TEST_CT 1
  3057. static tTestDesc aDarwin_Stdint_6Tests[] = {
  3058. { TT_EGREP, zDarwin_Stdint_6Select0, (regex_t*)NULL }, };
  3059. /*
  3060. * Fix Command Arguments for Darwin_Stdint_6
  3061. */
  3062. static const char* apzDarwin_Stdint_6Patch[] = {
  3063. "format",
  3064. "#if __WORDSIZE == 64\n\
  3065. #define PTRDIFF_MIN (-9223372036854775807L - 1)\n\
  3066. #define PTRDIFF_MAX 9223372036854775807L\n\
  3067. #else\n\
  3068. #define PTRDIFF_MIN (-2147483647 - 1)\n\
  3069. #define PTRDIFF_MAX 2147483647\n\
  3070. #endif",
  3071. (char*)NULL };
  3072. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3073. *
  3074. * Description of Darwin_Stdint_7 fix
  3075. */
  3076. tSCC zDarwin_Stdint_7Name[] =
  3077. "darwin_stdint_7";
  3078. /*
  3079. * File name selection pattern
  3080. */
  3081. tSCC zDarwin_Stdint_7List[] =
  3082. "stdint-darwin.h\0stdint.h\0";
  3083. /*
  3084. * Machine/OS name selection pattern
  3085. */
  3086. tSCC* apzDarwin_Stdint_7Machs[] = {
  3087. "*-*-darwin*",
  3088. (const char*)NULL };
  3089. /*
  3090. * content selection pattern - do fix if pattern found
  3091. */
  3092. tSCC zDarwin_Stdint_7Select0[] =
  3093. "#define INTMAX_C\\(v\\)[ \t]+\\(v ## LL\\)\n\
  3094. #define UINTMAX_C\\(v\\)[ \t]+\\(v ## ULL\\)";
  3095. #define DARWIN_STDINT_7_TEST_CT 1
  3096. static tTestDesc aDarwin_Stdint_7Tests[] = {
  3097. { TT_EGREP, zDarwin_Stdint_7Select0, (regex_t*)NULL }, };
  3098. /*
  3099. * Fix Command Arguments for Darwin_Stdint_7
  3100. */
  3101. static const char* apzDarwin_Stdint_7Patch[] = {
  3102. "format",
  3103. "#if __WORDSIZE == 64\n\
  3104. #define INTMAX_C(v) (v ## L)\n\
  3105. #define UINTMAX_C(v) (v ## UL)\n\
  3106. #else\n\
  3107. #define INTMAX_C(v) (v ## LL)\n\
  3108. #define UINTMAX_C(v) (v ## ULL)\n\
  3109. #endif",
  3110. (char*)NULL };
  3111. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3112. *
  3113. * Description of Darwin_Ucred__Atomic fix
  3114. */
  3115. tSCC zDarwin_Ucred__AtomicName[] =
  3116. "darwin_ucred__Atomic";
  3117. /*
  3118. * File name selection pattern
  3119. */
  3120. tSCC zDarwin_Ucred__AtomicList[] =
  3121. "sys/ucred.h\0";
  3122. /*
  3123. * Machine/OS name selection pattern
  3124. */
  3125. tSCC* apzDarwin_Ucred__AtomicMachs[] = {
  3126. "*-*-darwin*",
  3127. (const char*)NULL };
  3128. /*
  3129. * content selection pattern - do fix if pattern found
  3130. */
  3131. tSCC zDarwin_Ucred__AtomicSelect0[] =
  3132. "_Atomic";
  3133. #define DARWIN_UCRED__ATOMIC_TEST_CT 1
  3134. static tTestDesc aDarwin_Ucred__AtomicTests[] = {
  3135. { TT_EGREP, zDarwin_Ucred__AtomicSelect0, (regex_t*)NULL }, };
  3136. /*
  3137. * Fix Command Arguments for Darwin_Ucred__Atomic
  3138. */
  3139. static const char* apzDarwin_Ucred__AtomicPatch[] = {
  3140. "wrap",
  3141. "#if (__STDC_VERSION__ < 201112L) || defined(__cplusplus)\n\
  3142. # define _Atomic volatile\n\
  3143. #endif\n",
  3144. "#if (__STDC_VERSION__ < 201112L) || defined(__cplusplus)\n\
  3145. # undef _Atomic\n\
  3146. #endif\n",
  3147. (char*)NULL };
  3148. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3149. *
  3150. * Description of Darwin_Flt_Eval_Method fix
  3151. */
  3152. tSCC zDarwin_Flt_Eval_MethodName[] =
  3153. "darwin_flt_eval_method";
  3154. /*
  3155. * File name selection pattern
  3156. */
  3157. tSCC zDarwin_Flt_Eval_MethodList[] =
  3158. "math.h\0";
  3159. /*
  3160. * Machine/OS name selection pattern
  3161. */
  3162. tSCC* apzDarwin_Flt_Eval_MethodMachs[] = {
  3163. "*-*-darwin*",
  3164. (const char*)NULL };
  3165. /*
  3166. * content selection pattern - do fix if pattern found
  3167. */
  3168. tSCC zDarwin_Flt_Eval_MethodSelect0[] =
  3169. "^#if __FLT_EVAL_METHOD__ == 0$";
  3170. #define DARWIN_FLT_EVAL_METHOD_TEST_CT 1
  3171. static tTestDesc aDarwin_Flt_Eval_MethodTests[] = {
  3172. { TT_EGREP, zDarwin_Flt_Eval_MethodSelect0, (regex_t*)NULL }, };
  3173. /*
  3174. * Fix Command Arguments for Darwin_Flt_Eval_Method
  3175. */
  3176. static const char* apzDarwin_Flt_Eval_MethodPatch[] = {
  3177. "format",
  3178. "#if __FLT_EVAL_METHOD__ == 0 || __FLT_EVAL_METHOD__ == 16",
  3179. (char*)NULL };
  3180. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3181. *
  3182. * Description of Dec_Intern_Asm fix
  3183. */
  3184. tSCC zDec_Intern_AsmName[] =
  3185. "dec_intern_asm";
  3186. /*
  3187. * File name selection pattern
  3188. */
  3189. tSCC zDec_Intern_AsmList[] =
  3190. "c_asm.h\0";
  3191. /*
  3192. * Machine/OS name selection pattern
  3193. */
  3194. #define apzDec_Intern_AsmMachs (const char**)NULL
  3195. #define DEC_INTERN_ASM_TEST_CT 0
  3196. #define aDec_Intern_AsmTests (tTestDesc*)NULL
  3197. /*
  3198. * Fix Command Arguments for Dec_Intern_Asm
  3199. */
  3200. static const char* apzDec_Intern_AsmPatch[] = { sed_cmd_z,
  3201. "-e", "/^[ \t]*float[ \t]*fasm/i\\\n\
  3202. #ifdef __DECC\n",
  3203. "-e", "/^[ \t]*#[ \t]*pragma[ \t]*intrinsic([ \t]*dasm/a\\\n\
  3204. #endif\n",
  3205. (char*)NULL };
  3206. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3207. *
  3208. * Description of Djgpp_Wchar_H fix
  3209. */
  3210. tSCC zDjgpp_Wchar_HName[] =
  3211. "djgpp_wchar_h";
  3212. /*
  3213. * File name selection pattern
  3214. */
  3215. #define zDjgpp_Wchar_HList (char*)NULL
  3216. /*
  3217. * Machine/OS name selection pattern
  3218. */
  3219. #define apzDjgpp_Wchar_HMachs (const char**)NULL
  3220. /*
  3221. * content selection pattern - do fix if pattern found
  3222. */
  3223. tSCC zDjgpp_Wchar_HSelect0[] =
  3224. "__DJ_wint_t";
  3225. /*
  3226. * content bypass pattern - skip fix if pattern found
  3227. */
  3228. tSCC zDjgpp_Wchar_HBypass0[] =
  3229. "sys/djtypes.h";
  3230. #define DJGPP_WCHAR_H_TEST_CT 2
  3231. static tTestDesc aDjgpp_Wchar_HTests[] = {
  3232. { TT_NEGREP, zDjgpp_Wchar_HBypass0, (regex_t*)NULL },
  3233. { TT_EGREP, zDjgpp_Wchar_HSelect0, (regex_t*)NULL }, };
  3234. /*
  3235. * Fix Command Arguments for Djgpp_Wchar_H
  3236. */
  3237. static const char* apzDjgpp_Wchar_HPatch[] = {
  3238. "format",
  3239. "%0\n\
  3240. #include <sys/djtypes.h>",
  3241. "#include <stddef.h>",
  3242. (char*)NULL };
  3243. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3244. *
  3245. * Description of Ecd_Cursor fix
  3246. */
  3247. tSCC zEcd_CursorName[] =
  3248. "ecd_cursor";
  3249. /*
  3250. * File name selection pattern
  3251. */
  3252. tSCC zEcd_CursorList[] =
  3253. "sunwindow/win_lock.h\0sunwindow/win_cursor.h\0";
  3254. /*
  3255. * Machine/OS name selection pattern
  3256. */
  3257. #define apzEcd_CursorMachs (const char**)NULL
  3258. /*
  3259. * content selection pattern - do fix if pattern found
  3260. */
  3261. tSCC zEcd_CursorSelect0[] =
  3262. "ecd\\.cursor";
  3263. #define ECD_CURSOR_TEST_CT 1
  3264. static tTestDesc aEcd_CursorTests[] = {
  3265. { TT_EGREP, zEcd_CursorSelect0, (regex_t*)NULL }, };
  3266. /*
  3267. * Fix Command Arguments for Ecd_Cursor
  3268. */
  3269. static const char* apzEcd_CursorPatch[] = {
  3270. "format",
  3271. "ecd_cursor",
  3272. (char*)NULL };
  3273. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3274. *
  3275. * Description of Feraiseexcept_Nosse_Divbyzero fix
  3276. */
  3277. tSCC zFeraiseexcept_Nosse_DivbyzeroName[] =
  3278. "feraiseexcept_nosse_divbyzero";
  3279. /*
  3280. * File name selection pattern
  3281. */
  3282. tSCC zFeraiseexcept_Nosse_DivbyzeroList[] =
  3283. "bits/fenv.h\0*/bits/fenv.h\0";
  3284. /*
  3285. * Machine/OS name selection pattern
  3286. */
  3287. tSCC* apzFeraiseexcept_Nosse_DivbyzeroMachs[] = {
  3288. "i[34567]86-*-linux*",
  3289. "x86*-linux*",
  3290. "amd64-*-linux*",
  3291. (const char*)NULL };
  3292. /*
  3293. * content selection pattern - do fix if pattern found
  3294. */
  3295. tSCC zFeraiseexcept_Nosse_DivbyzeroSelect0[] =
  3296. "^([\t ]*)__asm__ __volatile__ \\(\"divss %1, %0 *\" : : \"x\" \\(__f\\), \"x\" \\(__g\\)\\);$";
  3297. /*
  3298. * content bypass pattern - skip fix if pattern found
  3299. */
  3300. tSCC zFeraiseexcept_Nosse_DivbyzeroBypass0[] =
  3301. "\"fdivp .*; fwait\"";
  3302. #define FERAISEEXCEPT_NOSSE_DIVBYZERO_TEST_CT 2
  3303. static tTestDesc aFeraiseexcept_Nosse_DivbyzeroTests[] = {
  3304. { TT_NEGREP, zFeraiseexcept_Nosse_DivbyzeroBypass0, (regex_t*)NULL },
  3305. { TT_EGREP, zFeraiseexcept_Nosse_DivbyzeroSelect0, (regex_t*)NULL }, };
  3306. /*
  3307. * Fix Command Arguments for Feraiseexcept_Nosse_Divbyzero
  3308. */
  3309. static const char* apzFeraiseexcept_Nosse_DivbyzeroPatch[] = {
  3310. "format",
  3311. "# ifdef __SSE_MATH__\n\
  3312. %0\n\
  3313. # else\n\
  3314. %1__asm__ __volatile__ (\"fdivp %%%%st, %%%%st(1); fwait\"\n\
  3315. %1\t\t\t: \"=t\" (__f) : \"0\" (__f), \"u\" (__g) : \"st(1)\");\n\
  3316. # endif",
  3317. (char*)NULL };
  3318. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3319. *
  3320. * Description of Feraiseexcept_Nosse_Invalid fix
  3321. */
  3322. tSCC zFeraiseexcept_Nosse_InvalidName[] =
  3323. "feraiseexcept_nosse_invalid";
  3324. /*
  3325. * File name selection pattern
  3326. */
  3327. tSCC zFeraiseexcept_Nosse_InvalidList[] =
  3328. "bits/fenv.h\0*/bits/fenv.h\0";
  3329. /*
  3330. * Machine/OS name selection pattern
  3331. */
  3332. tSCC* apzFeraiseexcept_Nosse_InvalidMachs[] = {
  3333. "i[34567]86-*-linux*",
  3334. "x86*-linux*",
  3335. "amd64-*-linux*",
  3336. (const char*)NULL };
  3337. /*
  3338. * content selection pattern - do fix if pattern found
  3339. */
  3340. tSCC zFeraiseexcept_Nosse_InvalidSelect0[] =
  3341. "^([\t ]*)__asm__ __volatile__ \\(\"divss %0, %0 *\" : : \"x\" \\(__f\\)\\);$";
  3342. /*
  3343. * content bypass pattern - skip fix if pattern found
  3344. */
  3345. tSCC zFeraiseexcept_Nosse_InvalidBypass0[] =
  3346. "\"fdiv .*; fwait\"";
  3347. #define FERAISEEXCEPT_NOSSE_INVALID_TEST_CT 2
  3348. static tTestDesc aFeraiseexcept_Nosse_InvalidTests[] = {
  3349. { TT_NEGREP, zFeraiseexcept_Nosse_InvalidBypass0, (regex_t*)NULL },
  3350. { TT_EGREP, zFeraiseexcept_Nosse_InvalidSelect0, (regex_t*)NULL }, };
  3351. /*
  3352. * Fix Command Arguments for Feraiseexcept_Nosse_Invalid
  3353. */
  3354. static const char* apzFeraiseexcept_Nosse_InvalidPatch[] = {
  3355. "format",
  3356. "# ifdef __SSE_MATH__\n\
  3357. %0\n\
  3358. # else\n\
  3359. %1__asm__ __volatile__ (\"fdiv %%%%st, %%%%st(0); fwait\"\n\
  3360. %1\t\t\t: \"=t\" (__f) : \"0\" (__f));\n\
  3361. # endif",
  3362. (char*)NULL };
  3363. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3364. *
  3365. * Description of Freebsd_Gcc3_Breakage fix
  3366. */
  3367. tSCC zFreebsd_Gcc3_BreakageName[] =
  3368. "freebsd_gcc3_breakage";
  3369. /*
  3370. * File name selection pattern
  3371. */
  3372. tSCC zFreebsd_Gcc3_BreakageList[] =
  3373. "sys/cdefs.h\0";
  3374. /*
  3375. * Machine/OS name selection pattern
  3376. */
  3377. tSCC* apzFreebsd_Gcc3_BreakageMachs[] = {
  3378. "*-*-freebsd*",
  3379. (const char*)NULL };
  3380. /*
  3381. * content selection pattern - do fix if pattern found
  3382. */
  3383. tSCC zFreebsd_Gcc3_BreakageSelect0[] =
  3384. "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7$";
  3385. /*
  3386. * content bypass pattern - skip fix if pattern found
  3387. */
  3388. tSCC zFreebsd_Gcc3_BreakageBypass0[] =
  3389. "__GNUC__[ \\t]*([>=]=[ \\t]*[3-9]|>[ \\t]*2)";
  3390. #define FREEBSD_GCC3_BREAKAGE_TEST_CT 2
  3391. static tTestDesc aFreebsd_Gcc3_BreakageTests[] = {
  3392. { TT_NEGREP, zFreebsd_Gcc3_BreakageBypass0, (regex_t*)NULL },
  3393. { TT_EGREP, zFreebsd_Gcc3_BreakageSelect0, (regex_t*)NULL }, };
  3394. /*
  3395. * Fix Command Arguments for Freebsd_Gcc3_Breakage
  3396. */
  3397. static const char* apzFreebsd_Gcc3_BreakagePatch[] = {
  3398. "format",
  3399. "%0 || __GNUC__ >= 3",
  3400. (char*)NULL };
  3401. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3402. *
  3403. * Description of Freebsd_Gcc4_Breakage fix
  3404. */
  3405. tSCC zFreebsd_Gcc4_BreakageName[] =
  3406. "freebsd_gcc4_breakage";
  3407. /*
  3408. * File name selection pattern
  3409. */
  3410. tSCC zFreebsd_Gcc4_BreakageList[] =
  3411. "sys/cdefs.h\0";
  3412. /*
  3413. * Machine/OS name selection pattern
  3414. */
  3415. tSCC* apzFreebsd_Gcc4_BreakageMachs[] = {
  3416. "*-*-freebsd*",
  3417. (const char*)NULL };
  3418. /*
  3419. * content selection pattern - do fix if pattern found
  3420. */
  3421. tSCC zFreebsd_Gcc4_BreakageSelect0[] =
  3422. "^#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 \\|\\| __GNUC__ == 3$";
  3423. #define FREEBSD_GCC4_BREAKAGE_TEST_CT 1
  3424. static tTestDesc aFreebsd_Gcc4_BreakageTests[] = {
  3425. { TT_EGREP, zFreebsd_Gcc4_BreakageSelect0, (regex_t*)NULL }, };
  3426. /*
  3427. * Fix Command Arguments for Freebsd_Gcc4_Breakage
  3428. */
  3429. static const char* apzFreebsd_Gcc4_BreakagePatch[] = {
  3430. "format",
  3431. "#if __GNUC__ == 2 && __GNUC_MINOR__ >= 7 || __GNUC__ >= 3",
  3432. (char*)NULL };
  3433. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3434. *
  3435. * Description of Glibc_C99_Inline_1 fix
  3436. */
  3437. tSCC zGlibc_C99_Inline_1Name[] =
  3438. "glibc_c99_inline_1";
  3439. /*
  3440. * File name selection pattern
  3441. */
  3442. tSCC zGlibc_C99_Inline_1List[] =
  3443. "features.h\0*/features.h\0";
  3444. /*
  3445. * Machine/OS name selection pattern
  3446. */
  3447. #define apzGlibc_C99_Inline_1Machs (const char**)NULL
  3448. /*
  3449. * content selection pattern - do fix if pattern found
  3450. */
  3451. tSCC zGlibc_C99_Inline_1Select0[] =
  3452. "^ *&& !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__$";
  3453. #define GLIBC_C99_INLINE_1_TEST_CT 1
  3454. static tTestDesc aGlibc_C99_Inline_1Tests[] = {
  3455. { TT_EGREP, zGlibc_C99_Inline_1Select0, (regex_t*)NULL }, };
  3456. /*
  3457. * Fix Command Arguments for Glibc_C99_Inline_1
  3458. */
  3459. static const char* apzGlibc_C99_Inline_1Patch[] = {
  3460. "format",
  3461. "%0 && (defined __extern_inline || defined __GNUC_GNU_INLINE__)",
  3462. (char*)NULL };
  3463. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3464. *
  3465. * Description of Glibc_C99_Inline_1a fix
  3466. */
  3467. tSCC zGlibc_C99_Inline_1aName[] =
  3468. "glibc_c99_inline_1a";
  3469. /*
  3470. * File name selection pattern
  3471. */
  3472. tSCC zGlibc_C99_Inline_1aList[] =
  3473. "features.h\0*/features.h\0";
  3474. /*
  3475. * Machine/OS name selection pattern
  3476. */
  3477. #define apzGlibc_C99_Inline_1aMachs (const char**)NULL
  3478. /*
  3479. * content selection pattern - do fix if pattern found
  3480. */
  3481. tSCC zGlibc_C99_Inline_1aSelect0[] =
  3482. "(\\) && defined __OPTIMIZE__ && !defined __OPTIMIZE_SIZE__)\n\
  3483. (#[ \t]*define[ \t]*__USE_EXTERN_INLINES[ \t]*1)";
  3484. #define GLIBC_C99_INLINE_1A_TEST_CT 1
  3485. static tTestDesc aGlibc_C99_Inline_1aTests[] = {
  3486. { TT_EGREP, zGlibc_C99_Inline_1aSelect0, (regex_t*)NULL }, };
  3487. /*
  3488. * Fix Command Arguments for Glibc_C99_Inline_1a
  3489. */
  3490. static const char* apzGlibc_C99_Inline_1aPatch[] = {
  3491. "format",
  3492. "%1 && (defined __extern_inline || defined __GNUC_GNU_INLINE__)\n\
  3493. %2",
  3494. (char*)NULL };
  3495. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3496. *
  3497. * Description of Glibc_C99_Inline_2 fix
  3498. */
  3499. tSCC zGlibc_C99_Inline_2Name[] =
  3500. "glibc_c99_inline_2";
  3501. /*
  3502. * File name selection pattern
  3503. */
  3504. tSCC zGlibc_C99_Inline_2List[] =
  3505. "sys/stat.h\0*/sys/stat.h\0";
  3506. /*
  3507. * Machine/OS name selection pattern
  3508. */
  3509. #define apzGlibc_C99_Inline_2Machs (const char**)NULL
  3510. /*
  3511. * content selection pattern - do fix if pattern found
  3512. */
  3513. tSCC zGlibc_C99_Inline_2Select0[] =
  3514. "extern __inline__ int";
  3515. #define GLIBC_C99_INLINE_2_TEST_CT 1
  3516. static tTestDesc aGlibc_C99_Inline_2Tests[] = {
  3517. { TT_EGREP, zGlibc_C99_Inline_2Select0, (regex_t*)NULL }, };
  3518. /*
  3519. * Fix Command Arguments for Glibc_C99_Inline_2
  3520. */
  3521. static const char* apzGlibc_C99_Inline_2Patch[] = { sed_cmd_z,
  3522. "-e", "s/extern int \\(stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
  3523. extern\\\n\
  3524. #endif\\\n\
  3525. __inline__ int \\1/",
  3526. "-e", "s/extern int \\([lf]stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
  3527. extern\\\n\
  3528. #endif\\\n\
  3529. __inline__ int \\1/",
  3530. "-e", "s/extern int \\(mknod\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
  3531. extern\\\n\
  3532. #endif\\\n\
  3533. __inline__ int \\1/",
  3534. "-e", "s/extern int __REDIRECT\\(_NTH\\)\\{0,1\\} (\\(stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
  3535. extern\\\n\
  3536. #endif\\\n\
  3537. __inline__ int __REDIRECT\\1 (\\2/",
  3538. "-e", "s/extern int __REDIRECT\\(_NTH\\)\\{0,1\\} (\\([lf]stat\\)/#ifdef __GNUC_GNU_INLINE__\\\n\
  3539. extern\\\n\
  3540. #endif\\\n\
  3541. __inline__ int __REDIRECT\\1 (\\2/",
  3542. "-e", "s/^extern __inline__ int/#ifdef __GNUC_GNU_INLINE__\\\n\
  3543. extern\\\n\
  3544. #endif\\\n\
  3545. __inline__ int/",
  3546. (char*)NULL };
  3547. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3548. *
  3549. * Description of Glibc_C99_Inline_3 fix
  3550. */
  3551. tSCC zGlibc_C99_Inline_3Name[] =
  3552. "glibc_c99_inline_3";
  3553. /*
  3554. * File name selection pattern
  3555. */
  3556. tSCC zGlibc_C99_Inline_3List[] =
  3557. "bits/string2.h\0*/bits/string2.h\0";
  3558. /*
  3559. * Machine/OS name selection pattern
  3560. */
  3561. #define apzGlibc_C99_Inline_3Machs (const char**)NULL
  3562. /*
  3563. * content selection pattern - do fix if pattern found
  3564. */
  3565. tSCC zGlibc_C99_Inline_3Select0[] =
  3566. "extern __inline";
  3567. /*
  3568. * content bypass pattern - skip fix if pattern found
  3569. */
  3570. tSCC zGlibc_C99_Inline_3Bypass0[] =
  3571. "__extern_inline|__GNU_STDC_INLINE__";
  3572. #define GLIBC_C99_INLINE_3_TEST_CT 2
  3573. static tTestDesc aGlibc_C99_Inline_3Tests[] = {
  3574. { TT_NEGREP, zGlibc_C99_Inline_3Bypass0, (regex_t*)NULL },
  3575. { TT_EGREP, zGlibc_C99_Inline_3Select0, (regex_t*)NULL }, };
  3576. /*
  3577. * Fix Command Arguments for Glibc_C99_Inline_3
  3578. */
  3579. static const char* apzGlibc_C99_Inline_3Patch[] = {
  3580. "format",
  3581. "# if defined(__cplusplus) || defined(__GNUC_STDC_INLINE__)",
  3582. "^# ifdef __cplusplus$",
  3583. (char*)NULL };
  3584. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3585. *
  3586. * Description of Glibc_C99_Inline_4 fix
  3587. */
  3588. tSCC zGlibc_C99_Inline_4Name[] =
  3589. "glibc_c99_inline_4";
  3590. /*
  3591. * File name selection pattern
  3592. */
  3593. tSCC zGlibc_C99_Inline_4List[] =
  3594. "sys/sysmacros.h\0*/sys/sysmacros.h\0wchar.h\0*/wchar.h\0pthread.h\0*/pthread.h\0";
  3595. /*
  3596. * Machine/OS name selection pattern
  3597. */
  3598. #define apzGlibc_C99_Inline_4Machs (const char**)NULL
  3599. /*
  3600. * content selection pattern - do fix if pattern found
  3601. */
  3602. tSCC zGlibc_C99_Inline_4Select0[] =
  3603. "(^| )extern __inline";
  3604. /*
  3605. * content bypass pattern - skip fix if pattern found
  3606. */
  3607. tSCC zGlibc_C99_Inline_4Bypass0[] =
  3608. "__extern_inline|__gnu_inline__";
  3609. #define GLIBC_C99_INLINE_4_TEST_CT 2
  3610. static tTestDesc aGlibc_C99_Inline_4Tests[] = {
  3611. { TT_NEGREP, zGlibc_C99_Inline_4Bypass0, (regex_t*)NULL },
  3612. { TT_EGREP, zGlibc_C99_Inline_4Select0, (regex_t*)NULL }, };
  3613. /*
  3614. * Fix Command Arguments for Glibc_C99_Inline_4
  3615. */
  3616. static const char* apzGlibc_C99_Inline_4Patch[] = {
  3617. "format",
  3618. "%0 __attribute__ ((__gnu_inline__))",
  3619. (char*)NULL };
  3620. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3621. *
  3622. * Description of Glibc_Mutex_Init fix
  3623. */
  3624. tSCC zGlibc_Mutex_InitName[] =
  3625. "glibc_mutex_init";
  3626. /*
  3627. * File name selection pattern
  3628. */
  3629. tSCC zGlibc_Mutex_InitList[] =
  3630. "pthread.h\0";
  3631. /*
  3632. * Machine/OS name selection pattern
  3633. */
  3634. #define apzGlibc_Mutex_InitMachs (const char**)NULL
  3635. /*
  3636. * content selection pattern - do fix if pattern found
  3637. */
  3638. tSCC zGlibc_Mutex_InitSelect0[] =
  3639. "\\{ *\\{ *0, *\\} *\\}";
  3640. #define GLIBC_MUTEX_INIT_TEST_CT 1
  3641. static tTestDesc aGlibc_Mutex_InitTests[] = {
  3642. { TT_EGREP, zGlibc_Mutex_InitSelect0, (regex_t*)NULL }, };
  3643. /*
  3644. * Fix Command Arguments for Glibc_Mutex_Init
  3645. */
  3646. static const char* apzGlibc_Mutex_InitPatch[] = { sed_cmd_z,
  3647. "-e", "/define[ \t]\\{1,\\}PTHREAD_MUTEX_INITIALIZER[ \t]*\\\\/{\n\
  3648. N\n\
  3649. s/{ { 0, } }/{ { 0, 0, 0, 0, 0, 0 } }/\n\
  3650. }",
  3651. "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\)_NP\\) }/{ \\1, 0 }/",
  3652. "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(ERRORCHECK\\)_NP\\) }/{ \\1, 0 }/",
  3653. "-e", "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(ADAPTIVE\\)_NP\\) }/{ \\1, 0 }/",
  3654. "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
  3655. "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(ERRORCHECK\\)_NP\\) }/{ \\1, 0, 0 }/",
  3656. "-e", "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(ADAPTIVE\\)_NP\\) }/{ \\1, 0, 0 }/",
  3657. "-e", "/define[ \t]\\{1,\\}PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\/N;s/^[ \t]*#[ \t]*\\(define[ \t]\\{1,\\}PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\\\)\\n[ \t]*{ { 0, } }/# if __WORDSIZE == 64\\\n\
  3658. # \\1\\\n\
  3659. { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } }\\\n\
  3660. # else\\\n\
  3661. # \\1\\\n\
  3662. { { 0, 0, 0, 0, 0, 0, 0, 0 } }\\\n\
  3663. # endif/",
  3664. "-e", "s/{ \\(0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP\\) }/{ \\1, 0 }/",
  3665. "-e", "/define[ \t]\\{1,\\}PTHREAD_COND_INITIALIZER/s/{ { 0, } }/{ { 0, 0, 0, 0, 0, (void *) 0, 0, 0 } }/",
  3666. (char*)NULL };
  3667. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3668. *
  3669. * Description of Glibc_Stdint fix
  3670. */
  3671. tSCC zGlibc_StdintName[] =
  3672. "glibc_stdint";
  3673. /*
  3674. * File name selection pattern
  3675. */
  3676. tSCC zGlibc_StdintList[] =
  3677. "stdint.h\0";
  3678. /*
  3679. * Machine/OS name selection pattern
  3680. */
  3681. #define apzGlibc_StdintMachs (const char**)NULL
  3682. /*
  3683. * content selection pattern - do fix if pattern found
  3684. */
  3685. tSCC zGlibc_StdintSelect0[] =
  3686. "GNU C Library";
  3687. #define GLIBC_STDINT_TEST_CT 1
  3688. static tTestDesc aGlibc_StdintTests[] = {
  3689. { TT_EGREP, zGlibc_StdintSelect0, (regex_t*)NULL }, };
  3690. /*
  3691. * Fix Command Arguments for Glibc_Stdint
  3692. */
  3693. static const char* apzGlibc_StdintPatch[] = {
  3694. "format",
  3695. "# define UINT8_C(c)\tc\n\
  3696. # define UINT16_C(c)\tc",
  3697. "# define UINT8_C\\(c\\)\tc ## U\n\
  3698. # define UINT16_C\\(c\\)\tc ## U",
  3699. (char*)NULL };
  3700. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3701. *
  3702. * Description of Glibc_Strncpy fix
  3703. */
  3704. tSCC zGlibc_StrncpyName[] =
  3705. "glibc_strncpy";
  3706. /*
  3707. * File name selection pattern
  3708. */
  3709. tSCC zGlibc_StrncpyList[] =
  3710. "bits/string2.h\0*/bits/string2.h\0";
  3711. /*
  3712. * Machine/OS name selection pattern
  3713. */
  3714. #define apzGlibc_StrncpyMachs (const char**)NULL
  3715. /*
  3716. * content bypass pattern - skip fix if pattern found
  3717. */
  3718. tSCC zGlibc_StrncpyBypass0[] =
  3719. "__builtin_strncpy";
  3720. #define GLIBC_STRNCPY_TEST_CT 1
  3721. static tTestDesc aGlibc_StrncpyTests[] = {
  3722. { TT_NEGREP, zGlibc_StrncpyBypass0, (regex_t*)NULL }, };
  3723. /*
  3724. * Fix Command Arguments for Glibc_Strncpy
  3725. */
  3726. static const char* apzGlibc_StrncpyPatch[] = {
  3727. "format",
  3728. "# define strncpy(dest, src, n) __builtin_strncpy (dest, src, n)",
  3729. "# define strncpy([^\n\
  3730. ]*\\\\\n\
  3731. )*[^\n\
  3732. ]*",
  3733. (char*)NULL };
  3734. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3735. *
  3736. * Description of Glibc_Tgmath fix
  3737. */
  3738. tSCC zGlibc_TgmathName[] =
  3739. "glibc_tgmath";
  3740. /*
  3741. * File name selection pattern
  3742. */
  3743. tSCC zGlibc_TgmathList[] =
  3744. "tgmath.h\0";
  3745. /*
  3746. * Machine/OS name selection pattern
  3747. */
  3748. #define apzGlibc_TgmathMachs (const char**)NULL
  3749. /*
  3750. * content selection pattern - do fix if pattern found
  3751. */
  3752. tSCC zGlibc_TgmathSelect0[] =
  3753. "\\(\\(\\(type\\) 0.25\\) && \\(\\(type\\) 0.25 - 1\\)\\)";
  3754. /*
  3755. * content bypass pattern - skip fix if pattern found
  3756. */
  3757. tSCC zGlibc_TgmathBypass0[] =
  3758. "__floating_type\\(type\\) \\\\\n\
  3759. .*__builtin_classify_type";
  3760. #define GLIBC_TGMATH_TEST_CT 2
  3761. static tTestDesc aGlibc_TgmathTests[] = {
  3762. { TT_NEGREP, zGlibc_TgmathBypass0, (regex_t*)NULL },
  3763. { TT_EGREP, zGlibc_TgmathSelect0, (regex_t*)NULL }, };
  3764. /*
  3765. * Fix Command Arguments for Glibc_Tgmath
  3766. */
  3767. static const char* apzGlibc_TgmathPatch[] = {
  3768. "format",
  3769. "(__builtin_classify_type ((type) 0) == 8 || (__builtin_classify_type ((type) 0) == 9 && __builtin_classify_type (__real__ ((type) 0)) == 8))",
  3770. (char*)NULL };
  3771. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3772. *
  3773. * Description of Gnu_Types fix
  3774. */
  3775. tSCC zGnu_TypesName[] =
  3776. "gnu_types";
  3777. /*
  3778. * File name selection pattern
  3779. */
  3780. tSCC zGnu_TypesList[] =
  3781. "sys/types.h\0stdlib.h\0sys/stdtypes.h\0stddef.h\0memory.h\0unistd.h\0";
  3782. /*
  3783. * Machine/OS name selection pattern
  3784. */
  3785. tSCC* apzGnu_TypesMachs[] = {
  3786. "*-*-solaris2.1[0-9]*",
  3787. (const char*)NULL };
  3788. /*
  3789. * content selection pattern - do fix if pattern found
  3790. */
  3791. tSCC zGnu_TypesSelect0[] =
  3792. "^[ \t]*typedef[ \t]+.*[ \t](ptrdiff|size|wchar)_t;";
  3793. /*
  3794. * content bypass pattern - skip fix if pattern found
  3795. */
  3796. tSCC zGnu_TypesBypass0[] =
  3797. "_GCC_(PTRDIFF|SIZE|WCHAR)_T";
  3798. #define GNU_TYPES_TEST_CT 2
  3799. static tTestDesc aGnu_TypesTests[] = {
  3800. { TT_NEGREP, zGnu_TypesBypass0, (regex_t*)NULL },
  3801. { TT_EGREP, zGnu_TypesSelect0, (regex_t*)NULL }, };
  3802. /*
  3803. * Fix Command Arguments for Gnu_Types
  3804. */
  3805. static const char* apzGnu_TypesPatch[] = {
  3806. "gnu_type",
  3807. (char*)NULL };
  3808. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3809. *
  3810. * Description of Hp_Inline fix
  3811. */
  3812. tSCC zHp_InlineName[] =
  3813. "hp_inline";
  3814. /*
  3815. * File name selection pattern
  3816. */
  3817. tSCC zHp_InlineList[] =
  3818. "sys/spinlock.h\0machine/machparam.h\0";
  3819. /*
  3820. * Machine/OS name selection pattern
  3821. */
  3822. #define apzHp_InlineMachs (const char**)NULL
  3823. /*
  3824. * content selection pattern - do fix if pattern found
  3825. */
  3826. tSCC zHp_InlineSelect0[] =
  3827. "[ \t]*#[ \t]*include[ \t]+\"\\.\\./machine/";
  3828. #define HP_INLINE_TEST_CT 1
  3829. static tTestDesc aHp_InlineTests[] = {
  3830. { TT_EGREP, zHp_InlineSelect0, (regex_t*)NULL }, };
  3831. /*
  3832. * Fix Command Arguments for Hp_Inline
  3833. */
  3834. static const char* apzHp_InlinePatch[] = {
  3835. "format",
  3836. "%1<machine/%2.h>",
  3837. "([ \t]*#[ \t]*include[ \t]+)\"\\.\\./machine/([a-z]+)\\.h\"",
  3838. (char*)NULL };
  3839. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3840. *
  3841. * Description of Hp_Sysfile fix
  3842. */
  3843. tSCC zHp_SysfileName[] =
  3844. "hp_sysfile";
  3845. /*
  3846. * File name selection pattern
  3847. */
  3848. tSCC zHp_SysfileList[] =
  3849. "sys/file.h\0";
  3850. /*
  3851. * Machine/OS name selection pattern
  3852. */
  3853. #define apzHp_SysfileMachs (const char**)NULL
  3854. /*
  3855. * content selection pattern - do fix if pattern found
  3856. */
  3857. tSCC zHp_SysfileSelect0[] =
  3858. "HPUX_SOURCE";
  3859. #define HP_SYSFILE_TEST_CT 1
  3860. static tTestDesc aHp_SysfileTests[] = {
  3861. { TT_EGREP, zHp_SysfileSelect0, (regex_t*)NULL }, };
  3862. /*
  3863. * Fix Command Arguments for Hp_Sysfile
  3864. */
  3865. static const char* apzHp_SysfilePatch[] = {
  3866. "format",
  3867. "(struct file *, ...)",
  3868. "\\(\\.\\.\\.\\)",
  3869. (char*)NULL };
  3870. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3871. *
  3872. * Description of Hppa_Hpux_Fp_Macros fix
  3873. */
  3874. tSCC zHppa_Hpux_Fp_MacrosName[] =
  3875. "hppa_hpux_fp_macros";
  3876. /*
  3877. * File name selection pattern
  3878. */
  3879. tSCC zHppa_Hpux_Fp_MacrosList[] =
  3880. "math.h\0";
  3881. /*
  3882. * Machine/OS name selection pattern
  3883. */
  3884. tSCC* apzHppa_Hpux_Fp_MacrosMachs[] = {
  3885. "hppa*-hp-hpux11*",
  3886. (const char*)NULL };
  3887. /*
  3888. * content selection pattern - do fix if pattern found
  3889. */
  3890. tSCC zHppa_Hpux_Fp_MacrosSelect0[] =
  3891. "#[ \t]*define[ \t]*FP_NORMAL.*\n\
  3892. #[ \t]*define[ \t]*FP_ZERO.*\n\
  3893. #[ \t]*define[ \t]*FP_INFINITE.*\n\
  3894. #[ \t]*define[ \t]*FP_SUBNORMAL.*\n\
  3895. #[ \t]*define[ \t]*FP_NAN.*\n";
  3896. #define HPPA_HPUX_FP_MACROS_TEST_CT 1
  3897. static tTestDesc aHppa_Hpux_Fp_MacrosTests[] = {
  3898. { TT_EGREP, zHppa_Hpux_Fp_MacrosSelect0, (regex_t*)NULL }, };
  3899. /*
  3900. * Fix Command Arguments for Hppa_Hpux_Fp_Macros
  3901. */
  3902. static const char* apzHppa_Hpux_Fp_MacrosPatch[] = {
  3903. "format",
  3904. "#endif /* _INCLUDE_HPUX_SOURCE */\n\n\
  3905. #if defined(_INCLUDE_HPUX_SOURCE) || \\\n\
  3906. (defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L))\n\
  3907. %0#endif\n\n\
  3908. #ifdef _INCLUDE_HPUX_SOURCE\n",
  3909. (char*)NULL };
  3910. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3911. *
  3912. * Description of Hpux10_Cpp_Pow_Inline fix
  3913. */
  3914. tSCC zHpux10_Cpp_Pow_InlineName[] =
  3915. "hpux10_cpp_pow_inline";
  3916. /*
  3917. * File name selection pattern
  3918. */
  3919. tSCC zHpux10_Cpp_Pow_InlineList[] =
  3920. "fixinc-test-limits.h\0math.h\0";
  3921. /*
  3922. * Machine/OS name selection pattern
  3923. */
  3924. #define apzHpux10_Cpp_Pow_InlineMachs (const char**)NULL
  3925. /*
  3926. * content selection pattern - do fix if pattern found
  3927. */
  3928. tSCC zHpux10_Cpp_Pow_InlineSelect0[] =
  3929. "^# +ifdef +__cplusplus\n\
  3930. +\\}\n\
  3931. +inline +double +pow\\(double +__d,int +__expon\\) +\\{\n\
  3932. [ \t]+return +pow\\(__d,\\(double\\)__expon\\);\n\
  3933. +\\}\n\
  3934. +extern +\"C\" +\\{\n\
  3935. #else\n\
  3936. # +endif";
  3937. #define HPUX10_CPP_POW_INLINE_TEST_CT 1
  3938. static tTestDesc aHpux10_Cpp_Pow_InlineTests[] = {
  3939. { TT_EGREP, zHpux10_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
  3940. /*
  3941. * Fix Command Arguments for Hpux10_Cpp_Pow_Inline
  3942. */
  3943. static const char* apzHpux10_Cpp_Pow_InlinePatch[] = {
  3944. "format",
  3945. "",
  3946. (char*)NULL };
  3947. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3948. *
  3949. * Description of Hpux11_Cpp_Pow_Inline fix
  3950. */
  3951. tSCC zHpux11_Cpp_Pow_InlineName[] =
  3952. "hpux11_cpp_pow_inline";
  3953. /*
  3954. * File name selection pattern
  3955. */
  3956. tSCC zHpux11_Cpp_Pow_InlineList[] =
  3957. "math.h\0";
  3958. /*
  3959. * Machine/OS name selection pattern
  3960. */
  3961. #define apzHpux11_Cpp_Pow_InlineMachs (const char**)NULL
  3962. /*
  3963. * content selection pattern - do fix if pattern found
  3964. */
  3965. tSCC zHpux11_Cpp_Pow_InlineSelect0[] =
  3966. " +inline double pow\\(double d,int expon\\) \\{\n\
  3967. +return pow\\(d, \\(double\\)expon\\);\n\
  3968. +\\}\n";
  3969. #define HPUX11_CPP_POW_INLINE_TEST_CT 1
  3970. static tTestDesc aHpux11_Cpp_Pow_InlineTests[] = {
  3971. { TT_EGREP, zHpux11_Cpp_Pow_InlineSelect0, (regex_t*)NULL }, };
  3972. /*
  3973. * Fix Command Arguments for Hpux11_Cpp_Pow_Inline
  3974. */
  3975. static const char* apzHpux11_Cpp_Pow_InlinePatch[] = {
  3976. "format",
  3977. "",
  3978. (char*)NULL };
  3979. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  3980. *
  3981. * Description of Hpux_Math_Constexpr fix
  3982. */
  3983. tSCC zHpux_Math_ConstexprName[] =
  3984. "hpux_math_constexpr";
  3985. /*
  3986. * File name selection pattern
  3987. */
  3988. tSCC zHpux_Math_ConstexprList[] =
  3989. "math.h\0";
  3990. /*
  3991. * Machine/OS name selection pattern
  3992. */
  3993. tSCC* apzHpux_Math_ConstexprMachs[] = {
  3994. "*-hp-hpux11*",
  3995. (const char*)NULL };
  3996. #define HPUX_MATH_CONSTEXPR_TEST_CT 0
  3997. #define aHpux_Math_ConstexprTests (tTestDesc*)NULL
  3998. /*
  3999. * Fix Command Arguments for Hpux_Math_Constexpr
  4000. */
  4001. static const char* apzHpux_Math_ConstexprPatch[] = { sed_cmd_z,
  4002. "-e", "s@^[ \t]*extern[ \t]*const[ \t]*double[ \t]*_DINFINITY;[ \t]*$@# define _DINFINITY (__builtin_inf ())@",
  4003. "-e", "s@^[ \t]*extern[ \t]*const[ \t]*float[ \t]*_SINFINITY;[ \t]*$@# define _SINFINITY (__builtin_inff ())@",
  4004. "-e", "s@^[ \t]*extern[ \t]*const[ \t]*float[ \t]*_SQNAN;[ \t]*$@# define _SQNAN (__builtin_nanf (\\\"\\\"))@",
  4005. (char*)NULL };
  4006. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4007. *
  4008. * Description of Hpux10_Ctype_Declarations1 fix
  4009. */
  4010. tSCC zHpux10_Ctype_Declarations1Name[] =
  4011. "hpux10_ctype_declarations1";
  4012. /*
  4013. * File name selection pattern
  4014. */
  4015. tSCC zHpux10_Ctype_Declarations1List[] =
  4016. "ctype.h\0";
  4017. /*
  4018. * Machine/OS name selection pattern
  4019. */
  4020. #define apzHpux10_Ctype_Declarations1Machs (const char**)NULL
  4021. /*
  4022. * content selection pattern - do fix if pattern found
  4023. */
  4024. tSCC zHpux10_Ctype_Declarations1Select0[] =
  4025. "^#[ \t]*define _toupper\\(__c\\)[ \t]*__toupper\\(__c\\)";
  4026. /*
  4027. * content bypass pattern - skip fix if pattern found
  4028. */
  4029. tSCC zHpux10_Ctype_Declarations1Bypass0[] =
  4030. "^[ \t]*extern[ \t]*int[ \t]*__tolower[ \t]*\\(";
  4031. #define HPUX10_CTYPE_DECLARATIONS1_TEST_CT 2
  4032. static tTestDesc aHpux10_Ctype_Declarations1Tests[] = {
  4033. { TT_NEGREP, zHpux10_Ctype_Declarations1Bypass0, (regex_t*)NULL },
  4034. { TT_EGREP, zHpux10_Ctype_Declarations1Select0, (regex_t*)NULL }, };
  4035. /*
  4036. * Fix Command Arguments for Hpux10_Ctype_Declarations1
  4037. */
  4038. static const char* apzHpux10_Ctype_Declarations1Patch[] = {
  4039. "format",
  4040. "#ifdef _PROTOTYPES\n\
  4041. extern int __tolower(int);\n\
  4042. extern int __toupper(int);\n\
  4043. #else /* NOT _PROTOTYPES */\n\
  4044. extern int __tolower();\n\
  4045. extern int __toupper();\n\
  4046. #endif /* _PROTOTYPES */\n\n\
  4047. %0\n",
  4048. (char*)NULL };
  4049. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4050. *
  4051. * Description of Hpux10_Ctype_Declarations2 fix
  4052. */
  4053. tSCC zHpux10_Ctype_Declarations2Name[] =
  4054. "hpux10_ctype_declarations2";
  4055. /*
  4056. * File name selection pattern
  4057. */
  4058. tSCC zHpux10_Ctype_Declarations2List[] =
  4059. "ctype.h\0";
  4060. /*
  4061. * Machine/OS name selection pattern
  4062. */
  4063. #define apzHpux10_Ctype_Declarations2Machs (const char**)NULL
  4064. /*
  4065. * content selection pattern - do fix if pattern found
  4066. */
  4067. tSCC zHpux10_Ctype_Declarations2Select0[] =
  4068. "^# if defined\\(_SB_CTYPE_MACROS\\) && \\!defined\\(__lint\\)";
  4069. /*
  4070. * content bypass pattern - skip fix if pattern found
  4071. */
  4072. tSCC zHpux10_Ctype_Declarations2Bypass0[] =
  4073. "^[ \t]*extern[ \t]*int[ \t]*_isalnum[ \t]*\\(";
  4074. #define HPUX10_CTYPE_DECLARATIONS2_TEST_CT 2
  4075. static tTestDesc aHpux10_Ctype_Declarations2Tests[] = {
  4076. { TT_NEGREP, zHpux10_Ctype_Declarations2Bypass0, (regex_t*)NULL },
  4077. { TT_EGREP, zHpux10_Ctype_Declarations2Select0, (regex_t*)NULL }, };
  4078. /*
  4079. * Fix Command Arguments for Hpux10_Ctype_Declarations2
  4080. */
  4081. static const char* apzHpux10_Ctype_Declarations2Patch[] = {
  4082. "format",
  4083. "%0\n\n\
  4084. #ifdef _PROTOTYPES\n\
  4085. extern int _isalnum(int);\n\
  4086. extern int _isalpha(int);\n\
  4087. extern int _iscntrl(int);\n\
  4088. extern int _isdigit(int);\n\
  4089. extern int _isgraph(int);\n\
  4090. extern int _islower(int);\n\
  4091. extern int _isprint(int);\n\
  4092. extern int _ispunct(int);\n\
  4093. extern int _isspace(int);\n\
  4094. extern int _isupper(int);\n\
  4095. extern int _isxdigit(int);\n\
  4096. # else /* not _PROTOTYPES */\n\
  4097. extern int _isalnum();\n\
  4098. extern int _isalpha();\n\
  4099. extern int _iscntrl();\n\
  4100. extern int _isdigit();\n\
  4101. extern int _isgraph();\n\
  4102. extern int _islower();\n\
  4103. extern int _isprint();\n\
  4104. extern int _ispunct();\n\
  4105. extern int _isspace();\n\
  4106. extern int _isupper();\n\
  4107. extern int _isxdigit();\n\
  4108. #endif /* _PROTOTYPES */\n",
  4109. (char*)NULL };
  4110. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4111. *
  4112. * Description of Hpux10_Stdio_Declarations fix
  4113. */
  4114. tSCC zHpux10_Stdio_DeclarationsName[] =
  4115. "hpux10_stdio_declarations";
  4116. /*
  4117. * File name selection pattern
  4118. */
  4119. tSCC zHpux10_Stdio_DeclarationsList[] =
  4120. "stdio.h\0";
  4121. /*
  4122. * Machine/OS name selection pattern
  4123. */
  4124. #define apzHpux10_Stdio_DeclarationsMachs (const char**)NULL
  4125. /*
  4126. * content selection pattern - do fix if pattern found
  4127. */
  4128. tSCC zHpux10_Stdio_DeclarationsSelect0[] =
  4129. "^#[ \t]*define _iob[ \t]*__iob";
  4130. /*
  4131. * content bypass pattern - skip fix if pattern found
  4132. */
  4133. tSCC zHpux10_Stdio_DeclarationsBypass0[] =
  4134. "^[ \t]*extern[ \t]*int[ \t]*vsnprintf[ \t]*\\(";
  4135. #define HPUX10_STDIO_DECLARATIONS_TEST_CT 2
  4136. static tTestDesc aHpux10_Stdio_DeclarationsTests[] = {
  4137. { TT_NEGREP, zHpux10_Stdio_DeclarationsBypass0, (regex_t*)NULL },
  4138. { TT_EGREP, zHpux10_Stdio_DeclarationsSelect0, (regex_t*)NULL }, };
  4139. /*
  4140. * Fix Command Arguments for Hpux10_Stdio_Declarations
  4141. */
  4142. static const char* apzHpux10_Stdio_DeclarationsPatch[] = {
  4143. "format",
  4144. "%0\n\n\
  4145. # if defined(__STDC__) || defined(__cplusplus)\n\
  4146. extern int snprintf(char *, size_t, const char *, ...);\n\
  4147. extern int vsnprintf(char *, size_t, const char *, __va_list);\n\
  4148. # else /* not __STDC__) || __cplusplus */\n\
  4149. extern int snprintf();\n\
  4150. extern int vsnprintf();\n\
  4151. # endif /* __STDC__) || __cplusplus */\n",
  4152. (char*)NULL };
  4153. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4154. *
  4155. * Description of Hppa_Hpux11_Alloca fix
  4156. */
  4157. tSCC zHppa_Hpux11_AllocaName[] =
  4158. "hppa_hpux11_alloca";
  4159. /*
  4160. * File name selection pattern
  4161. */
  4162. tSCC zHppa_Hpux11_AllocaList[] =
  4163. "alloca.h\0";
  4164. /*
  4165. * Machine/OS name selection pattern
  4166. */
  4167. tSCC* apzHppa_Hpux11_AllocaMachs[] = {
  4168. "hppa*-*-hpux11*",
  4169. (const char*)NULL };
  4170. /*
  4171. * content selection pattern - do fix if pattern found
  4172. */
  4173. tSCC zHppa_Hpux11_AllocaSelect0[] =
  4174. "#ifndef _STDDEF_INCLUDED";
  4175. #define HPPA_HPUX11_ALLOCA_TEST_CT 1
  4176. static tTestDesc aHppa_Hpux11_AllocaTests[] = {
  4177. { TT_EGREP, zHppa_Hpux11_AllocaSelect0, (regex_t*)NULL }, };
  4178. /*
  4179. * Fix Command Arguments for Hppa_Hpux11_Alloca
  4180. */
  4181. static const char* apzHppa_Hpux11_AllocaPatch[] = {
  4182. "format",
  4183. "#ifndef _SYS_STDSYMS_INCLUDED\n\
  4184. # include <sys/stdsyms.h>\n\
  4185. #endif /* _SYS_STDSYMS_INCLUDED */\n\n\
  4186. %0",
  4187. (char*)NULL };
  4188. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4189. *
  4190. * Description of Hpux11_Abs fix
  4191. */
  4192. tSCC zHpux11_AbsName[] =
  4193. "hpux11_abs";
  4194. /*
  4195. * File name selection pattern
  4196. */
  4197. tSCC zHpux11_AbsList[] =
  4198. "stdlib.h\0";
  4199. /*
  4200. * Machine/OS name selection pattern
  4201. */
  4202. tSCC* apzHpux11_AbsMachs[] = {
  4203. "*-hp-hpux11*",
  4204. (const char*)NULL };
  4205. /*
  4206. * content selection pattern - do fix if pattern found
  4207. */
  4208. tSCC zHpux11_AbsSelect0[] =
  4209. "ifndef _MATH_INCLUDED";
  4210. #define HPUX11_ABS_TEST_CT 1
  4211. static tTestDesc aHpux11_AbsTests[] = {
  4212. { TT_EGREP, zHpux11_AbsSelect0, (regex_t*)NULL }, };
  4213. /*
  4214. * Fix Command Arguments for Hpux11_Abs
  4215. */
  4216. static const char* apzHpux11_AbsPatch[] = {
  4217. "format",
  4218. "if !defined(_MATH_INCLUDED) || defined(__GNUG__)",
  4219. (char*)NULL };
  4220. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4221. *
  4222. * Description of Hpux11_Lwp_Rwlock_Valid fix
  4223. */
  4224. tSCC zHpux11_Lwp_Rwlock_ValidName[] =
  4225. "hpux11_lwp_rwlock_valid";
  4226. /*
  4227. * File name selection pattern
  4228. */
  4229. tSCC zHpux11_Lwp_Rwlock_ValidList[] =
  4230. "sys/pthread.h\0";
  4231. /*
  4232. * Machine/OS name selection pattern
  4233. */
  4234. tSCC* apzHpux11_Lwp_Rwlock_ValidMachs[] = {
  4235. "*-hp-hpux11*",
  4236. (const char*)NULL };
  4237. /*
  4238. * content selection pattern - do fix if pattern found
  4239. */
  4240. tSCC zHpux11_Lwp_Rwlock_ValidSelect0[] =
  4241. "#define __LWP_RWLOCK_VALID[ \t]*0x8c91";
  4242. #define HPUX11_LWP_RWLOCK_VALID_TEST_CT 1
  4243. static tTestDesc aHpux11_Lwp_Rwlock_ValidTests[] = {
  4244. { TT_EGREP, zHpux11_Lwp_Rwlock_ValidSelect0, (regex_t*)NULL }, };
  4245. /*
  4246. * Fix Command Arguments for Hpux11_Lwp_Rwlock_Valid
  4247. */
  4248. static const char* apzHpux11_Lwp_Rwlock_ValidPatch[] = {
  4249. "format",
  4250. "#define __LWP_RWLOCK_VALID -29551",
  4251. (char*)NULL };
  4252. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4253. *
  4254. * Description of Hpux11_Extern_Sendfile fix
  4255. */
  4256. tSCC zHpux11_Extern_SendfileName[] =
  4257. "hpux11_extern_sendfile";
  4258. /*
  4259. * File name selection pattern
  4260. */
  4261. tSCC zHpux11_Extern_SendfileList[] =
  4262. "sys/socket.h\0";
  4263. /*
  4264. * Machine/OS name selection pattern
  4265. */
  4266. tSCC* apzHpux11_Extern_SendfileMachs[] = {
  4267. "*-hp-hpux11.[12]*",
  4268. (const char*)NULL };
  4269. /*
  4270. * content selection pattern - do fix if pattern found
  4271. */
  4272. tSCC zHpux11_Extern_SendfileSelect0[] =
  4273. "^[ \t]*extern sbsize_t sendfile.*\n\
  4274. .*, int\\)\\);\n";
  4275. #define HPUX11_EXTERN_SENDFILE_TEST_CT 1
  4276. static tTestDesc aHpux11_Extern_SendfileTests[] = {
  4277. { TT_EGREP, zHpux11_Extern_SendfileSelect0, (regex_t*)NULL }, };
  4278. /*
  4279. * Fix Command Arguments for Hpux11_Extern_Sendfile
  4280. */
  4281. static const char* apzHpux11_Extern_SendfilePatch[] = {
  4282. "format",
  4283. "#ifndef _APP32_64BIT_OFF_T\n\
  4284. %0#endif\n",
  4285. (char*)NULL };
  4286. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4287. *
  4288. * Description of Hpux11_Extern_Sendpath fix
  4289. */
  4290. tSCC zHpux11_Extern_SendpathName[] =
  4291. "hpux11_extern_sendpath";
  4292. /*
  4293. * File name selection pattern
  4294. */
  4295. tSCC zHpux11_Extern_SendpathList[] =
  4296. "sys/socket.h\0";
  4297. /*
  4298. * Machine/OS name selection pattern
  4299. */
  4300. tSCC* apzHpux11_Extern_SendpathMachs[] = {
  4301. "*-hp-hpux11.[12]*",
  4302. (const char*)NULL };
  4303. /*
  4304. * content selection pattern - do fix if pattern found
  4305. */
  4306. tSCC zHpux11_Extern_SendpathSelect0[] =
  4307. "^[ \t]*extern sbsize_t sendpath.*\n\
  4308. .*, int\\)\\);\n";
  4309. #define HPUX11_EXTERN_SENDPATH_TEST_CT 1
  4310. static tTestDesc aHpux11_Extern_SendpathTests[] = {
  4311. { TT_EGREP, zHpux11_Extern_SendpathSelect0, (regex_t*)NULL }, };
  4312. /*
  4313. * Fix Command Arguments for Hpux11_Extern_Sendpath
  4314. */
  4315. static const char* apzHpux11_Extern_SendpathPatch[] = {
  4316. "format",
  4317. "#ifndef _APP32_64BIT_OFF_T\n\
  4318. %0#endif\n",
  4319. (char*)NULL };
  4320. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4321. *
  4322. * Description of Hpux11_Fabsf fix
  4323. */
  4324. tSCC zHpux11_FabsfName[] =
  4325. "hpux11_fabsf";
  4326. /*
  4327. * File name selection pattern
  4328. */
  4329. tSCC zHpux11_FabsfList[] =
  4330. "math.h\0";
  4331. /*
  4332. * Machine/OS name selection pattern
  4333. */
  4334. tSCC* apzHpux11_FabsfMachs[] = {
  4335. "*-hp-hpux11*",
  4336. (const char*)NULL };
  4337. /*
  4338. * content selection pattern - do fix if pattern found
  4339. */
  4340. tSCC zHpux11_FabsfSelect0[] =
  4341. "^[ \t]*#[ \t]*define[ \t]+fabsf\\(.*";
  4342. #define HPUX11_FABSF_TEST_CT 1
  4343. static tTestDesc aHpux11_FabsfTests[] = {
  4344. { TT_EGREP, zHpux11_FabsfSelect0, (regex_t*)NULL }, };
  4345. /*
  4346. * Fix Command Arguments for Hpux11_Fabsf
  4347. */
  4348. static const char* apzHpux11_FabsfPatch[] = {
  4349. "format",
  4350. "#ifndef __cplusplus\n\
  4351. %0\n\
  4352. #endif",
  4353. (char*)NULL };
  4354. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4355. *
  4356. * Description of Hpux11_Pthread_Pointer fix
  4357. */
  4358. tSCC zHpux11_Pthread_PointerName[] =
  4359. "hpux11_pthread_pointer";
  4360. /*
  4361. * File name selection pattern
  4362. */
  4363. tSCC zHpux11_Pthread_PointerList[] =
  4364. "sys/pthread.h\0";
  4365. /*
  4366. * Machine/OS name selection pattern
  4367. */
  4368. tSCC* apzHpux11_Pthread_PointerMachs[] = {
  4369. "*-hp-hpux11.[0-3]*",
  4370. (const char*)NULL };
  4371. /*
  4372. * content selection pattern - do fix if pattern found
  4373. */
  4374. tSCC zHpux11_Pthread_PointerSelect0[] =
  4375. "(void[ \t]*\\*)(m|c|rw)(_ptr)";
  4376. #define HPUX11_PTHREAD_POINTER_TEST_CT 1
  4377. static tTestDesc aHpux11_Pthread_PointerTests[] = {
  4378. { TT_EGREP, zHpux11_Pthread_PointerSelect0, (regex_t*)NULL }, };
  4379. /*
  4380. * Fix Command Arguments for Hpux11_Pthread_Pointer
  4381. */
  4382. static const char* apzHpux11_Pthread_PointerPatch[] = {
  4383. "format",
  4384. "long\t%2%3",
  4385. (char*)NULL };
  4386. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4387. *
  4388. * Description of Hpux11_Pthread_Const fix
  4389. */
  4390. tSCC zHpux11_Pthread_ConstName[] =
  4391. "hpux11_pthread_const";
  4392. /*
  4393. * File name selection pattern
  4394. */
  4395. tSCC zHpux11_Pthread_ConstList[] =
  4396. "sys/pthread.h\0";
  4397. /*
  4398. * Machine/OS name selection pattern
  4399. */
  4400. tSCC* apzHpux11_Pthread_ConstMachs[] = {
  4401. "*-hp-hpux11.[0-3]*",
  4402. (const char*)NULL };
  4403. /*
  4404. * content selection pattern - do fix if pattern found
  4405. */
  4406. tSCC zHpux11_Pthread_ConstSelect0[] =
  4407. "^(#define[ \t]+__POINTER_SET[ \t0,]*)(.*\\))";
  4408. #define HPUX11_PTHREAD_CONST_TEST_CT 1
  4409. static tTestDesc aHpux11_Pthread_ConstTests[] = {
  4410. { TT_EGREP, zHpux11_Pthread_ConstSelect0, (regex_t*)NULL }, };
  4411. /*
  4412. * Fix Command Arguments for Hpux11_Pthread_Const
  4413. */
  4414. static const char* apzHpux11_Pthread_ConstPatch[] = {
  4415. "format",
  4416. "%11",
  4417. (char*)NULL };
  4418. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4419. *
  4420. * Description of Hpux11_Size_T fix
  4421. */
  4422. tSCC zHpux11_Size_TName[] =
  4423. "hpux11_size_t";
  4424. /*
  4425. * File name selection pattern
  4426. */
  4427. #define zHpux11_Size_TList (char*)NULL
  4428. /*
  4429. * Machine/OS name selection pattern
  4430. */
  4431. tSCC* apzHpux11_Size_TMachs[] = {
  4432. "*-hp-hpux11*",
  4433. (const char*)NULL };
  4434. /*
  4435. * content selection pattern - do fix if pattern found
  4436. */
  4437. tSCC zHpux11_Size_TSelect0[] =
  4438. "__size_t";
  4439. #define HPUX11_SIZE_T_TEST_CT 1
  4440. static tTestDesc aHpux11_Size_TTests[] = {
  4441. { TT_EGREP, zHpux11_Size_TSelect0, (regex_t*)NULL }, };
  4442. /*
  4443. * Fix Command Arguments for Hpux11_Size_T
  4444. */
  4445. static const char* apzHpux11_Size_TPatch[] = {
  4446. "format",
  4447. "_hpux_size_t",
  4448. (char*)NULL };
  4449. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4450. *
  4451. * Description of Hpux11_Snprintf fix
  4452. */
  4453. tSCC zHpux11_SnprintfName[] =
  4454. "hpux11_snprintf";
  4455. /*
  4456. * File name selection pattern
  4457. */
  4458. tSCC zHpux11_SnprintfList[] =
  4459. "stdio.h\0";
  4460. /*
  4461. * Machine/OS name selection pattern
  4462. */
  4463. #define apzHpux11_SnprintfMachs (const char**)NULL
  4464. /*
  4465. * content selection pattern - do fix if pattern found
  4466. */
  4467. tSCC zHpux11_SnprintfSelect0[] =
  4468. "(extern int snprintf *\\(char *\\*, *(|__|_hpux_)size_t,) *(char *\\*, *\\.\\.\\.\\);)";
  4469. #define HPUX11_SNPRINTF_TEST_CT 1
  4470. static tTestDesc aHpux11_SnprintfTests[] = {
  4471. { TT_EGREP, zHpux11_SnprintfSelect0, (regex_t*)NULL }, };
  4472. /*
  4473. * Fix Command Arguments for Hpux11_Snprintf
  4474. */
  4475. static const char* apzHpux11_SnprintfPatch[] = {
  4476. "format",
  4477. "%1 const %3",
  4478. (char*)NULL };
  4479. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4480. *
  4481. * Description of Hpux11_Vsnprintf fix
  4482. */
  4483. tSCC zHpux11_VsnprintfName[] =
  4484. "hpux11_vsnprintf";
  4485. /*
  4486. * File name selection pattern
  4487. */
  4488. tSCC zHpux11_VsnprintfList[] =
  4489. "stdio.h\0";
  4490. /*
  4491. * Machine/OS name selection pattern
  4492. */
  4493. #define apzHpux11_VsnprintfMachs (const char**)NULL
  4494. /*
  4495. * content selection pattern - do fix if pattern found
  4496. */
  4497. tSCC zHpux11_VsnprintfSelect0[] =
  4498. "(extern int vsnprintf\\(char \\*, _[hpux]*_size_t, const char \\*,) __va__list\\);";
  4499. #define HPUX11_VSNPRINTF_TEST_CT 1
  4500. static tTestDesc aHpux11_VsnprintfTests[] = {
  4501. { TT_EGREP, zHpux11_VsnprintfSelect0, (regex_t*)NULL }, };
  4502. /*
  4503. * Fix Command Arguments for Hpux11_Vsnprintf
  4504. */
  4505. static const char* apzHpux11_VsnprintfPatch[] = {
  4506. "format",
  4507. "%1 __va_list);",
  4508. (char*)NULL };
  4509. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4510. *
  4511. * Description of Hpux_Vsscanf fix
  4512. */
  4513. tSCC zHpux_VsscanfName[] =
  4514. "hpux_vsscanf";
  4515. /*
  4516. * File name selection pattern
  4517. */
  4518. tSCC zHpux_VsscanfList[] =
  4519. "stdio.h\0";
  4520. /*
  4521. * Machine/OS name selection pattern
  4522. */
  4523. tSCC* apzHpux_VsscanfMachs[] = {
  4524. "*-*-hpux*",
  4525. (const char*)NULL };
  4526. /*
  4527. * content selection pattern - do fix if pattern found
  4528. */
  4529. tSCC zHpux_VsscanfSelect0[] =
  4530. "(extern int vsscanf\\()char";
  4531. #define HPUX_VSSCANF_TEST_CT 1
  4532. static tTestDesc aHpux_VsscanfTests[] = {
  4533. { TT_EGREP, zHpux_VsscanfSelect0, (regex_t*)NULL }, };
  4534. /*
  4535. * Fix Command Arguments for Hpux_Vsscanf
  4536. */
  4537. static const char* apzHpux_VsscanfPatch[] = {
  4538. "format",
  4539. "%1const char",
  4540. (char*)NULL };
  4541. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4542. *
  4543. * Description of Hpux8_Bogus_Inlines fix
  4544. */
  4545. tSCC zHpux8_Bogus_InlinesName[] =
  4546. "hpux8_bogus_inlines";
  4547. /*
  4548. * File name selection pattern
  4549. */
  4550. tSCC zHpux8_Bogus_InlinesList[] =
  4551. "math.h\0";
  4552. /*
  4553. * Machine/OS name selection pattern
  4554. */
  4555. #define apzHpux8_Bogus_InlinesMachs (const char**)NULL
  4556. /*
  4557. * content selection pattern - do fix if pattern found
  4558. */
  4559. tSCC zHpux8_Bogus_InlinesSelect0[] =
  4560. "inline";
  4561. /*
  4562. * content bypass pattern - skip fix if pattern found
  4563. */
  4564. tSCC zHpux8_Bogus_InlinesBypass0[] =
  4565. "__GNUG__";
  4566. #define HPUX8_BOGUS_INLINES_TEST_CT 2
  4567. static tTestDesc aHpux8_Bogus_InlinesTests[] = {
  4568. { TT_NEGREP, zHpux8_Bogus_InlinesBypass0, (regex_t*)NULL },
  4569. { TT_EGREP, zHpux8_Bogus_InlinesSelect0, (regex_t*)NULL }, };
  4570. /*
  4571. * Fix Command Arguments for Hpux8_Bogus_Inlines
  4572. */
  4573. static const char* apzHpux8_Bogus_InlinesPatch[] = { sed_cmd_z,
  4574. "-e", "s@inline int abs(int [a-z][a-z]*) {.*}@extern \"C\" int abs(int);@",
  4575. "-e", "s@inline double abs(double [a-z][a-z]*) {.*}@@",
  4576. "-e", "s@inline int sqr(int [a-z][a-z]*) {.*}@@",
  4577. "-e", "s@inline double sqr(double [a-z][a-z]*) {.*}@@",
  4578. (char*)NULL };
  4579. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4580. *
  4581. * Description of Hpux_C99_Intptr fix
  4582. */
  4583. tSCC zHpux_C99_IntptrName[] =
  4584. "hpux_c99_intptr";
  4585. /*
  4586. * File name selection pattern
  4587. */
  4588. tSCC zHpux_C99_IntptrList[] =
  4589. "stdint-hpux11.h\0stdint.h\0";
  4590. /*
  4591. * Machine/OS name selection pattern
  4592. */
  4593. tSCC* apzHpux_C99_IntptrMachs[] = {
  4594. "*-hp-hpux11.3*",
  4595. (const char*)NULL };
  4596. #define HPUX_C99_INTPTR_TEST_CT 0
  4597. #define aHpux_C99_IntptrTests (tTestDesc*)NULL
  4598. /*
  4599. * Fix Command Arguments for Hpux_C99_Intptr
  4600. */
  4601. static const char* apzHpux_C99_IntptrPatch[] = { sed_cmd_z,
  4602. "-e", "s@^[ \t]*#[ \t]*define[ \t]*PTRDIFF_MAX[ \t]*INT32_MAX[ \t]*$@#define PTRDIFF_MAX (2147483647l)@",
  4603. "-e", "s@^[ \t]*#[ \t]*define[ \t]*PTRDIFF_MIN[ \t]*INT32_MIN[ \t]*$@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
  4604. "-e", "s@^[ \t]*#[ \t]*define[ \t]*INTPTR_MAX[ \t]*INT32_MAX[ \t]*$@#define INTPTR_MAX (2147483647l)@",
  4605. "-e", "s@^[ \t]*#[ \t]*define[ \t]*INTPTR_MIN[ \t]*INT32_MIN[ \t]*$@#define INTPTR_MIN (-INTPTR_MAX - 1)@",
  4606. "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINTPTR_MAX[ \t]*UINT32_MAX[ \t]*$@#define UINTPTR_MAX (4294967295ul)@",
  4607. "-e", "s@^[ \t]*#[ \t]*define[ \t]*SIZE_MAX[ \t]*UINT32_MAX[ \t]*$@#define SIZE_MAX (4294967295ul)@",
  4608. (char*)NULL };
  4609. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4610. *
  4611. * Description of Hpux_C99_Inttypes fix
  4612. */
  4613. tSCC zHpux_C99_InttypesName[] =
  4614. "hpux_c99_inttypes";
  4615. /*
  4616. * File name selection pattern
  4617. */
  4618. tSCC zHpux_C99_InttypesList[] =
  4619. "inttypes.h\0stdint-hpux11.h\0stdint.h\0";
  4620. /*
  4621. * Machine/OS name selection pattern
  4622. */
  4623. tSCC* apzHpux_C99_InttypesMachs[] = {
  4624. "*-hp-hpux11.[23]*",
  4625. (const char*)NULL };
  4626. #define HPUX_C99_INTTYPES_TEST_CT 0
  4627. #define aHpux_C99_InttypesTests (tTestDesc*)NULL
  4628. /*
  4629. * Fix Command Arguments for Hpux_C99_Inttypes
  4630. */
  4631. static const char* apzHpux_C99_InttypesPatch[] = { sed_cmd_z,
  4632. "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT8_C(__c)[ \t]*__CONCAT_U__(__c)[ \t]*$@#define UINT8_C(__c) (__c)@",
  4633. "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT16_C(__c)[ \t]*__CONCAT_U__(__c)[ \t]*$@#define UINT16_C(__c) (__c)@",
  4634. "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT32_C(__c)[ \t]*__CONCAT__(__c,l)[ \t]*$@#define INT32_C(__c) (__c)@",
  4635. "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT32_C(__c)[ \t].*$@#define UINT32_C(__c) __CONCAT__(__c,u)@",
  4636. (char*)NULL };
  4637. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4638. *
  4639. * Description of Hpux_C99_Inttypes2 fix
  4640. */
  4641. tSCC zHpux_C99_Inttypes2Name[] =
  4642. "hpux_c99_inttypes2";
  4643. /*
  4644. * File name selection pattern
  4645. */
  4646. tSCC zHpux_C99_Inttypes2List[] =
  4647. "stdint-hpux11.h\0stdint.h\0";
  4648. /*
  4649. * Machine/OS name selection pattern
  4650. */
  4651. tSCC* apzHpux_C99_Inttypes2Machs[] = {
  4652. "*-hp-hpux11.2*",
  4653. (const char*)NULL };
  4654. #define HPUX_C99_INTTYPES2_TEST_CT 0
  4655. #define aHpux_C99_Inttypes2Tests (tTestDesc*)NULL
  4656. /*
  4657. * Fix Command Arguments for Hpux_C99_Inttypes2
  4658. */
  4659. static const char* apzHpux_C99_Inttypes2Patch[] = { sed_cmd_z,
  4660. "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT8_C(__c)[ \t]*((signed char)(__c))[ \t]*$@#define INT8_C(__c) (__c)@",
  4661. "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT8_C(__c)[ \t]*((unsigned char)(__c))[ \t]*$@#define UINT8_C(__c) (__c)@",
  4662. "-e", "s@^[ \t]*#[ \t]*define[ \t]*INT16_C(__c)[ \t]*((short)(__c))[ \t]*$@#define INT16_C(__c) (__c)@",
  4663. "-e", "s@^[ \t]*#[ \t]*define[ \t]*UINT16_C(__c)[ \t]*((unsigned short)(__c))[ \t]*$@#define UINT16_C(__c) (__c)@",
  4664. (char*)NULL };
  4665. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4666. *
  4667. * Description of Hpux_C99_Inttypes3 fix
  4668. */
  4669. tSCC zHpux_C99_Inttypes3Name[] =
  4670. "hpux_c99_inttypes3";
  4671. /*
  4672. * File name selection pattern
  4673. */
  4674. tSCC zHpux_C99_Inttypes3List[] =
  4675. "inttypes.h\0";
  4676. /*
  4677. * Machine/OS name selection pattern
  4678. */
  4679. tSCC* apzHpux_C99_Inttypes3Machs[] = {
  4680. "hppa*-hp-hpux11*",
  4681. (const char*)NULL };
  4682. /*
  4683. * content selection pattern - do fix if pattern found
  4684. */
  4685. tSCC zHpux_C99_Inttypes3Select0[] =
  4686. "#define[ \t]INTPTR_MAX[ \t]*\n\
  4687. #define[ \t]UINTPTR_MAX[ \t]*\n";
  4688. #define HPUX_C99_INTTYPES3_TEST_CT 1
  4689. static tTestDesc aHpux_C99_Inttypes3Tests[] = {
  4690. { TT_EGREP, zHpux_C99_Inttypes3Select0, (regex_t*)NULL }, };
  4691. /*
  4692. * Fix Command Arguments for Hpux_C99_Inttypes3
  4693. */
  4694. static const char* apzHpux_C99_Inttypes3Patch[] = {
  4695. "format",
  4696. "#undef SIZE_MAX\n\
  4697. #define SIZE_MAX __SIZE_MAX__\n\
  4698. #ifdef __INTPTR_MAX__\n\
  4699. # undef INTPTR_MAX\n\
  4700. # define INTPTR_MAX __INTPTR_MAX__\n\
  4701. # undef INTPTR_MIN\n\
  4702. # define INTPTR_MIN (-INTPTR_MAX - 1)\n\
  4703. #endif\n\
  4704. #ifdef __UINTPTR_MAX__\n\
  4705. # undef UINTPTR_MAX\n\
  4706. # define UINTPTR_MAX __UINTPTR_MAX__\n\
  4707. #endif\n",
  4708. (char*)NULL };
  4709. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4710. *
  4711. * Description of Hpux_C99_Inttypes4 fix
  4712. */
  4713. tSCC zHpux_C99_Inttypes4Name[] =
  4714. "hpux_c99_inttypes4";
  4715. /*
  4716. * File name selection pattern
  4717. */
  4718. tSCC zHpux_C99_Inttypes4List[] =
  4719. "inttypes.h\0";
  4720. /*
  4721. * Machine/OS name selection pattern
  4722. */
  4723. tSCC* apzHpux_C99_Inttypes4Machs[] = {
  4724. "hppa*-hp-hpux11.[01]*",
  4725. (const char*)NULL };
  4726. #define HPUX_C99_INTTYPES4_TEST_CT 0
  4727. #define aHpux_C99_Inttypes4Tests (tTestDesc*)NULL
  4728. /*
  4729. * Fix Command Arguments for Hpux_C99_Inttypes4
  4730. */
  4731. static const char* apzHpux_C99_Inttypes4Patch[] = { sed_cmd_z,
  4732. "-e", "/^[ \t]*#[ \t]*define[ \t]*SCNxMAX[ \t]*SCNx64/a\\\n\
  4733. #define SCNuMAX \t SCNu64\n",
  4734. "-e", "/^[ \t]*#[ \t]*define[ \t]*SCNxMAX[ \t]*SCNx32/a\\\n\
  4735. #define SCNuMAX \t SCNu32\n",
  4736. (char*)NULL };
  4737. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4738. *
  4739. * Description of Hpux_C99_Inttypes5 fix
  4740. */
  4741. tSCC zHpux_C99_Inttypes5Name[] =
  4742. "hpux_c99_inttypes5";
  4743. /*
  4744. * File name selection pattern
  4745. */
  4746. tSCC zHpux_C99_Inttypes5List[] =
  4747. "inttypes.h\0";
  4748. /*
  4749. * Machine/OS name selection pattern
  4750. */
  4751. tSCC* apzHpux_C99_Inttypes5Machs[] = {
  4752. "hppa*-hp-hpux11.[01]*",
  4753. (const char*)NULL };
  4754. /*
  4755. * content selection pattern - do fix if pattern found
  4756. */
  4757. tSCC zHpux_C99_Inttypes5Select0[] =
  4758. "#ifndef[ \t]_KERNEL[ \t]*\n";
  4759. #define HPUX_C99_INTTYPES5_TEST_CT 1
  4760. static tTestDesc aHpux_C99_Inttypes5Tests[] = {
  4761. { TT_EGREP, zHpux_C99_Inttypes5Select0, (regex_t*)NULL }, };
  4762. /*
  4763. * Fix Command Arguments for Hpux_C99_Inttypes5
  4764. */
  4765. static const char* apzHpux_C99_Inttypes5Patch[] = {
  4766. "format",
  4767. "#ifndef __LP64__\n\
  4768. #define PRIdPTR\t\tPRId32\n\
  4769. #define PRIiPTR\t\tPRIi32\n\
  4770. #define PRIoPTR\t\tPRIo32\n\
  4771. #define PRIuPTR\t\tPRIu32\n\
  4772. #define PRIxPTR\t\tPRIx32\n\
  4773. #define PRIXPTR\t\tPRIX32\n\
  4774. #else\n\
  4775. #define PRIdPTR\t\tPRId64\n\
  4776. #define PRIiPTR\t\tPRIi64\n\
  4777. #define PRIoPTR\t\tPRIo64\n\
  4778. #define PRIuPTR\t\tPRIu64\n\
  4779. #define PRIxPTR\t\tPRIx64\n\
  4780. #define PRIXPTR\t\tPRIX64\n\
  4781. #endif\n\n\
  4782. #ifndef _KERNEL\n",
  4783. (char*)NULL };
  4784. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4785. *
  4786. * Description of Hpux_Ctype_Macros fix
  4787. */
  4788. tSCC zHpux_Ctype_MacrosName[] =
  4789. "hpux_ctype_macros";
  4790. /*
  4791. * File name selection pattern
  4792. */
  4793. tSCC zHpux_Ctype_MacrosList[] =
  4794. "ctype.h\0";
  4795. /*
  4796. * Machine/OS name selection pattern
  4797. */
  4798. #define apzHpux_Ctype_MacrosMachs (const char**)NULL
  4799. /*
  4800. * content selection pattern - do fix if pattern found
  4801. */
  4802. tSCC zHpux_Ctype_MacrosSelect0[] =
  4803. "((: |\\()__SB_masks \\? )(__SB_masks\\[__(alnum|c)\\] & _IS)";
  4804. #define HPUX_CTYPE_MACROS_TEST_CT 1
  4805. static tTestDesc aHpux_Ctype_MacrosTests[] = {
  4806. { TT_EGREP, zHpux_Ctype_MacrosSelect0, (regex_t*)NULL }, };
  4807. /*
  4808. * Fix Command Arguments for Hpux_Ctype_Macros
  4809. */
  4810. static const char* apzHpux_Ctype_MacrosPatch[] = {
  4811. "format",
  4812. "%1(int)%3",
  4813. (char*)NULL };
  4814. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4815. *
  4816. * Description of Hpux_Extern_Errno fix
  4817. */
  4818. tSCC zHpux_Extern_ErrnoName[] =
  4819. "hpux_extern_errno";
  4820. /*
  4821. * File name selection pattern
  4822. */
  4823. tSCC zHpux_Extern_ErrnoList[] =
  4824. "errno.h\0";
  4825. /*
  4826. * Machine/OS name selection pattern
  4827. */
  4828. tSCC* apzHpux_Extern_ErrnoMachs[] = {
  4829. "*-hp-hpux10.*",
  4830. "*-hp-hpux11.[0-2]*",
  4831. (const char*)NULL };
  4832. /*
  4833. * content selection pattern - do fix if pattern found
  4834. */
  4835. tSCC zHpux_Extern_ErrnoSelect0[] =
  4836. "^[ \t]*extern int errno;$";
  4837. #define HPUX_EXTERN_ERRNO_TEST_CT 1
  4838. static tTestDesc aHpux_Extern_ErrnoTests[] = {
  4839. { TT_EGREP, zHpux_Extern_ErrnoSelect0, (regex_t*)NULL }, };
  4840. /*
  4841. * Fix Command Arguments for Hpux_Extern_Errno
  4842. */
  4843. static const char* apzHpux_Extern_ErrnoPatch[] = {
  4844. "format",
  4845. "#ifdef __cplusplus\n\
  4846. extern \"C\" {\n\
  4847. #endif\n\
  4848. %0\n\
  4849. #ifdef __cplusplus\n\
  4850. }\n\
  4851. #endif",
  4852. (char*)NULL };
  4853. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4854. *
  4855. * Description of Hpux_Htonl fix
  4856. */
  4857. tSCC zHpux_HtonlName[] =
  4858. "hpux_htonl";
  4859. /*
  4860. * File name selection pattern
  4861. */
  4862. tSCC zHpux_HtonlList[] =
  4863. "netinet/in.h\0";
  4864. /*
  4865. * Machine/OS name selection pattern
  4866. */
  4867. #define apzHpux_HtonlMachs (const char**)NULL
  4868. /*
  4869. * content selection pattern - do fix if pattern found
  4870. */
  4871. tSCC zHpux_HtonlSelect0[] =
  4872. "#ifndef _XOPEN_SOURCE_EXTENDED[ \t]*\n\
  4873. (/\\*\n\
  4874. \\* Macros for number representation conversion\\.\n\
  4875. \\*/\n\
  4876. #ifndef ntohl)";
  4877. #define HPUX_HTONL_TEST_CT 1
  4878. static tTestDesc aHpux_HtonlTests[] = {
  4879. { TT_EGREP, zHpux_HtonlSelect0, (regex_t*)NULL }, };
  4880. /*
  4881. * Fix Command Arguments for Hpux_Htonl
  4882. */
  4883. static const char* apzHpux_HtonlPatch[] = {
  4884. "format",
  4885. "#if 1\n\
  4886. %1",
  4887. (char*)NULL };
  4888. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4889. *
  4890. * Description of Hpux_Imaginary_I fix
  4891. */
  4892. tSCC zHpux_Imaginary_IName[] =
  4893. "hpux_imaginary_i";
  4894. /*
  4895. * File name selection pattern
  4896. */
  4897. tSCC zHpux_Imaginary_IList[] =
  4898. "complex.h\0";
  4899. /*
  4900. * Machine/OS name selection pattern
  4901. */
  4902. tSCC* apzHpux_Imaginary_IMachs[] = {
  4903. "ia64-hp-hpux11.*",
  4904. (const char*)NULL };
  4905. /*
  4906. * content selection pattern - do fix if pattern found
  4907. */
  4908. tSCC zHpux_Imaginary_ISelect0[] =
  4909. "^[ \t]*#[ \t]*define[ \t]*_Complex_I.*";
  4910. #define HPUX_IMAGINARY_I_TEST_CT 1
  4911. static tTestDesc aHpux_Imaginary_ITests[] = {
  4912. { TT_EGREP, zHpux_Imaginary_ISelect0, (regex_t*)NULL }, };
  4913. /*
  4914. * Fix Command Arguments for Hpux_Imaginary_I
  4915. */
  4916. static const char* apzHpux_Imaginary_IPatch[] = {
  4917. "format",
  4918. "#define _Complex_I (__extension__ 1.0iF)",
  4919. (char*)NULL };
  4920. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4921. *
  4922. * Description of Hpux_Inttype_Int8_T fix
  4923. */
  4924. tSCC zHpux_Inttype_Int8_TName[] =
  4925. "hpux_inttype_int8_t";
  4926. /*
  4927. * File name selection pattern
  4928. */
  4929. tSCC zHpux_Inttype_Int8_TList[] =
  4930. "sys/_inttypes.h\0";
  4931. /*
  4932. * Machine/OS name selection pattern
  4933. */
  4934. tSCC* apzHpux_Inttype_Int8_TMachs[] = {
  4935. "*-hp-hpux1[01].*",
  4936. (const char*)NULL };
  4937. /*
  4938. * content selection pattern - do fix if pattern found
  4939. */
  4940. tSCC zHpux_Inttype_Int8_TSelect0[] =
  4941. "^[ \t]*typedef[ \t]*char[ \t]*int(_least){0,1}8_t.*";
  4942. #define HPUX_INTTYPE_INT8_T_TEST_CT 1
  4943. static tTestDesc aHpux_Inttype_Int8_TTests[] = {
  4944. { TT_EGREP, zHpux_Inttype_Int8_TSelect0, (regex_t*)NULL }, };
  4945. /*
  4946. * Fix Command Arguments for Hpux_Inttype_Int8_T
  4947. */
  4948. static const char* apzHpux_Inttype_Int8_TPatch[] = {
  4949. "format",
  4950. "typedef signed char int%18_t;",
  4951. (char*)NULL };
  4952. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4953. *
  4954. * Description of Hpux_Long_Double fix
  4955. */
  4956. tSCC zHpux_Long_DoubleName[] =
  4957. "hpux_long_double";
  4958. /*
  4959. * File name selection pattern
  4960. */
  4961. tSCC zHpux_Long_DoubleList[] =
  4962. "stdlib.h\0";
  4963. /*
  4964. * Machine/OS name selection pattern
  4965. */
  4966. tSCC* apzHpux_Long_DoubleMachs[] = {
  4967. "*-*-hpux10*",
  4968. "*-*-hpux11.[012]*",
  4969. (const char*)NULL };
  4970. /*
  4971. * content selection pattern - do fix if pattern found
  4972. */
  4973. tSCC zHpux_Long_DoubleSelect0[] =
  4974. "extern[ \t]long_double[ \t]strtold";
  4975. /*
  4976. * content bypass pattern - skip fix if pattern found
  4977. */
  4978. tSCC zHpux_Long_DoubleBypass0[] =
  4979. "long_double_t";
  4980. #define HPUX_LONG_DOUBLE_TEST_CT 2
  4981. static tTestDesc aHpux_Long_DoubleTests[] = {
  4982. { TT_NEGREP, zHpux_Long_DoubleBypass0, (regex_t*)NULL },
  4983. { TT_EGREP, zHpux_Long_DoubleSelect0, (regex_t*)NULL }, };
  4984. /*
  4985. * Fix Command Arguments for Hpux_Long_Double
  4986. */
  4987. static const char* apzHpux_Long_DoublePatch[] = { sed_cmd_z,
  4988. "-e", "/^#[ \t]*ifndef _LONG_DOUBLE/,/\\/\\* _LONG_DOUBLE \\*\\//D",
  4989. "-e", "s/long_double/long double/g",
  4990. (char*)NULL };
  4991. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  4992. *
  4993. * Description of Hpux_Long_Double_2 fix
  4994. */
  4995. tSCC zHpux_Long_Double_2Name[] =
  4996. "hpux_long_double_2";
  4997. /*
  4998. * File name selection pattern
  4999. */
  5000. tSCC zHpux_Long_Double_2List[] =
  5001. "stdlib.h\0";
  5002. /*
  5003. * Machine/OS name selection pattern
  5004. */
  5005. tSCC* apzHpux_Long_Double_2Machs[] = {
  5006. "hppa*-*-hpux11.3*",
  5007. (const char*)NULL };
  5008. /*
  5009. * content selection pattern - do fix if pattern found
  5010. */
  5011. tSCC zHpux_Long_Double_2Select0[] =
  5012. "#[ \t]*if[ \t]*!defined\\(__ia64\\) \\|\\| defined\\(_PROTOTYPES\\) \\|\\| defined\\(_LONG_DOUBLE_STRUCT\\)";
  5013. #define HPUX_LONG_DOUBLE_2_TEST_CT 1
  5014. static tTestDesc aHpux_Long_Double_2Tests[] = {
  5015. { TT_EGREP, zHpux_Long_Double_2Select0, (regex_t*)NULL }, };
  5016. /*
  5017. * Fix Command Arguments for Hpux_Long_Double_2
  5018. */
  5019. static const char* apzHpux_Long_Double_2Patch[] = {
  5020. "format",
  5021. "# if !defined(_PROTOTYPES) || defined(_LONG_DOUBLE_STRUCT)",
  5022. (char*)NULL };
  5023. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5024. *
  5025. * Description of Hpux_Pthread_Initializers fix
  5026. */
  5027. tSCC zHpux_Pthread_InitializersName[] =
  5028. "hpux_pthread_initializers";
  5029. /*
  5030. * File name selection pattern
  5031. */
  5032. tSCC zHpux_Pthread_InitializersList[] =
  5033. "sys/pthread.h\0";
  5034. /*
  5035. * Machine/OS name selection pattern
  5036. */
  5037. tSCC* apzHpux_Pthread_InitializersMachs[] = {
  5038. "*-hp-hpux11.[0-3]*",
  5039. (const char*)NULL };
  5040. #define HPUX_PTHREAD_INITIALIZERS_TEST_CT 0
  5041. #define aHpux_Pthread_InitializersTests (tTestDesc*)NULL
  5042. /*
  5043. * Fix Command Arguments for Hpux_Pthread_Initializers
  5044. */
  5045. static const char* apzHpux_Pthread_InitializersPatch[] = { sed_cmd_z,
  5046. "-e", "s@^[ \t]*1, 1, 1, 1,[ \t]*\\\\@\t{ 1, 1, 1, 1 },\t\t\t\t\t\t\t\\\\@",
  5047. "-e", "s@^[ \t]*1,[ \t]*\\\\@\t{ 1, 0 }@",
  5048. "-e", "/^[ \t]*0$/d",
  5049. "-e", "s@__PTHREAD_MUTEX_VALID, 0@{ __PTHREAD_MUTEX_VALID, 0 }@",
  5050. "-e", "s@^[ \t]*0, 0, -1, 0,[ \t]*\\\\@\t{ 0, 0, -1, 0 },\t\t\t\t\t\t\\\\@",
  5051. "-e", "s@0, __LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
  5052. "-e", "s@^[ \t]*__LWP_MTX_VALID, 0, 1, 1, 1, 1,[ \t]*\\\\@\t{ 0, __LWP_MTX_VALID }, { 0, 1, 1, 1, 1 },\t\t\t\\\\@",
  5053. "-e", "s@^[ \t]*0, 0[ \t]*\\\\@\t{ 0, 0 }\t\t\t\t\t\t\t\\\\@",
  5054. "-e", "s@__PTHREAD_COND_VALID, 0@{ __PTHREAD_COND_VALID, 0 }@",
  5055. "-e", "s@__LWP_COND_VALID, 0,[ \t]*\\\\@{ __LWP_COND_VALID, 0 },\t\t\t\t\t\\\\@",
  5056. "-e", "s@__PTHREAD_RWLOCK_VALID, 0@{ __PTHREAD_RWLOCK_VALID, 0 }@",
  5057. "-e", "s@__LWP_RWLOCK_VALID, 0,[ \t]*\\\\@{ __LWP_RWLOCK_VALID, 0 },\t\t\t\t\t\\\\@",
  5058. "-e", "s@^[ \t]*0, 0, 0, 0, 0, 0, 0[ \t]*\\\\@\t{ 0, 0, 0, 0, 0 }, { 0, 0}\t\t\t\t\t\\\\@",
  5059. (char*)NULL };
  5060. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5061. *
  5062. * Description of Hpux_Spu_Info fix
  5063. */
  5064. tSCC zHpux_Spu_InfoName[] =
  5065. "hpux_spu_info";
  5066. /*
  5067. * File name selection pattern
  5068. */
  5069. tSCC zHpux_Spu_InfoList[] =
  5070. "ia64/sys/getppdp.h\0*/sys/getppdp.h\0";
  5071. /*
  5072. * Machine/OS name selection pattern
  5073. */
  5074. tSCC* apzHpux_Spu_InfoMachs[] = {
  5075. "*-hp-hpux*",
  5076. (const char*)NULL };
  5077. /*
  5078. * content selection pattern - do fix if pattern found
  5079. */
  5080. tSCC zHpux_Spu_InfoSelect0[] =
  5081. "^.*extern.*spu_info.*";
  5082. #define HPUX_SPU_INFO_TEST_CT 1
  5083. static tTestDesc aHpux_Spu_InfoTests[] = {
  5084. { TT_EGREP, zHpux_Spu_InfoSelect0, (regex_t*)NULL }, };
  5085. /*
  5086. * Fix Command Arguments for Hpux_Spu_Info
  5087. */
  5088. static const char* apzHpux_Spu_InfoPatch[] = {
  5089. "format",
  5090. "#ifdef _KERNEL\n\
  5091. %0\n\
  5092. #endif",
  5093. (char*)NULL };
  5094. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5095. *
  5096. * Description of Hpux_Stdint_Least_Fast fix
  5097. */
  5098. tSCC zHpux_Stdint_Least_FastName[] =
  5099. "hpux_stdint_least_fast";
  5100. /*
  5101. * File name selection pattern
  5102. */
  5103. tSCC zHpux_Stdint_Least_FastList[] =
  5104. "stdint-hpux11.h\0stdint.h\0";
  5105. /*
  5106. * Machine/OS name selection pattern
  5107. */
  5108. tSCC* apzHpux_Stdint_Least_FastMachs[] = {
  5109. "*-hp-hpux11.2*",
  5110. (const char*)NULL };
  5111. /*
  5112. * content selection pattern - do fix if pattern found
  5113. */
  5114. tSCC zHpux_Stdint_Least_FastSelect0[] =
  5115. "^[ \t]*#[ \t]*define[ \t]+UINT_(LEAST|FAST)64_MAX[ \t]+ULLONG_MAX";
  5116. #define HPUX_STDINT_LEAST_FAST_TEST_CT 1
  5117. static tTestDesc aHpux_Stdint_Least_FastTests[] = {
  5118. { TT_EGREP, zHpux_Stdint_Least_FastSelect0, (regex_t*)NULL }, };
  5119. /*
  5120. * Fix Command Arguments for Hpux_Stdint_Least_Fast
  5121. */
  5122. static const char* apzHpux_Stdint_Least_FastPatch[] = {
  5123. "format",
  5124. "# define\tUINT_%164_MAX\t__UINT64_MAX__",
  5125. (char*)NULL };
  5126. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5127. *
  5128. * Description of Hpux_Longjmp fix
  5129. */
  5130. tSCC zHpux_LongjmpName[] =
  5131. "hpux_longjmp";
  5132. /*
  5133. * File name selection pattern
  5134. */
  5135. tSCC zHpux_LongjmpList[] =
  5136. "setjmp.h\0";
  5137. /*
  5138. * Machine/OS name selection pattern
  5139. */
  5140. tSCC* apzHpux_LongjmpMachs[] = {
  5141. "*-hp-hpux*",
  5142. (const char*)NULL };
  5143. /*
  5144. * content selection pattern - do fix if pattern found
  5145. */
  5146. tSCC zHpux_LongjmpSelect0[] =
  5147. "^[ \t]*extern[ \t]+void[ \t]+.*longjmp[ \t]*(__\\(\\(.*int\\)\\)|\\(.*int\\)|\\(\\))";
  5148. #define HPUX_LONGJMP_TEST_CT 1
  5149. static tTestDesc aHpux_LongjmpTests[] = {
  5150. { TT_EGREP, zHpux_LongjmpSelect0, (regex_t*)NULL }, };
  5151. /*
  5152. * Fix Command Arguments for Hpux_Longjmp
  5153. */
  5154. static const char* apzHpux_LongjmpPatch[] = {
  5155. "format",
  5156. "%0 __attribute__ ((__noreturn__))",
  5157. (char*)NULL };
  5158. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5159. *
  5160. * Description of Hpux_Systime fix
  5161. */
  5162. tSCC zHpux_SystimeName[] =
  5163. "hpux_systime";
  5164. /*
  5165. * File name selection pattern
  5166. */
  5167. tSCC zHpux_SystimeList[] =
  5168. "sys/time.h\0";
  5169. /*
  5170. * Machine/OS name selection pattern
  5171. */
  5172. #define apzHpux_SystimeMachs (const char**)NULL
  5173. /*
  5174. * content selection pattern - do fix if pattern found
  5175. */
  5176. tSCC zHpux_SystimeSelect0[] =
  5177. "^extern struct sigevent;";
  5178. #define HPUX_SYSTIME_TEST_CT 1
  5179. static tTestDesc aHpux_SystimeTests[] = {
  5180. { TT_EGREP, zHpux_SystimeSelect0, (regex_t*)NULL }, };
  5181. /*
  5182. * Fix Command Arguments for Hpux_Systime
  5183. */
  5184. static const char* apzHpux_SystimePatch[] = {
  5185. "format",
  5186. "struct sigevent;",
  5187. (char*)NULL };
  5188. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5189. *
  5190. * Description of Huge_Val_Hex fix
  5191. */
  5192. tSCC zHuge_Val_HexName[] =
  5193. "huge_val_hex";
  5194. /*
  5195. * File name selection pattern
  5196. */
  5197. tSCC zHuge_Val_HexList[] =
  5198. "bits/huge_val.h\0*/bits/huge_val.h\0";
  5199. /*
  5200. * Machine/OS name selection pattern
  5201. */
  5202. #define apzHuge_Val_HexMachs (const char**)NULL
  5203. /*
  5204. * content selection pattern - do fix if pattern found
  5205. */
  5206. tSCC zHuge_Val_HexSelect0[] =
  5207. "^#[ \t]*define[ \t]*HUGE_VAL[ \t].*0x1\\.0p.*";
  5208. /*
  5209. * content bypass pattern - skip fix if pattern found
  5210. */
  5211. tSCC zHuge_Val_HexBypass0[] =
  5212. "__builtin_huge_val";
  5213. #define HUGE_VAL_HEX_TEST_CT 2
  5214. static tTestDesc aHuge_Val_HexTests[] = {
  5215. { TT_NEGREP, zHuge_Val_HexBypass0, (regex_t*)NULL },
  5216. { TT_EGREP, zHuge_Val_HexSelect0, (regex_t*)NULL }, };
  5217. /*
  5218. * Fix Command Arguments for Huge_Val_Hex
  5219. */
  5220. static const char* apzHuge_Val_HexPatch[] = {
  5221. "format",
  5222. "#define HUGE_VAL (__builtin_huge_val())\n",
  5223. (char*)NULL };
  5224. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5225. *
  5226. * Description of Huge_Valf_Hex fix
  5227. */
  5228. tSCC zHuge_Valf_HexName[] =
  5229. "huge_valf_hex";
  5230. /*
  5231. * File name selection pattern
  5232. */
  5233. tSCC zHuge_Valf_HexList[] =
  5234. "bits/huge_val.h\0*/bits/huge_val.h\0";
  5235. /*
  5236. * Machine/OS name selection pattern
  5237. */
  5238. #define apzHuge_Valf_HexMachs (const char**)NULL
  5239. /*
  5240. * content selection pattern - do fix if pattern found
  5241. */
  5242. tSCC zHuge_Valf_HexSelect0[] =
  5243. "^#[ \t]*define[ \t]*HUGE_VALF[ \t].*0x1\\.0p.*";
  5244. /*
  5245. * content bypass pattern - skip fix if pattern found
  5246. */
  5247. tSCC zHuge_Valf_HexBypass0[] =
  5248. "__builtin_huge_valf";
  5249. #define HUGE_VALF_HEX_TEST_CT 2
  5250. static tTestDesc aHuge_Valf_HexTests[] = {
  5251. { TT_NEGREP, zHuge_Valf_HexBypass0, (regex_t*)NULL },
  5252. { TT_EGREP, zHuge_Valf_HexSelect0, (regex_t*)NULL }, };
  5253. /*
  5254. * Fix Command Arguments for Huge_Valf_Hex
  5255. */
  5256. static const char* apzHuge_Valf_HexPatch[] = {
  5257. "format",
  5258. "#define HUGE_VALF (__builtin_huge_valf())\n",
  5259. (char*)NULL };
  5260. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5261. *
  5262. * Description of Huge_Vall_Hex fix
  5263. */
  5264. tSCC zHuge_Vall_HexName[] =
  5265. "huge_vall_hex";
  5266. /*
  5267. * File name selection pattern
  5268. */
  5269. tSCC zHuge_Vall_HexList[] =
  5270. "bits/huge_val.h\0*/bits/huge_val.h\0";
  5271. /*
  5272. * Machine/OS name selection pattern
  5273. */
  5274. #define apzHuge_Vall_HexMachs (const char**)NULL
  5275. /*
  5276. * content selection pattern - do fix if pattern found
  5277. */
  5278. tSCC zHuge_Vall_HexSelect0[] =
  5279. "^#[ \t]*define[ \t]*HUGE_VALL[ \t].*0x1\\.0p.*";
  5280. /*
  5281. * content bypass pattern - skip fix if pattern found
  5282. */
  5283. tSCC zHuge_Vall_HexBypass0[] =
  5284. "__builtin_huge_vall";
  5285. #define HUGE_VALL_HEX_TEST_CT 2
  5286. static tTestDesc aHuge_Vall_HexTests[] = {
  5287. { TT_NEGREP, zHuge_Vall_HexBypass0, (regex_t*)NULL },
  5288. { TT_EGREP, zHuge_Vall_HexSelect0, (regex_t*)NULL }, };
  5289. /*
  5290. * Fix Command Arguments for Huge_Vall_Hex
  5291. */
  5292. static const char* apzHuge_Vall_HexPatch[] = {
  5293. "format",
  5294. "#define HUGE_VALL (__builtin_huge_vall())\n",
  5295. (char*)NULL };
  5296. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5297. *
  5298. * Description of Int_Abort_Free_And_Exit fix
  5299. */
  5300. tSCC zInt_Abort_Free_And_ExitName[] =
  5301. "int_abort_free_and_exit";
  5302. /*
  5303. * File name selection pattern
  5304. */
  5305. tSCC zInt_Abort_Free_And_ExitList[] =
  5306. "stdlib.h\0";
  5307. /*
  5308. * Machine/OS name selection pattern
  5309. */
  5310. #define apzInt_Abort_Free_And_ExitMachs (const char**)NULL
  5311. /*
  5312. * content selection pattern - do fix if pattern found
  5313. */
  5314. tSCC zInt_Abort_Free_And_ExitSelect0[] =
  5315. "int[ \t]+(abort|free|exit)[ \t]*\\(";
  5316. /*
  5317. * content bypass pattern - skip fix if pattern found
  5318. */
  5319. tSCC zInt_Abort_Free_And_ExitBypass0[] =
  5320. "_CLASSIC_ANSI_TYPES";
  5321. #define INT_ABORT_FREE_AND_EXIT_TEST_CT 2
  5322. static tTestDesc aInt_Abort_Free_And_ExitTests[] = {
  5323. { TT_NEGREP, zInt_Abort_Free_And_ExitBypass0, (regex_t*)NULL },
  5324. { TT_EGREP, zInt_Abort_Free_And_ExitSelect0, (regex_t*)NULL }, };
  5325. /*
  5326. * Fix Command Arguments for Int_Abort_Free_And_Exit
  5327. */
  5328. static const char* apzInt_Abort_Free_And_ExitPatch[] = {
  5329. "format",
  5330. "void\t%1(",
  5331. (char*)NULL };
  5332. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5333. *
  5334. * Description of Io_Quotes_Def fix
  5335. */
  5336. tSCC zIo_Quotes_DefName[] =
  5337. "io_quotes_def";
  5338. /*
  5339. * File name selection pattern
  5340. */
  5341. #define zIo_Quotes_DefList (char*)NULL
  5342. /*
  5343. * Machine/OS name selection pattern
  5344. */
  5345. #define apzIo_Quotes_DefMachs (const char**)NULL
  5346. /*
  5347. * content selection pattern - do fix if pattern found
  5348. */
  5349. tSCC zIo_Quotes_DefSelect0[] =
  5350. "define[ \t]+[A-Z0-9_]+IO[A-Z]*\\([a-zA-Z][,)]";
  5351. #define IO_QUOTES_DEF_TEST_CT 1
  5352. static tTestDesc aIo_Quotes_DefTests[] = {
  5353. { TT_EGREP, zIo_Quotes_DefSelect0, (regex_t*)NULL }, };
  5354. /*
  5355. * Fix Command Arguments for Io_Quotes_Def
  5356. */
  5357. static const char* apzIo_Quotes_DefPatch[] = {
  5358. "char_macro_def",
  5359. "IO",
  5360. (char*)NULL };
  5361. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5362. *
  5363. * Description of Io_Quotes_Use fix
  5364. */
  5365. tSCC zIo_Quotes_UseName[] =
  5366. "io_quotes_use";
  5367. /*
  5368. * File name selection pattern
  5369. */
  5370. #define zIo_Quotes_UseList (char*)NULL
  5371. /*
  5372. * Machine/OS name selection pattern
  5373. */
  5374. #define apzIo_Quotes_UseMachs (const char**)NULL
  5375. /*
  5376. * content selection pattern - do fix if pattern found
  5377. */
  5378. tSCC zIo_Quotes_UseSelect0[] =
  5379. "define[ \t]+[A-Z0-9_]+[ \t]+[A-Z0-9_]+IO[A-Z]*[ \t]*\\( *[^,']";
  5380. #define IO_QUOTES_USE_TEST_CT 1
  5381. static tTestDesc aIo_Quotes_UseTests[] = {
  5382. { TT_EGREP, zIo_Quotes_UseSelect0, (regex_t*)NULL }, };
  5383. /*
  5384. * Fix Command Arguments for Io_Quotes_Use
  5385. */
  5386. static const char* apzIo_Quotes_UsePatch[] = {
  5387. "char_macro_use",
  5388. "IO",
  5389. (char*)NULL };
  5390. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5391. *
  5392. * Description of Ip_Missing_Semi fix
  5393. */
  5394. tSCC zIp_Missing_SemiName[] =
  5395. "ip_missing_semi";
  5396. /*
  5397. * File name selection pattern
  5398. */
  5399. tSCC zIp_Missing_SemiList[] =
  5400. "netinet/ip.h\0";
  5401. /*
  5402. * Machine/OS name selection pattern
  5403. */
  5404. #define apzIp_Missing_SemiMachs (const char**)NULL
  5405. /*
  5406. * content selection pattern - do fix if pattern found
  5407. */
  5408. tSCC zIp_Missing_SemiSelect0[] =
  5409. "}$";
  5410. #define IP_MISSING_SEMI_TEST_CT 1
  5411. static tTestDesc aIp_Missing_SemiTests[] = {
  5412. { TT_EGREP, zIp_Missing_SemiSelect0, (regex_t*)NULL }, };
  5413. /*
  5414. * Fix Command Arguments for Ip_Missing_Semi
  5415. */
  5416. static const char* apzIp_Missing_SemiPatch[] = { sed_cmd_z,
  5417. "-e", "/^struct/,/^};/s/}$/};/",
  5418. (char*)NULL };
  5419. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5420. *
  5421. * Description of Irix_Limits_Const fix
  5422. */
  5423. tSCC zIrix_Limits_ConstName[] =
  5424. "irix_limits_const";
  5425. /*
  5426. * File name selection pattern
  5427. */
  5428. tSCC zIrix_Limits_ConstList[] =
  5429. "fixinc-test-limits.h\0limits.h\0";
  5430. /*
  5431. * Machine/OS name selection pattern
  5432. */
  5433. #define apzIrix_Limits_ConstMachs (const char**)NULL
  5434. /*
  5435. * content selection pattern - do fix if pattern found
  5436. */
  5437. tSCC zIrix_Limits_ConstSelect0[] =
  5438. "^extern const ";
  5439. #define IRIX_LIMITS_CONST_TEST_CT 1
  5440. static tTestDesc aIrix_Limits_ConstTests[] = {
  5441. { TT_EGREP, zIrix_Limits_ConstSelect0, (regex_t*)NULL }, };
  5442. /*
  5443. * Fix Command Arguments for Irix_Limits_Const
  5444. */
  5445. static const char* apzIrix_Limits_ConstPatch[] = {
  5446. "format",
  5447. "extern __const ",
  5448. (char*)NULL };
  5449. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5450. *
  5451. * Description of Irix_Stdio_Va_List fix
  5452. */
  5453. tSCC zIrix_Stdio_Va_ListName[] =
  5454. "irix_stdio_va_list";
  5455. /*
  5456. * File name selection pattern
  5457. */
  5458. tSCC zIrix_Stdio_Va_ListList[] =
  5459. "stdio.h\0";
  5460. /*
  5461. * Machine/OS name selection pattern
  5462. */
  5463. #define apzIrix_Stdio_Va_ListMachs (const char**)NULL
  5464. /*
  5465. * content selection pattern - do fix if pattern found
  5466. */
  5467. tSCC zIrix_Stdio_Va_ListSelect0[] =
  5468. "/\\* va_list \\*/ char \\*";
  5469. #define IRIX_STDIO_VA_LIST_TEST_CT 1
  5470. static tTestDesc aIrix_Stdio_Va_ListTests[] = {
  5471. { TT_EGREP, zIrix_Stdio_Va_ListSelect0, (regex_t*)NULL }, };
  5472. /*
  5473. * Fix Command Arguments for Irix_Stdio_Va_List
  5474. */
  5475. static const char* apzIrix_Stdio_Va_ListPatch[] = {
  5476. "format",
  5477. "__gnuc_va_list",
  5478. (char*)NULL };
  5479. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5480. *
  5481. * Description of Kandr_Concat fix
  5482. */
  5483. tSCC zKandr_ConcatName[] =
  5484. "kandr_concat";
  5485. /*
  5486. * File name selection pattern
  5487. */
  5488. tSCC zKandr_ConcatList[] =
  5489. "sparc/asm_linkage.h\0sun*/asm_linkage.h\0arm/as_support.h\0arm/mc_type.h\0arm/xcb.h\0dev/chardefmac.h\0dev/ps_irq.h\0dev/screen.h\0dev/scsi.h\0sys/tty.h\0Xm.acorn/XmP.h\0bsd43/bsd43_.h\0";
  5490. /*
  5491. * Machine/OS name selection pattern
  5492. */
  5493. #define apzKandr_ConcatMachs (const char**)NULL
  5494. /*
  5495. * content selection pattern - do fix if pattern found
  5496. */
  5497. tSCC zKandr_ConcatSelect0[] =
  5498. "/\\*\\*/";
  5499. #define KANDR_CONCAT_TEST_CT 1
  5500. static tTestDesc aKandr_ConcatTests[] = {
  5501. { TT_EGREP, zKandr_ConcatSelect0, (regex_t*)NULL }, };
  5502. /*
  5503. * Fix Command Arguments for Kandr_Concat
  5504. */
  5505. static const char* apzKandr_ConcatPatch[] = {
  5506. "format",
  5507. "##",
  5508. (char*)NULL };
  5509. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5510. *
  5511. * Description of Linux_Ia64_Ucontext fix
  5512. */
  5513. tSCC zLinux_Ia64_UcontextName[] =
  5514. "linux_ia64_ucontext";
  5515. /*
  5516. * File name selection pattern
  5517. */
  5518. tSCC zLinux_Ia64_UcontextList[] =
  5519. "sys/ucontext.h\0";
  5520. /*
  5521. * Machine/OS name selection pattern
  5522. */
  5523. tSCC* apzLinux_Ia64_UcontextMachs[] = {
  5524. "ia64-*-linux*",
  5525. (const char*)NULL };
  5526. /*
  5527. * content selection pattern - do fix if pattern found
  5528. */
  5529. tSCC zLinux_Ia64_UcontextSelect0[] =
  5530. "\\(\\(\\(char \\*\\) &\\(\\(struct sigcontext \\*\\) 0\\)->sc_gr\\[0\\]\\) - \\(char \\*\\) 0\\)";
  5531. #define LINUX_IA64_UCONTEXT_TEST_CT 1
  5532. static tTestDesc aLinux_Ia64_UcontextTests[] = {
  5533. { TT_EGREP, zLinux_Ia64_UcontextSelect0, (regex_t*)NULL }, };
  5534. /*
  5535. * Fix Command Arguments for Linux_Ia64_Ucontext
  5536. */
  5537. static const char* apzLinux_Ia64_UcontextPatch[] = {
  5538. "format",
  5539. "__builtin_offsetof (struct sigcontext, sc_gr[0])",
  5540. (char*)NULL };
  5541. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5542. *
  5543. * Description of Lynxos_No_Warning_In_Sys_Time_H fix
  5544. */
  5545. tSCC zLynxos_No_Warning_In_Sys_Time_HName[] =
  5546. "lynxos_no_warning_in_sys_time_h";
  5547. /*
  5548. * File name selection pattern
  5549. */
  5550. tSCC zLynxos_No_Warning_In_Sys_Time_HList[] =
  5551. "sys/time.h\0";
  5552. /*
  5553. * Machine/OS name selection pattern
  5554. */
  5555. #define apzLynxos_No_Warning_In_Sys_Time_HMachs (const char**)NULL
  5556. /*
  5557. * content selection pattern - do fix if pattern found
  5558. */
  5559. tSCC zLynxos_No_Warning_In_Sys_Time_HSelect0[] =
  5560. "#warning[ \t]+Using <time.h> instead of <sys/time.h>";
  5561. #define LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT 1
  5562. static tTestDesc aLynxos_No_Warning_In_Sys_Time_HTests[] = {
  5563. { TT_EGREP, zLynxos_No_Warning_In_Sys_Time_HSelect0, (regex_t*)NULL }, };
  5564. /*
  5565. * Fix Command Arguments for Lynxos_No_Warning_In_Sys_Time_H
  5566. */
  5567. static const char* apzLynxos_No_Warning_In_Sys_Time_HPatch[] = {
  5568. "format",
  5569. "",
  5570. (char*)NULL };
  5571. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5572. *
  5573. * Description of Lynxos_Missing_Putenv fix
  5574. */
  5575. tSCC zLynxos_Missing_PutenvName[] =
  5576. "lynxos_missing_putenv";
  5577. /*
  5578. * File name selection pattern
  5579. */
  5580. tSCC zLynxos_Missing_PutenvList[] =
  5581. "stdlib.h\0";
  5582. /*
  5583. * Machine/OS name selection pattern
  5584. */
  5585. tSCC* apzLynxos_Missing_PutenvMachs[] = {
  5586. "*-*-lynxos*",
  5587. (const char*)NULL };
  5588. /*
  5589. * content selection pattern - do fix if pattern found
  5590. */
  5591. tSCC zLynxos_Missing_PutenvSelect0[] =
  5592. "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);";
  5593. /*
  5594. * content bypass pattern - skip fix if pattern found
  5595. */
  5596. tSCC zLynxos_Missing_PutenvBypass0[] =
  5597. "putenv[ \\t]*\\(";
  5598. #define LYNXOS_MISSING_PUTENV_TEST_CT 2
  5599. static tTestDesc aLynxos_Missing_PutenvTests[] = {
  5600. { TT_NEGREP, zLynxos_Missing_PutenvBypass0, (regex_t*)NULL },
  5601. { TT_EGREP, zLynxos_Missing_PutenvSelect0, (regex_t*)NULL }, };
  5602. /*
  5603. * Fix Command Arguments for Lynxos_Missing_Putenv
  5604. */
  5605. static const char* apzLynxos_Missing_PutenvPatch[] = {
  5606. "format",
  5607. "%0\n\
  5608. extern int putenv\t\t\t\t_AP((char *));",
  5609. "extern char \\*getenv[ \t]*_AP\\(\\(const char \\*\\)\\);",
  5610. (char*)NULL };
  5611. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5612. *
  5613. * Description of Machine_Ansi_H_Va_List fix
  5614. */
  5615. tSCC zMachine_Ansi_H_Va_ListName[] =
  5616. "machine_ansi_h_va_list";
  5617. /*
  5618. * File name selection pattern
  5619. */
  5620. #define zMachine_Ansi_H_Va_ListList (char*)NULL
  5621. /*
  5622. * Machine/OS name selection pattern
  5623. */
  5624. #define apzMachine_Ansi_H_Va_ListMachs (const char**)NULL
  5625. /*
  5626. * content selection pattern - do fix if pattern found
  5627. */
  5628. tSCC zMachine_Ansi_H_Va_ListSelect0[] =
  5629. "define[ \t]+_BSD_VA_LIST_[ \t]";
  5630. /*
  5631. * content bypass pattern - skip fix if pattern found
  5632. */
  5633. tSCC zMachine_Ansi_H_Va_ListBypass0[] =
  5634. "__builtin_va_list";
  5635. #define MACHINE_ANSI_H_VA_LIST_TEST_CT 2
  5636. static tTestDesc aMachine_Ansi_H_Va_ListTests[] = {
  5637. { TT_NEGREP, zMachine_Ansi_H_Va_ListBypass0, (regex_t*)NULL },
  5638. { TT_EGREP, zMachine_Ansi_H_Va_ListSelect0, (regex_t*)NULL }, };
  5639. /*
  5640. * Fix Command Arguments for Machine_Ansi_H_Va_List
  5641. */
  5642. static const char* apzMachine_Ansi_H_Va_ListPatch[] = {
  5643. "format",
  5644. "%1__builtin_va_list",
  5645. "(define[ \t]+_BSD_VA_LIST_[ \t]+).*",
  5646. (char*)NULL };
  5647. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5648. *
  5649. * Description of Machine_Name fix
  5650. */
  5651. tSCC zMachine_NameName[] =
  5652. "machine_name";
  5653. /*
  5654. * File name selection pattern
  5655. */
  5656. #define zMachine_NameList (char*)NULL
  5657. /*
  5658. * Machine/OS name selection pattern
  5659. */
  5660. #define apzMachine_NameMachs (const char**)NULL
  5661. /*
  5662. * perform the C function call test
  5663. */
  5664. tSCC zMachine_NameFTst0[] = "machine_name";
  5665. #define MACHINE_NAME_TEST_CT 1
  5666. static tTestDesc aMachine_NameTests[] = {
  5667. { TT_FUNCTION, zMachine_NameFTst0, 0 /* unused */ }, };
  5668. /*
  5669. * Fix Command Arguments for Machine_Name
  5670. */
  5671. static const char* apzMachine_NamePatch[] = {
  5672. "machine_name",
  5673. (char*)NULL };
  5674. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5675. *
  5676. * Description of Math_Exception fix
  5677. */
  5678. tSCC zMath_ExceptionName[] =
  5679. "math_exception";
  5680. /*
  5681. * File name selection pattern
  5682. */
  5683. tSCC zMath_ExceptionList[] =
  5684. "math.h\0";
  5685. /*
  5686. * Machine/OS name selection pattern
  5687. */
  5688. tSCC* apzMath_ExceptionMachs[] = {
  5689. "*-*-solaris2.1[0-9]*",
  5690. (const char*)NULL };
  5691. /*
  5692. * content selection pattern - do fix if pattern found
  5693. */
  5694. tSCC zMath_ExceptionSelect0[] =
  5695. "struct exception";
  5696. /*
  5697. * content bypass pattern - skip fix if pattern found
  5698. */
  5699. tSCC zMath_ExceptionBypass0[] =
  5700. "We have a problem when using C\\+\\+|for C\\+\\+, _[a-z0-9A-Z_]+_exception; for C, exception";
  5701. #define MATH_EXCEPTION_TEST_CT 2
  5702. static tTestDesc aMath_ExceptionTests[] = {
  5703. { TT_NEGREP, zMath_ExceptionBypass0, (regex_t*)NULL },
  5704. { TT_EGREP, zMath_ExceptionSelect0, (regex_t*)NULL }, };
  5705. /*
  5706. * Fix Command Arguments for Math_Exception
  5707. */
  5708. static const char* apzMath_ExceptionPatch[] = {
  5709. "wrap",
  5710. "#ifdef __cplusplus\n\
  5711. #define exception __math_exception\n\
  5712. #endif\n",
  5713. "#ifdef __cplusplus\n\
  5714. #undef exception\n\
  5715. #endif\n",
  5716. (char*)NULL };
  5717. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5718. *
  5719. * Description of Math_Huge_Val_From_Dbl_Max fix
  5720. */
  5721. tSCC zMath_Huge_Val_From_Dbl_MaxName[] =
  5722. "math_huge_val_from_dbl_max";
  5723. /*
  5724. * File name selection pattern
  5725. */
  5726. tSCC zMath_Huge_Val_From_Dbl_MaxList[] =
  5727. "math.h\0";
  5728. /*
  5729. * Machine/OS name selection pattern
  5730. */
  5731. #define apzMath_Huge_Val_From_Dbl_MaxMachs (const char**)NULL
  5732. /*
  5733. * content selection pattern - do fix if pattern found
  5734. */
  5735. tSCC zMath_Huge_Val_From_Dbl_MaxSelect0[] =
  5736. "define[ \t]+HUGE_VAL[ \t]+DBL_MAX";
  5737. /*
  5738. * content bypass pattern - skip fix if pattern found
  5739. */
  5740. tSCC zMath_Huge_Val_From_Dbl_MaxBypass0[] =
  5741. "define[ \t]+DBL_MAX";
  5742. #define MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT 2
  5743. static tTestDesc aMath_Huge_Val_From_Dbl_MaxTests[] = {
  5744. { TT_NEGREP, zMath_Huge_Val_From_Dbl_MaxBypass0, (regex_t*)NULL },
  5745. { TT_EGREP, zMath_Huge_Val_From_Dbl_MaxSelect0, (regex_t*)NULL }, };
  5746. /*
  5747. * Fix Command Arguments for Math_Huge_Val_From_Dbl_Max
  5748. */
  5749. static const char* apzMath_Huge_Val_From_Dbl_MaxPatch[] = { "sh", "-c",
  5750. "\tdbl_max_def=`egrep 'define[ \t]+DBL_MAX[ \t]+.*' float.h | sed 's/.*DBL_MAX[ \t]*//' 2>/dev/null`\n\n\
  5751. \tif ( test -n \"${dbl_max_def}\" ) > /dev/null 2>&1\n\
  5752. \tthen sed -e '/define[ \t]*HUGE_VAL[ \t]*DBL_MAX/s@DBL_MAX@'\"$dbl_max_def@\"\n\
  5753. \telse cat\n\
  5754. \tfi",
  5755. (char*)NULL };
  5756. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5757. *
  5758. * Description of Nested_Auth_Des fix
  5759. */
  5760. tSCC zNested_Auth_DesName[] =
  5761. "nested_auth_des";
  5762. /*
  5763. * File name selection pattern
  5764. */
  5765. tSCC zNested_Auth_DesList[] =
  5766. "rpc/rpc.h\0";
  5767. /*
  5768. * Machine/OS name selection pattern
  5769. */
  5770. #define apzNested_Auth_DesMachs (const char**)NULL
  5771. /*
  5772. * content selection pattern - do fix if pattern found
  5773. */
  5774. tSCC zNested_Auth_DesSelect0[] =
  5775. "(/\\*.*rpc/auth_des\\.h>.*)/\\*";
  5776. #define NESTED_AUTH_DES_TEST_CT 1
  5777. static tTestDesc aNested_Auth_DesTests[] = {
  5778. { TT_EGREP, zNested_Auth_DesSelect0, (regex_t*)NULL }, };
  5779. /*
  5780. * Fix Command Arguments for Nested_Auth_Des
  5781. */
  5782. static const char* apzNested_Auth_DesPatch[] = {
  5783. "format",
  5784. "%1*/ /*",
  5785. (char*)NULL };
  5786. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5787. *
  5788. * Description of Netbsd_C99_Inline_1 fix
  5789. */
  5790. tSCC zNetbsd_C99_Inline_1Name[] =
  5791. "netbsd_c99_inline_1";
  5792. /*
  5793. * File name selection pattern
  5794. */
  5795. tSCC zNetbsd_C99_Inline_1List[] =
  5796. "signal.h\0";
  5797. /*
  5798. * Machine/OS name selection pattern
  5799. */
  5800. tSCC* apzNetbsd_C99_Inline_1Machs[] = {
  5801. "*-*-netbsd*",
  5802. (const char*)NULL };
  5803. /*
  5804. * content selection pattern - do fix if pattern found
  5805. */
  5806. tSCC zNetbsd_C99_Inline_1Select0[] =
  5807. "extern __inline int";
  5808. #define NETBSD_C99_INLINE_1_TEST_CT 1
  5809. static tTestDesc aNetbsd_C99_Inline_1Tests[] = {
  5810. { TT_EGREP, zNetbsd_C99_Inline_1Select0, (regex_t*)NULL }, };
  5811. /*
  5812. * Fix Command Arguments for Netbsd_C99_Inline_1
  5813. */
  5814. static const char* apzNetbsd_C99_Inline_1Patch[] = {
  5815. "format",
  5816. "extern\n\
  5817. #ifdef __GNUC_STDC_INLINE__\n\
  5818. __attribute__((__gnu_inline__))\n\
  5819. #endif\n\
  5820. __inline int",
  5821. (char*)NULL };
  5822. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5823. *
  5824. * Description of Netbsd_C99_Inline_2 fix
  5825. */
  5826. tSCC zNetbsd_C99_Inline_2Name[] =
  5827. "netbsd_c99_inline_2";
  5828. /*
  5829. * File name selection pattern
  5830. */
  5831. tSCC zNetbsd_C99_Inline_2List[] =
  5832. "signal.h\0";
  5833. /*
  5834. * Machine/OS name selection pattern
  5835. */
  5836. tSCC* apzNetbsd_C99_Inline_2Machs[] = {
  5837. "*-*-netbsd*",
  5838. (const char*)NULL };
  5839. /*
  5840. * content selection pattern - do fix if pattern found
  5841. */
  5842. tSCC zNetbsd_C99_Inline_2Select0[] =
  5843. "#define _SIGINLINE extern __inline";
  5844. #define NETBSD_C99_INLINE_2_TEST_CT 1
  5845. static tTestDesc aNetbsd_C99_Inline_2Tests[] = {
  5846. { TT_EGREP, zNetbsd_C99_Inline_2Select0, (regex_t*)NULL }, };
  5847. /*
  5848. * Fix Command Arguments for Netbsd_C99_Inline_2
  5849. */
  5850. static const char* apzNetbsd_C99_Inline_2Patch[] = {
  5851. "format",
  5852. "#ifdef __GNUC_STDC_INLINE__\n\
  5853. #define _SIGINLINE extern __attribute__((__gnu_inline__)) __inline\n\
  5854. #else\n\
  5855. %0\n\
  5856. #endif",
  5857. (char*)NULL };
  5858. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5859. *
  5860. * Description of Netbsd_Extra_Semicolon fix
  5861. */
  5862. tSCC zNetbsd_Extra_SemicolonName[] =
  5863. "netbsd_extra_semicolon";
  5864. /*
  5865. * File name selection pattern
  5866. */
  5867. tSCC zNetbsd_Extra_SemicolonList[] =
  5868. "sys/cdefs.h\0";
  5869. /*
  5870. * Machine/OS name selection pattern
  5871. */
  5872. tSCC* apzNetbsd_Extra_SemicolonMachs[] = {
  5873. "*-*-netbsd*",
  5874. (const char*)NULL };
  5875. /*
  5876. * content selection pattern - do fix if pattern found
  5877. */
  5878. tSCC zNetbsd_Extra_SemicolonSelect0[] =
  5879. "#define[ \t]*__END_DECLS[ \t]*};";
  5880. #define NETBSD_EXTRA_SEMICOLON_TEST_CT 1
  5881. static tTestDesc aNetbsd_Extra_SemicolonTests[] = {
  5882. { TT_EGREP, zNetbsd_Extra_SemicolonSelect0, (regex_t*)NULL }, };
  5883. /*
  5884. * Fix Command Arguments for Netbsd_Extra_Semicolon
  5885. */
  5886. static const char* apzNetbsd_Extra_SemicolonPatch[] = {
  5887. "format",
  5888. "#define __END_DECLS }",
  5889. (char*)NULL };
  5890. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5891. *
  5892. * Description of Newlib_Stdint_1 fix
  5893. */
  5894. tSCC zNewlib_Stdint_1Name[] =
  5895. "newlib_stdint_1";
  5896. /*
  5897. * File name selection pattern
  5898. */
  5899. tSCC zNewlib_Stdint_1List[] =
  5900. "stdint-newlib.h\0stdint.h\0";
  5901. /*
  5902. * Machine/OS name selection pattern
  5903. */
  5904. #define apzNewlib_Stdint_1Machs (const char**)NULL
  5905. /*
  5906. * content selection pattern - do fix if pattern found
  5907. */
  5908. tSCC zNewlib_Stdint_1Select0[] =
  5909. "@todo - Add support for wint_t types";
  5910. #define NEWLIB_STDINT_1_TEST_CT 1
  5911. static tTestDesc aNewlib_Stdint_1Tests[] = {
  5912. { TT_EGREP, zNewlib_Stdint_1Select0, (regex_t*)NULL }, };
  5913. /*
  5914. * Fix Command Arguments for Newlib_Stdint_1
  5915. */
  5916. static const char* apzNewlib_Stdint_1Patch[] = { sed_cmd_z,
  5917. "-e", "s@#define INT32_MIN.*@#define INT32_MIN (-INT32_MAX - 1)@",
  5918. "-e", "s@#define INT32_MAX.*@#define INT32_MAX __INT32_MAX__@",
  5919. "-e", "s@#define UINT32_MAX.*@#define UINT32_MAX __UINT32_MAX__@",
  5920. "-e", "s@#define INT_LEAST32_MIN.*@#define INT_LEAST32_MIN (-INT_LEAST32_MAX - 1)@",
  5921. "-e", "s@#define INT_LEAST32_MAX.*@#define INT_LEAST32_MAX __INT_LEAST32_MAX__@",
  5922. "-e", "s@#define UINT_LEAST32_MAX.*@#define UINT_LEAST32_MAX __UINT_LEAST32_MAX__@",
  5923. "-e", "s@#define INT_FAST\\([0-9]*\\)_MIN.*@#define INT_FAST\\1_MIN (-INT_FAST\\1_MAX - 1)@",
  5924. "-e", "s@#define INT_FAST\\([0-9]*\\)_MAX.*@#define INT_FAST\\1_MAX __INT_FAST\\1_MAX__@",
  5925. "-e", "s@#define UINT_FAST\\([0-9]*\\)_MAX.*@#define UINT_FAST\\1_MAX __UINT_FAST\\1_MAX__@",
  5926. "-e", "s@#define SIZE_MAX.*@#define SIZE_MAX __SIZE_MAX__@",
  5927. "-e", "s@#define PTRDIFF_MIN.*@#define PTRDIFF_MIN (-PTRDIFF_MAX - 1)@",
  5928. "-e", "s@#define PTRDIFF_MAX.*@#define PTRDIFF_MAX __PTRDIFF_MAX__@",
  5929. "-e", "s@#define UINT8_C.*@#define UINT8_C(c) __UINT8_C(c)@",
  5930. "-e", "s@#define UINT16_C.*@#define UINT16_C(c) __UINT16_C(c)@",
  5931. (char*)NULL };
  5932. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5933. *
  5934. * Description of Newlib_Stdint_2 fix
  5935. */
  5936. tSCC zNewlib_Stdint_2Name[] =
  5937. "newlib_stdint_2";
  5938. /*
  5939. * File name selection pattern
  5940. */
  5941. tSCC zNewlib_Stdint_2List[] =
  5942. "stdint-newlib.h\0stdint.h\0";
  5943. /*
  5944. * Machine/OS name selection pattern
  5945. */
  5946. #define apzNewlib_Stdint_2Machs (const char**)NULL
  5947. /*
  5948. * content selection pattern - do fix if pattern found
  5949. */
  5950. tSCC zNewlib_Stdint_2Select0[] =
  5951. "@todo - Add support for wint_t types";
  5952. #define NEWLIB_STDINT_2_TEST_CT 1
  5953. static tTestDesc aNewlib_Stdint_2Tests[] = {
  5954. { TT_EGREP, zNewlib_Stdint_2Select0, (regex_t*)NULL }, };
  5955. /*
  5956. * Fix Command Arguments for Newlib_Stdint_2
  5957. */
  5958. static const char* apzNewlib_Stdint_2Patch[] = {
  5959. "format",
  5960. "#define INTMAX_MAX __INTMAX_MAX__\n\
  5961. #define INTMAX_MIN (-INTMAX_MAX - 1)\n\
  5962. #define UINTMAX_MAX __UINTMAX_MAX__\n\
  5963. #define WCHAR_MAX __WCHAR_MAX__\n\
  5964. #define WCHAR_MIN __WCHAR_MIN__\n\
  5965. #define WINT_MAX __WINT_MAX__\n\
  5966. #define WINT_MIN __WINT_MIN__\n\n\
  5967. %0",
  5968. "/\\*\\* Macros for minimum-width integer constant expressions \\*/",
  5969. (char*)NULL };
  5970. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  5971. *
  5972. * Description of Next_Math_Prefix fix
  5973. */
  5974. tSCC zNext_Math_PrefixName[] =
  5975. "next_math_prefix";
  5976. /*
  5977. * File name selection pattern
  5978. */
  5979. tSCC zNext_Math_PrefixList[] =
  5980. "ansi/math.h\0";
  5981. /*
  5982. * Machine/OS name selection pattern
  5983. */
  5984. #define apzNext_Math_PrefixMachs (const char**)NULL
  5985. /*
  5986. * content selection pattern - do fix if pattern found
  5987. */
  5988. tSCC zNext_Math_PrefixSelect0[] =
  5989. "^extern[ \t]+double[ \t]+__const__[ \t]";
  5990. #define NEXT_MATH_PREFIX_TEST_CT 1
  5991. static tTestDesc aNext_Math_PrefixTests[] = {
  5992. { TT_EGREP, zNext_Math_PrefixSelect0, (regex_t*)NULL }, };
  5993. /*
  5994. * Fix Command Arguments for Next_Math_Prefix
  5995. */
  5996. static const char* apzNext_Math_PrefixPatch[] = {
  5997. "format",
  5998. "extern double %1(",
  5999. "^extern[ \t]+double[ \t]+__const__[ \t]+([a-z]+)\\(",
  6000. (char*)NULL };
  6001. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6002. *
  6003. * Description of Next_Template fix
  6004. */
  6005. tSCC zNext_TemplateName[] =
  6006. "next_template";
  6007. /*
  6008. * File name selection pattern
  6009. */
  6010. tSCC zNext_TemplateList[] =
  6011. "bsd/libc.h\0";
  6012. /*
  6013. * Machine/OS name selection pattern
  6014. */
  6015. #define apzNext_TemplateMachs (const char**)NULL
  6016. /*
  6017. * content selection pattern - do fix if pattern found
  6018. */
  6019. tSCC zNext_TemplateSelect0[] =
  6020. "[ \t]template\\)";
  6021. #define NEXT_TEMPLATE_TEST_CT 1
  6022. static tTestDesc aNext_TemplateTests[] = {
  6023. { TT_EGREP, zNext_TemplateSelect0, (regex_t*)NULL }, };
  6024. /*
  6025. * Fix Command Arguments for Next_Template
  6026. */
  6027. static const char* apzNext_TemplatePatch[] = {
  6028. "format",
  6029. "(%1)",
  6030. "\\(([^)]*)[ \t]template\\)",
  6031. (char*)NULL };
  6032. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6033. *
  6034. * Description of Next_Volitile fix
  6035. */
  6036. tSCC zNext_VolitileName[] =
  6037. "next_volitile";
  6038. /*
  6039. * File name selection pattern
  6040. */
  6041. tSCC zNext_VolitileList[] =
  6042. "ansi/stdlib.h\0";
  6043. /*
  6044. * Machine/OS name selection pattern
  6045. */
  6046. #define apzNext_VolitileMachs (const char**)NULL
  6047. /*
  6048. * content selection pattern - do fix if pattern found
  6049. */
  6050. tSCC zNext_VolitileSelect0[] =
  6051. "^extern[ \t]+volatile[ \t]+void[ \t]";
  6052. #define NEXT_VOLITILE_TEST_CT 1
  6053. static tTestDesc aNext_VolitileTests[] = {
  6054. { TT_EGREP, zNext_VolitileSelect0, (regex_t*)NULL }, };
  6055. /*
  6056. * Fix Command Arguments for Next_Volitile
  6057. */
  6058. static const char* apzNext_VolitilePatch[] = {
  6059. "format",
  6060. "extern void %1(",
  6061. "^extern[ \t]+volatile[ \t]+void[ \t]+(exit|abort)\\(",
  6062. (char*)NULL };
  6063. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6064. *
  6065. * Description of Next_Wait_Union fix
  6066. */
  6067. tSCC zNext_Wait_UnionName[] =
  6068. "next_wait_union";
  6069. /*
  6070. * File name selection pattern
  6071. */
  6072. tSCC zNext_Wait_UnionList[] =
  6073. "sys/wait.h\0";
  6074. /*
  6075. * Machine/OS name selection pattern
  6076. */
  6077. #define apzNext_Wait_UnionMachs (const char**)NULL
  6078. /*
  6079. * content selection pattern - do fix if pattern found
  6080. */
  6081. tSCC zNext_Wait_UnionSelect0[] =
  6082. "wait\\(union wait";
  6083. #define NEXT_WAIT_UNION_TEST_CT 1
  6084. static tTestDesc aNext_Wait_UnionTests[] = {
  6085. { TT_EGREP, zNext_Wait_UnionSelect0, (regex_t*)NULL }, };
  6086. /*
  6087. * Fix Command Arguments for Next_Wait_Union
  6088. */
  6089. static const char* apzNext_Wait_UnionPatch[] = {
  6090. "format",
  6091. "wait(void",
  6092. (char*)NULL };
  6093. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6094. *
  6095. * Description of Nodeent_Syntax fix
  6096. */
  6097. tSCC zNodeent_SyntaxName[] =
  6098. "nodeent_syntax";
  6099. /*
  6100. * File name selection pattern
  6101. */
  6102. tSCC zNodeent_SyntaxList[] =
  6103. "netdnet/dnetdb.h\0";
  6104. /*
  6105. * Machine/OS name selection pattern
  6106. */
  6107. #define apzNodeent_SyntaxMachs (const char**)NULL
  6108. /*
  6109. * content selection pattern - do fix if pattern found
  6110. */
  6111. tSCC zNodeent_SyntaxSelect0[] =
  6112. "char[ \t]*\\*na_addr[ \t]*$";
  6113. #define NODEENT_SYNTAX_TEST_CT 1
  6114. static tTestDesc aNodeent_SyntaxTests[] = {
  6115. { TT_EGREP, zNodeent_SyntaxSelect0, (regex_t*)NULL }, };
  6116. /*
  6117. * Fix Command Arguments for Nodeent_Syntax
  6118. */
  6119. static const char* apzNodeent_SyntaxPatch[] = {
  6120. "format",
  6121. "%0;",
  6122. (char*)NULL };
  6123. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6124. *
  6125. * Description of Openbsd_Null_Definition fix
  6126. */
  6127. tSCC zOpenbsd_Null_DefinitionName[] =
  6128. "openbsd_null_definition";
  6129. /*
  6130. * File name selection pattern
  6131. */
  6132. tSCC zOpenbsd_Null_DefinitionList[] =
  6133. "locale.h\0stddef.h\0stdio.h\0string.h\0time.h\0unistd.h\0wchar.h\0sys/param.h\0";
  6134. /*
  6135. * Machine/OS name selection pattern
  6136. */
  6137. tSCC* apzOpenbsd_Null_DefinitionMachs[] = {
  6138. "*-*-openbsd*",
  6139. (const char*)NULL };
  6140. /*
  6141. * content selection pattern - do fix if pattern found
  6142. */
  6143. tSCC zOpenbsd_Null_DefinitionSelect0[] =
  6144. "__GNUG__";
  6145. #define OPENBSD_NULL_DEFINITION_TEST_CT 1
  6146. static tTestDesc aOpenbsd_Null_DefinitionTests[] = {
  6147. { TT_EGREP, zOpenbsd_Null_DefinitionSelect0, (regex_t*)NULL }, };
  6148. /*
  6149. * Fix Command Arguments for Openbsd_Null_Definition
  6150. */
  6151. static const char* apzOpenbsd_Null_DefinitionPatch[] = {
  6152. "format",
  6153. "#ifndef NULL\n\
  6154. #ifdef __cplusplus\n\
  6155. #ifdef __GNUG__\n\
  6156. #define NULL\t__null\n\
  6157. #else\t /* ! __GNUG__ */\n\
  6158. #define NULL\t0L\n\
  6159. #endif\t /* __GNUG__ */\n\
  6160. #else\t /* ! __cplusplus */\n\
  6161. #define NULL\t((void *)0)\n\
  6162. #endif\t /* __cplusplus */\n\
  6163. #endif\t /* !NULL */",
  6164. "^#ifndef[ \t]*NULL\n\
  6165. ^#ifdef[ \t]*__GNUG__\n\
  6166. ^#define[ \t]*NULL[ \t]*__null\n\
  6167. ^#else\n\
  6168. ^#define[ \t]*NULL[ \t]*0L\n\
  6169. ^#endif\n\
  6170. ^#endif",
  6171. (char*)NULL };
  6172. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6173. *
  6174. * Description of Obstack_Lvalue_Cast fix
  6175. */
  6176. tSCC zObstack_Lvalue_CastName[] =
  6177. "obstack_lvalue_cast";
  6178. /*
  6179. * File name selection pattern
  6180. */
  6181. tSCC zObstack_Lvalue_CastList[] =
  6182. "obstack.h\0";
  6183. /*
  6184. * Machine/OS name selection pattern
  6185. */
  6186. #define apzObstack_Lvalue_CastMachs (const char**)NULL
  6187. /*
  6188. * content selection pattern - do fix if pattern found
  6189. */
  6190. tSCC zObstack_Lvalue_CastSelect0[] =
  6191. "\\*\\(\\(([^()]*)\\*\\)(.*)\\)\\+\\+ = \\(([^()]*)\\)";
  6192. #define OBSTACK_LVALUE_CAST_TEST_CT 1
  6193. static tTestDesc aObstack_Lvalue_CastTests[] = {
  6194. { TT_EGREP, zObstack_Lvalue_CastSelect0, (regex_t*)NULL }, };
  6195. /*
  6196. * Fix Command Arguments for Obstack_Lvalue_Cast
  6197. */
  6198. static const char* apzObstack_Lvalue_CastPatch[] = {
  6199. "format",
  6200. "((*((%1*)%2) = (%3)), (%2 += sizeof (%1)))",
  6201. (char*)NULL };
  6202. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6203. *
  6204. * Description of Openbsd_Va_Start fix
  6205. */
  6206. tSCC zOpenbsd_Va_StartName[] =
  6207. "openbsd_va_start";
  6208. /*
  6209. * File name selection pattern
  6210. */
  6211. tSCC zOpenbsd_Va_StartList[] =
  6212. "stdarg.h\0";
  6213. /*
  6214. * Machine/OS name selection pattern
  6215. */
  6216. tSCC* apzOpenbsd_Va_StartMachs[] = {
  6217. "*-*-openbsd*",
  6218. (const char*)NULL };
  6219. /*
  6220. * content selection pattern - do fix if pattern found
  6221. */
  6222. tSCC zOpenbsd_Va_StartSelect0[] =
  6223. "__builtin_stdarg_start";
  6224. #define OPENBSD_VA_START_TEST_CT 1
  6225. static tTestDesc aOpenbsd_Va_StartTests[] = {
  6226. { TT_EGREP, zOpenbsd_Va_StartSelect0, (regex_t*)NULL }, };
  6227. /*
  6228. * Fix Command Arguments for Openbsd_Va_Start
  6229. */
  6230. static const char* apzOpenbsd_Va_StartPatch[] = {
  6231. "format",
  6232. "__builtin_va_start",
  6233. (char*)NULL };
  6234. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6235. *
  6236. * Description of Osf_Namespace_A fix
  6237. */
  6238. tSCC zOsf_Namespace_AName[] =
  6239. "osf_namespace_a";
  6240. /*
  6241. * File name selection pattern
  6242. */
  6243. tSCC zOsf_Namespace_AList[] =
  6244. "reg_types.h\0sys/lc_core.h\0";
  6245. /*
  6246. * Machine/OS name selection pattern
  6247. */
  6248. #define apzOsf_Namespace_AMachs (const char**)NULL
  6249. /*
  6250. * perform the 'test' shell command - do fix on success
  6251. */
  6252. tSCC zOsf_Namespace_ATest0[] =
  6253. " -r reg_types.h";
  6254. tSCC zOsf_Namespace_ATest1[] =
  6255. " -r sys/lc_core.h";
  6256. tSCC zOsf_Namespace_ATest2[] =
  6257. " -n \"`grep '} regex_t;' reg_types.h`\"";
  6258. tSCC zOsf_Namespace_ATest3[] =
  6259. " -z \"`grep __regex_t regex.h`\"";
  6260. #define OSF_NAMESPACE_A_TEST_CT 4
  6261. static tTestDesc aOsf_Namespace_ATests[] = {
  6262. { TT_TEST, zOsf_Namespace_ATest0, 0 /* unused */ },
  6263. { TT_TEST, zOsf_Namespace_ATest1, 0 /* unused */ },
  6264. { TT_TEST, zOsf_Namespace_ATest2, 0 /* unused */ },
  6265. { TT_TEST, zOsf_Namespace_ATest3, 0 /* unused */ }, };
  6266. /*
  6267. * Fix Command Arguments for Osf_Namespace_A
  6268. */
  6269. static const char* apzOsf_Namespace_APatch[] = {
  6270. "format",
  6271. "__%0",
  6272. "reg(ex|off|match)_t",
  6273. (char*)NULL };
  6274. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6275. *
  6276. * Description of Osf_Namespace_C fix
  6277. */
  6278. tSCC zOsf_Namespace_CName[] =
  6279. "osf_namespace_c";
  6280. /*
  6281. * File name selection pattern
  6282. */
  6283. tSCC zOsf_Namespace_CList[] =
  6284. "regex.h\0";
  6285. /*
  6286. * Machine/OS name selection pattern
  6287. */
  6288. #define apzOsf_Namespace_CMachs (const char**)NULL
  6289. /*
  6290. * content selection pattern - do fix if pattern found
  6291. */
  6292. tSCC zOsf_Namespace_CSelect0[] =
  6293. "#include <reg_types.h>.*";
  6294. /*
  6295. * perform the 'test' shell command - do fix on success
  6296. */
  6297. tSCC zOsf_Namespace_CTest0[] =
  6298. " -r reg_types.h";
  6299. tSCC zOsf_Namespace_CTest1[] =
  6300. " -r sys/lc_core.h";
  6301. tSCC zOsf_Namespace_CTest2[] =
  6302. " -n \"`grep '} regex_t;' reg_types.h`\"";
  6303. tSCC zOsf_Namespace_CTest3[] =
  6304. " -z \"`grep __regex_t regex.h`\"";
  6305. #define OSF_NAMESPACE_C_TEST_CT 5
  6306. static tTestDesc aOsf_Namespace_CTests[] = {
  6307. { TT_TEST, zOsf_Namespace_CTest0, 0 /* unused */ },
  6308. { TT_TEST, zOsf_Namespace_CTest1, 0 /* unused */ },
  6309. { TT_TEST, zOsf_Namespace_CTest2, 0 /* unused */ },
  6310. { TT_TEST, zOsf_Namespace_CTest3, 0 /* unused */ },
  6311. { TT_EGREP, zOsf_Namespace_CSelect0, (regex_t*)NULL }, };
  6312. /*
  6313. * Fix Command Arguments for Osf_Namespace_C
  6314. */
  6315. static const char* apzOsf_Namespace_CPatch[] = {
  6316. "format",
  6317. "%0\n\
  6318. typedef __regex_t\tregex_t;\n\
  6319. typedef __regoff_t\tregoff_t;\n\
  6320. typedef __regmatch_t\tregmatch_t;",
  6321. (char*)NULL };
  6322. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6323. *
  6324. * Description of Pthread_Incomplete_Struct_Argument fix
  6325. */
  6326. tSCC zPthread_Incomplete_Struct_ArgumentName[] =
  6327. "pthread_incomplete_struct_argument";
  6328. /*
  6329. * File name selection pattern
  6330. */
  6331. tSCC zPthread_Incomplete_Struct_ArgumentList[] =
  6332. "pthread.h\0";
  6333. /*
  6334. * Machine/OS name selection pattern
  6335. */
  6336. #define apzPthread_Incomplete_Struct_ArgumentMachs (const char**)NULL
  6337. /*
  6338. * content selection pattern - do fix if pattern found
  6339. */
  6340. tSCC zPthread_Incomplete_Struct_ArgumentSelect0[] =
  6341. "struct __jmp_buf_tag";
  6342. #define PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT 1
  6343. static tTestDesc aPthread_Incomplete_Struct_ArgumentTests[] = {
  6344. { TT_EGREP, zPthread_Incomplete_Struct_ArgumentSelect0, (regex_t*)NULL }, };
  6345. /*
  6346. * Fix Command Arguments for Pthread_Incomplete_Struct_Argument
  6347. */
  6348. static const char* apzPthread_Incomplete_Struct_ArgumentPatch[] = {
  6349. "format",
  6350. "%1 *%2%3",
  6351. "^(extern int __sigsetjmp \\(struct __jmp_buf_tag) (__env)\\[1\\](.*)$",
  6352. (char*)NULL };
  6353. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6354. *
  6355. * Description of Read_Ret_Type fix
  6356. */
  6357. tSCC zRead_Ret_TypeName[] =
  6358. "read_ret_type";
  6359. /*
  6360. * File name selection pattern
  6361. */
  6362. tSCC zRead_Ret_TypeList[] =
  6363. "stdio.h\0";
  6364. /*
  6365. * Machine/OS name selection pattern
  6366. */
  6367. #define apzRead_Ret_TypeMachs (const char**)NULL
  6368. /*
  6369. * content selection pattern - do fix if pattern found
  6370. */
  6371. tSCC zRead_Ret_TypeSelect0[] =
  6372. "extern int\t.*, fread\\(\\), fwrite\\(\\)";
  6373. #define READ_RET_TYPE_TEST_CT 1
  6374. static tTestDesc aRead_Ret_TypeTests[] = {
  6375. { TT_EGREP, zRead_Ret_TypeSelect0, (regex_t*)NULL }, };
  6376. /*
  6377. * Fix Command Arguments for Read_Ret_Type
  6378. */
  6379. static const char* apzRead_Ret_TypePatch[] = {
  6380. "format",
  6381. "extern unsigned int fread(), fwrite();\n\
  6382. %1%2",
  6383. "(extern int\t.*), fread\\(\\), fwrite\\(\\)(.*)",
  6384. (char*)NULL };
  6385. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6386. *
  6387. * Description of Rpc_Xdr_Lvalue_Cast_A fix
  6388. */
  6389. tSCC zRpc_Xdr_Lvalue_Cast_AName[] =
  6390. "rpc_xdr_lvalue_cast_a";
  6391. /*
  6392. * File name selection pattern
  6393. */
  6394. tSCC zRpc_Xdr_Lvalue_Cast_AList[] =
  6395. "rpc/xdr.h\0";
  6396. /*
  6397. * Machine/OS name selection pattern
  6398. */
  6399. #define apzRpc_Xdr_Lvalue_Cast_AMachs (const char**)NULL
  6400. /*
  6401. * content selection pattern - do fix if pattern found
  6402. */
  6403. tSCC zRpc_Xdr_Lvalue_Cast_ASelect0[] =
  6404. "#define[ \t]*IXDR_GET_LONG.*\\\\\n\
  6405. .*__extension__.*";
  6406. #define RPC_XDR_LVALUE_CAST_A_TEST_CT 1
  6407. static tTestDesc aRpc_Xdr_Lvalue_Cast_ATests[] = {
  6408. { TT_EGREP, zRpc_Xdr_Lvalue_Cast_ASelect0, (regex_t*)NULL }, };
  6409. /*
  6410. * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_A
  6411. */
  6412. static const char* apzRpc_Xdr_Lvalue_Cast_APatch[] = {
  6413. "format",
  6414. "#define IXDR_GET_LONG(buf) ((long)IXDR_GET_U_INT32(buf))",
  6415. (char*)NULL };
  6416. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6417. *
  6418. * Description of Rpc_Xdr_Lvalue_Cast_B fix
  6419. */
  6420. tSCC zRpc_Xdr_Lvalue_Cast_BName[] =
  6421. "rpc_xdr_lvalue_cast_b";
  6422. /*
  6423. * File name selection pattern
  6424. */
  6425. tSCC zRpc_Xdr_Lvalue_Cast_BList[] =
  6426. "rpc/xdr.h\0";
  6427. /*
  6428. * Machine/OS name selection pattern
  6429. */
  6430. #define apzRpc_Xdr_Lvalue_Cast_BMachs (const char**)NULL
  6431. /*
  6432. * content selection pattern - do fix if pattern found
  6433. */
  6434. tSCC zRpc_Xdr_Lvalue_Cast_BSelect0[] =
  6435. "#define[ \t]*IXDR_PUT_LONG.*\\\\\n\
  6436. .*__extension__.*";
  6437. #define RPC_XDR_LVALUE_CAST_B_TEST_CT 1
  6438. static tTestDesc aRpc_Xdr_Lvalue_Cast_BTests[] = {
  6439. { TT_EGREP, zRpc_Xdr_Lvalue_Cast_BSelect0, (regex_t*)NULL }, };
  6440. /*
  6441. * Fix Command Arguments for Rpc_Xdr_Lvalue_Cast_B
  6442. */
  6443. static const char* apzRpc_Xdr_Lvalue_Cast_BPatch[] = {
  6444. "format",
  6445. "#define IXDR_PUT_LONG(buf, v) ((long)IXDR_PUT_INT32(buf, (long)(v)))",
  6446. (char*)NULL };
  6447. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6448. *
  6449. * Description of Rs6000_Double fix
  6450. */
  6451. tSCC zRs6000_DoubleName[] =
  6452. "rs6000_double";
  6453. /*
  6454. * File name selection pattern
  6455. */
  6456. tSCC zRs6000_DoubleList[] =
  6457. "math.h\0";
  6458. /*
  6459. * Machine/OS name selection pattern
  6460. */
  6461. #define apzRs6000_DoubleMachs (const char**)NULL
  6462. /*
  6463. * content selection pattern - do fix if pattern found
  6464. */
  6465. tSCC zRs6000_DoubleSelect0[] =
  6466. "[^a-zA-Z_]class\\(";
  6467. #define RS6000_DOUBLE_TEST_CT 1
  6468. static tTestDesc aRs6000_DoubleTests[] = {
  6469. { TT_EGREP, zRs6000_DoubleSelect0, (regex_t*)NULL }, };
  6470. /*
  6471. * Fix Command Arguments for Rs6000_Double
  6472. */
  6473. static const char* apzRs6000_DoublePatch[] = {
  6474. "format",
  6475. "#ifndef __cplusplus\n\
  6476. %0\n\
  6477. #endif",
  6478. "^.*[^a-zA-Z_]class\\(.*",
  6479. (char*)NULL };
  6480. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6481. *
  6482. * Description of Rs6000_Fchmod fix
  6483. */
  6484. tSCC zRs6000_FchmodName[] =
  6485. "rs6000_fchmod";
  6486. /*
  6487. * File name selection pattern
  6488. */
  6489. tSCC zRs6000_FchmodList[] =
  6490. "sys/stat.h\0";
  6491. /*
  6492. * Machine/OS name selection pattern
  6493. */
  6494. #define apzRs6000_FchmodMachs (const char**)NULL
  6495. /*
  6496. * content selection pattern - do fix if pattern found
  6497. */
  6498. tSCC zRs6000_FchmodSelect0[] =
  6499. "fchmod\\(char \\*";
  6500. #define RS6000_FCHMOD_TEST_CT 1
  6501. static tTestDesc aRs6000_FchmodTests[] = {
  6502. { TT_EGREP, zRs6000_FchmodSelect0, (regex_t*)NULL }, };
  6503. /*
  6504. * Fix Command Arguments for Rs6000_Fchmod
  6505. */
  6506. static const char* apzRs6000_FchmodPatch[] = {
  6507. "format",
  6508. "fchmod(int",
  6509. (char*)NULL };
  6510. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6511. *
  6512. * Description of Rs6000_Param fix
  6513. */
  6514. tSCC zRs6000_ParamName[] =
  6515. "rs6000_param";
  6516. /*
  6517. * File name selection pattern
  6518. */
  6519. tSCC zRs6000_ParamList[] =
  6520. "stdio.h\0unistd.h\0";
  6521. /*
  6522. * Machine/OS name selection pattern
  6523. */
  6524. #define apzRs6000_ParamMachs (const char**)NULL
  6525. /*
  6526. * content selection pattern - do fix if pattern found
  6527. */
  6528. tSCC zRs6000_ParamSelect0[] =
  6529. "rename\\(const char \\*old, const char \\*new\\)";
  6530. #define RS6000_PARAM_TEST_CT 1
  6531. static tTestDesc aRs6000_ParamTests[] = {
  6532. { TT_EGREP, zRs6000_ParamSelect0, (regex_t*)NULL }, };
  6533. /*
  6534. * Fix Command Arguments for Rs6000_Param
  6535. */
  6536. static const char* apzRs6000_ParamPatch[] = {
  6537. "format",
  6538. "rename(const char *_old, const char *_new)",
  6539. (char*)NULL };
  6540. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6541. *
  6542. * Description of Solaris___Restrict fix
  6543. */
  6544. tSCC zSolaris___RestrictName[] =
  6545. "solaris___restrict";
  6546. /*
  6547. * File name selection pattern
  6548. */
  6549. tSCC zSolaris___RestrictList[] =
  6550. "sys/feature_tests.h\0";
  6551. /*
  6552. * Machine/OS name selection pattern
  6553. */
  6554. tSCC* apzSolaris___RestrictMachs[] = {
  6555. "*-*-solaris2*",
  6556. (const char*)NULL };
  6557. /*
  6558. * content selection pattern - do fix if pattern found
  6559. */
  6560. tSCC zSolaris___RestrictSelect0[] =
  6561. "#define[ \t]*_RESTRICT_KYWD[ \t]*restrict";
  6562. #define SOLARIS___RESTRICT_TEST_CT 1
  6563. static tTestDesc aSolaris___RestrictTests[] = {
  6564. { TT_EGREP, zSolaris___RestrictSelect0, (regex_t*)NULL }, };
  6565. /*
  6566. * Fix Command Arguments for Solaris___Restrict
  6567. */
  6568. static const char* apzSolaris___RestrictPatch[] = {
  6569. "format",
  6570. "#ifdef __cplusplus\n\
  6571. #define\t_RESTRICT_KYWD\t__restrict\n\
  6572. #else\n\
  6573. %0\n\
  6574. #endif",
  6575. (char*)NULL };
  6576. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6577. *
  6578. * Description of Solaris_Complex fix
  6579. */
  6580. tSCC zSolaris_ComplexName[] =
  6581. "solaris_complex";
  6582. /*
  6583. * File name selection pattern
  6584. */
  6585. tSCC zSolaris_ComplexList[] =
  6586. "complex.h\0";
  6587. /*
  6588. * Machine/OS name selection pattern
  6589. */
  6590. tSCC* apzSolaris_ComplexMachs[] = {
  6591. "*-*-solaris2.*",
  6592. (const char*)NULL };
  6593. /*
  6594. * content selection pattern - do fix if pattern found
  6595. */
  6596. tSCC zSolaris_ComplexSelect0[] =
  6597. "#define[ \t]_Complex_I[ \t]_Complex_I";
  6598. #define SOLARIS_COMPLEX_TEST_CT 1
  6599. static tTestDesc aSolaris_ComplexTests[] = {
  6600. { TT_EGREP, zSolaris_ComplexSelect0, (regex_t*)NULL }, };
  6601. /*
  6602. * Fix Command Arguments for Solaris_Complex
  6603. */
  6604. static const char* apzSolaris_ComplexPatch[] = { sed_cmd_z,
  6605. "-e", "s/#define[ \t]_Complex_I[ \t]_Complex_I/#define\t_Complex_I\t(__extension__ 1.0iF)/",
  6606. "-e", "/#define[ \t]_Imaginary_I[ \t]_Imaginary_I/d",
  6607. "-e", "/#define[ \t]imaginary[ \t]_Imaginary/d",
  6608. "-e", "s/#define[ \t]I[ \t]\\{1,\\}_Imaginary_I/#define\tI\t\t_Complex_I/",
  6609. (char*)NULL };
  6610. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6611. *
  6612. * Description of Solaris_Complex_Cxx fix
  6613. */
  6614. tSCC zSolaris_Complex_CxxName[] =
  6615. "solaris_complex_cxx";
  6616. /*
  6617. * File name selection pattern
  6618. */
  6619. tSCC zSolaris_Complex_CxxList[] =
  6620. "complex.h\0";
  6621. /*
  6622. * Machine/OS name selection pattern
  6623. */
  6624. tSCC* apzSolaris_Complex_CxxMachs[] = {
  6625. "*-*-solaris2.*",
  6626. (const char*)NULL };
  6627. #define SOLARIS_COMPLEX_CXX_TEST_CT 0
  6628. #define aSolaris_Complex_CxxTests (tTestDesc*)NULL
  6629. /*
  6630. * Fix Command Arguments for Solaris_Complex_Cxx
  6631. */
  6632. static const char* apzSolaris_Complex_CxxPatch[] = { sed_cmd_z,
  6633. "-e", "/#if[ \t]*!defined(__cplusplus)/c\\\n\
  6634. #ifdef\t__cplusplus\\\n\
  6635. extern \"C\" {\\\n\
  6636. #endif",
  6637. "-e", "/#endif[ \t]*\\/\\* !defined(__cplusplus) \\*\\//c\\\n\
  6638. #ifdef\t__cplusplus\\\n\
  6639. }\\\n\
  6640. #endif",
  6641. (char*)NULL };
  6642. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6643. *
  6644. * Description of Solaris_Cxx_Linkage fix
  6645. */
  6646. tSCC zSolaris_Cxx_LinkageName[] =
  6647. "solaris_cxx_linkage";
  6648. /*
  6649. * File name selection pattern
  6650. */
  6651. tSCC zSolaris_Cxx_LinkageList[] =
  6652. "iso/stdlib_iso.h\0";
  6653. /*
  6654. * Machine/OS name selection pattern
  6655. */
  6656. tSCC* apzSolaris_Cxx_LinkageMachs[] = {
  6657. "*-*-solaris2*",
  6658. (const char*)NULL };
  6659. /*
  6660. * content selection pattern - do fix if pattern found
  6661. */
  6662. tSCC zSolaris_Cxx_LinkageSelect0[] =
  6663. "(#if __cplusplus >= 199711L)\n\
  6664. (extern \"C\\+\\+\" \\{\n\
  6665. )(.*(bsearch|qsort).*)";
  6666. #define SOLARIS_CXX_LINKAGE_TEST_CT 1
  6667. static tTestDesc aSolaris_Cxx_LinkageTests[] = {
  6668. { TT_EGREP, zSolaris_Cxx_LinkageSelect0, (regex_t*)NULL }, };
  6669. /*
  6670. * Fix Command Arguments for Solaris_Cxx_Linkage
  6671. */
  6672. static const char* apzSolaris_Cxx_LinkagePatch[] = {
  6673. "format",
  6674. "%1 && !__GNUG__\n\
  6675. %2%3",
  6676. (char*)NULL };
  6677. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6678. *
  6679. * Description of Solaris_Getc_Strict_Stdc fix
  6680. */
  6681. tSCC zSolaris_Getc_Strict_StdcName[] =
  6682. "solaris_getc_strict_stdc";
  6683. /*
  6684. * File name selection pattern
  6685. */
  6686. tSCC zSolaris_Getc_Strict_StdcList[] =
  6687. "iso/stdio_iso.h\0";
  6688. /*
  6689. * Machine/OS name selection pattern
  6690. */
  6691. tSCC* apzSolaris_Getc_Strict_StdcMachs[] = {
  6692. "*-*-solaris2*",
  6693. (const char*)NULL };
  6694. /*
  6695. * content selection pattern - do fix if pattern found
  6696. */
  6697. tSCC zSolaris_Getc_Strict_StdcSelect0[] =
  6698. "(.*&& )!defined\\(_STRICT_STDC\\)(.*)";
  6699. #define SOLARIS_GETC_STRICT_STDC_TEST_CT 1
  6700. static tTestDesc aSolaris_Getc_Strict_StdcTests[] = {
  6701. { TT_EGREP, zSolaris_Getc_Strict_StdcSelect0, (regex_t*)NULL }, };
  6702. /*
  6703. * Fix Command Arguments for Solaris_Getc_Strict_Stdc
  6704. */
  6705. static const char* apzSolaris_Getc_Strict_StdcPatch[] = {
  6706. "format",
  6707. "%1(!defined(_STRICT_STDC) || (__cplusplus >= 199711L))%2",
  6708. (char*)NULL };
  6709. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6710. *
  6711. * Description of Solaris_Gets_C11 fix
  6712. */
  6713. tSCC zSolaris_Gets_C11Name[] =
  6714. "solaris_gets_c11";
  6715. /*
  6716. * File name selection pattern
  6717. */
  6718. tSCC zSolaris_Gets_C11List[] =
  6719. "iso/stdio_iso.h\0";
  6720. /*
  6721. * Machine/OS name selection pattern
  6722. */
  6723. tSCC* apzSolaris_Gets_C11Machs[] = {
  6724. "*-*-solaris2*",
  6725. (const char*)NULL };
  6726. /*
  6727. * content selection pattern - do fix if pattern found
  6728. */
  6729. tSCC zSolaris_Gets_C11Select0[] =
  6730. "(extern char[ \t]*\\*gets\\(char \\*\\));";
  6731. #define SOLARIS_GETS_C11_TEST_CT 1
  6732. static tTestDesc aSolaris_Gets_C11Tests[] = {
  6733. { TT_EGREP, zSolaris_Gets_C11Select0, (regex_t*)NULL }, };
  6734. /*
  6735. * Fix Command Arguments for Solaris_Gets_C11
  6736. */
  6737. static const char* apzSolaris_Gets_C11Patch[] = {
  6738. "format",
  6739. "#if __STDC_VERSION__ < 201112L && __cplusplus < 201402L\n\
  6740. %1 __attribute__((__deprecated__));\n\
  6741. #endif",
  6742. (char*)NULL };
  6743. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6744. *
  6745. * Description of Solaris_Gets_Cxx14 fix
  6746. */
  6747. tSCC zSolaris_Gets_Cxx14Name[] =
  6748. "solaris_gets_cxx14";
  6749. /*
  6750. * File name selection pattern
  6751. */
  6752. tSCC zSolaris_Gets_Cxx14List[] =
  6753. "iso/stdio_iso.h\0";
  6754. /*
  6755. * Machine/OS name selection pattern
  6756. */
  6757. tSCC* apzSolaris_Gets_Cxx14Machs[] = {
  6758. "*-*-solaris2*",
  6759. (const char*)NULL };
  6760. /*
  6761. * content selection pattern - do fix if pattern found
  6762. */
  6763. tSCC zSolaris_Gets_Cxx14Select0[] =
  6764. "(#if __STDC_VERSION__ < 201112L)\n\
  6765. (extern char\t\\*gets\\(char \\*\\) __ATTR_DEPRECATED;)";
  6766. #define SOLARIS_GETS_CXX14_TEST_CT 1
  6767. static tTestDesc aSolaris_Gets_Cxx14Tests[] = {
  6768. { TT_EGREP, zSolaris_Gets_Cxx14Select0, (regex_t*)NULL }, };
  6769. /*
  6770. * Fix Command Arguments for Solaris_Gets_Cxx14
  6771. */
  6772. static const char* apzSolaris_Gets_Cxx14Patch[] = {
  6773. "format",
  6774. "%1 && __cplusplus < 201402L\n\
  6775. %2",
  6776. (char*)NULL };
  6777. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6778. *
  6779. * Description of Solaris_Int_Const fix
  6780. */
  6781. tSCC zSolaris_Int_ConstName[] =
  6782. "solaris_int_const";
  6783. /*
  6784. * File name selection pattern
  6785. */
  6786. tSCC zSolaris_Int_ConstList[] =
  6787. "sys/int_const.h\0";
  6788. /*
  6789. * Machine/OS name selection pattern
  6790. */
  6791. tSCC* apzSolaris_Int_ConstMachs[] = {
  6792. "*-*-solaris2*",
  6793. (const char*)NULL };
  6794. /*
  6795. * content selection pattern - do fix if pattern found
  6796. */
  6797. tSCC zSolaris_Int_ConstSelect0[] =
  6798. "^#define[ \t]+UINT8_C\\(c\\)[ \t]+__CONCAT__.*\n\
  6799. (/*.**/)\n\
  6800. #define[ \t]+UINT16_C\\(c\\)[ \t]+__CONCAT__.*";
  6801. #define SOLARIS_INT_CONST_TEST_CT 1
  6802. static tTestDesc aSolaris_Int_ConstTests[] = {
  6803. { TT_EGREP, zSolaris_Int_ConstSelect0, (regex_t*)NULL }, };
  6804. /*
  6805. * Fix Command Arguments for Solaris_Int_Const
  6806. */
  6807. static const char* apzSolaris_Int_ConstPatch[] = {
  6808. "format",
  6809. "#define\tUINT8_C(c)\t(c)\n\
  6810. %1\n\
  6811. #define\tUINT16_C(c)\t(c)",
  6812. (char*)NULL };
  6813. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6814. *
  6815. * Description of Solaris_Int_Limits_1 fix
  6816. */
  6817. tSCC zSolaris_Int_Limits_1Name[] =
  6818. "solaris_int_limits_1";
  6819. /*
  6820. * File name selection pattern
  6821. */
  6822. tSCC zSolaris_Int_Limits_1List[] =
  6823. "sys/int_limits.h\0";
  6824. /*
  6825. * Machine/OS name selection pattern
  6826. */
  6827. tSCC* apzSolaris_Int_Limits_1Machs[] = {
  6828. "*-*-solaris2*",
  6829. (const char*)NULL };
  6830. /*
  6831. * content selection pattern - do fix if pattern found
  6832. */
  6833. tSCC zSolaris_Int_Limits_1Select0[] =
  6834. "^#define[ \t]+UINT8_MAX[ \t]+\\(255U\\)\n\
  6835. #define[ \t]+UINT16_MAX[ \t]+\\(65535U\\)";
  6836. #define SOLARIS_INT_LIMITS_1_TEST_CT 1
  6837. static tTestDesc aSolaris_Int_Limits_1Tests[] = {
  6838. { TT_EGREP, zSolaris_Int_Limits_1Select0, (regex_t*)NULL }, };
  6839. /*
  6840. * Fix Command Arguments for Solaris_Int_Limits_1
  6841. */
  6842. static const char* apzSolaris_Int_Limits_1Patch[] = {
  6843. "format",
  6844. "#define\tUINT8_MAX\t(255)\n\
  6845. #define\tUINT16_MAX\t(65535)",
  6846. (char*)NULL };
  6847. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6848. *
  6849. * Description of Solaris_Int_Limits_2 fix
  6850. */
  6851. tSCC zSolaris_Int_Limits_2Name[] =
  6852. "solaris_int_limits_2";
  6853. /*
  6854. * File name selection pattern
  6855. */
  6856. tSCC zSolaris_Int_Limits_2List[] =
  6857. "sys/int_limits.h\0";
  6858. /*
  6859. * Machine/OS name selection pattern
  6860. */
  6861. tSCC* apzSolaris_Int_Limits_2Machs[] = {
  6862. "*-*-solaris2*",
  6863. (const char*)NULL };
  6864. /*
  6865. * content selection pattern - do fix if pattern found
  6866. */
  6867. tSCC zSolaris_Int_Limits_2Select0[] =
  6868. "^#define[ \t]+(INT|UINT)_FAST16_(MAX|MIN)[ \t](INT|UINT)16.*";
  6869. #define SOLARIS_INT_LIMITS_2_TEST_CT 1
  6870. static tTestDesc aSolaris_Int_Limits_2Tests[] = {
  6871. { TT_EGREP, zSolaris_Int_Limits_2Select0, (regex_t*)NULL }, };
  6872. /*
  6873. * Fix Command Arguments for Solaris_Int_Limits_2
  6874. */
  6875. static const char* apzSolaris_Int_Limits_2Patch[] = {
  6876. "format",
  6877. "#define\t%1_FAST16_%2 %132_%2",
  6878. (char*)NULL };
  6879. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6880. *
  6881. * Description of Solaris_Int_Limits_3 fix
  6882. */
  6883. tSCC zSolaris_Int_Limits_3Name[] =
  6884. "solaris_int_limits_3";
  6885. /*
  6886. * File name selection pattern
  6887. */
  6888. tSCC zSolaris_Int_Limits_3List[] =
  6889. "sys/int_limits.h\0";
  6890. /*
  6891. * Machine/OS name selection pattern
  6892. */
  6893. tSCC* apzSolaris_Int_Limits_3Machs[] = {
  6894. "*-*-solaris2*",
  6895. (const char*)NULL };
  6896. /*
  6897. * content selection pattern - do fix if pattern found
  6898. */
  6899. tSCC zSolaris_Int_Limits_3Select0[] =
  6900. "^#define[ \t]+SIZE_MAX[ \t]+4294967295UL";
  6901. #define SOLARIS_INT_LIMITS_3_TEST_CT 1
  6902. static tTestDesc aSolaris_Int_Limits_3Tests[] = {
  6903. { TT_EGREP, zSolaris_Int_Limits_3Select0, (regex_t*)NULL }, };
  6904. /*
  6905. * Fix Command Arguments for Solaris_Int_Limits_3
  6906. */
  6907. static const char* apzSolaris_Int_Limits_3Patch[] = {
  6908. "format",
  6909. "#define\tSIZE_MAX\t4294967295U",
  6910. (char*)NULL };
  6911. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6912. *
  6913. * Description of Solaris_Math_1 fix
  6914. */
  6915. tSCC zSolaris_Math_1Name[] =
  6916. "solaris_math_1";
  6917. /*
  6918. * File name selection pattern
  6919. */
  6920. tSCC zSolaris_Math_1List[] =
  6921. "iso/math_c99.h\0";
  6922. /*
  6923. * Machine/OS name selection pattern
  6924. */
  6925. #define apzSolaris_Math_1Machs (const char**)NULL
  6926. /*
  6927. * content selection pattern - do fix if pattern found
  6928. */
  6929. tSCC zSolaris_Math_1Select0[] =
  6930. "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  6931. /*
  6932. * content bypass pattern - skip fix if pattern found
  6933. */
  6934. tSCC zSolaris_Math_1Bypass0[] =
  6935. "__GNUC__";
  6936. #define SOLARIS_MATH_1_TEST_CT 2
  6937. static tTestDesc aSolaris_Math_1Tests[] = {
  6938. { TT_NEGREP, zSolaris_Math_1Bypass0, (regex_t*)NULL },
  6939. { TT_EGREP, zSolaris_Math_1Select0, (regex_t*)NULL }, };
  6940. /*
  6941. * Fix Command Arguments for Solaris_Math_1
  6942. */
  6943. static const char* apzSolaris_Math_1Patch[] = {
  6944. "format",
  6945. "#define\tHUGE_VA%1\t(__builtin_huge_va%2())",
  6946. "^#define[ \t]+HUGE_VA([LF]+)[ \t]+__builtin_huge_va([lf]+)",
  6947. (char*)NULL };
  6948. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6949. *
  6950. * Description of Solaris_Math_10 fix
  6951. */
  6952. tSCC zSolaris_Math_10Name[] =
  6953. "solaris_math_10";
  6954. /*
  6955. * File name selection pattern
  6956. */
  6957. tSCC zSolaris_Math_10List[] =
  6958. "iso/math_c99.h\0";
  6959. /*
  6960. * Machine/OS name selection pattern
  6961. */
  6962. #define apzSolaris_Math_10Machs (const char**)NULL
  6963. /*
  6964. * content selection pattern - do fix if pattern found
  6965. */
  6966. tSCC zSolaris_Math_10Select0[] =
  6967. "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  6968. #define SOLARIS_MATH_10_TEST_CT 1
  6969. static tTestDesc aSolaris_Math_10Tests[] = {
  6970. { TT_EGREP, zSolaris_Math_10Select0, (regex_t*)NULL }, };
  6971. /*
  6972. * Fix Command Arguments for Solaris_Math_10
  6973. */
  6974. static const char* apzSolaris_Math_10Patch[] = {
  6975. "format",
  6976. "#define\tisinf(x) __builtin_isinf(x)",
  6977. "^#define[ \t]+isinf\\(x\\)[ \t]+__extension__\\([ \t]*\\\\\n\
  6978. [ \t]*\\{[ \t]*__typeof\\(x\\)[ \t]*__x_i[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\
  6979. [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*INFINITY[ \t]*\\|\\|[ \t]*\\\\\n\
  6980. [ \t]*__x_i[ \t]*==[ \t]*\\(__typeof\\(__x_i\\)\\)[ \t]*\\(-INFINITY\\);[ \t]*\\}\\)",
  6981. (char*)NULL };
  6982. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  6983. *
  6984. * Description of Solaris_Math_2 fix
  6985. */
  6986. tSCC zSolaris_Math_2Name[] =
  6987. "solaris_math_2";
  6988. /*
  6989. * File name selection pattern
  6990. */
  6991. tSCC zSolaris_Math_2List[] =
  6992. "iso/math_c99.h\0";
  6993. /*
  6994. * Machine/OS name selection pattern
  6995. */
  6996. #define apzSolaris_Math_2Machs (const char**)NULL
  6997. /*
  6998. * content selection pattern - do fix if pattern found
  6999. */
  7000. tSCC zSolaris_Math_2Select0[] =
  7001. "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  7002. /*
  7003. * content bypass pattern - skip fix if pattern found
  7004. */
  7005. tSCC zSolaris_Math_2Bypass0[] =
  7006. "__GNUC__";
  7007. #define SOLARIS_MATH_2_TEST_CT 2
  7008. static tTestDesc aSolaris_Math_2Tests[] = {
  7009. { TT_NEGREP, zSolaris_Math_2Bypass0, (regex_t*)NULL },
  7010. { TT_EGREP, zSolaris_Math_2Select0, (regex_t*)NULL }, };
  7011. /*
  7012. * Fix Command Arguments for Solaris_Math_2
  7013. */
  7014. static const char* apzSolaris_Math_2Patch[] = {
  7015. "format",
  7016. "#define\tINFINITY\t(__builtin_inff())",
  7017. "^#define[ \t]+INFINITY[ \t]+__builtin_infinity",
  7018. (char*)NULL };
  7019. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7020. *
  7021. * Description of Solaris_Math_3 fix
  7022. */
  7023. tSCC zSolaris_Math_3Name[] =
  7024. "solaris_math_3";
  7025. /*
  7026. * File name selection pattern
  7027. */
  7028. tSCC zSolaris_Math_3List[] =
  7029. "iso/math_c99.h\0";
  7030. /*
  7031. * Machine/OS name selection pattern
  7032. */
  7033. #define apzSolaris_Math_3Machs (const char**)NULL
  7034. /*
  7035. * content selection pattern - do fix if pattern found
  7036. */
  7037. tSCC zSolaris_Math_3Select0[] =
  7038. "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  7039. /*
  7040. * content bypass pattern - skip fix if pattern found
  7041. */
  7042. tSCC zSolaris_Math_3Bypass0[] =
  7043. "__GNUC__";
  7044. #define SOLARIS_MATH_3_TEST_CT 2
  7045. static tTestDesc aSolaris_Math_3Tests[] = {
  7046. { TT_NEGREP, zSolaris_Math_3Bypass0, (regex_t*)NULL },
  7047. { TT_EGREP, zSolaris_Math_3Select0, (regex_t*)NULL }, };
  7048. /*
  7049. * Fix Command Arguments for Solaris_Math_3
  7050. */
  7051. static const char* apzSolaris_Math_3Patch[] = {
  7052. "format",
  7053. "#define\tNAN\t\t(__builtin_nanf(\"\"))",
  7054. "^#define[ \t]+NAN[ \t]+__builtin_nan",
  7055. (char*)NULL };
  7056. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7057. *
  7058. * Description of Solaris_Math_4 fix
  7059. */
  7060. tSCC zSolaris_Math_4Name[] =
  7061. "solaris_math_4";
  7062. /*
  7063. * File name selection pattern
  7064. */
  7065. tSCC zSolaris_Math_4List[] =
  7066. "iso/math_c99.h\0";
  7067. /*
  7068. * Machine/OS name selection pattern
  7069. */
  7070. #define apzSolaris_Math_4Machs (const char**)NULL
  7071. /*
  7072. * content selection pattern - do fix if pattern found
  7073. */
  7074. tSCC zSolaris_Math_4Select0[] =
  7075. "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  7076. /*
  7077. * content bypass pattern - skip fix if pattern found
  7078. */
  7079. tSCC zSolaris_Math_4Bypass0[] =
  7080. "__GNUC__";
  7081. #define SOLARIS_MATH_4_TEST_CT 2
  7082. static tTestDesc aSolaris_Math_4Tests[] = {
  7083. { TT_NEGREP, zSolaris_Math_4Bypass0, (regex_t*)NULL },
  7084. { TT_EGREP, zSolaris_Math_4Select0, (regex_t*)NULL }, };
  7085. /*
  7086. * Fix Command Arguments for Solaris_Math_4
  7087. */
  7088. static const char* apzSolaris_Math_4Patch[] = {
  7089. "format",
  7090. "#define\tfpclassify(x) \\\n\
  7091. __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL, FP_ZERO, (x))",
  7092. "^#define[ \t]+fpclassify\\(x\\)[ \t]+__builtin_fpclassify\\(x\\)",
  7093. (char*)NULL };
  7094. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7095. *
  7096. * Description of Solaris_Math_8 fix
  7097. */
  7098. tSCC zSolaris_Math_8Name[] =
  7099. "solaris_math_8";
  7100. /*
  7101. * File name selection pattern
  7102. */
  7103. tSCC zSolaris_Math_8List[] =
  7104. "iso/math_c99.h\0";
  7105. /*
  7106. * Machine/OS name selection pattern
  7107. */
  7108. #define apzSolaris_Math_8Machs (const char**)NULL
  7109. /*
  7110. * content selection pattern - do fix if pattern found
  7111. */
  7112. tSCC zSolaris_Math_8Select0[] =
  7113. "@\\(#\\)math_c99\\.h[ \t]+1\\.[0-9]+[ \t]+[0-9/]+ SMI";
  7114. /*
  7115. * content bypass pattern - skip fix if pattern found
  7116. */
  7117. tSCC zSolaris_Math_8Bypass0[] =
  7118. "__GNUC__";
  7119. #define SOLARIS_MATH_8_TEST_CT 2
  7120. static tTestDesc aSolaris_Math_8Tests[] = {
  7121. { TT_NEGREP, zSolaris_Math_8Bypass0, (regex_t*)NULL },
  7122. { TT_EGREP, zSolaris_Math_8Select0, (regex_t*)NULL }, };
  7123. /*
  7124. * Fix Command Arguments for Solaris_Math_8
  7125. */
  7126. static const char* apzSolaris_Math_8Patch[] = {
  7127. "format",
  7128. "#define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
  7129. \t\t\t ? __builtin_signbitf(x) \\\n\
  7130. \t\t\t : sizeof(x) == sizeof(long double) \\\n\
  7131. \t\t\t ? __builtin_signbitl(x) \\\n\
  7132. \t\t\t : __builtin_signbit(x))",
  7133. "^#define[ \t]+signbit\\(x\\)[ \t]+__builtin_signbit\\(x\\)",
  7134. (char*)NULL };
  7135. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7136. *
  7137. * Description of Solaris_Math_9 fix
  7138. */
  7139. tSCC zSolaris_Math_9Name[] =
  7140. "solaris_math_9";
  7141. /*
  7142. * File name selection pattern
  7143. */
  7144. tSCC zSolaris_Math_9List[] =
  7145. "iso/math_c99.h\0";
  7146. /*
  7147. * Machine/OS name selection pattern
  7148. */
  7149. #define apzSolaris_Math_9Machs (const char**)NULL
  7150. /*
  7151. * content selection pattern - do fix if pattern found
  7152. */
  7153. tSCC zSolaris_Math_9Select0[] =
  7154. "@\\(#\\)math_c99.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  7155. /*
  7156. * content bypass pattern - skip fix if pattern found
  7157. */
  7158. tSCC zSolaris_Math_9Bypass0[] =
  7159. "__GNUC__";
  7160. #define SOLARIS_MATH_9_TEST_CT 2
  7161. static tTestDesc aSolaris_Math_9Tests[] = {
  7162. { TT_NEGREP, zSolaris_Math_9Bypass0, (regex_t*)NULL },
  7163. { TT_EGREP, zSolaris_Math_9Select0, (regex_t*)NULL }, };
  7164. /*
  7165. * Fix Command Arguments for Solaris_Math_9
  7166. */
  7167. static const char* apzSolaris_Math_9Patch[] = {
  7168. "format",
  7169. "#define\t%1(x, y)%2__builtin_%1(x, y)",
  7170. "^#define[ \t]+([a-z]+)\\(x, y\\)([ \t]+)\\(\\(x\\) __builtin_[a-z]+\\(y\\)\\)",
  7171. (char*)NULL };
  7172. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7173. *
  7174. * Description of Solaris_Math_11 fix
  7175. */
  7176. tSCC zSolaris_Math_11Name[] =
  7177. "solaris_math_11";
  7178. /*
  7179. * File name selection pattern
  7180. */
  7181. tSCC zSolaris_Math_11List[] =
  7182. "iso/math_c99.h\0";
  7183. /*
  7184. * Machine/OS name selection pattern
  7185. */
  7186. #define apzSolaris_Math_11Machs (const char**)NULL
  7187. /*
  7188. * content selection pattern - do fix if pattern found
  7189. */
  7190. tSCC zSolaris_Math_11Select0[] =
  7191. "@\\(#\\)math_c99\\.h[ \t]+1\\.[0-9]+[ \t]+[0-9/]+ ";
  7192. #define SOLARIS_MATH_11_TEST_CT 1
  7193. static tTestDesc aSolaris_Math_11Tests[] = {
  7194. { TT_EGREP, zSolaris_Math_11Select0, (regex_t*)NULL }, };
  7195. /*
  7196. * Fix Command Arguments for Solaris_Math_11
  7197. */
  7198. static const char* apzSolaris_Math_11Patch[] = {
  7199. "format",
  7200. "#undef\tsignbit\n\
  7201. #define\tsignbit(x)\t(sizeof(x) == sizeof(float) \\\n\
  7202. \t\t\t ? __builtin_signbitf(x) \\\n\
  7203. \t\t\t : sizeof(x) == sizeof(long double) \\\n\
  7204. \t\t\t ? __builtin_signbitl(x) \\\n\
  7205. \t\t\t : __builtin_signbit(x))",
  7206. "^#undef[ \t]+signbit\n\
  7207. #if defined\\(__sparc\\)\n\
  7208. #define[ \t]+signbit\\(x\\)[ \t]+__extension__\\( \\\\\n\
  7209. [ \t]+\\{[ \t]*__typeof\\(x\\)[ \t]*__x_s[ \t]*=[ \t]*\\(x\\);[ \t]*\\\\\n\
  7210. [ \t]+\\(int\\)[ \t]*\\(\\*\\(unsigned[ \t]*\\*\\)[ \t]*\\&__x_s[ \t]*>>[ \t]*31\\);[ \t]*\\}\\)\n\
  7211. #elif defined\\(__i386\\) \\|\\| defined\\(__amd64\\)\n\
  7212. #define[ \t]+signbit\\(x\\)[ \t]+__extension__\\( \\\\\n\
  7213. [ \t]+\\{ __typeof\\(x\\) __x_s = \\(x\\); \\\\\n\
  7214. [ \t]+\\(sizeof \\(__x_s\\) == sizeof \\(float\\) \\? \\\\\n\
  7215. [ \t]+\\(int\\) \\(\\*\\(unsigned \\*\\) \\&__x_s >> 31\\) : \\\\\n\
  7216. [ \t]+sizeof \\(__x_s\\) == sizeof \\(double\\) \\? \\\\\n\
  7217. [ \t]+\\(int\\) \\(\\(\\(unsigned \\*\\) \\&__x_s\\)\\[1\\] >> 31\\) : \\\\\n\
  7218. [ \t]+\\(int\\) \\(\\(\\(unsigned short \\*\\) \\&__x_s\\)\\[4\\] >> 15\\)\\); \\}\\)\n\
  7219. #endif",
  7220. (char*)NULL };
  7221. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7222. *
  7223. * Description of Solaris_Math_12 fix
  7224. */
  7225. tSCC zSolaris_Math_12Name[] =
  7226. "solaris_math_12";
  7227. /*
  7228. * File name selection pattern
  7229. */
  7230. tSCC zSolaris_Math_12List[] =
  7231. "math.h\0";
  7232. /*
  7233. * Machine/OS name selection pattern
  7234. */
  7235. tSCC* apzSolaris_Math_12Machs[] = {
  7236. "*-*-solaris2*",
  7237. (const char*)NULL };
  7238. /*
  7239. * content selection pattern - do fix if pattern found
  7240. */
  7241. tSCC zSolaris_Math_12Select0[] =
  7242. "#undef.*_GLIBCXX_USE_C99_MATH";
  7243. #define SOLARIS_MATH_12_TEST_CT 1
  7244. static tTestDesc aSolaris_Math_12Tests[] = {
  7245. { TT_EGREP, zSolaris_Math_12Select0, (regex_t*)NULL }, };
  7246. /*
  7247. * Fix Command Arguments for Solaris_Math_12
  7248. */
  7249. static const char* apzSolaris_Math_12Patch[] = { sed_cmd_z,
  7250. "-e", "/#undef[ \t]*_GLIBCXX_USE_C99_MATH/d",
  7251. (char*)NULL };
  7252. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7253. *
  7254. * Description of Solaris_Once_Init_1 fix
  7255. */
  7256. tSCC zSolaris_Once_Init_1Name[] =
  7257. "solaris_once_init_1";
  7258. /*
  7259. * File name selection pattern
  7260. */
  7261. tSCC zSolaris_Once_Init_1List[] =
  7262. "pthread.h\0";
  7263. /*
  7264. * Machine/OS name selection pattern
  7265. */
  7266. tSCC* apzSolaris_Once_Init_1Machs[] = {
  7267. "*-*-solaris*",
  7268. (const char*)NULL };
  7269. /*
  7270. * content selection pattern - do fix if pattern found
  7271. */
  7272. tSCC zSolaris_Once_Init_1Select0[] =
  7273. "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  7274. #define SOLARIS_ONCE_INIT_1_TEST_CT 1
  7275. static tTestDesc aSolaris_Once_Init_1Tests[] = {
  7276. { TT_EGREP, zSolaris_Once_Init_1Select0, (regex_t*)NULL }, };
  7277. /*
  7278. * Fix Command Arguments for Solaris_Once_Init_1
  7279. */
  7280. static const char* apzSolaris_Once_Init_1Patch[] = {
  7281. "format",
  7282. "%1{%2}%3",
  7283. "(^#define[ \t]+PTHREAD_ONCE_INIT[ \t]+\\{)([^}]+)(\\})[ \t]*$",
  7284. (char*)NULL };
  7285. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7286. *
  7287. * Description of Solaris_Posix_Spawn_Restrict fix
  7288. */
  7289. tSCC zSolaris_Posix_Spawn_RestrictName[] =
  7290. "solaris_posix_spawn_restrict";
  7291. /*
  7292. * File name selection pattern
  7293. */
  7294. tSCC zSolaris_Posix_Spawn_RestrictList[] =
  7295. "spawn.h\0";
  7296. /*
  7297. * Machine/OS name selection pattern
  7298. */
  7299. tSCC* apzSolaris_Posix_Spawn_RestrictMachs[] = {
  7300. "*-*-solaris2*",
  7301. (const char*)NULL };
  7302. /*
  7303. * content selection pattern - do fix if pattern found
  7304. */
  7305. tSCC zSolaris_Posix_Spawn_RestrictSelect0[] =
  7306. "(.*[ \t]+)([a-z]+)\\[_RESTRICT_KYWD\\](.*)";
  7307. #define SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT 1
  7308. static tTestDesc aSolaris_Posix_Spawn_RestrictTests[] = {
  7309. { TT_EGREP, zSolaris_Posix_Spawn_RestrictSelect0, (regex_t*)NULL }, };
  7310. /*
  7311. * Fix Command Arguments for Solaris_Posix_Spawn_Restrict
  7312. */
  7313. static const char* apzSolaris_Posix_Spawn_RestrictPatch[] = {
  7314. "format",
  7315. "%1*_RESTRICT_KYWD %2%3",
  7316. (char*)NULL };
  7317. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7318. *
  7319. * Description of Solaris_Pow_Int_Overload fix
  7320. */
  7321. tSCC zSolaris_Pow_Int_OverloadName[] =
  7322. "solaris_pow_int_overload";
  7323. /*
  7324. * File name selection pattern
  7325. */
  7326. tSCC zSolaris_Pow_Int_OverloadList[] =
  7327. "iso/math_iso.h\0";
  7328. /*
  7329. * Machine/OS name selection pattern
  7330. */
  7331. tSCC* apzSolaris_Pow_Int_OverloadMachs[] = {
  7332. "*-*-solaris2*",
  7333. (const char*)NULL };
  7334. /*
  7335. * content selection pattern - do fix if pattern found
  7336. */
  7337. tSCC zSolaris_Pow_Int_OverloadSelect0[] =
  7338. "^[ \t]*inline [a-z ]* pow\\([^()]*, int [^()]*\\) *\\{[^{}]*\n\
  7339. [^{}]*\\}";
  7340. #define SOLARIS_POW_INT_OVERLOAD_TEST_CT 1
  7341. static tTestDesc aSolaris_Pow_Int_OverloadTests[] = {
  7342. { TT_EGREP, zSolaris_Pow_Int_OverloadSelect0, (regex_t*)NULL }, };
  7343. /*
  7344. * Fix Command Arguments for Solaris_Pow_Int_Overload
  7345. */
  7346. static const char* apzSolaris_Pow_Int_OverloadPatch[] = {
  7347. "format",
  7348. "#if __cplusplus < 201103L\n\
  7349. %0\n\
  7350. #endif",
  7351. (char*)NULL };
  7352. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7353. *
  7354. * Description of Solaris_Rwlock_Init_1 fix
  7355. */
  7356. tSCC zSolaris_Rwlock_Init_1Name[] =
  7357. "solaris_rwlock_init_1";
  7358. /*
  7359. * File name selection pattern
  7360. */
  7361. tSCC zSolaris_Rwlock_Init_1List[] =
  7362. "pthread.h\0";
  7363. /*
  7364. * Machine/OS name selection pattern
  7365. */
  7366. tSCC* apzSolaris_Rwlock_Init_1Machs[] = {
  7367. "*-*-solaris*",
  7368. (const char*)NULL };
  7369. /*
  7370. * content selection pattern - do fix if pattern found
  7371. */
  7372. tSCC zSolaris_Rwlock_Init_1Select0[] =
  7373. "@\\(#\\)pthread.h[ \t]+1.[0-9]+[ \t]+[0-9/]+ SMI";
  7374. #define SOLARIS_RWLOCK_INIT_1_TEST_CT 1
  7375. static tTestDesc aSolaris_Rwlock_Init_1Tests[] = {
  7376. { TT_EGREP, zSolaris_Rwlock_Init_1Select0, (regex_t*)NULL }, };
  7377. /*
  7378. * Fix Command Arguments for Solaris_Rwlock_Init_1
  7379. */
  7380. static const char* apzSolaris_Rwlock_Init_1Patch[] = {
  7381. "format",
  7382. "#if __STDC__ - 0 == 0 && !defined(_NO_LONGLONG)\n\
  7383. %0\n\
  7384. #else\n\
  7385. %1{0, 0, 0, {{0}, {0}, {0}}, {{0}, {0}}, {{0}, {0}}}\n\
  7386. #endif",
  7387. "(^#define[ \t]+PTHREAD_RWLOCK_INITIALIZER[ \t]+)\\{0, 0, 0, \\{0, 0, 0\\}, \\{0, 0\\}, \\{0, 0\\}\\}[ \t]*$",
  7388. (char*)NULL };
  7389. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7390. *
  7391. * Description of Solaris_Std___Filbuf fix
  7392. */
  7393. tSCC zSolaris_Std___FilbufName[] =
  7394. "solaris_std___filbuf";
  7395. /*
  7396. * File name selection pattern
  7397. */
  7398. tSCC zSolaris_Std___FilbufList[] =
  7399. "stdio.h\0";
  7400. /*
  7401. * Machine/OS name selection pattern
  7402. */
  7403. tSCC* apzSolaris_Std___FilbufMachs[] = {
  7404. "*-*-solaris2*",
  7405. (const char*)NULL };
  7406. /*
  7407. * content selection pattern - do fix if pattern found
  7408. */
  7409. tSCC zSolaris_Std___FilbufSelect0[] =
  7410. "(using std::perror;\n\
  7411. )(#endif)";
  7412. /*
  7413. * content bypass pattern - skip fix if pattern found
  7414. */
  7415. tSCC zSolaris_Std___FilbufBypass0[] =
  7416. "using std::__filbuf";
  7417. #define SOLARIS_STD___FILBUF_TEST_CT 2
  7418. static tTestDesc aSolaris_Std___FilbufTests[] = {
  7419. { TT_NEGREP, zSolaris_Std___FilbufBypass0, (regex_t*)NULL },
  7420. { TT_EGREP, zSolaris_Std___FilbufSelect0, (regex_t*)NULL }, };
  7421. /*
  7422. * Fix Command Arguments for Solaris_Std___Filbuf
  7423. */
  7424. static const char* apzSolaris_Std___FilbufPatch[] = {
  7425. "format",
  7426. "%1#ifndef _LP64\n\
  7427. using std::__filbuf;\n\
  7428. using std::__flsbuf;\n\
  7429. #endif\n\
  7430. %2",
  7431. (char*)NULL };
  7432. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7433. *
  7434. * Description of Solaris_Std_Gets_Cxx14 fix
  7435. */
  7436. tSCC zSolaris_Std_Gets_Cxx14Name[] =
  7437. "solaris_std_gets_cxx14";
  7438. /*
  7439. * File name selection pattern
  7440. */
  7441. tSCC zSolaris_Std_Gets_Cxx14List[] =
  7442. "stdio.h\0";
  7443. /*
  7444. * Machine/OS name selection pattern
  7445. */
  7446. tSCC* apzSolaris_Std_Gets_Cxx14Machs[] = {
  7447. "*-*-solaris2*",
  7448. (const char*)NULL };
  7449. /*
  7450. * content selection pattern - do fix if pattern found
  7451. */
  7452. tSCC zSolaris_Std_Gets_Cxx14Select0[] =
  7453. "using std::gets;";
  7454. #define SOLARIS_STD_GETS_CXX14_TEST_CT 1
  7455. static tTestDesc aSolaris_Std_Gets_Cxx14Tests[] = {
  7456. { TT_EGREP, zSolaris_Std_Gets_Cxx14Select0, (regex_t*)NULL }, };
  7457. /*
  7458. * Fix Command Arguments for Solaris_Std_Gets_Cxx14
  7459. */
  7460. static const char* apzSolaris_Std_Gets_Cxx14Patch[] = {
  7461. "format",
  7462. "#if __cplusplus < 201402L\n\
  7463. %0\n\
  7464. #endif",
  7465. (char*)NULL };
  7466. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7467. *
  7468. * Description of Solaris_Stdio_Tag fix
  7469. */
  7470. tSCC zSolaris_Stdio_TagName[] =
  7471. "solaris_stdio_tag";
  7472. /*
  7473. * File name selection pattern
  7474. */
  7475. tSCC zSolaris_Stdio_TagList[] =
  7476. "stdio_tag.h\0";
  7477. /*
  7478. * Machine/OS name selection pattern
  7479. */
  7480. #define apzSolaris_Stdio_TagMachs (const char**)NULL
  7481. /*
  7482. * content selection pattern - do fix if pattern found
  7483. */
  7484. tSCC zSolaris_Stdio_TagSelect0[] =
  7485. "__cplusplus < 54321L";
  7486. /*
  7487. * content bypass pattern - skip fix if pattern found
  7488. */
  7489. tSCC zSolaris_Stdio_TagBypass0[] =
  7490. "__GNUC__";
  7491. #define SOLARIS_STDIO_TAG_TEST_CT 2
  7492. static tTestDesc aSolaris_Stdio_TagTests[] = {
  7493. { TT_NEGREP, zSolaris_Stdio_TagBypass0, (regex_t*)NULL },
  7494. { TT_EGREP, zSolaris_Stdio_TagSelect0, (regex_t*)NULL }, };
  7495. /*
  7496. * Fix Command Arguments for Solaris_Stdio_Tag
  7497. */
  7498. static const char* apzSolaris_Stdio_TagPatch[] = { sed_cmd_z,
  7499. "-e", "s/defined(__cplusplus) && (__cplusplus < 54321L)/0/",
  7500. (char*)NULL };
  7501. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7502. *
  7503. * Description of Solaris_Stdlib_Noreturn fix
  7504. */
  7505. tSCC zSolaris_Stdlib_NoreturnName[] =
  7506. "solaris_stdlib_noreturn";
  7507. /*
  7508. * File name selection pattern
  7509. */
  7510. tSCC zSolaris_Stdlib_NoreturnList[] =
  7511. "iso/stdlib_c99.h\0";
  7512. /*
  7513. * Machine/OS name selection pattern
  7514. */
  7515. tSCC* apzSolaris_Stdlib_NoreturnMachs[] = {
  7516. "*-*-solaris2*",
  7517. (const char*)NULL };
  7518. /*
  7519. * content selection pattern - do fix if pattern found
  7520. */
  7521. tSCC zSolaris_Stdlib_NoreturnSelect0[] =
  7522. "(extern) _Noreturn (void quick_exit\\(int\\));";
  7523. #define SOLARIS_STDLIB_NORETURN_TEST_CT 1
  7524. static tTestDesc aSolaris_Stdlib_NoreturnTests[] = {
  7525. { TT_EGREP, zSolaris_Stdlib_NoreturnSelect0, (regex_t*)NULL }, };
  7526. /*
  7527. * Fix Command Arguments for Solaris_Stdlib_Noreturn
  7528. */
  7529. static const char* apzSolaris_Stdlib_NoreturnPatch[] = {
  7530. "format",
  7531. "%1 %2 __attribute__((__noreturn__));",
  7532. (char*)NULL };
  7533. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7534. *
  7535. * Description of Statsswtch fix
  7536. */
  7537. tSCC zStatsswtchName[] =
  7538. "statsswtch";
  7539. /*
  7540. * File name selection pattern
  7541. */
  7542. tSCC zStatsswtchList[] =
  7543. "rpcsvc/rstat.h\0";
  7544. /*
  7545. * Machine/OS name selection pattern
  7546. */
  7547. #define apzStatsswtchMachs (const char**)NULL
  7548. /*
  7549. * content selection pattern - do fix if pattern found
  7550. */
  7551. tSCC zStatsswtchSelect0[] =
  7552. "boottime$";
  7553. #define STATSSWTCH_TEST_CT 1
  7554. static tTestDesc aStatsswtchTests[] = {
  7555. { TT_EGREP, zStatsswtchSelect0, (regex_t*)NULL }, };
  7556. /*
  7557. * Fix Command Arguments for Statsswtch
  7558. */
  7559. static const char* apzStatsswtchPatch[] = {
  7560. "format",
  7561. "boottime;",
  7562. (char*)NULL };
  7563. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7564. *
  7565. * Description of Stdio_Stdarg_H fix
  7566. */
  7567. tSCC zStdio_Stdarg_HName[] =
  7568. "stdio_stdarg_h";
  7569. /*
  7570. * File name selection pattern
  7571. */
  7572. tSCC zStdio_Stdarg_HList[] =
  7573. "stdio.h\0";
  7574. /*
  7575. * Machine/OS name selection pattern
  7576. */
  7577. tSCC* apzStdio_Stdarg_HMachs[] = {
  7578. "*-*-solaris2.1[0-9]*",
  7579. (const char*)NULL };
  7580. /*
  7581. * content bypass pattern - skip fix if pattern found
  7582. */
  7583. tSCC zStdio_Stdarg_HBypass0[] =
  7584. "include.*(stdarg.h|machine/ansi.h)";
  7585. #define STDIO_STDARG_H_TEST_CT 1
  7586. static tTestDesc aStdio_Stdarg_HTests[] = {
  7587. { TT_NEGREP, zStdio_Stdarg_HBypass0, (regex_t*)NULL }, };
  7588. /*
  7589. * Fix Command Arguments for Stdio_Stdarg_H
  7590. */
  7591. static const char* apzStdio_Stdarg_HPatch[] = {
  7592. "wrap",
  7593. "#define __need___va_list\n\
  7594. #include <stdarg.h>\n",
  7595. (char*)NULL };
  7596. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7597. *
  7598. * Description of Stdio_Va_List fix
  7599. */
  7600. tSCC zStdio_Va_ListName[] =
  7601. "stdio_va_list";
  7602. /*
  7603. * File name selection pattern
  7604. */
  7605. tSCC zStdio_Va_ListList[] =
  7606. "stdio.h\0";
  7607. /*
  7608. * Machine/OS name selection pattern
  7609. */
  7610. tSCC* apzStdio_Va_ListMachs[] = {
  7611. "*-*-solaris2.1[0-9]*",
  7612. (const char*)NULL };
  7613. /*
  7614. * content bypass pattern - skip fix if pattern found
  7615. */
  7616. tSCC zStdio_Va_ListBypass0[] =
  7617. "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
  7618. #define STDIO_VA_LIST_TEST_CT 1
  7619. static tTestDesc aStdio_Va_ListTests[] = {
  7620. { TT_NEGREP, zStdio_Va_ListBypass0, (regex_t*)NULL }, };
  7621. /*
  7622. * Fix Command Arguments for Stdio_Va_List
  7623. */
  7624. static const char* apzStdio_Va_ListPatch[] = { sed_cmd_z,
  7625. "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
  7626. s@(va_list)&@(__gnuc_va_list)\\&@\n\
  7627. s@ _VA_LIST_));@ __gnuc_va_list));@\n\
  7628. s@ __VA_LIST__));@ __gnuc_va_list));@\n\
  7629. s@ va_list@ __not_va_list__@\n\
  7630. s@\\*va_list@*__not_va_list__@\n\
  7631. s@ __va_list)@ __gnuc_va_list)@\n\
  7632. s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
  7633. s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
  7634. s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
  7635. s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
  7636. s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
  7637. s@VA_LIST@DUMMY_VA_LIST@\n\
  7638. s@_Va_LIST@_VA_LIST@",
  7639. (char*)NULL };
  7640. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7641. *
  7642. * Description of Stdio_Va_List_Clients fix
  7643. */
  7644. tSCC zStdio_Va_List_ClientsName[] =
  7645. "stdio_va_list_clients";
  7646. /*
  7647. * File name selection pattern
  7648. */
  7649. tSCC zStdio_Va_List_ClientsList[] =
  7650. "com_err.h\0cps.h\0curses.h\0krb5.h\0lc_core.h\0pfmt.h\0wchar.h\0curses_colr/curses.h\0";
  7651. /*
  7652. * Machine/OS name selection pattern
  7653. */
  7654. #define apzStdio_Va_List_ClientsMachs (const char**)NULL
  7655. /*
  7656. * content bypass pattern - skip fix if pattern found
  7657. */
  7658. tSCC zStdio_Va_List_ClientsBypass0[] =
  7659. "__gnuc_va_list|_BSD_VA_LIST_|__DJ_va_list|_G_va_list";
  7660. tSCC zStdio_Va_List_ClientsBypass1[] =
  7661. "include <stdarg\\.h>|#ifdef va_start";
  7662. #define STDIO_VA_LIST_CLIENTS_TEST_CT 2
  7663. static tTestDesc aStdio_Va_List_ClientsTests[] = {
  7664. { TT_NEGREP, zStdio_Va_List_ClientsBypass0, (regex_t*)NULL },
  7665. { TT_NEGREP, zStdio_Va_List_ClientsBypass1, (regex_t*)NULL }, };
  7666. /*
  7667. * Fix Command Arguments for Stdio_Va_List_Clients
  7668. */
  7669. static const char* apzStdio_Va_List_ClientsPatch[] = { sed_cmd_z,
  7670. "-e", "s@[ \t]va_list\\([ \t)]\\)@ __gnuc_va_list\\1@\n\
  7671. s@(va_list)&@(__gnuc_va_list)\\&@\n\
  7672. s@ _VA_LIST_));@ __gnuc_va_list));@\n\
  7673. s@ __VA_LIST__));@ __gnuc_va_list));@\n\
  7674. s@ va_list@ __not_va_list__@\n\
  7675. s@\\*va_list@*__not_va_list__@\n\
  7676. s@ __va_list)@ __gnuc_va_list)@\n\
  7677. s@typedef[ \t]\\(.*\\)[ \t]va_list[ \t]*;@typedef \\1 __not_va_list__;@\n\
  7678. s@typedef[ \t]*__va_list__@typedef __gnuc_va_list@\n\
  7679. s@GNUC_VA_LIST@GNUC_Va_LIST@\n\
  7680. s@_VA_LIST_DEFINED@_Va_LIST_DEFINED@\n\
  7681. s@_NEED___VA_LIST@_NEED___Va_LIST@\n\
  7682. s@VA_LIST@DUMMY_VA_LIST@\n\
  7683. s@_Va_LIST@_VA_LIST@",
  7684. (char*)NULL };
  7685. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7686. *
  7687. * Description of Strict_Ansi_Not fix
  7688. */
  7689. tSCC zStrict_Ansi_NotName[] =
  7690. "strict_ansi_not";
  7691. /*
  7692. * File name selection pattern
  7693. */
  7694. #define zStrict_Ansi_NotList (char*)NULL
  7695. /*
  7696. * Machine/OS name selection pattern
  7697. */
  7698. #define apzStrict_Ansi_NotMachs (const char**)NULL
  7699. /*
  7700. * content selection pattern - do fix if pattern found
  7701. */
  7702. tSCC zStrict_Ansi_NotSelect0[] =
  7703. "^([ \t]*#[ \t]*if.*)(!__STDC__|__STDC__[ \t]*==[ \t]*0|__STDC__[ \t]*!=[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*0)";
  7704. /*
  7705. * content bypass pattern - skip fix if pattern found
  7706. */
  7707. tSCC zStrict_Ansi_NotBypass0[] =
  7708. "GNU and MIPS C compilers define __STDC__ differently";
  7709. tSCC zStrict_Ansi_NotBypass1[] =
  7710. "__SCO_VERSION__.*__STDC__ != 1";
  7711. /*
  7712. * perform the C function call test
  7713. */
  7714. tSCC zStrict_Ansi_NotFTst0[] = "stdc_0_in_system_headers";
  7715. #define STRICT_ANSI_NOT_TEST_CT 4
  7716. static tTestDesc aStrict_Ansi_NotTests[] = {
  7717. { TT_FUNCTION, zStrict_Ansi_NotFTst0, 0 /* unused */ },
  7718. { TT_NEGREP, zStrict_Ansi_NotBypass0, (regex_t*)NULL },
  7719. { TT_NEGREP, zStrict_Ansi_NotBypass1, (regex_t*)NULL },
  7720. { TT_EGREP, zStrict_Ansi_NotSelect0, (regex_t*)NULL }, };
  7721. /*
  7722. * Fix Command Arguments for Strict_Ansi_Not
  7723. */
  7724. static const char* apzStrict_Ansi_NotPatch[] = {
  7725. "format",
  7726. "%1 !defined(__STRICT_ANSI__)",
  7727. (char*)NULL };
  7728. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7729. *
  7730. * Description of Strict_Ansi_Not_Ctd fix
  7731. */
  7732. tSCC zStrict_Ansi_Not_CtdName[] =
  7733. "strict_ansi_not_ctd";
  7734. /*
  7735. * File name selection pattern
  7736. */
  7737. tSCC zStrict_Ansi_Not_CtdList[] =
  7738. "math.h\0limits.h\0stdio.h\0signal.h\0stdlib.h\0sys/signal.h\0time.h\0";
  7739. /*
  7740. * Machine/OS name selection pattern
  7741. */
  7742. #define apzStrict_Ansi_Not_CtdMachs (const char**)NULL
  7743. /*
  7744. * content selection pattern - do fix if pattern found
  7745. */
  7746. tSCC zStrict_Ansi_Not_CtdSelect0[] =
  7747. "^([ \t]*(\\(|&&|\\|\\|)([ \t(]*!*[ \t]*defined\\([a-zA-Z_0-9]+\\)[ \t]*[|&][|&])*[ \t(]*)(__STDC__[ \t]*(|-[ \t]*0[ \t]*)==[ \t]*0)";
  7748. /*
  7749. * perform the C function call test
  7750. */
  7751. tSCC zStrict_Ansi_Not_CtdFTst0[] = "stdc_0_in_system_headers";
  7752. #define STRICT_ANSI_NOT_CTD_TEST_CT 2
  7753. static tTestDesc aStrict_Ansi_Not_CtdTests[] = {
  7754. { TT_FUNCTION, zStrict_Ansi_Not_CtdFTst0, 0 /* unused */ },
  7755. { TT_EGREP, zStrict_Ansi_Not_CtdSelect0, (regex_t*)NULL }, };
  7756. /*
  7757. * Fix Command Arguments for Strict_Ansi_Not_Ctd
  7758. */
  7759. static const char* apzStrict_Ansi_Not_CtdPatch[] = {
  7760. "format",
  7761. "%1 !defined(__STRICT_ANSI__)",
  7762. (char*)NULL };
  7763. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7764. *
  7765. * Description of Strict_Ansi_Only fix
  7766. */
  7767. tSCC zStrict_Ansi_OnlyName[] =
  7768. "strict_ansi_only";
  7769. /*
  7770. * File name selection pattern
  7771. */
  7772. #define zStrict_Ansi_OnlyList (char*)NULL
  7773. /*
  7774. * Machine/OS name selection pattern
  7775. */
  7776. #define apzStrict_Ansi_OnlyMachs (const char**)NULL
  7777. /*
  7778. * content selection pattern - do fix if pattern found
  7779. */
  7780. tSCC zStrict_Ansi_OnlySelect0[] =
  7781. "^([ \t]*#[ \t]*if.*)(__STDC__[ \t]*!=[ \t]*0|__STDC__[ \t]*==[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*==[ \t]*1|__STDC__[ \t]*-[ \t]*0[ \t]*!=[ \t]*0)";
  7782. /*
  7783. * perform the C function call test
  7784. */
  7785. tSCC zStrict_Ansi_OnlyFTst0[] = "stdc_0_in_system_headers";
  7786. #define STRICT_ANSI_ONLY_TEST_CT 2
  7787. static tTestDesc aStrict_Ansi_OnlyTests[] = {
  7788. { TT_FUNCTION, zStrict_Ansi_OnlyFTst0, 0 /* unused */ },
  7789. { TT_EGREP, zStrict_Ansi_OnlySelect0, (regex_t*)NULL }, };
  7790. /*
  7791. * Fix Command Arguments for Strict_Ansi_Only
  7792. */
  7793. static const char* apzStrict_Ansi_OnlyPatch[] = {
  7794. "format",
  7795. "%1 defined(__STRICT_ANSI__)",
  7796. (char*)NULL };
  7797. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7798. *
  7799. * Description of Struct_File fix
  7800. */
  7801. tSCC zStruct_FileName[] =
  7802. "struct_file";
  7803. /*
  7804. * File name selection pattern
  7805. */
  7806. tSCC zStruct_FileList[] =
  7807. "rpc/xdr.h\0";
  7808. /*
  7809. * Machine/OS name selection pattern
  7810. */
  7811. #define apzStruct_FileMachs (const char**)NULL
  7812. /*
  7813. * content selection pattern - do fix if pattern found
  7814. */
  7815. tSCC zStruct_FileSelect0[] =
  7816. "^.*xdrstdio_create.*struct __file_s";
  7817. #define STRUCT_FILE_TEST_CT 1
  7818. static tTestDesc aStruct_FileTests[] = {
  7819. { TT_EGREP, zStruct_FileSelect0, (regex_t*)NULL }, };
  7820. /*
  7821. * Fix Command Arguments for Struct_File
  7822. */
  7823. static const char* apzStruct_FilePatch[] = {
  7824. "format",
  7825. "struct __file_s;\n\
  7826. %0",
  7827. (char*)NULL };
  7828. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7829. *
  7830. * Description of Struct_Sockaddr fix
  7831. */
  7832. tSCC zStruct_SockaddrName[] =
  7833. "struct_sockaddr";
  7834. /*
  7835. * File name selection pattern
  7836. */
  7837. tSCC zStruct_SockaddrList[] =
  7838. "rpc/auth.h\0";
  7839. /*
  7840. * Machine/OS name selection pattern
  7841. */
  7842. #define apzStruct_SockaddrMachs (const char**)NULL
  7843. /*
  7844. * content selection pattern - do fix if pattern found
  7845. */
  7846. tSCC zStruct_SockaddrSelect0[] =
  7847. "^.*authdes_create.*struct sockaddr[^_]";
  7848. /*
  7849. * content bypass pattern - skip fix if pattern found
  7850. */
  7851. tSCC zStruct_SockaddrBypass0[] =
  7852. "<sys/socket.h>";
  7853. tSCC zStruct_SockaddrBypass1[] =
  7854. "struct sockaddr;\n";
  7855. #define STRUCT_SOCKADDR_TEST_CT 3
  7856. static tTestDesc aStruct_SockaddrTests[] = {
  7857. { TT_NEGREP, zStruct_SockaddrBypass0, (regex_t*)NULL },
  7858. { TT_NEGREP, zStruct_SockaddrBypass1, (regex_t*)NULL },
  7859. { TT_EGREP, zStruct_SockaddrSelect0, (regex_t*)NULL }, };
  7860. /*
  7861. * Fix Command Arguments for Struct_Sockaddr
  7862. */
  7863. static const char* apzStruct_SockaddrPatch[] = {
  7864. "format",
  7865. "struct sockaddr;\n\
  7866. %0",
  7867. (char*)NULL };
  7868. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7869. *
  7870. * Description of Sun_Auth_Proto fix
  7871. */
  7872. tSCC zSun_Auth_ProtoName[] =
  7873. "sun_auth_proto";
  7874. /*
  7875. * File name selection pattern
  7876. */
  7877. tSCC zSun_Auth_ProtoList[] =
  7878. "rpc/auth.h\0rpc/clnt.h\0rpc/svc.h\0rpc/xdr.h\0";
  7879. /*
  7880. * Machine/OS name selection pattern
  7881. */
  7882. #define apzSun_Auth_ProtoMachs (const char**)NULL
  7883. /*
  7884. * content selection pattern - do fix if pattern found
  7885. */
  7886. tSCC zSun_Auth_ProtoSelect0[] =
  7887. "\\(\\*[a-z][a-z_]*\\)\\(\\)";
  7888. /*
  7889. * content bypass pattern - skip fix if pattern found
  7890. */
  7891. tSCC zSun_Auth_ProtoBypass0[] =
  7892. "__cplusplus";
  7893. #define SUN_AUTH_PROTO_TEST_CT 2
  7894. static tTestDesc aSun_Auth_ProtoTests[] = {
  7895. { TT_NEGREP, zSun_Auth_ProtoBypass0, (regex_t*)NULL },
  7896. { TT_EGREP, zSun_Auth_ProtoSelect0, (regex_t*)NULL }, };
  7897. /*
  7898. * Fix Command Arguments for Sun_Auth_Proto
  7899. */
  7900. static const char* apzSun_Auth_ProtoPatch[] = {
  7901. "format",
  7902. "#ifdef __cplusplus\n\
  7903. %1(...);%2\n\
  7904. #else\n\
  7905. %1();%2\n\
  7906. #endif",
  7907. "(.*\\(\\*[a-z][a-z_]*\\))\\(\\);(.*)",
  7908. (char*)NULL };
  7909. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7910. *
  7911. * Description of Sun_Bogus_Ifdef fix
  7912. */
  7913. tSCC zSun_Bogus_IfdefName[] =
  7914. "sun_bogus_ifdef";
  7915. /*
  7916. * File name selection pattern
  7917. */
  7918. tSCC zSun_Bogus_IfdefList[] =
  7919. "hsfs/hsfs_spec.h\0hsfs/iso_spec.h\0";
  7920. /*
  7921. * Machine/OS name selection pattern
  7922. */
  7923. #define apzSun_Bogus_IfdefMachs (const char**)NULL
  7924. /*
  7925. * content selection pattern - do fix if pattern found
  7926. */
  7927. tSCC zSun_Bogus_IfdefSelect0[] =
  7928. "#ifdef(.*\\|\\|.*)";
  7929. #define SUN_BOGUS_IFDEF_TEST_CT 1
  7930. static tTestDesc aSun_Bogus_IfdefTests[] = {
  7931. { TT_EGREP, zSun_Bogus_IfdefSelect0, (regex_t*)NULL }, };
  7932. /*
  7933. * Fix Command Arguments for Sun_Bogus_Ifdef
  7934. */
  7935. static const char* apzSun_Bogus_IfdefPatch[] = {
  7936. "format",
  7937. "#if%1",
  7938. (char*)NULL };
  7939. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7940. *
  7941. * Description of Sun_Catmacro fix
  7942. */
  7943. tSCC zSun_CatmacroName[] =
  7944. "sun_catmacro";
  7945. /*
  7946. * File name selection pattern
  7947. */
  7948. tSCC zSun_CatmacroList[] =
  7949. "pixrect/memvar.h\0";
  7950. /*
  7951. * Machine/OS name selection pattern
  7952. */
  7953. #define apzSun_CatmacroMachs (const char**)NULL
  7954. /*
  7955. * content selection pattern - do fix if pattern found
  7956. */
  7957. tSCC zSun_CatmacroSelect0[] =
  7958. "^#define[ \t]+CAT\\(a,b\\).*";
  7959. #define SUN_CATMACRO_TEST_CT 1
  7960. static tTestDesc aSun_CatmacroTests[] = {
  7961. { TT_EGREP, zSun_CatmacroSelect0, (regex_t*)NULL }, };
  7962. /*
  7963. * Fix Command Arguments for Sun_Catmacro
  7964. */
  7965. static const char* apzSun_CatmacroPatch[] = {
  7966. "format",
  7967. "#ifdef __STDC__\n\
  7968. # define CAT(a,b) a##b\n\
  7969. #else\n\
  7970. %0\n\
  7971. #endif",
  7972. (char*)NULL };
  7973. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  7974. *
  7975. * Description of Sun_Malloc fix
  7976. */
  7977. tSCC zSun_MallocName[] =
  7978. "sun_malloc";
  7979. /*
  7980. * File name selection pattern
  7981. */
  7982. tSCC zSun_MallocList[] =
  7983. "malloc.h\0";
  7984. /*
  7985. * Machine/OS name selection pattern
  7986. */
  7987. #define apzSun_MallocMachs (const char**)NULL
  7988. /*
  7989. * content bypass pattern - skip fix if pattern found
  7990. */
  7991. tSCC zSun_MallocBypass0[] =
  7992. "_CLASSIC_ANSI_TYPES";
  7993. #define SUN_MALLOC_TEST_CT 1
  7994. static tTestDesc aSun_MallocTests[] = {
  7995. { TT_NEGREP, zSun_MallocBypass0, (regex_t*)NULL }, };
  7996. /*
  7997. * Fix Command Arguments for Sun_Malloc
  7998. */
  7999. static const char* apzSun_MallocPatch[] = { sed_cmd_z,
  8000. "-e", "s/typedef[ \t]char \\*\tmalloc_t/typedef void \\*\tmalloc_t/g",
  8001. "-e", "s/int[ \t][ \t]*free/void\tfree/g",
  8002. "-e", "s/char\\([ \t]*\\*[ \t]*malloc\\)/void\\1/g",
  8003. "-e", "s/char\\([ \t]*\\*[ \t]*realloc\\)/void\\1/g",
  8004. "-e", "s/char\\([ \t]*\\*[ \t]*calloc\\)/void\\1/g",
  8005. (char*)NULL };
  8006. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8007. *
  8008. * Description of Sun_Rusers_Semi fix
  8009. */
  8010. tSCC zSun_Rusers_SemiName[] =
  8011. "sun_rusers_semi";
  8012. /*
  8013. * File name selection pattern
  8014. */
  8015. tSCC zSun_Rusers_SemiList[] =
  8016. "rpcsvc/rusers.h\0";
  8017. /*
  8018. * Machine/OS name selection pattern
  8019. */
  8020. #define apzSun_Rusers_SemiMachs (const char**)NULL
  8021. /*
  8022. * content selection pattern - do fix if pattern found
  8023. */
  8024. tSCC zSun_Rusers_SemiSelect0[] =
  8025. "_cnt$";
  8026. #define SUN_RUSERS_SEMI_TEST_CT 1
  8027. static tTestDesc aSun_Rusers_SemiTests[] = {
  8028. { TT_EGREP, zSun_Rusers_SemiSelect0, (regex_t*)NULL }, };
  8029. /*
  8030. * Fix Command Arguments for Sun_Rusers_Semi
  8031. */
  8032. static const char* apzSun_Rusers_SemiPatch[] = { sed_cmd_z,
  8033. "-e", "/^struct/,/^};/s/_cnt$/_cnt;/",
  8034. (char*)NULL };
  8035. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8036. *
  8037. * Description of Sun_Signal fix
  8038. */
  8039. tSCC zSun_SignalName[] =
  8040. "sun_signal";
  8041. /*
  8042. * File name selection pattern
  8043. */
  8044. tSCC zSun_SignalList[] =
  8045. "sys/signal.h\0signal.h\0";
  8046. /*
  8047. * Machine/OS name selection pattern
  8048. */
  8049. #define apzSun_SignalMachs (const char**)NULL
  8050. /*
  8051. * content selection pattern - do fix if pattern found
  8052. */
  8053. tSCC zSun_SignalSelect0[] =
  8054. "^void\t\\(\\*signal\\(\\)\\)\\(\\);.*";
  8055. #define SUN_SIGNAL_TEST_CT 1
  8056. static tTestDesc aSun_SignalTests[] = {
  8057. { TT_EGREP, zSun_SignalSelect0, (regex_t*)NULL }, };
  8058. /*
  8059. * Fix Command Arguments for Sun_Signal
  8060. */
  8061. static const char* apzSun_SignalPatch[] = {
  8062. "format",
  8063. "#ifdef __cplusplus\n\
  8064. void\t(*signal(...))(...);\n\
  8065. #else\n\
  8066. %0\n\
  8067. #endif",
  8068. (char*)NULL };
  8069. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8070. *
  8071. * Description of Sunos_Strlen fix
  8072. */
  8073. tSCC zSunos_StrlenName[] =
  8074. "sunos_strlen";
  8075. /*
  8076. * File name selection pattern
  8077. */
  8078. tSCC zSunos_StrlenList[] =
  8079. "strings.h\0";
  8080. /*
  8081. * Machine/OS name selection pattern
  8082. */
  8083. #define apzSunos_StrlenMachs (const char**)NULL
  8084. /*
  8085. * content selection pattern - do fix if pattern found
  8086. */
  8087. tSCC zSunos_StrlenSelect0[] =
  8088. "int[ \t]*strlen\\(\\);(.*)";
  8089. #define SUNOS_STRLEN_TEST_CT 1
  8090. static tTestDesc aSunos_StrlenTests[] = {
  8091. { TT_EGREP, zSunos_StrlenSelect0, (regex_t*)NULL }, };
  8092. /*
  8093. * Fix Command Arguments for Sunos_Strlen
  8094. */
  8095. static const char* apzSunos_StrlenPatch[] = {
  8096. "format",
  8097. "__SIZE_TYPE__ strlen();%1",
  8098. (char*)NULL };
  8099. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8100. *
  8101. * Description of Suse_Linux_Vt_Cxx fix
  8102. */
  8103. tSCC zSuse_Linux_Vt_CxxName[] =
  8104. "suse_linux_vt_cxx";
  8105. /*
  8106. * File name selection pattern
  8107. */
  8108. tSCC zSuse_Linux_Vt_CxxList[] =
  8109. "linux/vt.h\0";
  8110. /*
  8111. * Machine/OS name selection pattern
  8112. */
  8113. #define apzSuse_Linux_Vt_CxxMachs (const char**)NULL
  8114. /*
  8115. * content selection pattern - do fix if pattern found
  8116. */
  8117. tSCC zSuse_Linux_Vt_CxxSelect0[] =
  8118. "^[ \t]*unsigned int new;";
  8119. #define SUSE_LINUX_VT_CXX_TEST_CT 1
  8120. static tTestDesc aSuse_Linux_Vt_CxxTests[] = {
  8121. { TT_EGREP, zSuse_Linux_Vt_CxxSelect0, (regex_t*)NULL }, };
  8122. /*
  8123. * Fix Command Arguments for Suse_Linux_Vt_Cxx
  8124. */
  8125. static const char* apzSuse_Linux_Vt_CxxPatch[] = {
  8126. "format",
  8127. "unsigned int newev;",
  8128. (char*)NULL };
  8129. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8130. *
  8131. * Description of Svr4_Disable_Opt fix
  8132. */
  8133. tSCC zSvr4_Disable_OptName[] =
  8134. "svr4_disable_opt";
  8135. /*
  8136. * File name selection pattern
  8137. */
  8138. tSCC zSvr4_Disable_OptList[] =
  8139. "string.h\0";
  8140. /*
  8141. * Machine/OS name selection pattern
  8142. */
  8143. #define apzSvr4_Disable_OptMachs (const char**)NULL
  8144. /*
  8145. * content selection pattern - do fix if pattern found
  8146. */
  8147. tSCC zSvr4_Disable_OptSelect0[] =
  8148. "#define.*__std_hdr_";
  8149. #define SVR4_DISABLE_OPT_TEST_CT 1
  8150. static tTestDesc aSvr4_Disable_OptTests[] = {
  8151. { TT_EGREP, zSvr4_Disable_OptSelect0, (regex_t*)NULL }, };
  8152. /*
  8153. * Fix Command Arguments for Svr4_Disable_Opt
  8154. */
  8155. static const char* apzSvr4_Disable_OptPatch[] = { sed_cmd_z,
  8156. "-e", "/#define.*__std_hdr_/d",
  8157. (char*)NULL };
  8158. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8159. *
  8160. * Description of Svr4_Getcwd fix
  8161. */
  8162. tSCC zSvr4_GetcwdName[] =
  8163. "svr4_getcwd";
  8164. /*
  8165. * File name selection pattern
  8166. */
  8167. tSCC zSvr4_GetcwdList[] =
  8168. "stdlib.h\0unistd.h\0prototypes.h\0";
  8169. /*
  8170. * Machine/OS name selection pattern
  8171. */
  8172. #define apzSvr4_GetcwdMachs (const char**)NULL
  8173. /*
  8174. * content selection pattern - do fix if pattern found
  8175. */
  8176. tSCC zSvr4_GetcwdSelect0[] =
  8177. "getcwd\\(char \\*, int\\)";
  8178. #define SVR4_GETCWD_TEST_CT 1
  8179. static tTestDesc aSvr4_GetcwdTests[] = {
  8180. { TT_EGREP, zSvr4_GetcwdSelect0, (regex_t*)NULL }, };
  8181. /*
  8182. * Fix Command Arguments for Svr4_Getcwd
  8183. */
  8184. static const char* apzSvr4_GetcwdPatch[] = {
  8185. "format",
  8186. "getcwd(char *, size_t)",
  8187. (char*)NULL };
  8188. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8189. *
  8190. * Description of Svr4_Profil fix
  8191. */
  8192. tSCC zSvr4_ProfilName[] =
  8193. "svr4_profil";
  8194. /*
  8195. * File name selection pattern
  8196. */
  8197. tSCC zSvr4_ProfilList[] =
  8198. "stdlib.h\0unistd.h\0";
  8199. /*
  8200. * Machine/OS name selection pattern
  8201. */
  8202. #define apzSvr4_ProfilMachs (const char**)NULL
  8203. /*
  8204. * content selection pattern - do fix if pattern found
  8205. */
  8206. tSCC zSvr4_ProfilSelect0[] =
  8207. "profil\\(unsigned short \\*, unsigned int, unsigned int, unsigned int\\)";
  8208. #define SVR4_PROFIL_TEST_CT 1
  8209. static tTestDesc aSvr4_ProfilTests[] = {
  8210. { TT_EGREP, zSvr4_ProfilSelect0, (regex_t*)NULL }, };
  8211. /*
  8212. * Fix Command Arguments for Svr4_Profil
  8213. */
  8214. static const char* apzSvr4_ProfilPatch[] = {
  8215. "format",
  8216. "profil(unsigned short *, size_t, int, unsigned int)",
  8217. (char*)NULL };
  8218. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8219. *
  8220. * Description of Svr4_Sighandler_Type fix
  8221. */
  8222. tSCC zSvr4_Sighandler_TypeName[] =
  8223. "svr4_sighandler_type";
  8224. /*
  8225. * File name selection pattern
  8226. */
  8227. tSCC zSvr4_Sighandler_TypeList[] =
  8228. "sys/signal.h\0";
  8229. /*
  8230. * Machine/OS name selection pattern
  8231. */
  8232. #define apzSvr4_Sighandler_TypeMachs (const char**)NULL
  8233. /*
  8234. * content selection pattern - do fix if pattern found
  8235. */
  8236. tSCC zSvr4_Sighandler_TypeSelect0[] =
  8237. "void *\\(\\*\\)\\(\\)";
  8238. #define SVR4_SIGHANDLER_TYPE_TEST_CT 1
  8239. static tTestDesc aSvr4_Sighandler_TypeTests[] = {
  8240. { TT_EGREP, zSvr4_Sighandler_TypeSelect0, (regex_t*)NULL }, };
  8241. /*
  8242. * Fix Command Arguments for Svr4_Sighandler_Type
  8243. */
  8244. static const char* apzSvr4_Sighandler_TypePatch[] = {
  8245. "format",
  8246. "void (*)(int)",
  8247. (char*)NULL };
  8248. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8249. *
  8250. * Description of Svr4_Undeclared_Getrnge fix
  8251. */
  8252. tSCC zSvr4_Undeclared_GetrngeName[] =
  8253. "svr4_undeclared_getrnge";
  8254. /*
  8255. * File name selection pattern
  8256. */
  8257. tSCC zSvr4_Undeclared_GetrngeList[] =
  8258. "regexp.h\0";
  8259. /*
  8260. * Machine/OS name selection pattern
  8261. */
  8262. #define apzSvr4_Undeclared_GetrngeMachs (const char**)NULL
  8263. /*
  8264. * content selection pattern - do fix if pattern found
  8265. */
  8266. tSCC zSvr4_Undeclared_GetrngeSelect0[] =
  8267. "getrnge";
  8268. /*
  8269. * content bypass pattern - skip fix if pattern found
  8270. */
  8271. tSCC zSvr4_Undeclared_GetrngeBypass0[] =
  8272. "static void getrnge";
  8273. #define SVR4_UNDECLARED_GETRNGE_TEST_CT 2
  8274. static tTestDesc aSvr4_Undeclared_GetrngeTests[] = {
  8275. { TT_NEGREP, zSvr4_Undeclared_GetrngeBypass0, (regex_t*)NULL },
  8276. { TT_EGREP, zSvr4_Undeclared_GetrngeSelect0, (regex_t*)NULL }, };
  8277. /*
  8278. * Fix Command Arguments for Svr4_Undeclared_Getrnge
  8279. */
  8280. static const char* apzSvr4_Undeclared_GetrngePatch[] = {
  8281. "format",
  8282. "%0\n\
  8283. static int getrnge ();",
  8284. "^static int[ \t]+size;",
  8285. (char*)NULL };
  8286. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8287. *
  8288. * Description of Sysv68_String fix
  8289. */
  8290. tSCC zSysv68_StringName[] =
  8291. "sysv68_string";
  8292. /*
  8293. * File name selection pattern
  8294. */
  8295. tSCC zSysv68_StringList[] =
  8296. "testing.h\0string.h\0";
  8297. /*
  8298. * Machine/OS name selection pattern
  8299. */
  8300. #define apzSysv68_StringMachs (const char**)NULL
  8301. /*
  8302. * content bypass pattern - skip fix if pattern found
  8303. */
  8304. tSCC zSysv68_StringBypass0[] =
  8305. "_CLASSIC_ANSI_TYPES";
  8306. #define SYSV68_STRING_TEST_CT 1
  8307. static tTestDesc aSysv68_StringTests[] = {
  8308. { TT_NEGREP, zSysv68_StringBypass0, (regex_t*)NULL }, };
  8309. /*
  8310. * Fix Command Arguments for Sysv68_String
  8311. */
  8312. static const char* apzSysv68_StringPatch[] = { sed_cmd_z,
  8313. "-e", "s/extern[ \t]*int[ \t]*strlen();/extern unsigned int strlen();/",
  8314. "-e", "s/extern[ \t]*int[ \t]*ffs[ \t]*(long);/extern int ffs(int);/",
  8315. "-e", "s/strdup(char \\*s1);/strdup(const char *s1);/",
  8316. "-e", "/^extern char$/N",
  8317. "-e", "s/^extern char\\(\\n\t\\*memccpy(),\\)$/extern void\\1/",
  8318. "-e", "/^extern int$/N",
  8319. "-e", "s/^extern int\\(\\n\tstrlen(),\\)/extern size_t\\1/",
  8320. "-e", "/^\tstrncmp(),$/N",
  8321. "-e", "s/^\\(\tstrncmp()\\),\\n\\(\tstrlen(),\\)$/\\1;\\\n\
  8322. extern unsigned int\\\n\
  8323. \\2/",
  8324. (char*)NULL };
  8325. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8326. *
  8327. * Description of Sysz_Stdlib_For_Sun fix
  8328. */
  8329. tSCC zSysz_Stdlib_For_SunName[] =
  8330. "sysz_stdlib_for_sun";
  8331. /*
  8332. * File name selection pattern
  8333. */
  8334. tSCC zSysz_Stdlib_For_SunList[] =
  8335. "stdlib.h\0";
  8336. /*
  8337. * Machine/OS name selection pattern
  8338. */
  8339. #define apzSysz_Stdlib_For_SunMachs (const char**)NULL
  8340. /*
  8341. * content selection pattern - do fix if pattern found
  8342. */
  8343. tSCC zSysz_Stdlib_For_SunSelect0[] =
  8344. "char[ \t]*\\*[ \t]*(calloc|malloc|realloc|bsearch)[ \t]*\\(";
  8345. /*
  8346. * content bypass pattern - skip fix if pattern found
  8347. */
  8348. tSCC zSysz_Stdlib_For_SunBypass0[] =
  8349. "_CLASSIC_ANSI_TYPES";
  8350. #define SYSZ_STDLIB_FOR_SUN_TEST_CT 2
  8351. static tTestDesc aSysz_Stdlib_For_SunTests[] = {
  8352. { TT_NEGREP, zSysz_Stdlib_For_SunBypass0, (regex_t*)NULL },
  8353. { TT_EGREP, zSysz_Stdlib_For_SunSelect0, (regex_t*)NULL }, };
  8354. /*
  8355. * Fix Command Arguments for Sysz_Stdlib_For_Sun
  8356. */
  8357. static const char* apzSysz_Stdlib_For_SunPatch[] = {
  8358. "format",
  8359. "void *\t%1(",
  8360. (char*)NULL };
  8361. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8362. *
  8363. * Description of Thread_Keyword fix
  8364. */
  8365. tSCC zThread_KeywordName[] =
  8366. "thread_keyword";
  8367. /*
  8368. * File name selection pattern
  8369. */
  8370. tSCC zThread_KeywordList[] =
  8371. "pthread.h\0bits/sigthread.h\0*/bits/sigthread.h\0";
  8372. /*
  8373. * Machine/OS name selection pattern
  8374. */
  8375. #define apzThread_KeywordMachs (const char**)NULL
  8376. /*
  8377. * content selection pattern - do fix if pattern found
  8378. */
  8379. tSCC zThread_KeywordSelect0[] =
  8380. "([* ])__thread([,)])";
  8381. #define THREAD_KEYWORD_TEST_CT 1
  8382. static tTestDesc aThread_KeywordTests[] = {
  8383. { TT_EGREP, zThread_KeywordSelect0, (regex_t*)NULL }, };
  8384. /*
  8385. * Fix Command Arguments for Thread_Keyword
  8386. */
  8387. static const char* apzThread_KeywordPatch[] = {
  8388. "format",
  8389. "%1__thr%2",
  8390. (char*)NULL };
  8391. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8392. *
  8393. * Description of Tinfo_Cplusplus fix
  8394. */
  8395. tSCC zTinfo_CplusplusName[] =
  8396. "tinfo_cplusplus";
  8397. /*
  8398. * File name selection pattern
  8399. */
  8400. tSCC zTinfo_CplusplusList[] =
  8401. "tinfo.h\0";
  8402. /*
  8403. * Machine/OS name selection pattern
  8404. */
  8405. #define apzTinfo_CplusplusMachs (const char**)NULL
  8406. /*
  8407. * content selection pattern - do fix if pattern found
  8408. */
  8409. tSCC zTinfo_CplusplusSelect0[] =
  8410. "[ \t]_cplusplus";
  8411. #define TINFO_CPLUSPLUS_TEST_CT 1
  8412. static tTestDesc aTinfo_CplusplusTests[] = {
  8413. { TT_EGREP, zTinfo_CplusplusSelect0, (regex_t*)NULL }, };
  8414. /*
  8415. * Fix Command Arguments for Tinfo_Cplusplus
  8416. */
  8417. static const char* apzTinfo_CplusplusPatch[] = {
  8418. "format",
  8419. " __cplusplus",
  8420. (char*)NULL };
  8421. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8422. *
  8423. * Description of Ultrix_Const fix
  8424. */
  8425. tSCC zUltrix_ConstName[] =
  8426. "ultrix_const";
  8427. /*
  8428. * File name selection pattern
  8429. */
  8430. tSCC zUltrix_ConstList[] =
  8431. "stdio.h\0";
  8432. /*
  8433. * Machine/OS name selection pattern
  8434. */
  8435. #define apzUltrix_ConstMachs (const char**)NULL
  8436. /*
  8437. * content selection pattern - do fix if pattern found
  8438. */
  8439. tSCC zUltrix_ConstSelect0[] =
  8440. "perror\\( char \\*";
  8441. #define ULTRIX_CONST_TEST_CT 1
  8442. static tTestDesc aUltrix_ConstTests[] = {
  8443. { TT_EGREP, zUltrix_ConstSelect0, (regex_t*)NULL }, };
  8444. /*
  8445. * Fix Command Arguments for Ultrix_Const
  8446. */
  8447. static const char* apzUltrix_ConstPatch[] = {
  8448. "format",
  8449. "%1 const %3 *__",
  8450. "([ \t*](perror|fputs|fwrite|scanf|fscanf)\\(.*)[ \t]+(char|void) \\*__",
  8451. (char*)NULL };
  8452. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8453. *
  8454. * Description of Ultrix_Const2 fix
  8455. */
  8456. tSCC zUltrix_Const2Name[] =
  8457. "ultrix_const2";
  8458. /*
  8459. * File name selection pattern
  8460. */
  8461. tSCC zUltrix_Const2List[] =
  8462. "stdio.h\0";
  8463. /*
  8464. * Machine/OS name selection pattern
  8465. */
  8466. #define apzUltrix_Const2Machs (const char**)NULL
  8467. /*
  8468. * content selection pattern - do fix if pattern found
  8469. */
  8470. tSCC zUltrix_Const2Select0[] =
  8471. "\\*fopen\\( char \\*";
  8472. #define ULTRIX_CONST2_TEST_CT 1
  8473. static tTestDesc aUltrix_Const2Tests[] = {
  8474. { TT_EGREP, zUltrix_Const2Select0, (regex_t*)NULL }, };
  8475. /*
  8476. * Fix Command Arguments for Ultrix_Const2
  8477. */
  8478. static const char* apzUltrix_Const2Patch[] = {
  8479. "format",
  8480. "%1( const char *%3, const char *",
  8481. "([ \t*](fopen|sscanf|popen|tempnam))\\([ \t]*char[ \t]*\\*([^,]*),[ \t]*char[ \t]*\\*[ \t]*",
  8482. (char*)NULL };
  8483. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8484. *
  8485. * Description of Va_I960_Macro fix
  8486. */
  8487. tSCC zVa_I960_MacroName[] =
  8488. "va_i960_macro";
  8489. /*
  8490. * File name selection pattern
  8491. */
  8492. tSCC zVa_I960_MacroList[] =
  8493. "arch/i960/archI960.h\0";
  8494. /*
  8495. * Machine/OS name selection pattern
  8496. */
  8497. #define apzVa_I960_MacroMachs (const char**)NULL
  8498. /*
  8499. * content selection pattern - do fix if pattern found
  8500. */
  8501. tSCC zVa_I960_MacroSelect0[] =
  8502. "__(vsiz|vali|vpad|alignof__)";
  8503. #define VA_I960_MACRO_TEST_CT 1
  8504. static tTestDesc aVa_I960_MacroTests[] = {
  8505. { TT_EGREP, zVa_I960_MacroSelect0, (regex_t*)NULL }, };
  8506. /*
  8507. * Fix Command Arguments for Va_I960_Macro
  8508. */
  8509. static const char* apzVa_I960_MacroPatch[] = {
  8510. "format",
  8511. "__vx%1",
  8512. (char*)NULL };
  8513. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8514. *
  8515. * Description of Vms_Add_Missing_Braces fix
  8516. */
  8517. tSCC zVms_Add_Missing_BracesName[] =
  8518. "vms_add_missing_braces";
  8519. /*
  8520. * File name selection pattern
  8521. */
  8522. tSCC zVms_Add_Missing_BracesList[] =
  8523. "rtldef/signal.h\0";
  8524. /*
  8525. * Machine/OS name selection pattern
  8526. */
  8527. tSCC* apzVms_Add_Missing_BracesMachs[] = {
  8528. "*-*-*vms*",
  8529. (const char*)NULL };
  8530. /*
  8531. * content selection pattern - do fix if pattern found
  8532. */
  8533. tSCC zVms_Add_Missing_BracesSelect0[] =
  8534. "(_SIG_[A-Z]+_SET[ \t]+= \\{)(0x[0F]+, 0x[0F]+)";
  8535. #define VMS_ADD_MISSING_BRACES_TEST_CT 1
  8536. static tTestDesc aVms_Add_Missing_BracesTests[] = {
  8537. { TT_EGREP, zVms_Add_Missing_BracesSelect0, (regex_t*)NULL }, };
  8538. /*
  8539. * Fix Command Arguments for Vms_Add_Missing_Braces
  8540. */
  8541. static const char* apzVms_Add_Missing_BracesPatch[] = {
  8542. "format",
  8543. "%1 {%2} ",
  8544. (char*)NULL };
  8545. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8546. *
  8547. * Description of Vms_Decc_Builtin fix
  8548. */
  8549. tSCC zVms_Decc_BuiltinName[] =
  8550. "vms_decc_builtin";
  8551. /*
  8552. * File name selection pattern
  8553. */
  8554. tSCC zVms_Decc_BuiltinList[] =
  8555. "rtldef/string.h\0rtldef/time.h\0rtldef/strings.h\0rtldef/socket.h\0";
  8556. /*
  8557. * Machine/OS name selection pattern
  8558. */
  8559. tSCC* apzVms_Decc_BuiltinMachs[] = {
  8560. "*-*-*vms*",
  8561. (const char*)NULL };
  8562. /*
  8563. * content selection pattern - do fix if pattern found
  8564. */
  8565. tSCC zVms_Decc_BuiltinSelect0[] =
  8566. "(__MEMSET|__MEMMOVE|__MEMCPY|__STRLEN|__STRCPY)";
  8567. #define VMS_DECC_BUILTIN_TEST_CT 1
  8568. static tTestDesc aVms_Decc_BuiltinTests[] = {
  8569. { TT_EGREP, zVms_Decc_BuiltinSelect0, (regex_t*)NULL }, };
  8570. /*
  8571. * Fix Command Arguments for Vms_Decc_Builtin
  8572. */
  8573. static const char* apzVms_Decc_BuiltinPatch[] = { sed_cmd_z,
  8574. "-e", "s@__MEMSET@memset@",
  8575. "-e", "s@__MEMMOVE@memmove@",
  8576. "-e", "s@__MEMCPY@memcpy@",
  8577. "-e", "s@__STRLEN@strlen@",
  8578. "-e", "s@__STRCPY@strcpy@",
  8579. (char*)NULL };
  8580. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8581. *
  8582. * Description of Vms_Define_Can_Use_Extern_Prefix fix
  8583. */
  8584. tSCC zVms_Define_Can_Use_Extern_PrefixName[] =
  8585. "vms_define_can_use_extern_prefix";
  8586. /*
  8587. * File name selection pattern
  8588. */
  8589. tSCC zVms_Define_Can_Use_Extern_PrefixList[] =
  8590. "rtldef/decc$types.h\0";
  8591. /*
  8592. * Machine/OS name selection pattern
  8593. */
  8594. tSCC* apzVms_Define_Can_Use_Extern_PrefixMachs[] = {
  8595. "*-*-*vms*",
  8596. (const char*)NULL };
  8597. /*
  8598. * content selection pattern - do fix if pattern found
  8599. */
  8600. tSCC zVms_Define_Can_Use_Extern_PrefixSelect0[] =
  8601. "#[ \t]*else\n\
  8602. #[ \t]*if defined\\(__DECCXX\\)\n\
  8603. #[ \t]*define __CAN_USE_EXTERN_PREFIX 1\n";
  8604. #define VMS_DEFINE_CAN_USE_EXTERN_PREFIX_TEST_CT 1
  8605. static tTestDesc aVms_Define_Can_Use_Extern_PrefixTests[] = {
  8606. { TT_EGREP, zVms_Define_Can_Use_Extern_PrefixSelect0, (regex_t*)NULL }, };
  8607. /*
  8608. * Fix Command Arguments for Vms_Define_Can_Use_Extern_Prefix
  8609. */
  8610. static const char* apzVms_Define_Can_Use_Extern_PrefixPatch[] = {
  8611. "format",
  8612. "%0# elif defined (__GNUC__)\n\
  8613. #\tdefine __CAN_USE_EXTERN_PREFIX 1\n",
  8614. (char*)NULL };
  8615. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8616. *
  8617. * Description of Vms_Disable_Decc_String_Builtins fix
  8618. */
  8619. tSCC zVms_Disable_Decc_String_BuiltinsName[] =
  8620. "vms_disable_decc_string_builtins";
  8621. /*
  8622. * File name selection pattern
  8623. */
  8624. tSCC zVms_Disable_Decc_String_BuiltinsList[] =
  8625. "rtldef/string.h\0";
  8626. /*
  8627. * Machine/OS name selection pattern
  8628. */
  8629. tSCC* apzVms_Disable_Decc_String_BuiltinsMachs[] = {
  8630. "*-*-*vms*",
  8631. (const char*)NULL };
  8632. /*
  8633. * content selection pattern - do fix if pattern found
  8634. */
  8635. tSCC zVms_Disable_Decc_String_BuiltinsSelect0[] =
  8636. "#if !defined\\(__VAX\\)\n";
  8637. #define VMS_DISABLE_DECC_STRING_BUILTINS_TEST_CT 1
  8638. static tTestDesc aVms_Disable_Decc_String_BuiltinsTests[] = {
  8639. { TT_EGREP, zVms_Disable_Decc_String_BuiltinsSelect0, (regex_t*)NULL }, };
  8640. /*
  8641. * Fix Command Arguments for Vms_Disable_Decc_String_Builtins
  8642. */
  8643. static const char* apzVms_Disable_Decc_String_BuiltinsPatch[] = {
  8644. "format",
  8645. "#if !defined(__VAX) && !defined(__GNUC__)\n",
  8646. (char*)NULL };
  8647. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8648. *
  8649. * Description of Vms_Do_Not_Redeclare_Hostalias fix
  8650. */
  8651. tSCC zVms_Do_Not_Redeclare_HostaliasName[] =
  8652. "vms_do_not_redeclare_hostalias";
  8653. /*
  8654. * File name selection pattern
  8655. */
  8656. tSCC zVms_Do_Not_Redeclare_HostaliasList[] =
  8657. "rtldef/resolv.h\0";
  8658. /*
  8659. * Machine/OS name selection pattern
  8660. */
  8661. tSCC* apzVms_Do_Not_Redeclare_HostaliasMachs[] = {
  8662. "*-*-*vms*",
  8663. (const char*)NULL };
  8664. /*
  8665. * content selection pattern - do fix if pattern found
  8666. */
  8667. tSCC zVms_Do_Not_Redeclare_HostaliasSelect0[] =
  8668. "(void[ \t]+fp_nquery \\(const u_char \\*, int, FILE \\*\\);)\n\
  8669. (__char_ptr32[ \t]+hostalias \\(const char \\*\\);)";
  8670. #define VMS_DO_NOT_REDECLARE_HOSTALIAS_TEST_CT 1
  8671. static tTestDesc aVms_Do_Not_Redeclare_HostaliasTests[] = {
  8672. { TT_EGREP, zVms_Do_Not_Redeclare_HostaliasSelect0, (regex_t*)NULL }, };
  8673. /*
  8674. * Fix Command Arguments for Vms_Do_Not_Redeclare_Hostalias
  8675. */
  8676. static const char* apzVms_Do_Not_Redeclare_HostaliasPatch[] = {
  8677. "format",
  8678. "%1\n\
  8679. /* %2 */",
  8680. (char*)NULL };
  8681. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8682. *
  8683. * Description of Vms_Forward_Declare_Struct fix
  8684. */
  8685. tSCC zVms_Forward_Declare_StructName[] =
  8686. "vms_forward_declare_struct";
  8687. /*
  8688. * File name selection pattern
  8689. */
  8690. tSCC zVms_Forward_Declare_StructList[] =
  8691. "rtldef/if.h\0";
  8692. /*
  8693. * Machine/OS name selection pattern
  8694. */
  8695. tSCC* apzVms_Forward_Declare_StructMachs[] = {
  8696. "*-*-*vms*",
  8697. (const char*)NULL };
  8698. /*
  8699. * content selection pattern - do fix if pattern found
  8700. */
  8701. tSCC zVms_Forward_Declare_StructSelect0[] =
  8702. "(/\\* forward decls for C\\+\\+ \\*/\n\
  8703. )#ifdef __cplusplus\n";
  8704. #define VMS_FORWARD_DECLARE_STRUCT_TEST_CT 1
  8705. static tTestDesc aVms_Forward_Declare_StructTests[] = {
  8706. { TT_EGREP, zVms_Forward_Declare_StructSelect0, (regex_t*)NULL }, };
  8707. /*
  8708. * Fix Command Arguments for Vms_Forward_Declare_Struct
  8709. */
  8710. static const char* apzVms_Forward_Declare_StructPatch[] = {
  8711. "format",
  8712. "%1#if defined (__cplusplus) || defined (__GNUC__)\n",
  8713. (char*)NULL };
  8714. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8715. *
  8716. * Description of Vms_No_64bit_Getopt fix
  8717. */
  8718. tSCC zVms_No_64bit_GetoptName[] =
  8719. "vms_no_64bit_getopt";
  8720. /*
  8721. * File name selection pattern
  8722. */
  8723. tSCC zVms_No_64bit_GetoptList[] =
  8724. "rtldef/stdio.h\0rtldef/unistd.h\0";
  8725. /*
  8726. * Machine/OS name selection pattern
  8727. */
  8728. tSCC* apzVms_No_64bit_GetoptMachs[] = {
  8729. "*-*-*vms*",
  8730. (const char*)NULL };
  8731. /*
  8732. * content selection pattern - do fix if pattern found
  8733. */
  8734. tSCC zVms_No_64bit_GetoptSelect0[] =
  8735. "^[ \t]*(extern[ \t]*)?(int[ \t]*(getopt|optind|opterr|optopt)|(char \\*optarg))([ \t]*\\(.*\\))?;\n";
  8736. #define VMS_NO_64BIT_GETOPT_TEST_CT 1
  8737. static tTestDesc aVms_No_64bit_GetoptTests[] = {
  8738. { TT_EGREP, zVms_No_64bit_GetoptSelect0, (regex_t*)NULL }, };
  8739. /*
  8740. * Fix Command Arguments for Vms_No_64bit_Getopt
  8741. */
  8742. static const char* apzVms_No_64bit_GetoptPatch[] = {
  8743. "format",
  8744. "#if __INITIAL_POINTER_SIZE != 64 /* getopt is short ptr only. */\n\
  8745. %0#endif\n",
  8746. (char*)NULL };
  8747. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8748. *
  8749. * Description of Vms_Use_Fast_Setjmp fix
  8750. */
  8751. tSCC zVms_Use_Fast_SetjmpName[] =
  8752. "vms_use_fast_setjmp";
  8753. /*
  8754. * File name selection pattern
  8755. */
  8756. tSCC zVms_Use_Fast_SetjmpList[] =
  8757. "rtldef/setjmp.h\0";
  8758. /*
  8759. * Machine/OS name selection pattern
  8760. */
  8761. tSCC* apzVms_Use_Fast_SetjmpMachs[] = {
  8762. "*-*-*vms*",
  8763. (const char*)NULL };
  8764. /*
  8765. * content selection pattern - do fix if pattern found
  8766. */
  8767. tSCC zVms_Use_Fast_SetjmpSelect0[] =
  8768. "(#[ \t]*if[ \t]*defined\\(__FAST_SETJMP\\)[ \t]*\\|\\|)";
  8769. #define VMS_USE_FAST_SETJMP_TEST_CT 1
  8770. static tTestDesc aVms_Use_Fast_SetjmpTests[] = {
  8771. { TT_EGREP, zVms_Use_Fast_SetjmpSelect0, (regex_t*)NULL }, };
  8772. /*
  8773. * Fix Command Arguments for Vms_Use_Fast_Setjmp
  8774. */
  8775. static const char* apzVms_Use_Fast_SetjmpPatch[] = {
  8776. "format",
  8777. "%0 defined (__GNUC__) ||",
  8778. (char*)NULL };
  8779. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8780. *
  8781. * Description of Vms_Use_Pragma_Extern_Model fix
  8782. */
  8783. tSCC zVms_Use_Pragma_Extern_ModelName[] =
  8784. "vms_use_pragma_extern_model";
  8785. /*
  8786. * File name selection pattern
  8787. */
  8788. #define zVms_Use_Pragma_Extern_ModelList (char*)NULL
  8789. /*
  8790. * Machine/OS name selection pattern
  8791. */
  8792. tSCC* apzVms_Use_Pragma_Extern_ModelMachs[] = {
  8793. "*-*-*vms*",
  8794. (const char*)NULL };
  8795. /*
  8796. * content selection pattern - do fix if pattern found
  8797. */
  8798. tSCC zVms_Use_Pragma_Extern_ModelSelect0[] =
  8799. "#if defined\\(__DECC\\) \\|\\| defined\\(__DECCXX\\)\n\
  8800. # pragma extern_model __save\n";
  8801. #define VMS_USE_PRAGMA_EXTERN_MODEL_TEST_CT 1
  8802. static tTestDesc aVms_Use_Pragma_Extern_ModelTests[] = {
  8803. { TT_EGREP, zVms_Use_Pragma_Extern_ModelSelect0, (regex_t*)NULL }, };
  8804. /*
  8805. * Fix Command Arguments for Vms_Use_Pragma_Extern_Model
  8806. */
  8807. static const char* apzVms_Use_Pragma_Extern_ModelPatch[] = {
  8808. "format",
  8809. "#if defined(__DECC) || defined(__DECCXX) || defined(__GNUC__)\n\
  8810. # pragma extern_model __save\n",
  8811. (char*)NULL };
  8812. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8813. *
  8814. * Description of Vms_Use_Quoted_Include fix
  8815. */
  8816. tSCC zVms_Use_Quoted_IncludeName[] =
  8817. "vms_use_quoted_include";
  8818. /*
  8819. * File name selection pattern
  8820. */
  8821. tSCC zVms_Use_Quoted_IncludeList[] =
  8822. "rtldef/wait.h\0starlet_c/pthread.h\0";
  8823. /*
  8824. * Machine/OS name selection pattern
  8825. */
  8826. tSCC* apzVms_Use_Quoted_IncludeMachs[] = {
  8827. "*-*-*vms*",
  8828. (const char*)NULL };
  8829. /*
  8830. * content selection pattern - do fix if pattern found
  8831. */
  8832. tSCC zVms_Use_Quoted_IncludeSelect0[] =
  8833. "(#[ \t]*include[ \t]+)<(resource|builtins)\\.h>";
  8834. #define VMS_USE_QUOTED_INCLUDE_TEST_CT 1
  8835. static tTestDesc aVms_Use_Quoted_IncludeTests[] = {
  8836. { TT_EGREP, zVms_Use_Quoted_IncludeSelect0, (regex_t*)NULL }, };
  8837. /*
  8838. * Fix Command Arguments for Vms_Use_Quoted_Include
  8839. */
  8840. static const char* apzVms_Use_Quoted_IncludePatch[] = {
  8841. "format",
  8842. "%1<sys/%2.h>",
  8843. (char*)NULL };
  8844. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8845. *
  8846. * Description of Void_Null fix
  8847. */
  8848. tSCC zVoid_NullName[] =
  8849. "void_null";
  8850. /*
  8851. * File name selection pattern
  8852. */
  8853. tSCC zVoid_NullList[] =
  8854. "curses.h\0dbm.h\0locale.h\0stdio.h\0stdlib.h\0string.h\0time.h\0unistd.h\0sys/dir.h\0sys/param.h\0sys/types.h\0";
  8855. /*
  8856. * Machine/OS name selection pattern
  8857. */
  8858. #define apzVoid_NullMachs (const char**)NULL
  8859. /*
  8860. * content selection pattern - do fix if pattern found
  8861. */
  8862. tSCC zVoid_NullSelect0[] =
  8863. "^#[ \t]*define[ \t]+NULL[ \t]+\\(\\(void[ \t]*\\*\\)0\\)";
  8864. /*
  8865. * content bypass pattern - skip fix if pattern found
  8866. */
  8867. tSCC zVoid_NullBypass0[] =
  8868. "__cplusplus";
  8869. tSCC zVoid_NullBypass1[] =
  8870. "__null";
  8871. #define VOID_NULL_TEST_CT 3
  8872. static tTestDesc aVoid_NullTests[] = {
  8873. { TT_NEGREP, zVoid_NullBypass0, (regex_t*)NULL },
  8874. { TT_NEGREP, zVoid_NullBypass1, (regex_t*)NULL },
  8875. { TT_EGREP, zVoid_NullSelect0, (regex_t*)NULL }, };
  8876. /*
  8877. * Fix Command Arguments for Void_Null
  8878. */
  8879. static const char* apzVoid_NullPatch[] = {
  8880. "format",
  8881. "#ifndef NULL\n\
  8882. #ifdef __cplusplus\n\
  8883. #ifdef __GNUG__\n\
  8884. #define NULL __null\n\
  8885. #else /* ! __GNUG__ */\n\
  8886. #define NULL 0L\n\
  8887. #endif /* __GNUG__ */\n\
  8888. #else /* ! __cplusplus */\n\
  8889. #define NULL ((void *)0)\n\
  8890. #endif /* __cplusplus */\n\
  8891. #endif /* !NULL */",
  8892. (char*)NULL };
  8893. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8894. *
  8895. * Description of Vxworks_Gcc_Problem fix
  8896. */
  8897. tSCC zVxworks_Gcc_ProblemName[] =
  8898. "vxworks_gcc_problem";
  8899. /*
  8900. * File name selection pattern
  8901. */
  8902. tSCC zVxworks_Gcc_ProblemList[] =
  8903. "types/vxTypesBase.h\0";
  8904. /*
  8905. * Machine/OS name selection pattern
  8906. */
  8907. #define apzVxworks_Gcc_ProblemMachs (const char**)NULL
  8908. /*
  8909. * content selection pattern - do fix if pattern found
  8910. */
  8911. tSCC zVxworks_Gcc_ProblemSelect0[] =
  8912. "__GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__";
  8913. #define VXWORKS_GCC_PROBLEM_TEST_CT 1
  8914. static tTestDesc aVxworks_Gcc_ProblemTests[] = {
  8915. { TT_EGREP, zVxworks_Gcc_ProblemSelect0, (regex_t*)NULL }, };
  8916. /*
  8917. * Fix Command Arguments for Vxworks_Gcc_Problem
  8918. */
  8919. static const char* apzVxworks_Gcc_ProblemPatch[] = { sed_cmd_z,
  8920. "-e", "s/#ifdef __GNUC_TYPEOF_FEATURE_BROKEN_USE_DEFAULT_UNTIL_FIXED__/#if 1/",
  8921. "-e", "/[ \t]size_t/i\\\n\
  8922. #ifndef _GCC_SIZE_T\\\n\
  8923. #define _GCC_SIZE_T\n",
  8924. "-e", "/[ \t]size_t/a\\\n\
  8925. #endif\n",
  8926. "-e", "/[ \t]ptrdiff_t/i\\\n\
  8927. #ifndef _GCC_PTRDIFF_T\\\n\
  8928. #define _GCC_PTRDIFF_T\n",
  8929. "-e", "/[ \t]ptrdiff_t/a\\\n\
  8930. #endif\n",
  8931. "-e", "/[ \t]wchar_t/i\\\n\
  8932. #ifndef _GCC_WCHAR_T\\\n\
  8933. #define _GCC_WCHAR_T\n",
  8934. "-e", "/[ \t]wchar_t/a\\\n\
  8935. #endif\n",
  8936. (char*)NULL };
  8937. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8938. *
  8939. * Description of Vxworks_Ioctl_Macro fix
  8940. */
  8941. tSCC zVxworks_Ioctl_MacroName[] =
  8942. "vxworks_ioctl_macro";
  8943. /*
  8944. * File name selection pattern
  8945. */
  8946. tSCC zVxworks_Ioctl_MacroList[] =
  8947. "ioLib.h\0";
  8948. /*
  8949. * Machine/OS name selection pattern
  8950. */
  8951. tSCC* apzVxworks_Ioctl_MacroMachs[] = {
  8952. "*-*-vxworks*",
  8953. (const char*)NULL };
  8954. #define VXWORKS_IOCTL_MACRO_TEST_CT 0
  8955. #define aVxworks_Ioctl_MacroTests (tTestDesc*)NULL
  8956. /*
  8957. * Fix Command Arguments for Vxworks_Ioctl_Macro
  8958. */
  8959. static const char* apzVxworks_Ioctl_MacroPatch[] = {
  8960. "format",
  8961. "%0\n\
  8962. #define ioctl(fd, func, arg) ioctl(fd, func, (int)(arg))\n",
  8963. "extern[\t ]+int[\t ]+ioctl[\t ]*\\([\t ,[:alnum:]]*\\);",
  8964. (char*)NULL };
  8965. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  8966. *
  8967. * Description of Vxworks_Math_H_Fp_C99 fix
  8968. */
  8969. tSCC zVxworks_Math_H_Fp_C99Name[] =
  8970. "vxworks_math_h_fp_c99";
  8971. /*
  8972. * File name selection pattern
  8973. */
  8974. tSCC zVxworks_Math_H_Fp_C99List[] =
  8975. "math.h\0";
  8976. /*
  8977. * Machine/OS name selection pattern
  8978. */
  8979. tSCC* apzVxworks_Math_H_Fp_C99Machs[] = {
  8980. "*-*-vxworks*",
  8981. (const char*)NULL };
  8982. /*
  8983. * content selection pattern - do fix if pattern found
  8984. */
  8985. tSCC zVxworks_Math_H_Fp_C99Select0[] =
  8986. "#define HUGE_VAL[ \t]*_ARCH.*";
  8987. /*
  8988. * content bypass pattern - skip fix if pattern found
  8989. */
  8990. tSCC zVxworks_Math_H_Fp_C99Bypass0[] =
  8991. "#define[ \t]+FP_INFINITE";
  8992. #define VXWORKS_MATH_H_FP_C99_TEST_CT 2
  8993. static tTestDesc aVxworks_Math_H_Fp_C99Tests[] = {
  8994. { TT_NEGREP, zVxworks_Math_H_Fp_C99Bypass0, (regex_t*)NULL },
  8995. { TT_EGREP, zVxworks_Math_H_Fp_C99Select0, (regex_t*)NULL }, };
  8996. /*
  8997. * Fix Command Arguments for Vxworks_Math_H_Fp_C99
  8998. */
  8999. static const char* apzVxworks_Math_H_Fp_C99Patch[] = {
  9000. "format",
  9001. "\n\
  9002. %0\n\n\
  9003. #if _C99\n\n\
  9004. #define FP_INFINITE 1\n\
  9005. #define FP_NAN 2\n\
  9006. #define FP_NORMAL (-1)\n\
  9007. #define FP_SUBNORMAL (-2)\n\
  9008. #define FP_ZERO 0\n\n\
  9009. #define fpclassify(x) \\\n\
  9010. __builtin_fpclassify(FP_NAN, FP_INFINITE, FP_NORMAL, \\\n\
  9011. \t\t FP_SUBNORMAL, FP_ZERO, (x))\n\n\
  9012. #define signbit(x) __builtin_signbit(x)\n\
  9013. #define isfinite(x) __builtin_isfinite(x)\n\
  9014. #define isnormal(x) __builtin_isnormal(x)\n\
  9015. #define isnan(x) __builtin_isnan(x)\n\
  9016. #define isinf(x) __builtin_isinf(x)\n\n\
  9017. #define isgreater(x, y) __builtin_isgreater((x),(y))\n\
  9018. #define isgreaterequal(x, y) __builtin_isgreaterequal((x),(y))\n\
  9019. #define isless(x, y) __builtin_isless((x),(y))\n\
  9020. #define islessequal(x, y) __builtin_islessequal((x),(y))\n\
  9021. #define islessgreater(x, y) __builtin_islessgreater((x),(y))\n\
  9022. #define isunordered(x, y) __builtin_isunordered((x),(y))\n\n\
  9023. #endif /* _C99 */\n",
  9024. (char*)NULL };
  9025. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9026. *
  9027. * Description of Vxworks_Posix_Mkdir fix
  9028. */
  9029. tSCC zVxworks_Posix_MkdirName[] =
  9030. "vxworks_posix_mkdir";
  9031. /*
  9032. * File name selection pattern
  9033. */
  9034. tSCC zVxworks_Posix_MkdirList[] =
  9035. "sys/stat.h\0";
  9036. /*
  9037. * Machine/OS name selection pattern
  9038. */
  9039. tSCC* apzVxworks_Posix_MkdirMachs[] = {
  9040. "*-*-vxworks*",
  9041. (const char*)NULL };
  9042. #define VXWORKS_POSIX_MKDIR_TEST_CT 0
  9043. #define aVxworks_Posix_MkdirTests (tTestDesc*)NULL
  9044. /*
  9045. * Fix Command Arguments for Vxworks_Posix_Mkdir
  9046. */
  9047. static const char* apzVxworks_Posix_MkdirPatch[] = {
  9048. "format",
  9049. "extern STATUS mkdir(const char *dir, ...);",
  9050. "extern[\t ]+STATUS[\t ]+mkdir[\t ]*\\([\t ]*const[\t ]+char[\t ]*\\*[\t ]*(|[_[:alpha:]][_[:alnum:]]*)\\)[\t ]*;",
  9051. (char*)NULL };
  9052. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9053. *
  9054. * Description of Vxworks_Needs_Vxtypes fix
  9055. */
  9056. tSCC zVxworks_Needs_VxtypesName[] =
  9057. "vxworks_needs_vxtypes";
  9058. /*
  9059. * File name selection pattern
  9060. */
  9061. tSCC zVxworks_Needs_VxtypesList[] =
  9062. "time.h\0";
  9063. /*
  9064. * Machine/OS name selection pattern
  9065. */
  9066. #define apzVxworks_Needs_VxtypesMachs (const char**)NULL
  9067. /*
  9068. * content selection pattern - do fix if pattern found
  9069. */
  9070. tSCC zVxworks_Needs_VxtypesSelect0[] =
  9071. "uint_t([ \t]+_clocks_per_sec)";
  9072. #define VXWORKS_NEEDS_VXTYPES_TEST_CT 1
  9073. static tTestDesc aVxworks_Needs_VxtypesTests[] = {
  9074. { TT_EGREP, zVxworks_Needs_VxtypesSelect0, (regex_t*)NULL }, };
  9075. /*
  9076. * Fix Command Arguments for Vxworks_Needs_Vxtypes
  9077. */
  9078. static const char* apzVxworks_Needs_VxtypesPatch[] = {
  9079. "format",
  9080. "unsigned int%1",
  9081. (char*)NULL };
  9082. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9083. *
  9084. * Description of Vxworks_Needs_Vxworks fix
  9085. */
  9086. tSCC zVxworks_Needs_VxworksName[] =
  9087. "vxworks_needs_vxworks";
  9088. /*
  9089. * File name selection pattern
  9090. */
  9091. tSCC zVxworks_Needs_VxworksList[] =
  9092. "sys/stat.h\0";
  9093. /*
  9094. * Machine/OS name selection pattern
  9095. */
  9096. #define apzVxworks_Needs_VxworksMachs (const char**)NULL
  9097. /*
  9098. * content selection pattern - do fix if pattern found
  9099. */
  9100. tSCC zVxworks_Needs_VxworksSelect0[] =
  9101. "#[ \t]define[ \t]+__INCstath";
  9102. /*
  9103. * perform the 'test' shell command - do fix on success
  9104. */
  9105. tSCC zVxworks_Needs_VxworksTest0[] =
  9106. " -r types/vxTypesOld.h";
  9107. tSCC zVxworks_Needs_VxworksTest1[] =
  9108. " -n \"`egrep '#include' $file`\"";
  9109. tSCC zVxworks_Needs_VxworksTest2[] =
  9110. " -n \"`egrep ULONG $file`\"";
  9111. #define VXWORKS_NEEDS_VXWORKS_TEST_CT 4
  9112. static tTestDesc aVxworks_Needs_VxworksTests[] = {
  9113. { TT_TEST, zVxworks_Needs_VxworksTest0, 0 /* unused */ },
  9114. { TT_TEST, zVxworks_Needs_VxworksTest1, 0 /* unused */ },
  9115. { TT_TEST, zVxworks_Needs_VxworksTest2, 0 /* unused */ },
  9116. { TT_EGREP, zVxworks_Needs_VxworksSelect0, (regex_t*)NULL }, };
  9117. /*
  9118. * Fix Command Arguments for Vxworks_Needs_Vxworks
  9119. */
  9120. static const char* apzVxworks_Needs_VxworksPatch[] = { sed_cmd_z,
  9121. "-e", "/#[ \t]define[ \t][ \t]*__INCstath/a\\\n\
  9122. #include <types/vxTypesOld.h>\n",
  9123. (char*)NULL };
  9124. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9125. *
  9126. * Description of Vxworks_Next_Yvals fix
  9127. */
  9128. tSCC zVxworks_Next_YvalsName[] =
  9129. "vxworks_next_yvals";
  9130. /*
  9131. * File name selection pattern
  9132. */
  9133. tSCC zVxworks_Next_YvalsList[] =
  9134. "yvals.h\0";
  9135. /*
  9136. * Machine/OS name selection pattern
  9137. */
  9138. tSCC* apzVxworks_Next_YvalsMachs[] = {
  9139. "*-*-vxworks*",
  9140. (const char*)NULL };
  9141. /*
  9142. * content selection pattern - do fix if pattern found
  9143. */
  9144. tSCC zVxworks_Next_YvalsSelect0[] =
  9145. "#include_next <yvals.h>";
  9146. #define VXWORKS_NEXT_YVALS_TEST_CT 1
  9147. static tTestDesc aVxworks_Next_YvalsTests[] = {
  9148. { TT_EGREP, zVxworks_Next_YvalsSelect0, (regex_t*)NULL }, };
  9149. /*
  9150. * Fix Command Arguments for Vxworks_Next_Yvals
  9151. */
  9152. static const char* apzVxworks_Next_YvalsPatch[] = {
  9153. "format",
  9154. "#if 0 /* GCC does not provide yvals.h. */\n\
  9155. %1",
  9156. "#if .*\n\
  9157. /\\* .*\n\
  9158. (#include_next <yvals.h>\n\
  9159. )",
  9160. (char*)NULL };
  9161. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9162. *
  9163. * Description of Vxworks_Regs fix
  9164. */
  9165. tSCC zVxworks_RegsName[] =
  9166. "vxworks_regs";
  9167. /*
  9168. * File name selection pattern
  9169. */
  9170. #define zVxworks_RegsList (char*)NULL
  9171. /*
  9172. * Machine/OS name selection pattern
  9173. */
  9174. tSCC* apzVxworks_RegsMachs[] = {
  9175. "*-*-vxworks*",
  9176. (const char*)NULL };
  9177. /*
  9178. * content selection pattern - do fix if pattern found
  9179. */
  9180. tSCC zVxworks_RegsSelect0[] =
  9181. "#[\t ]*include[\t ]+[<\"]regs.h[>\"]";
  9182. #define VXWORKS_REGS_TEST_CT 1
  9183. static tTestDesc aVxworks_RegsTests[] = {
  9184. { TT_EGREP, zVxworks_RegsSelect0, (regex_t*)NULL }, };
  9185. /*
  9186. * Fix Command Arguments for Vxworks_Regs
  9187. */
  9188. static const char* apzVxworks_RegsPatch[] = {
  9189. "format",
  9190. "#include <arch/../regs.h>",
  9191. (char*)NULL };
  9192. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9193. *
  9194. * Description of Vxworks_Posix_Open fix
  9195. */
  9196. tSCC zVxworks_Posix_OpenName[] =
  9197. "vxworks_posix_open";
  9198. /*
  9199. * File name selection pattern
  9200. */
  9201. tSCC zVxworks_Posix_OpenList[] =
  9202. "fcntl.h\0";
  9203. /*
  9204. * Machine/OS name selection pattern
  9205. */
  9206. tSCC* apzVxworks_Posix_OpenMachs[] = {
  9207. "*-*-vxworks*",
  9208. (const char*)NULL };
  9209. /*
  9210. * content selection pattern - do fix if pattern found
  9211. */
  9212. tSCC zVxworks_Posix_OpenSelect0[] =
  9213. "extern int.*open \\(const char \\*[ a-z]*, int[ a-z]*, int[ a-z]*\\);";
  9214. #define VXWORKS_POSIX_OPEN_TEST_CT 1
  9215. static tTestDesc aVxworks_Posix_OpenTests[] = {
  9216. { TT_EGREP, zVxworks_Posix_OpenSelect0, (regex_t*)NULL }, };
  9217. /*
  9218. * Fix Command Arguments for Vxworks_Posix_Open
  9219. */
  9220. static const char* apzVxworks_Posix_OpenPatch[] = {
  9221. "format",
  9222. "%0\n\n\
  9223. #if defined(__cplusplus)\n\
  9224. extern \"C++\" {\n\
  9225. inline int open (const char *, int) __attribute__((__always_inline__));\n\n\
  9226. inline int\n\
  9227. open (const char *name, int flags)\n\
  9228. {\n\
  9229. return open (name, flags, 0);\n\
  9230. }\n\
  9231. }\n\
  9232. #endif\n",
  9233. (char*)NULL };
  9234. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9235. *
  9236. * Description of Vxworks_Time fix
  9237. */
  9238. tSCC zVxworks_TimeName[] =
  9239. "vxworks_time";
  9240. /*
  9241. * File name selection pattern
  9242. */
  9243. tSCC zVxworks_TimeList[] =
  9244. "time.h\0";
  9245. /*
  9246. * Machine/OS name selection pattern
  9247. */
  9248. #define apzVxworks_TimeMachs (const char**)NULL
  9249. /*
  9250. * content selection pattern - do fix if pattern found
  9251. */
  9252. tSCC zVxworks_TimeSelect0[] =
  9253. "#[ \t]*define[ \t]+VOIDFUNCPTR[ \t].*";
  9254. /*
  9255. * perform the 'test' shell command - do fix on success
  9256. */
  9257. tSCC zVxworks_TimeTest0[] =
  9258. " -r vxWorks.h";
  9259. #define VXWORKS_TIME_TEST_CT 2
  9260. static tTestDesc aVxworks_TimeTests[] = {
  9261. { TT_TEST, zVxworks_TimeTest0, 0 /* unused */ },
  9262. { TT_EGREP, zVxworks_TimeSelect0, (regex_t*)NULL }, };
  9263. /*
  9264. * Fix Command Arguments for Vxworks_Time
  9265. */
  9266. static const char* apzVxworks_TimePatch[] = {
  9267. "format",
  9268. "#ifndef __gcc_VOIDFUNCPTR_defined\n\
  9269. #ifdef __cplusplus\n\
  9270. typedef void (*__gcc_VOIDFUNCPTR) (...);\n\
  9271. #else\n\
  9272. typedef void (*__gcc_VOIDFUNCPTR) ();\n\
  9273. #endif\n\
  9274. #define __gcc_VOIDFUNCPTR_defined\n\
  9275. #endif\n\
  9276. #define VOIDFUNCPTR __gcc_VOIDFUNCPTR",
  9277. (char*)NULL };
  9278. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9279. *
  9280. * Description of Vxworks_Write_Const fix
  9281. */
  9282. tSCC zVxworks_Write_ConstName[] =
  9283. "vxworks_write_const";
  9284. /*
  9285. * File name selection pattern
  9286. */
  9287. tSCC zVxworks_Write_ConstList[] =
  9288. "ioLib.h\0";
  9289. /*
  9290. * Machine/OS name selection pattern
  9291. */
  9292. tSCC* apzVxworks_Write_ConstMachs[] = {
  9293. "*-*-vxworks*",
  9294. (const char*)NULL };
  9295. #define VXWORKS_WRITE_CONST_TEST_CT 0
  9296. #define aVxworks_Write_ConstTests (tTestDesc*)NULL
  9297. /*
  9298. * Fix Command Arguments for Vxworks_Write_Const
  9299. */
  9300. static const char* apzVxworks_Write_ConstPatch[] = {
  9301. "format",
  9302. "extern int write (int, const char*, size_t);",
  9303. "extern[\t ]+int[\t ]+write[\t ]*\\([\t ]*int[\t ]*,[\t ]*char[\t ]*\\*[\t ]*,[\t ]*size_t[\t ]*\\)[\t ]*;",
  9304. (char*)NULL };
  9305. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9306. *
  9307. * Description of Vxworks_Iolib_Include_Unistd fix
  9308. */
  9309. tSCC zVxworks_Iolib_Include_UnistdName[] =
  9310. "vxworks_iolib_include_unistd";
  9311. /*
  9312. * File name selection pattern
  9313. */
  9314. tSCC zVxworks_Iolib_Include_UnistdList[] =
  9315. "ioLib.h\0";
  9316. /*
  9317. * Machine/OS name selection pattern
  9318. */
  9319. tSCC* apzVxworks_Iolib_Include_UnistdMachs[] = {
  9320. "*-*-vxworks*",
  9321. (const char*)NULL };
  9322. /*
  9323. * content selection pattern - do fix if pattern found
  9324. */
  9325. tSCC zVxworks_Iolib_Include_UnistdSelect0[] =
  9326. "#include \"unistd.h\"";
  9327. #define VXWORKS_IOLIB_INCLUDE_UNISTD_TEST_CT 1
  9328. static tTestDesc aVxworks_Iolib_Include_UnistdTests[] = {
  9329. { TT_EGREP, zVxworks_Iolib_Include_UnistdSelect0, (regex_t*)NULL }, };
  9330. /*
  9331. * Fix Command Arguments for Vxworks_Iolib_Include_Unistd
  9332. */
  9333. static const char* apzVxworks_Iolib_Include_UnistdPatch[] = {
  9334. "format",
  9335. "#include <unistd.h>",
  9336. (char*)NULL };
  9337. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9338. *
  9339. * Description of Vxworks_Time_H_Syslib fix
  9340. */
  9341. tSCC zVxworks_Time_H_SyslibName[] =
  9342. "vxworks_time_h_syslib";
  9343. /*
  9344. * File name selection pattern
  9345. */
  9346. tSCC zVxworks_Time_H_SyslibList[] =
  9347. "time.h\0";
  9348. /*
  9349. * Machine/OS name selection pattern
  9350. */
  9351. tSCC* apzVxworks_Time_H_SyslibMachs[] = {
  9352. "*-*-vxworks*",
  9353. (const char*)NULL };
  9354. /*
  9355. * content selection pattern - do fix if pattern found
  9356. */
  9357. tSCC zVxworks_Time_H_SyslibSelect0[] =
  9358. "[ \t]*#define[ \t]+CLOCKS_PER_SEC[ \t]+sysClkRateGet.*";
  9359. #define VXWORKS_TIME_H_SYSLIB_TEST_CT 1
  9360. static tTestDesc aVxworks_Time_H_SyslibTests[] = {
  9361. { TT_EGREP, zVxworks_Time_H_SyslibSelect0, (regex_t*)NULL }, };
  9362. /*
  9363. * Fix Command Arguments for Vxworks_Time_H_Syslib
  9364. */
  9365. static const char* apzVxworks_Time_H_SyslibPatch[] = {
  9366. "format",
  9367. "%0\n\
  9368. #include <sysLib.h>",
  9369. "#include <vxWorks.h>|#endif.* _YVALS.*",
  9370. (char*)NULL };
  9371. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9372. *
  9373. * Description of X11_Class fix
  9374. */
  9375. tSCC zX11_ClassName[] =
  9376. "x11_class";
  9377. /*
  9378. * File name selection pattern
  9379. */
  9380. tSCC zX11_ClassList[] =
  9381. "X11/ShellP.h\0";
  9382. /*
  9383. * Machine/OS name selection pattern
  9384. */
  9385. #define apzX11_ClassMachs (const char**)NULL
  9386. /*
  9387. * content selection pattern - do fix if pattern found
  9388. */
  9389. tSCC zX11_ClassSelect0[] =
  9390. "^([ \t]*char \\*)class;(.*)";
  9391. /*
  9392. * content bypass pattern - skip fix if pattern found
  9393. */
  9394. tSCC zX11_ClassBypass0[] =
  9395. "__cplusplus";
  9396. #define X11_CLASS_TEST_CT 2
  9397. static tTestDesc aX11_ClassTests[] = {
  9398. { TT_NEGREP, zX11_ClassBypass0, (regex_t*)NULL },
  9399. { TT_EGREP, zX11_ClassSelect0, (regex_t*)NULL }, };
  9400. /*
  9401. * Fix Command Arguments for X11_Class
  9402. */
  9403. static const char* apzX11_ClassPatch[] = {
  9404. "format",
  9405. "#ifdef __cplusplus\n\
  9406. %1c_class;%2\n\
  9407. #else\n\
  9408. %1class;%2\n\
  9409. #endif",
  9410. (char*)NULL };
  9411. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9412. *
  9413. * Description of X11_Class_Usage fix
  9414. */
  9415. tSCC zX11_Class_UsageName[] =
  9416. "x11_class_usage";
  9417. /*
  9418. * File name selection pattern
  9419. */
  9420. tSCC zX11_Class_UsageList[] =
  9421. "Xm/BaseClassI.h\0";
  9422. /*
  9423. * Machine/OS name selection pattern
  9424. */
  9425. #define apzX11_Class_UsageMachs (const char**)NULL
  9426. /*
  9427. * content selection pattern - do fix if pattern found
  9428. */
  9429. tSCC zX11_Class_UsageSelect0[] =
  9430. " class\\)";
  9431. /*
  9432. * content bypass pattern - skip fix if pattern found
  9433. */
  9434. tSCC zX11_Class_UsageBypass0[] =
  9435. "__cplusplus";
  9436. #define X11_CLASS_USAGE_TEST_CT 2
  9437. static tTestDesc aX11_Class_UsageTests[] = {
  9438. { TT_NEGREP, zX11_Class_UsageBypass0, (regex_t*)NULL },
  9439. { TT_EGREP, zX11_Class_UsageSelect0, (regex_t*)NULL }, };
  9440. /*
  9441. * Fix Command Arguments for X11_Class_Usage
  9442. */
  9443. static const char* apzX11_Class_UsagePatch[] = {
  9444. "format",
  9445. " c_class)",
  9446. (char*)NULL };
  9447. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9448. *
  9449. * Description of X11_New fix
  9450. */
  9451. tSCC zX11_NewName[] =
  9452. "x11_new";
  9453. /*
  9454. * File name selection pattern
  9455. */
  9456. tSCC zX11_NewList[] =
  9457. "Xm/Traversal.h\0";
  9458. /*
  9459. * Machine/OS name selection pattern
  9460. */
  9461. #define apzX11_NewMachs (const char**)NULL
  9462. /*
  9463. * content bypass pattern - skip fix if pattern found
  9464. */
  9465. tSCC zX11_NewBypass0[] =
  9466. "__cplusplus";
  9467. #define X11_NEW_TEST_CT 1
  9468. static tTestDesc aX11_NewTests[] = {
  9469. { TT_NEGREP, zX11_NewBypass0, (regex_t*)NULL }, };
  9470. /*
  9471. * Fix Command Arguments for X11_New
  9472. */
  9473. static const char* apzX11_NewPatch[] = { sed_cmd_z,
  9474. "-e", "/Widget\told, new;/i\\\n\
  9475. #ifdef __cplusplus\\\n\
  9476. \\\tWidget\told, c_new;\\\n\
  9477. #else\n",
  9478. "-e", "/Widget\told, new;/a\\\n\
  9479. #endif\n",
  9480. "-e", "s/Widget new,/Widget c_new,/g",
  9481. (char*)NULL };
  9482. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9483. *
  9484. * Description of X11_Sprintf fix
  9485. */
  9486. tSCC zX11_SprintfName[] =
  9487. "x11_sprintf";
  9488. /*
  9489. * File name selection pattern
  9490. */
  9491. tSCC zX11_SprintfList[] =
  9492. "X11/Xmu.h\0X11/Xmu/Xmu.h\0";
  9493. /*
  9494. * Machine/OS name selection pattern
  9495. */
  9496. #define apzX11_SprintfMachs (const char**)NULL
  9497. /*
  9498. * content selection pattern - do fix if pattern found
  9499. */
  9500. tSCC zX11_SprintfSelect0[] =
  9501. "^extern char \\*\tsprintf\\(\\);$";
  9502. #define X11_SPRINTF_TEST_CT 1
  9503. static tTestDesc aX11_SprintfTests[] = {
  9504. { TT_EGREP, zX11_SprintfSelect0, (regex_t*)NULL }, };
  9505. /*
  9506. * Fix Command Arguments for X11_Sprintf
  9507. */
  9508. static const char* apzX11_SprintfPatch[] = {
  9509. "format",
  9510. "#ifndef __STDC__\n\
  9511. %0\n\
  9512. #endif /* !defined __STDC__ */",
  9513. (char*)NULL };
  9514. /* * * * * * * * * * * * * * * * * * * * * * * * * *
  9515. *
  9516. * List of all fixes
  9517. */
  9518. #define REGEX_COUNT 305
  9519. #define MACH_LIST_SIZE_LIMIT 187
  9520. #define FIX_COUNT 267
  9521. /*
  9522. * Enumerate the fixes
  9523. */
  9524. typedef enum {
  9525. AAB_AIX_STDIO_FIXIDX,
  9526. AAB_AIX_FCNTL_FIXIDX,
  9527. AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_FIXIDX,
  9528. DARWIN_API_AVAILABILITY_FIXIDX,
  9529. AAB_FD_ZERO_ASM_POSIX_TYPES_H_FIXIDX,
  9530. AAB_FD_ZERO_GNU_TYPES_H_FIXIDX,
  9531. AAB_FD_ZERO_SELECTBITS_H_FIXIDX,
  9532. AAB_SOLARIS_SYS_VARARGS_H_FIXIDX,
  9533. AAB_SUN_MEMCPY_FIXIDX,
  9534. AAB_VXWORKS_ASSERT_FIXIDX,
  9535. AAB_VXWORKS_REGS_VXTYPES_FIXIDX,
  9536. AAB_VXWORKS_UNISTD_FIXIDX,
  9537. AIX_ASSERT_FIXIDX,
  9538. AIX_COMPLEX_FIXIDX,
  9539. AIX_EXTERNC_FIXIDX,
  9540. AIX_EXTERNCPP1_FIXIDX,
  9541. AIX_EXTERNCPP2_FIXIDX,
  9542. AIX_INTTYPES_FIXIDX,
  9543. AIX_MALLOC_FIXIDX,
  9544. AIX_NET_IF_ARP_FIXIDX,
  9545. AIX_NULL_FIXIDX,
  9546. AIX_ONCE_INIT_1_FIXIDX,
  9547. AIX_ONCE_INIT_2_FIXIDX,
  9548. AIX_MUTEX_INITIALIZER_1_FIXIDX,
  9549. AIX_COND_INITIALIZER_1_FIXIDX,
  9550. AIX_RWLOCK_INITIALIZER_1_FIXIDX,
  9551. AIX_PHYSADR_T_FIXIDX,
  9552. AIX_PTHREAD_FIXIDX,
  9553. AIX_STDINT_1_FIXIDX,
  9554. AIX_STDINT_2_FIXIDX,
  9555. AIX_STDINT_3_FIXIDX,
  9556. AIX_STDINT_4_FIXIDX,
  9557. AIX_STDINT_5_FIXIDX,
  9558. AIX_STDIO_INLINE_FIXIDX,
  9559. AIX_STDLIB_MALLOC_FIXIDX,
  9560. AIX_STDLIB_REALLOC_FIXIDX,
  9561. AIX_STDLIB_CALLOC_FIXIDX,
  9562. AIX_STDLIB_VALLOC_FIXIDX,
  9563. AIX_STDLIB_VEC_MALLOC_FIXIDX,
  9564. AIX_STDLIB_VEC_CALLOC_FIXIDX,
  9565. AIX_STRTOF_CONST_FIXIDX,
  9566. AIX_SYSMACHINE_FIXIDX,
  9567. AIX_SYSWAIT_2_FIXIDX,
  9568. AIX_VOLATILE_FIXIDX,
  9569. AIX_UNISTD_FIXIDX,
  9570. ALPHA___ASSERT_FIXIDX,
  9571. ALPHA_ASSERT_FIXIDX,
  9572. ALPHA_GETOPT_FIXIDX,
  9573. ALPHA_IF_SEMICOLON_FIXIDX,
  9574. ALPHA_PARENS_FIXIDX,
  9575. ALPHA_SBRK_FIXIDX,
  9576. AVOID_BOOL_DEFINE_FIXIDX,
  9577. AVOID_BOOL_TYPE_FIXIDX,
  9578. AVOID_WCHAR_T_TYPE_FIXIDX,
  9579. BAD_STRUCT_TERM_FIXIDX,
  9580. BADQUOTE_FIXIDX,
  9581. BROKEN_ASSERT_STDIO_FIXIDX,
  9582. BROKEN_ASSERT_STDLIB_FIXIDX,
  9583. BROKEN_CABS_FIXIDX,
  9584. BROKEN_NAN_FIXIDX,
  9585. BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
  9586. CTRL_QUOTES_DEF_FIXIDX,
  9587. CTRL_QUOTES_USE_FIXIDX,
  9588. CXX_UNREADY_FIXIDX,
  9589. DARWIN_AVAILABILITYINTERNAL_FIXIDX,
  9590. DARWIN_9_LONG_DOUBLE_FUNCS_2_FIXIDX,
  9591. DARWIN_EXTERNC_FIXIDX,
  9592. DARWIN_GCC4_BREAKAGE_FIXIDX,
  9593. DARWIN_LL_FUNCS_AVAIL_FIXIDX,
  9594. DARWIN_LONGJMP_NORETURN_FIXIDX,
  9595. DARWIN_OS_TRACE_1_FIXIDX,
  9596. DARWIN_OS_TRACE_2_FIXIDX,
  9597. DARWIN_OS_TRACE_3_FIXIDX,
  9598. DARWIN_OS_BASE_1_FIXIDX,
  9599. DARWIN_DISPATCH_OBJECT_1_FIXIDX,
  9600. DARWIN_PRIVATE_EXTERN_FIXIDX,
  9601. DARWIN_STDINT_1_FIXIDX,
  9602. DARWIN_STDINT_2_FIXIDX,
  9603. DARWIN_STDINT_3_FIXIDX,
  9604. DARWIN_STDINT_4_FIXIDX,
  9605. DARWIN_STDINT_5_FIXIDX,
  9606. DARWIN_STDINT_6_FIXIDX,
  9607. DARWIN_STDINT_7_FIXIDX,
  9608. DARWIN_UCRED__ATOMIC_FIXIDX,
  9609. DARWIN_FLT_EVAL_METHOD_FIXIDX,
  9610. DEC_INTERN_ASM_FIXIDX,
  9611. DJGPP_WCHAR_H_FIXIDX,
  9612. ECD_CURSOR_FIXIDX,
  9613. FERAISEEXCEPT_NOSSE_DIVBYZERO_FIXIDX,
  9614. FERAISEEXCEPT_NOSSE_INVALID_FIXIDX,
  9615. FREEBSD_GCC3_BREAKAGE_FIXIDX,
  9616. FREEBSD_GCC4_BREAKAGE_FIXIDX,
  9617. GLIBC_C99_INLINE_1_FIXIDX,
  9618. GLIBC_C99_INLINE_1A_FIXIDX,
  9619. GLIBC_C99_INLINE_2_FIXIDX,
  9620. GLIBC_C99_INLINE_3_FIXIDX,
  9621. GLIBC_C99_INLINE_4_FIXIDX,
  9622. GLIBC_MUTEX_INIT_FIXIDX,
  9623. GLIBC_STDINT_FIXIDX,
  9624. GLIBC_STRNCPY_FIXIDX,
  9625. GLIBC_TGMATH_FIXIDX,
  9626. GNU_TYPES_FIXIDX,
  9627. HP_INLINE_FIXIDX,
  9628. HP_SYSFILE_FIXIDX,
  9629. HPPA_HPUX_FP_MACROS_FIXIDX,
  9630. HPUX10_CPP_POW_INLINE_FIXIDX,
  9631. HPUX11_CPP_POW_INLINE_FIXIDX,
  9632. HPUX_MATH_CONSTEXPR_FIXIDX,
  9633. HPUX10_CTYPE_DECLARATIONS1_FIXIDX,
  9634. HPUX10_CTYPE_DECLARATIONS2_FIXIDX,
  9635. HPUX10_STDIO_DECLARATIONS_FIXIDX,
  9636. HPPA_HPUX11_ALLOCA_FIXIDX,
  9637. HPUX11_ABS_FIXIDX,
  9638. HPUX11_LWP_RWLOCK_VALID_FIXIDX,
  9639. HPUX11_EXTERN_SENDFILE_FIXIDX,
  9640. HPUX11_EXTERN_SENDPATH_FIXIDX,
  9641. HPUX11_FABSF_FIXIDX,
  9642. HPUX11_PTHREAD_POINTER_FIXIDX,
  9643. HPUX11_PTHREAD_CONST_FIXIDX,
  9644. HPUX11_SIZE_T_FIXIDX,
  9645. HPUX11_SNPRINTF_FIXIDX,
  9646. HPUX11_VSNPRINTF_FIXIDX,
  9647. HPUX_VSSCANF_FIXIDX,
  9648. HPUX8_BOGUS_INLINES_FIXIDX,
  9649. HPUX_C99_INTPTR_FIXIDX,
  9650. HPUX_C99_INTTYPES_FIXIDX,
  9651. HPUX_C99_INTTYPES2_FIXIDX,
  9652. HPUX_C99_INTTYPES3_FIXIDX,
  9653. HPUX_C99_INTTYPES4_FIXIDX,
  9654. HPUX_C99_INTTYPES5_FIXIDX,
  9655. HPUX_CTYPE_MACROS_FIXIDX,
  9656. HPUX_EXTERN_ERRNO_FIXIDX,
  9657. HPUX_HTONL_FIXIDX,
  9658. HPUX_IMAGINARY_I_FIXIDX,
  9659. HPUX_INTTYPE_INT8_T_FIXIDX,
  9660. HPUX_LONG_DOUBLE_FIXIDX,
  9661. HPUX_LONG_DOUBLE_2_FIXIDX,
  9662. HPUX_PTHREAD_INITIALIZERS_FIXIDX,
  9663. HPUX_SPU_INFO_FIXIDX,
  9664. HPUX_STDINT_LEAST_FAST_FIXIDX,
  9665. HPUX_LONGJMP_FIXIDX,
  9666. HPUX_SYSTIME_FIXIDX,
  9667. HUGE_VAL_HEX_FIXIDX,
  9668. HUGE_VALF_HEX_FIXIDX,
  9669. HUGE_VALL_HEX_FIXIDX,
  9670. INT_ABORT_FREE_AND_EXIT_FIXIDX,
  9671. IO_QUOTES_DEF_FIXIDX,
  9672. IO_QUOTES_USE_FIXIDX,
  9673. IP_MISSING_SEMI_FIXIDX,
  9674. IRIX_LIMITS_CONST_FIXIDX,
  9675. IRIX_STDIO_VA_LIST_FIXIDX,
  9676. KANDR_CONCAT_FIXIDX,
  9677. LINUX_IA64_UCONTEXT_FIXIDX,
  9678. LYNXOS_NO_WARNING_IN_SYS_TIME_H_FIXIDX,
  9679. LYNXOS_MISSING_PUTENV_FIXIDX,
  9680. MACHINE_ANSI_H_VA_LIST_FIXIDX,
  9681. MACHINE_NAME_FIXIDX,
  9682. MATH_EXCEPTION_FIXIDX,
  9683. MATH_HUGE_VAL_FROM_DBL_MAX_FIXIDX,
  9684. NESTED_AUTH_DES_FIXIDX,
  9685. NETBSD_C99_INLINE_1_FIXIDX,
  9686. NETBSD_C99_INLINE_2_FIXIDX,
  9687. NETBSD_EXTRA_SEMICOLON_FIXIDX,
  9688. NEWLIB_STDINT_1_FIXIDX,
  9689. NEWLIB_STDINT_2_FIXIDX,
  9690. NEXT_MATH_PREFIX_FIXIDX,
  9691. NEXT_TEMPLATE_FIXIDX,
  9692. NEXT_VOLITILE_FIXIDX,
  9693. NEXT_WAIT_UNION_FIXIDX,
  9694. NODEENT_SYNTAX_FIXIDX,
  9695. OPENBSD_NULL_DEFINITION_FIXIDX,
  9696. OBSTACK_LVALUE_CAST_FIXIDX,
  9697. OPENBSD_VA_START_FIXIDX,
  9698. OSF_NAMESPACE_A_FIXIDX,
  9699. OSF_NAMESPACE_C_FIXIDX,
  9700. PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_FIXIDX,
  9701. READ_RET_TYPE_FIXIDX,
  9702. RPC_XDR_LVALUE_CAST_A_FIXIDX,
  9703. RPC_XDR_LVALUE_CAST_B_FIXIDX,
  9704. RS6000_DOUBLE_FIXIDX,
  9705. RS6000_FCHMOD_FIXIDX,
  9706. RS6000_PARAM_FIXIDX,
  9707. SOLARIS___RESTRICT_FIXIDX,
  9708. SOLARIS_COMPLEX_FIXIDX,
  9709. SOLARIS_COMPLEX_CXX_FIXIDX,
  9710. SOLARIS_CXX_LINKAGE_FIXIDX,
  9711. SOLARIS_GETC_STRICT_STDC_FIXIDX,
  9712. SOLARIS_GETS_C11_FIXIDX,
  9713. SOLARIS_GETS_CXX14_FIXIDX,
  9714. SOLARIS_INT_CONST_FIXIDX,
  9715. SOLARIS_INT_LIMITS_1_FIXIDX,
  9716. SOLARIS_INT_LIMITS_2_FIXIDX,
  9717. SOLARIS_INT_LIMITS_3_FIXIDX,
  9718. SOLARIS_MATH_1_FIXIDX,
  9719. SOLARIS_MATH_10_FIXIDX,
  9720. SOLARIS_MATH_2_FIXIDX,
  9721. SOLARIS_MATH_3_FIXIDX,
  9722. SOLARIS_MATH_4_FIXIDX,
  9723. SOLARIS_MATH_8_FIXIDX,
  9724. SOLARIS_MATH_9_FIXIDX,
  9725. SOLARIS_MATH_11_FIXIDX,
  9726. SOLARIS_MATH_12_FIXIDX,
  9727. SOLARIS_ONCE_INIT_1_FIXIDX,
  9728. SOLARIS_POSIX_SPAWN_RESTRICT_FIXIDX,
  9729. SOLARIS_POW_INT_OVERLOAD_FIXIDX,
  9730. SOLARIS_RWLOCK_INIT_1_FIXIDX,
  9731. SOLARIS_STD___FILBUF_FIXIDX,
  9732. SOLARIS_STD_GETS_CXX14_FIXIDX,
  9733. SOLARIS_STDIO_TAG_FIXIDX,
  9734. SOLARIS_STDLIB_NORETURN_FIXIDX,
  9735. STATSSWTCH_FIXIDX,
  9736. STDIO_STDARG_H_FIXIDX,
  9737. STDIO_VA_LIST_FIXIDX,
  9738. STDIO_VA_LIST_CLIENTS_FIXIDX,
  9739. STRICT_ANSI_NOT_FIXIDX,
  9740. STRICT_ANSI_NOT_CTD_FIXIDX,
  9741. STRICT_ANSI_ONLY_FIXIDX,
  9742. STRUCT_FILE_FIXIDX,
  9743. STRUCT_SOCKADDR_FIXIDX,
  9744. SUN_AUTH_PROTO_FIXIDX,
  9745. SUN_BOGUS_IFDEF_FIXIDX,
  9746. SUN_CATMACRO_FIXIDX,
  9747. SUN_MALLOC_FIXIDX,
  9748. SUN_RUSERS_SEMI_FIXIDX,
  9749. SUN_SIGNAL_FIXIDX,
  9750. SUNOS_STRLEN_FIXIDX,
  9751. SUSE_LINUX_VT_CXX_FIXIDX,
  9752. SVR4_DISABLE_OPT_FIXIDX,
  9753. SVR4_GETCWD_FIXIDX,
  9754. SVR4_PROFIL_FIXIDX,
  9755. SVR4_SIGHANDLER_TYPE_FIXIDX,
  9756. SVR4_UNDECLARED_GETRNGE_FIXIDX,
  9757. SYSV68_STRING_FIXIDX,
  9758. SYSZ_STDLIB_FOR_SUN_FIXIDX,
  9759. THREAD_KEYWORD_FIXIDX,
  9760. TINFO_CPLUSPLUS_FIXIDX,
  9761. ULTRIX_CONST_FIXIDX,
  9762. ULTRIX_CONST2_FIXIDX,
  9763. VA_I960_MACRO_FIXIDX,
  9764. VMS_ADD_MISSING_BRACES_FIXIDX,
  9765. VMS_DECC_BUILTIN_FIXIDX,
  9766. VMS_DEFINE_CAN_USE_EXTERN_PREFIX_FIXIDX,
  9767. VMS_DISABLE_DECC_STRING_BUILTINS_FIXIDX,
  9768. VMS_DO_NOT_REDECLARE_HOSTALIAS_FIXIDX,
  9769. VMS_FORWARD_DECLARE_STRUCT_FIXIDX,
  9770. VMS_NO_64BIT_GETOPT_FIXIDX,
  9771. VMS_USE_FAST_SETJMP_FIXIDX,
  9772. VMS_USE_PRAGMA_EXTERN_MODEL_FIXIDX,
  9773. VMS_USE_QUOTED_INCLUDE_FIXIDX,
  9774. VOID_NULL_FIXIDX,
  9775. VXWORKS_GCC_PROBLEM_FIXIDX,
  9776. VXWORKS_IOCTL_MACRO_FIXIDX,
  9777. VXWORKS_MATH_H_FP_C99_FIXIDX,
  9778. VXWORKS_POSIX_MKDIR_FIXIDX,
  9779. VXWORKS_NEEDS_VXTYPES_FIXIDX,
  9780. VXWORKS_NEEDS_VXWORKS_FIXIDX,
  9781. VXWORKS_NEXT_YVALS_FIXIDX,
  9782. VXWORKS_REGS_FIXIDX,
  9783. VXWORKS_POSIX_OPEN_FIXIDX,
  9784. VXWORKS_TIME_FIXIDX,
  9785. VXWORKS_WRITE_CONST_FIXIDX,
  9786. VXWORKS_IOLIB_INCLUDE_UNISTD_FIXIDX,
  9787. VXWORKS_TIME_H_SYSLIB_FIXIDX,
  9788. X11_CLASS_FIXIDX,
  9789. X11_CLASS_USAGE_FIXIDX,
  9790. X11_NEW_FIXIDX,
  9791. X11_SPRINTF_FIXIDX
  9792. } t_fixinc_idx;
  9793. tFixDesc fixDescList[ FIX_COUNT ] = {
  9794. { zAab_Aix_StdioName, zAab_Aix_StdioList,
  9795. apzAab_Aix_StdioMachs,
  9796. AAB_AIX_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9797. aAab_Aix_StdioTests, apzAab_Aix_StdioPatch, 0 },
  9798. { zAab_Aix_FcntlName, zAab_Aix_FcntlList,
  9799. apzAab_Aix_FcntlMachs,
  9800. AAB_AIX_FCNTL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9801. aAab_Aix_FcntlTests, apzAab_Aix_FcntlPatch, 0 },
  9802. { zAab_Darwin7_9_Long_Double_FuncsName, zAab_Darwin7_9_Long_Double_FuncsList,
  9803. apzAab_Darwin7_9_Long_Double_FuncsMachs,
  9804. AAB_DARWIN7_9_LONG_DOUBLE_FUNCS_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9805. aAab_Darwin7_9_Long_Double_FuncsTests, apzAab_Darwin7_9_Long_Double_FuncsPatch, 0 },
  9806. { zDarwin_Api_AvailabilityName, zDarwin_Api_AvailabilityList,
  9807. apzDarwin_Api_AvailabilityMachs,
  9808. DARWIN_API_AVAILABILITY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9809. aDarwin_Api_AvailabilityTests, apzDarwin_Api_AvailabilityPatch, 0 },
  9810. { zAab_Fd_Zero_Asm_Posix_Types_HName, zAab_Fd_Zero_Asm_Posix_Types_HList,
  9811. apzAab_Fd_Zero_Asm_Posix_Types_HMachs,
  9812. AAB_FD_ZERO_ASM_POSIX_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9813. aAab_Fd_Zero_Asm_Posix_Types_HTests, apzAab_Fd_Zero_Asm_Posix_Types_HPatch, 0 },
  9814. { zAab_Fd_Zero_Gnu_Types_HName, zAab_Fd_Zero_Gnu_Types_HList,
  9815. apzAab_Fd_Zero_Gnu_Types_HMachs,
  9816. AAB_FD_ZERO_GNU_TYPES_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9817. aAab_Fd_Zero_Gnu_Types_HTests, apzAab_Fd_Zero_Gnu_Types_HPatch, 0 },
  9818. { zAab_Fd_Zero_Selectbits_HName, zAab_Fd_Zero_Selectbits_HList,
  9819. apzAab_Fd_Zero_Selectbits_HMachs,
  9820. AAB_FD_ZERO_SELECTBITS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9821. aAab_Fd_Zero_Selectbits_HTests, apzAab_Fd_Zero_Selectbits_HPatch, 0 },
  9822. { zAab_Solaris_Sys_Varargs_HName, zAab_Solaris_Sys_Varargs_HList,
  9823. apzAab_Solaris_Sys_Varargs_HMachs,
  9824. AAB_SOLARIS_SYS_VARARGS_H_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9825. aAab_Solaris_Sys_Varargs_HTests, apzAab_Solaris_Sys_Varargs_HPatch, 0 },
  9826. { zAab_Sun_MemcpyName, zAab_Sun_MemcpyList,
  9827. apzAab_Sun_MemcpyMachs,
  9828. AAB_SUN_MEMCPY_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9829. aAab_Sun_MemcpyTests, apzAab_Sun_MemcpyPatch, 0 },
  9830. { zAab_Vxworks_AssertName, zAab_Vxworks_AssertList,
  9831. apzAab_Vxworks_AssertMachs,
  9832. AAB_VXWORKS_ASSERT_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9833. aAab_Vxworks_AssertTests, apzAab_Vxworks_AssertPatch, 0 },
  9834. { zAab_Vxworks_Regs_VxtypesName, zAab_Vxworks_Regs_VxtypesList,
  9835. apzAab_Vxworks_Regs_VxtypesMachs,
  9836. AAB_VXWORKS_REGS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9837. aAab_Vxworks_Regs_VxtypesTests, apzAab_Vxworks_Regs_VxtypesPatch, 0 },
  9838. { zAab_Vxworks_UnistdName, zAab_Vxworks_UnistdList,
  9839. apzAab_Vxworks_UnistdMachs,
  9840. AAB_VXWORKS_UNISTD_TEST_CT, FD_MACH_ONLY | FD_REPLACEMENT,
  9841. aAab_Vxworks_UnistdTests, apzAab_Vxworks_UnistdPatch, 0 },
  9842. { zAix_AssertName, zAix_AssertList,
  9843. apzAix_AssertMachs,
  9844. AIX_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9845. aAix_AssertTests, apzAix_AssertPatch, 0 },
  9846. { zAix_ComplexName, zAix_ComplexList,
  9847. apzAix_ComplexMachs,
  9848. AIX_COMPLEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9849. aAix_ComplexTests, apzAix_ComplexPatch, 0 },
  9850. { zAix_ExterncName, zAix_ExterncList,
  9851. apzAix_ExterncMachs,
  9852. AIX_EXTERNC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9853. aAix_ExterncTests, apzAix_ExterncPatch, 0 },
  9854. { zAix_Externcpp1Name, zAix_Externcpp1List,
  9855. apzAix_Externcpp1Machs,
  9856. AIX_EXTERNCPP1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9857. aAix_Externcpp1Tests, apzAix_Externcpp1Patch, 0 },
  9858. { zAix_Externcpp2Name, zAix_Externcpp2List,
  9859. apzAix_Externcpp2Machs,
  9860. AIX_EXTERNCPP2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9861. aAix_Externcpp2Tests, apzAix_Externcpp2Patch, 0 },
  9862. { zAix_InttypesName, zAix_InttypesList,
  9863. apzAix_InttypesMachs,
  9864. AIX_INTTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9865. aAix_InttypesTests, apzAix_InttypesPatch, 0 },
  9866. { zAix_MallocName, zAix_MallocList,
  9867. apzAix_MallocMachs,
  9868. AIX_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9869. aAix_MallocTests, apzAix_MallocPatch, 0 },
  9870. { zAix_Net_If_ArpName, zAix_Net_If_ArpList,
  9871. apzAix_Net_If_ArpMachs,
  9872. AIX_NET_IF_ARP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9873. aAix_Net_If_ArpTests, apzAix_Net_If_ArpPatch, 0 },
  9874. { zAix_NullName, zAix_NullList,
  9875. apzAix_NullMachs,
  9876. AIX_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9877. aAix_NullTests, apzAix_NullPatch, 0 },
  9878. { zAix_Once_Init_1Name, zAix_Once_Init_1List,
  9879. apzAix_Once_Init_1Machs,
  9880. AIX_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9881. aAix_Once_Init_1Tests, apzAix_Once_Init_1Patch, 0 },
  9882. { zAix_Once_Init_2Name, zAix_Once_Init_2List,
  9883. apzAix_Once_Init_2Machs,
  9884. AIX_ONCE_INIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9885. aAix_Once_Init_2Tests, apzAix_Once_Init_2Patch, 0 },
  9886. { zAix_Mutex_Initializer_1Name, zAix_Mutex_Initializer_1List,
  9887. apzAix_Mutex_Initializer_1Machs,
  9888. AIX_MUTEX_INITIALIZER_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9889. aAix_Mutex_Initializer_1Tests, apzAix_Mutex_Initializer_1Patch, 0 },
  9890. { zAix_Cond_Initializer_1Name, zAix_Cond_Initializer_1List,
  9891. apzAix_Cond_Initializer_1Machs,
  9892. AIX_COND_INITIALIZER_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9893. aAix_Cond_Initializer_1Tests, apzAix_Cond_Initializer_1Patch, 0 },
  9894. { zAix_Rwlock_Initializer_1Name, zAix_Rwlock_Initializer_1List,
  9895. apzAix_Rwlock_Initializer_1Machs,
  9896. AIX_RWLOCK_INITIALIZER_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9897. aAix_Rwlock_Initializer_1Tests, apzAix_Rwlock_Initializer_1Patch, 0 },
  9898. { zAix_Physadr_TName, zAix_Physadr_TList,
  9899. apzAix_Physadr_TMachs,
  9900. AIX_PHYSADR_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9901. aAix_Physadr_TTests, apzAix_Physadr_TPatch, 0 },
  9902. { zAix_PthreadName, zAix_PthreadList,
  9903. apzAix_PthreadMachs,
  9904. AIX_PTHREAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9905. aAix_PthreadTests, apzAix_PthreadPatch, 0 },
  9906. { zAix_Stdint_1Name, zAix_Stdint_1List,
  9907. apzAix_Stdint_1Machs,
  9908. AIX_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9909. aAix_Stdint_1Tests, apzAix_Stdint_1Patch, 0 },
  9910. { zAix_Stdint_2Name, zAix_Stdint_2List,
  9911. apzAix_Stdint_2Machs,
  9912. AIX_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9913. aAix_Stdint_2Tests, apzAix_Stdint_2Patch, 0 },
  9914. { zAix_Stdint_3Name, zAix_Stdint_3List,
  9915. apzAix_Stdint_3Machs,
  9916. AIX_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9917. aAix_Stdint_3Tests, apzAix_Stdint_3Patch, 0 },
  9918. { zAix_Stdint_4Name, zAix_Stdint_4List,
  9919. apzAix_Stdint_4Machs,
  9920. AIX_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9921. aAix_Stdint_4Tests, apzAix_Stdint_4Patch, 0 },
  9922. { zAix_Stdint_5Name, zAix_Stdint_5List,
  9923. apzAix_Stdint_5Machs,
  9924. AIX_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9925. aAix_Stdint_5Tests, apzAix_Stdint_5Patch, 0 },
  9926. { zAix_Stdio_InlineName, zAix_Stdio_InlineList,
  9927. apzAix_Stdio_InlineMachs,
  9928. AIX_STDIO_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9929. aAix_Stdio_InlineTests, apzAix_Stdio_InlinePatch, 0 },
  9930. { zAix_Stdlib_MallocName, zAix_Stdlib_MallocList,
  9931. apzAix_Stdlib_MallocMachs,
  9932. AIX_STDLIB_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9933. aAix_Stdlib_MallocTests, apzAix_Stdlib_MallocPatch, 0 },
  9934. { zAix_Stdlib_ReallocName, zAix_Stdlib_ReallocList,
  9935. apzAix_Stdlib_ReallocMachs,
  9936. AIX_STDLIB_REALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9937. aAix_Stdlib_ReallocTests, apzAix_Stdlib_ReallocPatch, 0 },
  9938. { zAix_Stdlib_CallocName, zAix_Stdlib_CallocList,
  9939. apzAix_Stdlib_CallocMachs,
  9940. AIX_STDLIB_CALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9941. aAix_Stdlib_CallocTests, apzAix_Stdlib_CallocPatch, 0 },
  9942. { zAix_Stdlib_VallocName, zAix_Stdlib_VallocList,
  9943. apzAix_Stdlib_VallocMachs,
  9944. AIX_STDLIB_VALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9945. aAix_Stdlib_VallocTests, apzAix_Stdlib_VallocPatch, 0 },
  9946. { zAix_Stdlib_Vec_MallocName, zAix_Stdlib_Vec_MallocList,
  9947. apzAix_Stdlib_Vec_MallocMachs,
  9948. AIX_STDLIB_VEC_MALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9949. aAix_Stdlib_Vec_MallocTests, apzAix_Stdlib_Vec_MallocPatch, 0 },
  9950. { zAix_Stdlib_Vec_CallocName, zAix_Stdlib_Vec_CallocList,
  9951. apzAix_Stdlib_Vec_CallocMachs,
  9952. AIX_STDLIB_VEC_CALLOC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9953. aAix_Stdlib_Vec_CallocTests, apzAix_Stdlib_Vec_CallocPatch, 0 },
  9954. { zAix_Strtof_ConstName, zAix_Strtof_ConstList,
  9955. apzAix_Strtof_ConstMachs,
  9956. AIX_STRTOF_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9957. aAix_Strtof_ConstTests, apzAix_Strtof_ConstPatch, 0 },
  9958. { zAix_SysmachineName, zAix_SysmachineList,
  9959. apzAix_SysmachineMachs,
  9960. AIX_SYSMACHINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9961. aAix_SysmachineTests, apzAix_SysmachinePatch, 0 },
  9962. { zAix_Syswait_2Name, zAix_Syswait_2List,
  9963. apzAix_Syswait_2Machs,
  9964. AIX_SYSWAIT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9965. aAix_Syswait_2Tests, apzAix_Syswait_2Patch, 0 },
  9966. { zAix_VolatileName, zAix_VolatileList,
  9967. apzAix_VolatileMachs,
  9968. AIX_VOLATILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9969. aAix_VolatileTests, apzAix_VolatilePatch, 0 },
  9970. { zAix_UnistdName, zAix_UnistdList,
  9971. apzAix_UnistdMachs,
  9972. AIX_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9973. aAix_UnistdTests, apzAix_UnistdPatch, 0 },
  9974. { zAlpha___AssertName, zAlpha___AssertList,
  9975. apzAlpha___AssertMachs,
  9976. ALPHA___ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9977. aAlpha___AssertTests, apzAlpha___AssertPatch, 0 },
  9978. { zAlpha_AssertName, zAlpha_AssertList,
  9979. apzAlpha_AssertMachs,
  9980. ALPHA_ASSERT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9981. aAlpha_AssertTests, apzAlpha_AssertPatch, 0 },
  9982. { zAlpha_GetoptName, zAlpha_GetoptList,
  9983. apzAlpha_GetoptMachs,
  9984. ALPHA_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9985. aAlpha_GetoptTests, apzAlpha_GetoptPatch, 0 },
  9986. { zAlpha_If_SemicolonName, zAlpha_If_SemicolonList,
  9987. apzAlpha_If_SemicolonMachs,
  9988. ALPHA_IF_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9989. aAlpha_If_SemicolonTests, apzAlpha_If_SemicolonPatch, 0 },
  9990. { zAlpha_ParensName, zAlpha_ParensList,
  9991. apzAlpha_ParensMachs,
  9992. ALPHA_PARENS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9993. aAlpha_ParensTests, apzAlpha_ParensPatch, 0 },
  9994. { zAlpha_SbrkName, zAlpha_SbrkList,
  9995. apzAlpha_SbrkMachs,
  9996. ALPHA_SBRK_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  9997. aAlpha_SbrkTests, apzAlpha_SbrkPatch, 0 },
  9998. { zAvoid_Bool_DefineName, zAvoid_Bool_DefineList,
  9999. apzAvoid_Bool_DefineMachs,
  10000. AVOID_BOOL_DEFINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10001. aAvoid_Bool_DefineTests, apzAvoid_Bool_DefinePatch, 0 },
  10002. { zAvoid_Bool_TypeName, zAvoid_Bool_TypeList,
  10003. apzAvoid_Bool_TypeMachs,
  10004. AVOID_BOOL_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10005. aAvoid_Bool_TypeTests, apzAvoid_Bool_TypePatch, 0 },
  10006. { zAvoid_Wchar_T_TypeName, zAvoid_Wchar_T_TypeList,
  10007. apzAvoid_Wchar_T_TypeMachs,
  10008. AVOID_WCHAR_T_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10009. aAvoid_Wchar_T_TypeTests, apzAvoid_Wchar_T_TypePatch, 0 },
  10010. { zBad_Struct_TermName, zBad_Struct_TermList,
  10011. apzBad_Struct_TermMachs,
  10012. BAD_STRUCT_TERM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10013. aBad_Struct_TermTests, apzBad_Struct_TermPatch, 0 },
  10014. { zBadquoteName, zBadquoteList,
  10015. apzBadquoteMachs,
  10016. BADQUOTE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10017. aBadquoteTests, apzBadquotePatch, 0 },
  10018. { zBroken_Assert_StdioName, zBroken_Assert_StdioList,
  10019. apzBroken_Assert_StdioMachs,
  10020. BROKEN_ASSERT_STDIO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10021. aBroken_Assert_StdioTests, apzBroken_Assert_StdioPatch, 0 },
  10022. { zBroken_Assert_StdlibName, zBroken_Assert_StdlibList,
  10023. apzBroken_Assert_StdlibMachs,
  10024. BROKEN_ASSERT_STDLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10025. aBroken_Assert_StdlibTests, apzBroken_Assert_StdlibPatch, 0 },
  10026. { zBroken_CabsName, zBroken_CabsList,
  10027. apzBroken_CabsMachs,
  10028. BROKEN_CABS_TEST_CT, FD_MACH_ONLY,
  10029. aBroken_CabsTests, apzBroken_CabsPatch, 0 },
  10030. { zBroken_NanName, zBroken_NanList,
  10031. apzBroken_NanMachs,
  10032. BROKEN_NAN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10033. aBroken_NanTests, apzBroken_NanPatch, 0 },
  10034. { zBsd_Stdio_Attrs_ConflictName, zBsd_Stdio_Attrs_ConflictList,
  10035. apzBsd_Stdio_Attrs_ConflictMachs,
  10036. BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10037. aBsd_Stdio_Attrs_ConflictTests, apzBsd_Stdio_Attrs_ConflictPatch, 0 },
  10038. { zCtrl_Quotes_DefName, zCtrl_Quotes_DefList,
  10039. apzCtrl_Quotes_DefMachs,
  10040. CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10041. aCtrl_Quotes_DefTests, apzCtrl_Quotes_DefPatch, 0 },
  10042. { zCtrl_Quotes_UseName, zCtrl_Quotes_UseList,
  10043. apzCtrl_Quotes_UseMachs,
  10044. CTRL_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10045. aCtrl_Quotes_UseTests, apzCtrl_Quotes_UsePatch, 0 },
  10046. { zCxx_UnreadyName, zCxx_UnreadyList,
  10047. apzCxx_UnreadyMachs,
  10048. CXX_UNREADY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10049. aCxx_UnreadyTests, apzCxx_UnreadyPatch, 0 },
  10050. { zDarwin_AvailabilityinternalName, zDarwin_AvailabilityinternalList,
  10051. apzDarwin_AvailabilityinternalMachs,
  10052. DARWIN_AVAILABILITYINTERNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10053. aDarwin_AvailabilityinternalTests, apzDarwin_AvailabilityinternalPatch, 0 },
  10054. { zDarwin_9_Long_Double_Funcs_2Name, zDarwin_9_Long_Double_Funcs_2List,
  10055. apzDarwin_9_Long_Double_Funcs_2Machs,
  10056. DARWIN_9_LONG_DOUBLE_FUNCS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10057. aDarwin_9_Long_Double_Funcs_2Tests, apzDarwin_9_Long_Double_Funcs_2Patch, 0 },
  10058. { zDarwin_ExterncName, zDarwin_ExterncList,
  10059. apzDarwin_ExterncMachs,
  10060. DARWIN_EXTERNC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10061. aDarwin_ExterncTests, apzDarwin_ExterncPatch, 0 },
  10062. { zDarwin_Gcc4_BreakageName, zDarwin_Gcc4_BreakageList,
  10063. apzDarwin_Gcc4_BreakageMachs,
  10064. DARWIN_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10065. aDarwin_Gcc4_BreakageTests, apzDarwin_Gcc4_BreakagePatch, 0 },
  10066. { zDarwin_Ll_Funcs_AvailName, zDarwin_Ll_Funcs_AvailList,
  10067. apzDarwin_Ll_Funcs_AvailMachs,
  10068. DARWIN_LL_FUNCS_AVAIL_TEST_CT, FD_MACH_ONLY,
  10069. aDarwin_Ll_Funcs_AvailTests, apzDarwin_Ll_Funcs_AvailPatch, 0 },
  10070. { zDarwin_Longjmp_NoreturnName, zDarwin_Longjmp_NoreturnList,
  10071. apzDarwin_Longjmp_NoreturnMachs,
  10072. DARWIN_LONGJMP_NORETURN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10073. aDarwin_Longjmp_NoreturnTests, apzDarwin_Longjmp_NoreturnPatch, 0 },
  10074. { zDarwin_Os_Trace_1Name, zDarwin_Os_Trace_1List,
  10075. apzDarwin_Os_Trace_1Machs,
  10076. DARWIN_OS_TRACE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10077. aDarwin_Os_Trace_1Tests, apzDarwin_Os_Trace_1Patch, 0 },
  10078. { zDarwin_Os_Trace_2Name, zDarwin_Os_Trace_2List,
  10079. apzDarwin_Os_Trace_2Machs,
  10080. DARWIN_OS_TRACE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10081. aDarwin_Os_Trace_2Tests, apzDarwin_Os_Trace_2Patch, 0 },
  10082. { zDarwin_Os_Trace_3Name, zDarwin_Os_Trace_3List,
  10083. apzDarwin_Os_Trace_3Machs,
  10084. DARWIN_OS_TRACE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10085. aDarwin_Os_Trace_3Tests, apzDarwin_Os_Trace_3Patch, 0 },
  10086. { zDarwin_Os_Base_1Name, zDarwin_Os_Base_1List,
  10087. apzDarwin_Os_Base_1Machs,
  10088. DARWIN_OS_BASE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10089. aDarwin_Os_Base_1Tests, apzDarwin_Os_Base_1Patch, 0 },
  10090. { zDarwin_Dispatch_Object_1Name, zDarwin_Dispatch_Object_1List,
  10091. apzDarwin_Dispatch_Object_1Machs,
  10092. DARWIN_DISPATCH_OBJECT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10093. aDarwin_Dispatch_Object_1Tests, apzDarwin_Dispatch_Object_1Patch, 0 },
  10094. { zDarwin_Private_ExternName, zDarwin_Private_ExternList,
  10095. apzDarwin_Private_ExternMachs,
  10096. DARWIN_PRIVATE_EXTERN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10097. aDarwin_Private_ExternTests, apzDarwin_Private_ExternPatch, 0 },
  10098. { zDarwin_Stdint_1Name, zDarwin_Stdint_1List,
  10099. apzDarwin_Stdint_1Machs,
  10100. DARWIN_STDINT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10101. aDarwin_Stdint_1Tests, apzDarwin_Stdint_1Patch, 0 },
  10102. { zDarwin_Stdint_2Name, zDarwin_Stdint_2List,
  10103. apzDarwin_Stdint_2Machs,
  10104. DARWIN_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10105. aDarwin_Stdint_2Tests, apzDarwin_Stdint_2Patch, 0 },
  10106. { zDarwin_Stdint_3Name, zDarwin_Stdint_3List,
  10107. apzDarwin_Stdint_3Machs,
  10108. DARWIN_STDINT_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10109. aDarwin_Stdint_3Tests, apzDarwin_Stdint_3Patch, 0 },
  10110. { zDarwin_Stdint_4Name, zDarwin_Stdint_4List,
  10111. apzDarwin_Stdint_4Machs,
  10112. DARWIN_STDINT_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10113. aDarwin_Stdint_4Tests, apzDarwin_Stdint_4Patch, 0 },
  10114. { zDarwin_Stdint_5Name, zDarwin_Stdint_5List,
  10115. apzDarwin_Stdint_5Machs,
  10116. DARWIN_STDINT_5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10117. aDarwin_Stdint_5Tests, apzDarwin_Stdint_5Patch, 0 },
  10118. { zDarwin_Stdint_6Name, zDarwin_Stdint_6List,
  10119. apzDarwin_Stdint_6Machs,
  10120. DARWIN_STDINT_6_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10121. aDarwin_Stdint_6Tests, apzDarwin_Stdint_6Patch, 0 },
  10122. { zDarwin_Stdint_7Name, zDarwin_Stdint_7List,
  10123. apzDarwin_Stdint_7Machs,
  10124. DARWIN_STDINT_7_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10125. aDarwin_Stdint_7Tests, apzDarwin_Stdint_7Patch, 0 },
  10126. { zDarwin_Ucred__AtomicName, zDarwin_Ucred__AtomicList,
  10127. apzDarwin_Ucred__AtomicMachs,
  10128. DARWIN_UCRED__ATOMIC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10129. aDarwin_Ucred__AtomicTests, apzDarwin_Ucred__AtomicPatch, 0 },
  10130. { zDarwin_Flt_Eval_MethodName, zDarwin_Flt_Eval_MethodList,
  10131. apzDarwin_Flt_Eval_MethodMachs,
  10132. DARWIN_FLT_EVAL_METHOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10133. aDarwin_Flt_Eval_MethodTests, apzDarwin_Flt_Eval_MethodPatch, 0 },
  10134. { zDec_Intern_AsmName, zDec_Intern_AsmList,
  10135. apzDec_Intern_AsmMachs,
  10136. DEC_INTERN_ASM_TEST_CT, FD_MACH_ONLY,
  10137. aDec_Intern_AsmTests, apzDec_Intern_AsmPatch, 0 },
  10138. { zDjgpp_Wchar_HName, zDjgpp_Wchar_HList,
  10139. apzDjgpp_Wchar_HMachs,
  10140. DJGPP_WCHAR_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10141. aDjgpp_Wchar_HTests, apzDjgpp_Wchar_HPatch, 0 },
  10142. { zEcd_CursorName, zEcd_CursorList,
  10143. apzEcd_CursorMachs,
  10144. ECD_CURSOR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10145. aEcd_CursorTests, apzEcd_CursorPatch, 0 },
  10146. { zFeraiseexcept_Nosse_DivbyzeroName, zFeraiseexcept_Nosse_DivbyzeroList,
  10147. apzFeraiseexcept_Nosse_DivbyzeroMachs,
  10148. FERAISEEXCEPT_NOSSE_DIVBYZERO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10149. aFeraiseexcept_Nosse_DivbyzeroTests, apzFeraiseexcept_Nosse_DivbyzeroPatch, 0 },
  10150. { zFeraiseexcept_Nosse_InvalidName, zFeraiseexcept_Nosse_InvalidList,
  10151. apzFeraiseexcept_Nosse_InvalidMachs,
  10152. FERAISEEXCEPT_NOSSE_INVALID_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10153. aFeraiseexcept_Nosse_InvalidTests, apzFeraiseexcept_Nosse_InvalidPatch, 0 },
  10154. { zFreebsd_Gcc3_BreakageName, zFreebsd_Gcc3_BreakageList,
  10155. apzFreebsd_Gcc3_BreakageMachs,
  10156. FREEBSD_GCC3_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10157. aFreebsd_Gcc3_BreakageTests, apzFreebsd_Gcc3_BreakagePatch, 0 },
  10158. { zFreebsd_Gcc4_BreakageName, zFreebsd_Gcc4_BreakageList,
  10159. apzFreebsd_Gcc4_BreakageMachs,
  10160. FREEBSD_GCC4_BREAKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10161. aFreebsd_Gcc4_BreakageTests, apzFreebsd_Gcc4_BreakagePatch, 0 },
  10162. { zGlibc_C99_Inline_1Name, zGlibc_C99_Inline_1List,
  10163. apzGlibc_C99_Inline_1Machs,
  10164. GLIBC_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10165. aGlibc_C99_Inline_1Tests, apzGlibc_C99_Inline_1Patch, 0 },
  10166. { zGlibc_C99_Inline_1aName, zGlibc_C99_Inline_1aList,
  10167. apzGlibc_C99_Inline_1aMachs,
  10168. GLIBC_C99_INLINE_1A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10169. aGlibc_C99_Inline_1aTests, apzGlibc_C99_Inline_1aPatch, 0 },
  10170. { zGlibc_C99_Inline_2Name, zGlibc_C99_Inline_2List,
  10171. apzGlibc_C99_Inline_2Machs,
  10172. GLIBC_C99_INLINE_2_TEST_CT, FD_MACH_ONLY,
  10173. aGlibc_C99_Inline_2Tests, apzGlibc_C99_Inline_2Patch, 0 },
  10174. { zGlibc_C99_Inline_3Name, zGlibc_C99_Inline_3List,
  10175. apzGlibc_C99_Inline_3Machs,
  10176. GLIBC_C99_INLINE_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10177. aGlibc_C99_Inline_3Tests, apzGlibc_C99_Inline_3Patch, 0 },
  10178. { zGlibc_C99_Inline_4Name, zGlibc_C99_Inline_4List,
  10179. apzGlibc_C99_Inline_4Machs,
  10180. GLIBC_C99_INLINE_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10181. aGlibc_C99_Inline_4Tests, apzGlibc_C99_Inline_4Patch, 0 },
  10182. { zGlibc_Mutex_InitName, zGlibc_Mutex_InitList,
  10183. apzGlibc_Mutex_InitMachs,
  10184. GLIBC_MUTEX_INIT_TEST_CT, FD_MACH_ONLY,
  10185. aGlibc_Mutex_InitTests, apzGlibc_Mutex_InitPatch, 0 },
  10186. { zGlibc_StdintName, zGlibc_StdintList,
  10187. apzGlibc_StdintMachs,
  10188. GLIBC_STDINT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10189. aGlibc_StdintTests, apzGlibc_StdintPatch, 0 },
  10190. { zGlibc_StrncpyName, zGlibc_StrncpyList,
  10191. apzGlibc_StrncpyMachs,
  10192. GLIBC_STRNCPY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10193. aGlibc_StrncpyTests, apzGlibc_StrncpyPatch, 0 },
  10194. { zGlibc_TgmathName, zGlibc_TgmathList,
  10195. apzGlibc_TgmathMachs,
  10196. GLIBC_TGMATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10197. aGlibc_TgmathTests, apzGlibc_TgmathPatch, 0 },
  10198. { zGnu_TypesName, zGnu_TypesList,
  10199. apzGnu_TypesMachs,
  10200. GNU_TYPES_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
  10201. aGnu_TypesTests, apzGnu_TypesPatch, 0 },
  10202. { zHp_InlineName, zHp_InlineList,
  10203. apzHp_InlineMachs,
  10204. HP_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10205. aHp_InlineTests, apzHp_InlinePatch, 0 },
  10206. { zHp_SysfileName, zHp_SysfileList,
  10207. apzHp_SysfileMachs,
  10208. HP_SYSFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10209. aHp_SysfileTests, apzHp_SysfilePatch, 0 },
  10210. { zHppa_Hpux_Fp_MacrosName, zHppa_Hpux_Fp_MacrosList,
  10211. apzHppa_Hpux_Fp_MacrosMachs,
  10212. HPPA_HPUX_FP_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10213. aHppa_Hpux_Fp_MacrosTests, apzHppa_Hpux_Fp_MacrosPatch, 0 },
  10214. { zHpux10_Cpp_Pow_InlineName, zHpux10_Cpp_Pow_InlineList,
  10215. apzHpux10_Cpp_Pow_InlineMachs,
  10216. HPUX10_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10217. aHpux10_Cpp_Pow_InlineTests, apzHpux10_Cpp_Pow_InlinePatch, 0 },
  10218. { zHpux11_Cpp_Pow_InlineName, zHpux11_Cpp_Pow_InlineList,
  10219. apzHpux11_Cpp_Pow_InlineMachs,
  10220. HPUX11_CPP_POW_INLINE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10221. aHpux11_Cpp_Pow_InlineTests, apzHpux11_Cpp_Pow_InlinePatch, 0 },
  10222. { zHpux_Math_ConstexprName, zHpux_Math_ConstexprList,
  10223. apzHpux_Math_ConstexprMachs,
  10224. HPUX_MATH_CONSTEXPR_TEST_CT, FD_MACH_ONLY,
  10225. aHpux_Math_ConstexprTests, apzHpux_Math_ConstexprPatch, 0 },
  10226. { zHpux10_Ctype_Declarations1Name, zHpux10_Ctype_Declarations1List,
  10227. apzHpux10_Ctype_Declarations1Machs,
  10228. HPUX10_CTYPE_DECLARATIONS1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10229. aHpux10_Ctype_Declarations1Tests, apzHpux10_Ctype_Declarations1Patch, 0 },
  10230. { zHpux10_Ctype_Declarations2Name, zHpux10_Ctype_Declarations2List,
  10231. apzHpux10_Ctype_Declarations2Machs,
  10232. HPUX10_CTYPE_DECLARATIONS2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10233. aHpux10_Ctype_Declarations2Tests, apzHpux10_Ctype_Declarations2Patch, 0 },
  10234. { zHpux10_Stdio_DeclarationsName, zHpux10_Stdio_DeclarationsList,
  10235. apzHpux10_Stdio_DeclarationsMachs,
  10236. HPUX10_STDIO_DECLARATIONS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10237. aHpux10_Stdio_DeclarationsTests, apzHpux10_Stdio_DeclarationsPatch, 0 },
  10238. { zHppa_Hpux11_AllocaName, zHppa_Hpux11_AllocaList,
  10239. apzHppa_Hpux11_AllocaMachs,
  10240. HPPA_HPUX11_ALLOCA_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10241. aHppa_Hpux11_AllocaTests, apzHppa_Hpux11_AllocaPatch, 0 },
  10242. { zHpux11_AbsName, zHpux11_AbsList,
  10243. apzHpux11_AbsMachs,
  10244. HPUX11_ABS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10245. aHpux11_AbsTests, apzHpux11_AbsPatch, 0 },
  10246. { zHpux11_Lwp_Rwlock_ValidName, zHpux11_Lwp_Rwlock_ValidList,
  10247. apzHpux11_Lwp_Rwlock_ValidMachs,
  10248. HPUX11_LWP_RWLOCK_VALID_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10249. aHpux11_Lwp_Rwlock_ValidTests, apzHpux11_Lwp_Rwlock_ValidPatch, 0 },
  10250. { zHpux11_Extern_SendfileName, zHpux11_Extern_SendfileList,
  10251. apzHpux11_Extern_SendfileMachs,
  10252. HPUX11_EXTERN_SENDFILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10253. aHpux11_Extern_SendfileTests, apzHpux11_Extern_SendfilePatch, 0 },
  10254. { zHpux11_Extern_SendpathName, zHpux11_Extern_SendpathList,
  10255. apzHpux11_Extern_SendpathMachs,
  10256. HPUX11_EXTERN_SENDPATH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10257. aHpux11_Extern_SendpathTests, apzHpux11_Extern_SendpathPatch, 0 },
  10258. { zHpux11_FabsfName, zHpux11_FabsfList,
  10259. apzHpux11_FabsfMachs,
  10260. HPUX11_FABSF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10261. aHpux11_FabsfTests, apzHpux11_FabsfPatch, 0 },
  10262. { zHpux11_Pthread_PointerName, zHpux11_Pthread_PointerList,
  10263. apzHpux11_Pthread_PointerMachs,
  10264. HPUX11_PTHREAD_POINTER_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10265. aHpux11_Pthread_PointerTests, apzHpux11_Pthread_PointerPatch, 0 },
  10266. { zHpux11_Pthread_ConstName, zHpux11_Pthread_ConstList,
  10267. apzHpux11_Pthread_ConstMachs,
  10268. HPUX11_PTHREAD_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10269. aHpux11_Pthread_ConstTests, apzHpux11_Pthread_ConstPatch, 0 },
  10270. { zHpux11_Size_TName, zHpux11_Size_TList,
  10271. apzHpux11_Size_TMachs,
  10272. HPUX11_SIZE_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10273. aHpux11_Size_TTests, apzHpux11_Size_TPatch, 0 },
  10274. { zHpux11_SnprintfName, zHpux11_SnprintfList,
  10275. apzHpux11_SnprintfMachs,
  10276. HPUX11_SNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10277. aHpux11_SnprintfTests, apzHpux11_SnprintfPatch, 0 },
  10278. { zHpux11_VsnprintfName, zHpux11_VsnprintfList,
  10279. apzHpux11_VsnprintfMachs,
  10280. HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10281. aHpux11_VsnprintfTests, apzHpux11_VsnprintfPatch, 0 },
  10282. { zHpux_VsscanfName, zHpux_VsscanfList,
  10283. apzHpux_VsscanfMachs,
  10284. HPUX_VSSCANF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10285. aHpux_VsscanfTests, apzHpux_VsscanfPatch, 0 },
  10286. { zHpux8_Bogus_InlinesName, zHpux8_Bogus_InlinesList,
  10287. apzHpux8_Bogus_InlinesMachs,
  10288. HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY,
  10289. aHpux8_Bogus_InlinesTests, apzHpux8_Bogus_InlinesPatch, 0 },
  10290. { zHpux_C99_IntptrName, zHpux_C99_IntptrList,
  10291. apzHpux_C99_IntptrMachs,
  10292. HPUX_C99_INTPTR_TEST_CT, FD_MACH_ONLY,
  10293. aHpux_C99_IntptrTests, apzHpux_C99_IntptrPatch, 0 },
  10294. { zHpux_C99_InttypesName, zHpux_C99_InttypesList,
  10295. apzHpux_C99_InttypesMachs,
  10296. HPUX_C99_INTTYPES_TEST_CT, FD_MACH_ONLY,
  10297. aHpux_C99_InttypesTests, apzHpux_C99_InttypesPatch, 0 },
  10298. { zHpux_C99_Inttypes2Name, zHpux_C99_Inttypes2List,
  10299. apzHpux_C99_Inttypes2Machs,
  10300. HPUX_C99_INTTYPES2_TEST_CT, FD_MACH_ONLY,
  10301. aHpux_C99_Inttypes2Tests, apzHpux_C99_Inttypes2Patch, 0 },
  10302. { zHpux_C99_Inttypes3Name, zHpux_C99_Inttypes3List,
  10303. apzHpux_C99_Inttypes3Machs,
  10304. HPUX_C99_INTTYPES3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10305. aHpux_C99_Inttypes3Tests, apzHpux_C99_Inttypes3Patch, 0 },
  10306. { zHpux_C99_Inttypes4Name, zHpux_C99_Inttypes4List,
  10307. apzHpux_C99_Inttypes4Machs,
  10308. HPUX_C99_INTTYPES4_TEST_CT, FD_MACH_ONLY,
  10309. aHpux_C99_Inttypes4Tests, apzHpux_C99_Inttypes4Patch, 0 },
  10310. { zHpux_C99_Inttypes5Name, zHpux_C99_Inttypes5List,
  10311. apzHpux_C99_Inttypes5Machs,
  10312. HPUX_C99_INTTYPES5_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10313. aHpux_C99_Inttypes5Tests, apzHpux_C99_Inttypes5Patch, 0 },
  10314. { zHpux_Ctype_MacrosName, zHpux_Ctype_MacrosList,
  10315. apzHpux_Ctype_MacrosMachs,
  10316. HPUX_CTYPE_MACROS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10317. aHpux_Ctype_MacrosTests, apzHpux_Ctype_MacrosPatch, 0 },
  10318. { zHpux_Extern_ErrnoName, zHpux_Extern_ErrnoList,
  10319. apzHpux_Extern_ErrnoMachs,
  10320. HPUX_EXTERN_ERRNO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10321. aHpux_Extern_ErrnoTests, apzHpux_Extern_ErrnoPatch, 0 },
  10322. { zHpux_HtonlName, zHpux_HtonlList,
  10323. apzHpux_HtonlMachs,
  10324. HPUX_HTONL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10325. aHpux_HtonlTests, apzHpux_HtonlPatch, 0 },
  10326. { zHpux_Imaginary_IName, zHpux_Imaginary_IList,
  10327. apzHpux_Imaginary_IMachs,
  10328. HPUX_IMAGINARY_I_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10329. aHpux_Imaginary_ITests, apzHpux_Imaginary_IPatch, 0 },
  10330. { zHpux_Inttype_Int8_TName, zHpux_Inttype_Int8_TList,
  10331. apzHpux_Inttype_Int8_TMachs,
  10332. HPUX_INTTYPE_INT8_T_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10333. aHpux_Inttype_Int8_TTests, apzHpux_Inttype_Int8_TPatch, 0 },
  10334. { zHpux_Long_DoubleName, zHpux_Long_DoubleList,
  10335. apzHpux_Long_DoubleMachs,
  10336. HPUX_LONG_DOUBLE_TEST_CT, FD_MACH_ONLY,
  10337. aHpux_Long_DoubleTests, apzHpux_Long_DoublePatch, 0 },
  10338. { zHpux_Long_Double_2Name, zHpux_Long_Double_2List,
  10339. apzHpux_Long_Double_2Machs,
  10340. HPUX_LONG_DOUBLE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10341. aHpux_Long_Double_2Tests, apzHpux_Long_Double_2Patch, 0 },
  10342. { zHpux_Pthread_InitializersName, zHpux_Pthread_InitializersList,
  10343. apzHpux_Pthread_InitializersMachs,
  10344. HPUX_PTHREAD_INITIALIZERS_TEST_CT, FD_MACH_ONLY,
  10345. aHpux_Pthread_InitializersTests, apzHpux_Pthread_InitializersPatch, 0 },
  10346. { zHpux_Spu_InfoName, zHpux_Spu_InfoList,
  10347. apzHpux_Spu_InfoMachs,
  10348. HPUX_SPU_INFO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10349. aHpux_Spu_InfoTests, apzHpux_Spu_InfoPatch, 0 },
  10350. { zHpux_Stdint_Least_FastName, zHpux_Stdint_Least_FastList,
  10351. apzHpux_Stdint_Least_FastMachs,
  10352. HPUX_STDINT_LEAST_FAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10353. aHpux_Stdint_Least_FastTests, apzHpux_Stdint_Least_FastPatch, 0 },
  10354. { zHpux_LongjmpName, zHpux_LongjmpList,
  10355. apzHpux_LongjmpMachs,
  10356. HPUX_LONGJMP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10357. aHpux_LongjmpTests, apzHpux_LongjmpPatch, 0 },
  10358. { zHpux_SystimeName, zHpux_SystimeList,
  10359. apzHpux_SystimeMachs,
  10360. HPUX_SYSTIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10361. aHpux_SystimeTests, apzHpux_SystimePatch, 0 },
  10362. { zHuge_Val_HexName, zHuge_Val_HexList,
  10363. apzHuge_Val_HexMachs,
  10364. HUGE_VAL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10365. aHuge_Val_HexTests, apzHuge_Val_HexPatch, 0 },
  10366. { zHuge_Valf_HexName, zHuge_Valf_HexList,
  10367. apzHuge_Valf_HexMachs,
  10368. HUGE_VALF_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10369. aHuge_Valf_HexTests, apzHuge_Valf_HexPatch, 0 },
  10370. { zHuge_Vall_HexName, zHuge_Vall_HexList,
  10371. apzHuge_Vall_HexMachs,
  10372. HUGE_VALL_HEX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10373. aHuge_Vall_HexTests, apzHuge_Vall_HexPatch, 0 },
  10374. { zInt_Abort_Free_And_ExitName, zInt_Abort_Free_And_ExitList,
  10375. apzInt_Abort_Free_And_ExitMachs,
  10376. INT_ABORT_FREE_AND_EXIT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10377. aInt_Abort_Free_And_ExitTests, apzInt_Abort_Free_And_ExitPatch, 0 },
  10378. { zIo_Quotes_DefName, zIo_Quotes_DefList,
  10379. apzIo_Quotes_DefMachs,
  10380. IO_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10381. aIo_Quotes_DefTests, apzIo_Quotes_DefPatch, 0 },
  10382. { zIo_Quotes_UseName, zIo_Quotes_UseList,
  10383. apzIo_Quotes_UseMachs,
  10384. IO_QUOTES_USE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10385. aIo_Quotes_UseTests, apzIo_Quotes_UsePatch, 0 },
  10386. { zIp_Missing_SemiName, zIp_Missing_SemiList,
  10387. apzIp_Missing_SemiMachs,
  10388. IP_MISSING_SEMI_TEST_CT, FD_MACH_ONLY,
  10389. aIp_Missing_SemiTests, apzIp_Missing_SemiPatch, 0 },
  10390. { zIrix_Limits_ConstName, zIrix_Limits_ConstList,
  10391. apzIrix_Limits_ConstMachs,
  10392. IRIX_LIMITS_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10393. aIrix_Limits_ConstTests, apzIrix_Limits_ConstPatch, 0 },
  10394. { zIrix_Stdio_Va_ListName, zIrix_Stdio_Va_ListList,
  10395. apzIrix_Stdio_Va_ListMachs,
  10396. IRIX_STDIO_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10397. aIrix_Stdio_Va_ListTests, apzIrix_Stdio_Va_ListPatch, 0 },
  10398. { zKandr_ConcatName, zKandr_ConcatList,
  10399. apzKandr_ConcatMachs,
  10400. KANDR_CONCAT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10401. aKandr_ConcatTests, apzKandr_ConcatPatch, 0 },
  10402. { zLinux_Ia64_UcontextName, zLinux_Ia64_UcontextList,
  10403. apzLinux_Ia64_UcontextMachs,
  10404. LINUX_IA64_UCONTEXT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10405. aLinux_Ia64_UcontextTests, apzLinux_Ia64_UcontextPatch, 0 },
  10406. { zLynxos_No_Warning_In_Sys_Time_HName, zLynxos_No_Warning_In_Sys_Time_HList,
  10407. apzLynxos_No_Warning_In_Sys_Time_HMachs,
  10408. LYNXOS_NO_WARNING_IN_SYS_TIME_H_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10409. aLynxos_No_Warning_In_Sys_Time_HTests, apzLynxos_No_Warning_In_Sys_Time_HPatch, 0 },
  10410. { zLynxos_Missing_PutenvName, zLynxos_Missing_PutenvList,
  10411. apzLynxos_Missing_PutenvMachs,
  10412. LYNXOS_MISSING_PUTENV_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10413. aLynxos_Missing_PutenvTests, apzLynxos_Missing_PutenvPatch, 0 },
  10414. { zMachine_Ansi_H_Va_ListName, zMachine_Ansi_H_Va_ListList,
  10415. apzMachine_Ansi_H_Va_ListMachs,
  10416. MACHINE_ANSI_H_VA_LIST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10417. aMachine_Ansi_H_Va_ListTests, apzMachine_Ansi_H_Va_ListPatch, 0 },
  10418. { zMachine_NameName, zMachine_NameList,
  10419. apzMachine_NameMachs,
  10420. MACHINE_NAME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10421. aMachine_NameTests, apzMachine_NamePatch, 0 },
  10422. { zMath_ExceptionName, zMath_ExceptionList,
  10423. apzMath_ExceptionMachs,
  10424. MATH_EXCEPTION_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
  10425. aMath_ExceptionTests, apzMath_ExceptionPatch, 0 },
  10426. { zMath_Huge_Val_From_Dbl_MaxName, zMath_Huge_Val_From_Dbl_MaxList,
  10427. apzMath_Huge_Val_From_Dbl_MaxMachs,
  10428. MATH_HUGE_VAL_FROM_DBL_MAX_TEST_CT, FD_MACH_ONLY | FD_SHELL_SCRIPT,
  10429. aMath_Huge_Val_From_Dbl_MaxTests, apzMath_Huge_Val_From_Dbl_MaxPatch, 0 },
  10430. { zNested_Auth_DesName, zNested_Auth_DesList,
  10431. apzNested_Auth_DesMachs,
  10432. NESTED_AUTH_DES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10433. aNested_Auth_DesTests, apzNested_Auth_DesPatch, 0 },
  10434. { zNetbsd_C99_Inline_1Name, zNetbsd_C99_Inline_1List,
  10435. apzNetbsd_C99_Inline_1Machs,
  10436. NETBSD_C99_INLINE_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10437. aNetbsd_C99_Inline_1Tests, apzNetbsd_C99_Inline_1Patch, 0 },
  10438. { zNetbsd_C99_Inline_2Name, zNetbsd_C99_Inline_2List,
  10439. apzNetbsd_C99_Inline_2Machs,
  10440. NETBSD_C99_INLINE_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10441. aNetbsd_C99_Inline_2Tests, apzNetbsd_C99_Inline_2Patch, 0 },
  10442. { zNetbsd_Extra_SemicolonName, zNetbsd_Extra_SemicolonList,
  10443. apzNetbsd_Extra_SemicolonMachs,
  10444. NETBSD_EXTRA_SEMICOLON_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10445. aNetbsd_Extra_SemicolonTests, apzNetbsd_Extra_SemicolonPatch, 0 },
  10446. { zNewlib_Stdint_1Name, zNewlib_Stdint_1List,
  10447. apzNewlib_Stdint_1Machs,
  10448. NEWLIB_STDINT_1_TEST_CT, FD_MACH_ONLY,
  10449. aNewlib_Stdint_1Tests, apzNewlib_Stdint_1Patch, 0 },
  10450. { zNewlib_Stdint_2Name, zNewlib_Stdint_2List,
  10451. apzNewlib_Stdint_2Machs,
  10452. NEWLIB_STDINT_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10453. aNewlib_Stdint_2Tests, apzNewlib_Stdint_2Patch, 0 },
  10454. { zNext_Math_PrefixName, zNext_Math_PrefixList,
  10455. apzNext_Math_PrefixMachs,
  10456. NEXT_MATH_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10457. aNext_Math_PrefixTests, apzNext_Math_PrefixPatch, 0 },
  10458. { zNext_TemplateName, zNext_TemplateList,
  10459. apzNext_TemplateMachs,
  10460. NEXT_TEMPLATE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10461. aNext_TemplateTests, apzNext_TemplatePatch, 0 },
  10462. { zNext_VolitileName, zNext_VolitileList,
  10463. apzNext_VolitileMachs,
  10464. NEXT_VOLITILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10465. aNext_VolitileTests, apzNext_VolitilePatch, 0 },
  10466. { zNext_Wait_UnionName, zNext_Wait_UnionList,
  10467. apzNext_Wait_UnionMachs,
  10468. NEXT_WAIT_UNION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10469. aNext_Wait_UnionTests, apzNext_Wait_UnionPatch, 0 },
  10470. { zNodeent_SyntaxName, zNodeent_SyntaxList,
  10471. apzNodeent_SyntaxMachs,
  10472. NODEENT_SYNTAX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10473. aNodeent_SyntaxTests, apzNodeent_SyntaxPatch, 0 },
  10474. { zOpenbsd_Null_DefinitionName, zOpenbsd_Null_DefinitionList,
  10475. apzOpenbsd_Null_DefinitionMachs,
  10476. OPENBSD_NULL_DEFINITION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10477. aOpenbsd_Null_DefinitionTests, apzOpenbsd_Null_DefinitionPatch, 0 },
  10478. { zObstack_Lvalue_CastName, zObstack_Lvalue_CastList,
  10479. apzObstack_Lvalue_CastMachs,
  10480. OBSTACK_LVALUE_CAST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10481. aObstack_Lvalue_CastTests, apzObstack_Lvalue_CastPatch, 0 },
  10482. { zOpenbsd_Va_StartName, zOpenbsd_Va_StartList,
  10483. apzOpenbsd_Va_StartMachs,
  10484. OPENBSD_VA_START_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10485. aOpenbsd_Va_StartTests, apzOpenbsd_Va_StartPatch, 0 },
  10486. { zOsf_Namespace_AName, zOsf_Namespace_AList,
  10487. apzOsf_Namespace_AMachs,
  10488. OSF_NAMESPACE_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10489. aOsf_Namespace_ATests, apzOsf_Namespace_APatch, 0 },
  10490. { zOsf_Namespace_CName, zOsf_Namespace_CList,
  10491. apzOsf_Namespace_CMachs,
  10492. OSF_NAMESPACE_C_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10493. aOsf_Namespace_CTests, apzOsf_Namespace_CPatch, 0 },
  10494. { zPthread_Incomplete_Struct_ArgumentName, zPthread_Incomplete_Struct_ArgumentList,
  10495. apzPthread_Incomplete_Struct_ArgumentMachs,
  10496. PTHREAD_INCOMPLETE_STRUCT_ARGUMENT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10497. aPthread_Incomplete_Struct_ArgumentTests, apzPthread_Incomplete_Struct_ArgumentPatch, 0 },
  10498. { zRead_Ret_TypeName, zRead_Ret_TypeList,
  10499. apzRead_Ret_TypeMachs,
  10500. READ_RET_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10501. aRead_Ret_TypeTests, apzRead_Ret_TypePatch, 0 },
  10502. { zRpc_Xdr_Lvalue_Cast_AName, zRpc_Xdr_Lvalue_Cast_AList,
  10503. apzRpc_Xdr_Lvalue_Cast_AMachs,
  10504. RPC_XDR_LVALUE_CAST_A_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10505. aRpc_Xdr_Lvalue_Cast_ATests, apzRpc_Xdr_Lvalue_Cast_APatch, 0 },
  10506. { zRpc_Xdr_Lvalue_Cast_BName, zRpc_Xdr_Lvalue_Cast_BList,
  10507. apzRpc_Xdr_Lvalue_Cast_BMachs,
  10508. RPC_XDR_LVALUE_CAST_B_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10509. aRpc_Xdr_Lvalue_Cast_BTests, apzRpc_Xdr_Lvalue_Cast_BPatch, 0 },
  10510. { zRs6000_DoubleName, zRs6000_DoubleList,
  10511. apzRs6000_DoubleMachs,
  10512. RS6000_DOUBLE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10513. aRs6000_DoubleTests, apzRs6000_DoublePatch, 0 },
  10514. { zRs6000_FchmodName, zRs6000_FchmodList,
  10515. apzRs6000_FchmodMachs,
  10516. RS6000_FCHMOD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10517. aRs6000_FchmodTests, apzRs6000_FchmodPatch, 0 },
  10518. { zRs6000_ParamName, zRs6000_ParamList,
  10519. apzRs6000_ParamMachs,
  10520. RS6000_PARAM_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10521. aRs6000_ParamTests, apzRs6000_ParamPatch, 0 },
  10522. { zSolaris___RestrictName, zSolaris___RestrictList,
  10523. apzSolaris___RestrictMachs,
  10524. SOLARIS___RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10525. aSolaris___RestrictTests, apzSolaris___RestrictPatch, 0 },
  10526. { zSolaris_ComplexName, zSolaris_ComplexList,
  10527. apzSolaris_ComplexMachs,
  10528. SOLARIS_COMPLEX_TEST_CT, FD_MACH_ONLY,
  10529. aSolaris_ComplexTests, apzSolaris_ComplexPatch, 0 },
  10530. { zSolaris_Complex_CxxName, zSolaris_Complex_CxxList,
  10531. apzSolaris_Complex_CxxMachs,
  10532. SOLARIS_COMPLEX_CXX_TEST_CT, FD_MACH_ONLY,
  10533. aSolaris_Complex_CxxTests, apzSolaris_Complex_CxxPatch, 0 },
  10534. { zSolaris_Cxx_LinkageName, zSolaris_Cxx_LinkageList,
  10535. apzSolaris_Cxx_LinkageMachs,
  10536. SOLARIS_CXX_LINKAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10537. aSolaris_Cxx_LinkageTests, apzSolaris_Cxx_LinkagePatch, 0 },
  10538. { zSolaris_Getc_Strict_StdcName, zSolaris_Getc_Strict_StdcList,
  10539. apzSolaris_Getc_Strict_StdcMachs,
  10540. SOLARIS_GETC_STRICT_STDC_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10541. aSolaris_Getc_Strict_StdcTests, apzSolaris_Getc_Strict_StdcPatch, 0 },
  10542. { zSolaris_Gets_C11Name, zSolaris_Gets_C11List,
  10543. apzSolaris_Gets_C11Machs,
  10544. SOLARIS_GETS_C11_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10545. aSolaris_Gets_C11Tests, apzSolaris_Gets_C11Patch, 0 },
  10546. { zSolaris_Gets_Cxx14Name, zSolaris_Gets_Cxx14List,
  10547. apzSolaris_Gets_Cxx14Machs,
  10548. SOLARIS_GETS_CXX14_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10549. aSolaris_Gets_Cxx14Tests, apzSolaris_Gets_Cxx14Patch, 0 },
  10550. { zSolaris_Int_ConstName, zSolaris_Int_ConstList,
  10551. apzSolaris_Int_ConstMachs,
  10552. SOLARIS_INT_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10553. aSolaris_Int_ConstTests, apzSolaris_Int_ConstPatch, 0 },
  10554. { zSolaris_Int_Limits_1Name, zSolaris_Int_Limits_1List,
  10555. apzSolaris_Int_Limits_1Machs,
  10556. SOLARIS_INT_LIMITS_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10557. aSolaris_Int_Limits_1Tests, apzSolaris_Int_Limits_1Patch, 0 },
  10558. { zSolaris_Int_Limits_2Name, zSolaris_Int_Limits_2List,
  10559. apzSolaris_Int_Limits_2Machs,
  10560. SOLARIS_INT_LIMITS_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10561. aSolaris_Int_Limits_2Tests, apzSolaris_Int_Limits_2Patch, 0 },
  10562. { zSolaris_Int_Limits_3Name, zSolaris_Int_Limits_3List,
  10563. apzSolaris_Int_Limits_3Machs,
  10564. SOLARIS_INT_LIMITS_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10565. aSolaris_Int_Limits_3Tests, apzSolaris_Int_Limits_3Patch, 0 },
  10566. { zSolaris_Math_1Name, zSolaris_Math_1List,
  10567. apzSolaris_Math_1Machs,
  10568. SOLARIS_MATH_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10569. aSolaris_Math_1Tests, apzSolaris_Math_1Patch, 0 },
  10570. { zSolaris_Math_10Name, zSolaris_Math_10List,
  10571. apzSolaris_Math_10Machs,
  10572. SOLARIS_MATH_10_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10573. aSolaris_Math_10Tests, apzSolaris_Math_10Patch, 0 },
  10574. { zSolaris_Math_2Name, zSolaris_Math_2List,
  10575. apzSolaris_Math_2Machs,
  10576. SOLARIS_MATH_2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10577. aSolaris_Math_2Tests, apzSolaris_Math_2Patch, 0 },
  10578. { zSolaris_Math_3Name, zSolaris_Math_3List,
  10579. apzSolaris_Math_3Machs,
  10580. SOLARIS_MATH_3_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10581. aSolaris_Math_3Tests, apzSolaris_Math_3Patch, 0 },
  10582. { zSolaris_Math_4Name, zSolaris_Math_4List,
  10583. apzSolaris_Math_4Machs,
  10584. SOLARIS_MATH_4_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10585. aSolaris_Math_4Tests, apzSolaris_Math_4Patch, 0 },
  10586. { zSolaris_Math_8Name, zSolaris_Math_8List,
  10587. apzSolaris_Math_8Machs,
  10588. SOLARIS_MATH_8_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10589. aSolaris_Math_8Tests, apzSolaris_Math_8Patch, 0 },
  10590. { zSolaris_Math_9Name, zSolaris_Math_9List,
  10591. apzSolaris_Math_9Machs,
  10592. SOLARIS_MATH_9_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10593. aSolaris_Math_9Tests, apzSolaris_Math_9Patch, 0 },
  10594. { zSolaris_Math_11Name, zSolaris_Math_11List,
  10595. apzSolaris_Math_11Machs,
  10596. SOLARIS_MATH_11_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10597. aSolaris_Math_11Tests, apzSolaris_Math_11Patch, 0 },
  10598. { zSolaris_Math_12Name, zSolaris_Math_12List,
  10599. apzSolaris_Math_12Machs,
  10600. SOLARIS_MATH_12_TEST_CT, FD_MACH_ONLY,
  10601. aSolaris_Math_12Tests, apzSolaris_Math_12Patch, 0 },
  10602. { zSolaris_Once_Init_1Name, zSolaris_Once_Init_1List,
  10603. apzSolaris_Once_Init_1Machs,
  10604. SOLARIS_ONCE_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10605. aSolaris_Once_Init_1Tests, apzSolaris_Once_Init_1Patch, 0 },
  10606. { zSolaris_Posix_Spawn_RestrictName, zSolaris_Posix_Spawn_RestrictList,
  10607. apzSolaris_Posix_Spawn_RestrictMachs,
  10608. SOLARIS_POSIX_SPAWN_RESTRICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10609. aSolaris_Posix_Spawn_RestrictTests, apzSolaris_Posix_Spawn_RestrictPatch, 0 },
  10610. { zSolaris_Pow_Int_OverloadName, zSolaris_Pow_Int_OverloadList,
  10611. apzSolaris_Pow_Int_OverloadMachs,
  10612. SOLARIS_POW_INT_OVERLOAD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10613. aSolaris_Pow_Int_OverloadTests, apzSolaris_Pow_Int_OverloadPatch, 0 },
  10614. { zSolaris_Rwlock_Init_1Name, zSolaris_Rwlock_Init_1List,
  10615. apzSolaris_Rwlock_Init_1Machs,
  10616. SOLARIS_RWLOCK_INIT_1_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10617. aSolaris_Rwlock_Init_1Tests, apzSolaris_Rwlock_Init_1Patch, 0 },
  10618. { zSolaris_Std___FilbufName, zSolaris_Std___FilbufList,
  10619. apzSolaris_Std___FilbufMachs,
  10620. SOLARIS_STD___FILBUF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10621. aSolaris_Std___FilbufTests, apzSolaris_Std___FilbufPatch, 0 },
  10622. { zSolaris_Std_Gets_Cxx14Name, zSolaris_Std_Gets_Cxx14List,
  10623. apzSolaris_Std_Gets_Cxx14Machs,
  10624. SOLARIS_STD_GETS_CXX14_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10625. aSolaris_Std_Gets_Cxx14Tests, apzSolaris_Std_Gets_Cxx14Patch, 0 },
  10626. { zSolaris_Stdio_TagName, zSolaris_Stdio_TagList,
  10627. apzSolaris_Stdio_TagMachs,
  10628. SOLARIS_STDIO_TAG_TEST_CT, FD_MACH_ONLY,
  10629. aSolaris_Stdio_TagTests, apzSolaris_Stdio_TagPatch, 0 },
  10630. { zSolaris_Stdlib_NoreturnName, zSolaris_Stdlib_NoreturnList,
  10631. apzSolaris_Stdlib_NoreturnMachs,
  10632. SOLARIS_STDLIB_NORETURN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10633. aSolaris_Stdlib_NoreturnTests, apzSolaris_Stdlib_NoreturnPatch, 0 },
  10634. { zStatsswtchName, zStatsswtchList,
  10635. apzStatsswtchMachs,
  10636. STATSSWTCH_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10637. aStatsswtchTests, apzStatsswtchPatch, 0 },
  10638. { zStdio_Stdarg_HName, zStdio_Stdarg_HList,
  10639. apzStdio_Stdarg_HMachs,
  10640. STDIO_STDARG_H_TEST_CT, FD_MACH_IFNOT | FD_SUBROUTINE,
  10641. aStdio_Stdarg_HTests, apzStdio_Stdarg_HPatch, 0 },
  10642. { zStdio_Va_ListName, zStdio_Va_ListList,
  10643. apzStdio_Va_ListMachs,
  10644. STDIO_VA_LIST_TEST_CT, FD_MACH_IFNOT,
  10645. aStdio_Va_ListTests, apzStdio_Va_ListPatch, 0 },
  10646. { zStdio_Va_List_ClientsName, zStdio_Va_List_ClientsList,
  10647. apzStdio_Va_List_ClientsMachs,
  10648. STDIO_VA_LIST_CLIENTS_TEST_CT, FD_MACH_ONLY,
  10649. aStdio_Va_List_ClientsTests, apzStdio_Va_List_ClientsPatch, 0 },
  10650. { zStrict_Ansi_NotName, zStrict_Ansi_NotList,
  10651. apzStrict_Ansi_NotMachs,
  10652. STRICT_ANSI_NOT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10653. aStrict_Ansi_NotTests, apzStrict_Ansi_NotPatch, 0 },
  10654. { zStrict_Ansi_Not_CtdName, zStrict_Ansi_Not_CtdList,
  10655. apzStrict_Ansi_Not_CtdMachs,
  10656. STRICT_ANSI_NOT_CTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10657. aStrict_Ansi_Not_CtdTests, apzStrict_Ansi_Not_CtdPatch, 0 },
  10658. { zStrict_Ansi_OnlyName, zStrict_Ansi_OnlyList,
  10659. apzStrict_Ansi_OnlyMachs,
  10660. STRICT_ANSI_ONLY_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10661. aStrict_Ansi_OnlyTests, apzStrict_Ansi_OnlyPatch, 0 },
  10662. { zStruct_FileName, zStruct_FileList,
  10663. apzStruct_FileMachs,
  10664. STRUCT_FILE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10665. aStruct_FileTests, apzStruct_FilePatch, 0 },
  10666. { zStruct_SockaddrName, zStruct_SockaddrList,
  10667. apzStruct_SockaddrMachs,
  10668. STRUCT_SOCKADDR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10669. aStruct_SockaddrTests, apzStruct_SockaddrPatch, 0 },
  10670. { zSun_Auth_ProtoName, zSun_Auth_ProtoList,
  10671. apzSun_Auth_ProtoMachs,
  10672. SUN_AUTH_PROTO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10673. aSun_Auth_ProtoTests, apzSun_Auth_ProtoPatch, 0 },
  10674. { zSun_Bogus_IfdefName, zSun_Bogus_IfdefList,
  10675. apzSun_Bogus_IfdefMachs,
  10676. SUN_BOGUS_IFDEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10677. aSun_Bogus_IfdefTests, apzSun_Bogus_IfdefPatch, 0 },
  10678. { zSun_CatmacroName, zSun_CatmacroList,
  10679. apzSun_CatmacroMachs,
  10680. SUN_CATMACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10681. aSun_CatmacroTests, apzSun_CatmacroPatch, 0 },
  10682. { zSun_MallocName, zSun_MallocList,
  10683. apzSun_MallocMachs,
  10684. SUN_MALLOC_TEST_CT, FD_MACH_ONLY,
  10685. aSun_MallocTests, apzSun_MallocPatch, 0 },
  10686. { zSun_Rusers_SemiName, zSun_Rusers_SemiList,
  10687. apzSun_Rusers_SemiMachs,
  10688. SUN_RUSERS_SEMI_TEST_CT, FD_MACH_ONLY,
  10689. aSun_Rusers_SemiTests, apzSun_Rusers_SemiPatch, 0 },
  10690. { zSun_SignalName, zSun_SignalList,
  10691. apzSun_SignalMachs,
  10692. SUN_SIGNAL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10693. aSun_SignalTests, apzSun_SignalPatch, 0 },
  10694. { zSunos_StrlenName, zSunos_StrlenList,
  10695. apzSunos_StrlenMachs,
  10696. SUNOS_STRLEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10697. aSunos_StrlenTests, apzSunos_StrlenPatch, 0 },
  10698. { zSuse_Linux_Vt_CxxName, zSuse_Linux_Vt_CxxList,
  10699. apzSuse_Linux_Vt_CxxMachs,
  10700. SUSE_LINUX_VT_CXX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10701. aSuse_Linux_Vt_CxxTests, apzSuse_Linux_Vt_CxxPatch, 0 },
  10702. { zSvr4_Disable_OptName, zSvr4_Disable_OptList,
  10703. apzSvr4_Disable_OptMachs,
  10704. SVR4_DISABLE_OPT_TEST_CT, FD_MACH_ONLY,
  10705. aSvr4_Disable_OptTests, apzSvr4_Disable_OptPatch, 0 },
  10706. { zSvr4_GetcwdName, zSvr4_GetcwdList,
  10707. apzSvr4_GetcwdMachs,
  10708. SVR4_GETCWD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10709. aSvr4_GetcwdTests, apzSvr4_GetcwdPatch, 0 },
  10710. { zSvr4_ProfilName, zSvr4_ProfilList,
  10711. apzSvr4_ProfilMachs,
  10712. SVR4_PROFIL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10713. aSvr4_ProfilTests, apzSvr4_ProfilPatch, 0 },
  10714. { zSvr4_Sighandler_TypeName, zSvr4_Sighandler_TypeList,
  10715. apzSvr4_Sighandler_TypeMachs,
  10716. SVR4_SIGHANDLER_TYPE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10717. aSvr4_Sighandler_TypeTests, apzSvr4_Sighandler_TypePatch, 0 },
  10718. { zSvr4_Undeclared_GetrngeName, zSvr4_Undeclared_GetrngeList,
  10719. apzSvr4_Undeclared_GetrngeMachs,
  10720. SVR4_UNDECLARED_GETRNGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10721. aSvr4_Undeclared_GetrngeTests, apzSvr4_Undeclared_GetrngePatch, 0 },
  10722. { zSysv68_StringName, zSysv68_StringList,
  10723. apzSysv68_StringMachs,
  10724. SYSV68_STRING_TEST_CT, FD_MACH_ONLY,
  10725. aSysv68_StringTests, apzSysv68_StringPatch, 0 },
  10726. { zSysz_Stdlib_For_SunName, zSysz_Stdlib_For_SunList,
  10727. apzSysz_Stdlib_For_SunMachs,
  10728. SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10729. aSysz_Stdlib_For_SunTests, apzSysz_Stdlib_For_SunPatch, 0 },
  10730. { zThread_KeywordName, zThread_KeywordList,
  10731. apzThread_KeywordMachs,
  10732. THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10733. aThread_KeywordTests, apzThread_KeywordPatch, 0 },
  10734. { zTinfo_CplusplusName, zTinfo_CplusplusList,
  10735. apzTinfo_CplusplusMachs,
  10736. TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10737. aTinfo_CplusplusTests, apzTinfo_CplusplusPatch, 0 },
  10738. { zUltrix_ConstName, zUltrix_ConstList,
  10739. apzUltrix_ConstMachs,
  10740. ULTRIX_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10741. aUltrix_ConstTests, apzUltrix_ConstPatch, 0 },
  10742. { zUltrix_Const2Name, zUltrix_Const2List,
  10743. apzUltrix_Const2Machs,
  10744. ULTRIX_CONST2_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10745. aUltrix_Const2Tests, apzUltrix_Const2Patch, 0 },
  10746. { zVa_I960_MacroName, zVa_I960_MacroList,
  10747. apzVa_I960_MacroMachs,
  10748. VA_I960_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10749. aVa_I960_MacroTests, apzVa_I960_MacroPatch, 0 },
  10750. { zVms_Add_Missing_BracesName, zVms_Add_Missing_BracesList,
  10751. apzVms_Add_Missing_BracesMachs,
  10752. VMS_ADD_MISSING_BRACES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10753. aVms_Add_Missing_BracesTests, apzVms_Add_Missing_BracesPatch, 0 },
  10754. { zVms_Decc_BuiltinName, zVms_Decc_BuiltinList,
  10755. apzVms_Decc_BuiltinMachs,
  10756. VMS_DECC_BUILTIN_TEST_CT, FD_MACH_ONLY,
  10757. aVms_Decc_BuiltinTests, apzVms_Decc_BuiltinPatch, 0 },
  10758. { zVms_Define_Can_Use_Extern_PrefixName, zVms_Define_Can_Use_Extern_PrefixList,
  10759. apzVms_Define_Can_Use_Extern_PrefixMachs,
  10760. VMS_DEFINE_CAN_USE_EXTERN_PREFIX_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10761. aVms_Define_Can_Use_Extern_PrefixTests, apzVms_Define_Can_Use_Extern_PrefixPatch, 0 },
  10762. { zVms_Disable_Decc_String_BuiltinsName, zVms_Disable_Decc_String_BuiltinsList,
  10763. apzVms_Disable_Decc_String_BuiltinsMachs,
  10764. VMS_DISABLE_DECC_STRING_BUILTINS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10765. aVms_Disable_Decc_String_BuiltinsTests, apzVms_Disable_Decc_String_BuiltinsPatch, 0 },
  10766. { zVms_Do_Not_Redeclare_HostaliasName, zVms_Do_Not_Redeclare_HostaliasList,
  10767. apzVms_Do_Not_Redeclare_HostaliasMachs,
  10768. VMS_DO_NOT_REDECLARE_HOSTALIAS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10769. aVms_Do_Not_Redeclare_HostaliasTests, apzVms_Do_Not_Redeclare_HostaliasPatch, 0 },
  10770. { zVms_Forward_Declare_StructName, zVms_Forward_Declare_StructList,
  10771. apzVms_Forward_Declare_StructMachs,
  10772. VMS_FORWARD_DECLARE_STRUCT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10773. aVms_Forward_Declare_StructTests, apzVms_Forward_Declare_StructPatch, 0 },
  10774. { zVms_No_64bit_GetoptName, zVms_No_64bit_GetoptList,
  10775. apzVms_No_64bit_GetoptMachs,
  10776. VMS_NO_64BIT_GETOPT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10777. aVms_No_64bit_GetoptTests, apzVms_No_64bit_GetoptPatch, 0 },
  10778. { zVms_Use_Fast_SetjmpName, zVms_Use_Fast_SetjmpList,
  10779. apzVms_Use_Fast_SetjmpMachs,
  10780. VMS_USE_FAST_SETJMP_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10781. aVms_Use_Fast_SetjmpTests, apzVms_Use_Fast_SetjmpPatch, 0 },
  10782. { zVms_Use_Pragma_Extern_ModelName, zVms_Use_Pragma_Extern_ModelList,
  10783. apzVms_Use_Pragma_Extern_ModelMachs,
  10784. VMS_USE_PRAGMA_EXTERN_MODEL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10785. aVms_Use_Pragma_Extern_ModelTests, apzVms_Use_Pragma_Extern_ModelPatch, 0 },
  10786. { zVms_Use_Quoted_IncludeName, zVms_Use_Quoted_IncludeList,
  10787. apzVms_Use_Quoted_IncludeMachs,
  10788. VMS_USE_QUOTED_INCLUDE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10789. aVms_Use_Quoted_IncludeTests, apzVms_Use_Quoted_IncludePatch, 0 },
  10790. { zVoid_NullName, zVoid_NullList,
  10791. apzVoid_NullMachs,
  10792. VOID_NULL_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10793. aVoid_NullTests, apzVoid_NullPatch, 0 },
  10794. { zVxworks_Gcc_ProblemName, zVxworks_Gcc_ProblemList,
  10795. apzVxworks_Gcc_ProblemMachs,
  10796. VXWORKS_GCC_PROBLEM_TEST_CT, FD_MACH_ONLY,
  10797. aVxworks_Gcc_ProblemTests, apzVxworks_Gcc_ProblemPatch, 0 },
  10798. { zVxworks_Ioctl_MacroName, zVxworks_Ioctl_MacroList,
  10799. apzVxworks_Ioctl_MacroMachs,
  10800. VXWORKS_IOCTL_MACRO_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10801. aVxworks_Ioctl_MacroTests, apzVxworks_Ioctl_MacroPatch, 0 },
  10802. { zVxworks_Math_H_Fp_C99Name, zVxworks_Math_H_Fp_C99List,
  10803. apzVxworks_Math_H_Fp_C99Machs,
  10804. VXWORKS_MATH_H_FP_C99_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10805. aVxworks_Math_H_Fp_C99Tests, apzVxworks_Math_H_Fp_C99Patch, 0 },
  10806. { zVxworks_Posix_MkdirName, zVxworks_Posix_MkdirList,
  10807. apzVxworks_Posix_MkdirMachs,
  10808. VXWORKS_POSIX_MKDIR_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10809. aVxworks_Posix_MkdirTests, apzVxworks_Posix_MkdirPatch, 0 },
  10810. { zVxworks_Needs_VxtypesName, zVxworks_Needs_VxtypesList,
  10811. apzVxworks_Needs_VxtypesMachs,
  10812. VXWORKS_NEEDS_VXTYPES_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10813. aVxworks_Needs_VxtypesTests, apzVxworks_Needs_VxtypesPatch, 0 },
  10814. { zVxworks_Needs_VxworksName, zVxworks_Needs_VxworksList,
  10815. apzVxworks_Needs_VxworksMachs,
  10816. VXWORKS_NEEDS_VXWORKS_TEST_CT, FD_MACH_ONLY,
  10817. aVxworks_Needs_VxworksTests, apzVxworks_Needs_VxworksPatch, 0 },
  10818. { zVxworks_Next_YvalsName, zVxworks_Next_YvalsList,
  10819. apzVxworks_Next_YvalsMachs,
  10820. VXWORKS_NEXT_YVALS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10821. aVxworks_Next_YvalsTests, apzVxworks_Next_YvalsPatch, 0 },
  10822. { zVxworks_RegsName, zVxworks_RegsList,
  10823. apzVxworks_RegsMachs,
  10824. VXWORKS_REGS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10825. aVxworks_RegsTests, apzVxworks_RegsPatch, 0 },
  10826. { zVxworks_Posix_OpenName, zVxworks_Posix_OpenList,
  10827. apzVxworks_Posix_OpenMachs,
  10828. VXWORKS_POSIX_OPEN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10829. aVxworks_Posix_OpenTests, apzVxworks_Posix_OpenPatch, 0 },
  10830. { zVxworks_TimeName, zVxworks_TimeList,
  10831. apzVxworks_TimeMachs,
  10832. VXWORKS_TIME_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10833. aVxworks_TimeTests, apzVxworks_TimePatch, 0 },
  10834. { zVxworks_Write_ConstName, zVxworks_Write_ConstList,
  10835. apzVxworks_Write_ConstMachs,
  10836. VXWORKS_WRITE_CONST_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10837. aVxworks_Write_ConstTests, apzVxworks_Write_ConstPatch, 0 },
  10838. { zVxworks_Iolib_Include_UnistdName, zVxworks_Iolib_Include_UnistdList,
  10839. apzVxworks_Iolib_Include_UnistdMachs,
  10840. VXWORKS_IOLIB_INCLUDE_UNISTD_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10841. aVxworks_Iolib_Include_UnistdTests, apzVxworks_Iolib_Include_UnistdPatch, 0 },
  10842. { zVxworks_Time_H_SyslibName, zVxworks_Time_H_SyslibList,
  10843. apzVxworks_Time_H_SyslibMachs,
  10844. VXWORKS_TIME_H_SYSLIB_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10845. aVxworks_Time_H_SyslibTests, apzVxworks_Time_H_SyslibPatch, 0 },
  10846. { zX11_ClassName, zX11_ClassList,
  10847. apzX11_ClassMachs,
  10848. X11_CLASS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10849. aX11_ClassTests, apzX11_ClassPatch, 0 },
  10850. { zX11_Class_UsageName, zX11_Class_UsageList,
  10851. apzX11_Class_UsageMachs,
  10852. X11_CLASS_USAGE_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10853. aX11_Class_UsageTests, apzX11_Class_UsagePatch, 0 },
  10854. { zX11_NewName, zX11_NewList,
  10855. apzX11_NewMachs,
  10856. X11_NEW_TEST_CT, FD_MACH_ONLY,
  10857. aX11_NewTests, apzX11_NewPatch, 0 },
  10858. { zX11_SprintfName, zX11_SprintfList,
  10859. apzX11_SprintfMachs,
  10860. X11_SPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
  10861. aX11_SprintfTests, apzX11_SprintfPatch, 0 }
  10862. };