--- gcj-4.2-4.2.4.orig/class-files.tar.bz2.uue
+++ gcj-4.2-4.2.4/class-files.tar.bz2.uue
@@ -0,0 +1,105 @@
+begin 644 class-files.tar.bz2
+M0EIH.3%!629360LD-"(`#/3_____________________________________
+M________X`[_>#C@`#TT!TW;<[IWW@&],``%]@&UBM:`TEOL<-(0`B8T$-3U
+M,-33TF31'IH]`DT;)D]4T]3RFRFS4I^IY(TQI/)$]/28U/0C&DVH93]-4WI3
+M]29/:0,32-J>:FIXADT,4V4>IZ>F10Q-,T!D:33:&FA&]0:(A5/]I&ADR"I_
+MJ::C8FFH]`D/TIZ:F]3U,*!ZFU/4&@T]1H:-!Z@T:#U`#30&F@#3U`-`T-/4
+M`R`T`!H`````-`>H``1)A--32>BFGDGI&30&F@/4]0`T`!HT9#30-!B```T;
+M4-```T9`!D]0TQ`:`R!IB:#330-``,@T-!IH``$B0B::$T`3$PF03(PHT]$>
+M@-1D#1HQ!ZGJ::/4!H9J8-3:F@](`!D::#0#0-````!H```&C0````::(```
+M``"8!IH!,`"9,````1@$P``````````````````````$P`$I$DTT84])DT/2
+M&(!H]09`:&@!D#0::````-&@!H!D```````T```````````:`#-H]C<>&!"/
+MCH;]+4DBU9M4`FLG)J-@BA#$V01Y<$(+?5K+-"V%.&07B!@X!Y(5FF?#F4NQ
+M`[N69A,;UE5L%ERT=EZ<M;%5M97.3S7@M=-;;38LBX:V5)A#"HB%HL(Q(-5F
+MO=YT8V"#7,0"W5VE[;?\CC'@EM]/FI3;K^QP_[+FWZGJR=,O?&LR&L9G=\W0
+M%H3%7`0]2,J05.P2L:&,?R((0QC1H:3*K+US,?"ZCJOC_SQ2XR^@+%2GY&9P
+MTZ!YY1RC%)XS7;,"L9L8E@HW?5N(ZRZ#B#?80(7XK@;AG%!0]D\BM,@_MO#/
+M$Z!%I!29U4<@!YWGEFY&2:Q*S<FPN/C76P476,`M&(K+/4A60A<+;>CCHJS(
+M(*S[U\B@[R_;W&<JPB%AM1$'#`CF-#=^#Y7GF!ZZZ]#,M.`"SCW7H(HT]/MQ
+M23.8&H=QG,W]3#"Q0H8.0#G)OK)(ADM"'2M<G0&"(^MK9_*^HFHLL"T:)Y%G
+M^5"B?4R.IS4;Z\0L"IC<`TPB20`:S:P[1,"5PYSZ>FE0J44Q"059PC@!KU=E
+MW,Z<=BA)08]^<AVAB(Q"O."FT@-C@I.C<G9GL(AV;W?<?21%*0T@9?>4"!"=
+M9=6)=UBNDR;6LO/T*/Z_Q^[L7?(_HU&K>-]VH<A0@!`5W'!3#W<OKGS)W:>C
+M[&!O^+_[^.AK^_U#Q^,8<\]GD@$7B8%KUVWX.0J%`L!2&P#(&YN;O/W][XO\
+MK^;8$`O7,*1&1&$5*AW<'!-C`/RS\U!,@&7)8AHV,G*N`KHH_WYU)T&13NB=
+MH,8Q^1FU23,9(FE$1DXF.\H>?X&ME>NZ.76MLIQ+>HV=D+K;OGOBGK3#]L$%
+M4<M5/*6L3[W'&GJQ:NJ`3<;=F+\)UU=3QQ%SOXQX4SU3N2C>Y+2FN?@"0>AU
+MNF2IF\]A+8BJ]!9YX<+%8T:@S&FVP)?BNI5&7V%_!#&_<N\&WK#:\=1Q*4^Y
+MV.[3QAA[<P3N!/[_A-IDMP_:;2*;`%!4^[VO!FFGJ^2S+V$Y[^&QQ^%5T4?8
+MK@"2&9,5:WQ`_^VEVQU:F@LX$GZ76`C@N&>GFO2]:``X4-R?,YS*;^@D5FC4
+M1%1;==);E=OJ['IOQ]PZE[C]ZHT&[[*;+'>-+D*@+5,FXNOCY'*B0<+^][;/
+M689=B8@/)AYJ!W#[W*WU5RJUU'EK"$*PA'A?(;DKOV-WZE=S\&3;`T#<A<9W
+M>\S/MW_,7RK#XU"8AT$-%5,8M817D\;MG$&C:<YF$)EKS?U`Z)OA51#!_[9X
+M-"+?.T2VTXQT+X%=LIG7-,$PA9*](\8.*<#8#$)!DTUJD=*$'.!I:A=<C#)3
+MCOZZF\AOKW.<EI=/[-KK+\YX``T,45"/;QNHWB@3D7+F!-)YCNM3OO'AAK3K
+M--7<R0XZPLO]1*19ZI*4\^GC>AZ:TY"N_4>5=TI8Q9>E3H[5W>N1JUXRH-K!
+M:$W],9K&EABFI.3G)!2OU0+G.07W$T_-F2C@"&Z<E&UV?I'%GO8``A;3BXBK
+M__19$$.8K3N);5=]VZ%@`K+*_8$GN.2K["R4_6K:JZW39IZZ&9Q]TT(DZSU,
+M5RM=ED]5$G/WW#>SI:%>9_#"?H.CK9A23[YN+%HY!=7$#"IJQJLH[1PXNO-5
+M>&)]2Q[;(7]_A@/N>8AX7O>%V4.01.86)7(#-Z+@?%@V]?&-?=XP+?5KH'97
+M*.UN9/L_QP<Q>+,8*MBVVZMLG\RB4>R597!AAV!TZ:G5?[ZU0-,C==/^K,D_
+M_PRE)2X:;^5RI!D?IN)/%%N[O5+M5,C(ZQW5F;-=&Z-.SB9,Z<D_0WL*I7D*
+M^Q[2H1Y+,66:R/.^U`BJV3"7#\"CWDLXEW9$$(7VP-MIM0<"JOIVQVE<K+OO
+M=<)32=5[W`KLME92'M<.[4EX7=?IQBXW62(D[923/,SZQS?FQ0A4>]9]T!G"
+M8<B`R@\LY%*V^+W&5T79VEHO975%EFTQD(YV3"FLSVF8F$0V-`@&QU0-([;4
+M];0+5^P9E90A:P29YEYA+#2WW1A91HE0MIWE`[?.%B+:H77THQ:0ENHC5K=5
+MFO>?)XR7"#B%*WMQ:;*8!85<1<MIFJ+6IC'Z?1@9#1-EXSSTEY-Q*FH72EU!
+MA*S"%.(4;ZF:HOC*X29J)C;6(_4/S)V!K9\8Y&!"CV,;9E#9ZQC0-U<XEPYS
+MUM8.JMV<1CK(WZ*M'U(.9,Y_&/@(2YJ6N2BO31=&M%QO>'BV?&^%R4-:!IF<
+MNNLNE%LE#KF/?_%O,*M54+M9``!,F`)I@D\*%RVVZWBI@%338<L^MV4"ZO[5
+MDA(K:"I^5YN%"]A====-1^J8**^-)!6KC1.2%6QL+)SB1$I.CFDN#8F*!"B$
+M(Y`.(Y1"`@DA!SHA,A<')O[WGGZY(?5T17KQ8R@A3RR--KU)>;DD2$F<$`&4
+M'(YSFZ2(*\]SFDWMJ?T=D%0GI>O<D"R\B'YO`TLV76/=Z0#HJDL@"$(DUT)2
+M)"`&AVU34(#)PZKT`!DQKTLP])9_C[EV3"DL:,@*M:4GA2L#,`GSUC$-E;8,
+MQ`20D-F-5HK'EG'5X79R^PH8`R!D`8,U)_*Q308)@R`DX7OZW.L,:NUJ1'9^
+M;]"CM,$Z@>_1!H`_JAD:E:B7@>$2Y?#J_^IP0;!H^OOG8P\0?765)@P^RP$!
+M#LAPB[G-R1O7`![NAC8L`Q)M#&FF)L!M,:])$(;&QL!M=1$"ZY_BE#??U=HH
+M`Z>4,:=*`FP2;?@^7YOD+U05)C:&QIH3:WD0Q@V_57>FX-E[IM[T_P"G*4KG
+M@\"[;N`#`TV-IM/Q4!:Y)_,X,Y>0:HULXAR@$0P;0#;:;![V`YAZ7?N9YK>;
+M?JM'OMFYR:[L]]=MO^3]34<M+2U^-CV>NYBE+#G*X%EM@V,;330Q@N%A;VLI
+MM#85M<7((3&@8P;*_1^".J@VW/C-K7G8?:;GK]]XCH>.](7_:]%*W@4I<VU7
+M)]!B^#86/72YVC41`XA#&0T$UGD+&M7$N",RB6^K3CZ<M-5[QZNJ,PAV`15L
+M-56116O%]3D=1BZW`R1N4JMVPT3ZM2F?H"K-VMC'G[MC<7%]*YB"]>/#T':<
+M9SM6*E,U91FQ/2F<6`P-.8O;<4X#]W2+OT-<G[%-EG.BLIP:=KNU]CY.O:$A
+MW`'=F^-1W,>BR41_"=$:?';E?6Z-=,P8`@5/SMME++#CJ?P+J2ENQ:S2J^,_
+M_$>(&#AHV\C8P8_IMUD]VV%LP9?M+O5R]G2^V+M>L<*0^9,.^\BCR7G1]SVB
+M%-PH";4F--R2QZ)%$,03'^1([SK>;0B(`:$-`$P5!(Y](D`<Y?Q`##YPZN1*
+M$<K)0#S-U!#*(E'F)T*3&-B?E+E=*41Q<0V=YE'M&3),A#F4G,FTOW_TT/\\
+M-V%:PX;,$\224._,E(&#2;0_Z_NN]AR7G-*729O_N>S\[2C0FL3#HZHSAHE/
+M$V$W3STK4^5<Y0R(AQ24E$0P=5E*YSG1U3B")53)N+BL`O/G^-TI!3P\!:VS
+M93U9!#&FFKVU0QUS1-I5X"A*;;;+]*J8SDSH&BQBSW,LL3Z/%X>83[5/)X''
+M5%3=+H7;SH!1@V#.!0,),F]_$1#CG4=T?.U^[WEN-:45MUMC(>;O[;[O''P&
+M*WWV^N:M8V>-J[FRZB[;()<HT038V11TG/HSCJ<1/'LYBYP*$#QLA9+8UX3B
+M8^1(R%H:PB'FM*.2UDGQ=A:P+(>YC5WVCE<'AX+<0($8F&[>OBUVAV[&2+]C
+MUQ*RX/TLFVQJ2DP0V-@V.Y:7ME@Q\*%NK1!T5H%K6TO9.+D]+!87[SB1=NIW
+MH%&J-I&=24TF==^8YKMM+0*$5-MM]>CM;D6YO'RF."9Y*A@HKC5"!J-DT2&-
+MB;8TF,!AEH4(1>.24WBXM,JREM`1=FD`B*Y@@0:)\G,:$!XRO3A7E[<Q\1-G
+M*"%E1R]4,C'B`01VD*I2*4/@@#T$K:@-7]-+"I&[L-JD71!L6(5+-8DBZ7R0
+M:Z7WA`B26B:6.D:>9I;A(VZ1KP,[0=-];:VUJQ$UL8+"Q+`]R-:;WVC<SNA8
+MD=+J8=CE@*YB$/$J?9XGF.4]&%`0VP;IB(@,I@2W=#)LW]"0ZBWQL%8S+S*&
+M_V>@JZ9N+*;SW#B+A0H4;GJ7YNF0D2`C3&56Q5D6=R*Z^-C"A;A(JU4AM(<Y
+M@KP\D6+PQ3%GK+\Z\)G5W;D"AHV>-<2,>JE]68T563)03E>)OQXPB9M4QI-J
+M5M9LXVMUMGK\TVF>\O/QC*2RH-2>JY&RLN@\!#0!8D-(,)1.4.WA;/F%J6BI
+MX)"_,AK,S]B0PA#CL`0T0((!$->3D09C8'<4[F[00(,:`U4(I%#H1^@5,UJ6
+MD8A$+43&"40;MY`+8,Y>02ZE'=2H8!!O83920`GW4Z<M.`#@*8VVK24`=_&!
+M$\PMW5=I;FAG/7<3O[W(MM<9KX2,II+Q;I^EPC>-ODF?'9O=QGH1@$C%Q6/+
+MT=V24S3B'Q(!0EQMB`+>(X0-MI#`6GQ06#,"AAJWXG[^*]AY3%VNNY#4NF14
+M)"D0WP^(T)=+*Z0HB!@A5LHK*Q$*-O4D5(KD:,:#.*>RRH\/ME>0.CYB4)SI
+M)81`-`9PFKK;0#*X3&5RQ!!M$BG"DAV8##IB!1":$,@E-1PH"G#`4<9.1$+1
+M9,K4D<2UQFD7CHV+.-3=YUADF3FPX9J@+E=F71HJ!3&"`RV6L;&RT%PM24)+
+MTLG2CKF4Q`,&459`29&8)SA@$(RDL>EB%H-(U,:M*B1:%+G=]KM)@B^+IQ#-
+M.O7FV2O;YF%K2'C5Y,J;&_I3+DQSE5V6EQE4J$2S(+'91H15/(;*0VP'3[,]
+MO1&=I3"JA"1%$D1#0&*,0K]@B,.MS-?>SXQ\9[C!@=MLYZUTFXC'K*ITJE&"
+MFT4JHI*!L&,H35;9.BB3+C38VCN'+Q5LV]F65WXJ?95"5,O=WJTD2A`07`#3
+MQ,PAS++FO$B05J^A22-&,1B"VY66I%['62QT0CVN)=T38$4Q0%#ATY_,6P]A
+M!/P`R1R.5/H@(.X`>H=X!G+60W1!_SK*5E;T9/9&XD!V;/J2*\UQA2:OYID6
+M3*L:(&FP;;&VT-C9YJ(;0VMN^9828(&T)M)2C2M\+@.GV/4T0L$DL`<+6`RC
+M!A@0)@.:72B1@Y*-A&;9Y6I[01M0A;84W4!'*!=WC<STLCOM3(V^0B^4W25!
+M%+1\47A!A2+QSEFDI)-B3;:4W(ZEN"3KEGDJ^_W#L'+D/1=:_VUKBTR\7<8@
+M1HYJ:COXL+:4Z>L72!S8`O6U<9^]FZ<H@[ODS/[FJS,<*Y-P;N=<U+A1@`<S
+M#]AT69O1P=AM0`HP69E$-X*<@S5#9IE_K.GC#"<G[JL+Q?Q98B.#A<MOL#4=
+M?'W#I5V++EY-51#B"'Z7T-^X?ERA1ST*YYAJ[RV"N7&0+M##O#%V+XIB1KFC
+M3W.H2>-"[).4YXC!>H:2+@Q)M`6/I(@02:;!-MI`3=J2J=@6I)11$J]__%W)
+(%.%"0"R0T(@`
+`
+end
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.s390
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.s390
@@ -0,0 +1,95 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.1.0@GCC_4.1.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __ashldi3@GCC_3.0 1:4.1.1
+ __ashrdi3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzsi2@GCC_3.4 1:4.1.1
+ __cmpdi2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzsi2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divtc3@GCC_4.1.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixtfdi@GCC_4.1.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __fixunstfdi@GCC_4.1.0 1:4.1.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatditf@GCC_4.1.0 1:4.1.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatunditf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrdi3@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldi3@GCC_3.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multc3@GCC_4.1.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __negdi2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __paritysi2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountsi2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_4.1.0 1:4.1.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __ucmpdi2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmoddi4@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/gnat-BV-doc.prerm
+++ gcj-4.2-4.2.4/debian/gnat-BV-doc.prerm
@@ -0,0 +1,7 @@
+#! /bin/sh -e
+
+install-info --quiet --remove gnat_ugn_unw-@BV@
+install-info --quiet --remove gnat_rm-@BV@
+install-info --quiet --remove gnat-style-@BV@
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-doc.doc-base.gccint
+++ gcj-4.2-4.2.4/debian/gcc-BV-doc.doc-base.gccint
@@ -0,0 +1,17 @@
+Document: gccint-@BV@
+Title: Internals of the GNU C and C++ compiler
+Author: Various
+Abstract: This manual documents the internals of the GNU compilers,
+ including how to port them to new targets and some information about
+ how to write front ends for new languages.  It corresponds to GCC
+ version @BV@.x.  The use of the GNU compilers is documented in a
+ separate manual.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/gccint.html
+Files: /usr/share/doc/gcc-@BV@-base/gccint.html
+
+Format: info
+Index: /usr/share/info/gccint-@BV@.info.gz
+Files: /usr/share/info/gccint-@BV@*
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.ldbl.32bit
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.ldbl.32bit
@@ -0,0 +1,280 @@
+ CXXABI_LDBL_1.3@CXXABI_LDBL_1.3 4.2.1
+ GLIBCXX_LDBL_3.4.7@GLIBCXX_LDBL_3.4.7 4.2.1
+ GLIBCXX_LDBL_3.4@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcjcRSt8ios_basePcSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcjcS7_PcS8_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES4_S4_RSt8ios_baseccT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIgEES4_S4_RSt8ios_baseccT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEciRSt8ios_basePcPKcRi@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcjwRSt8ios_basePwSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcjwPKwPwSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES4_S4_RSt8ios_basewcT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIgEES4_S4_RSt8ios_basewcT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwiRSt8ios_basePwPKwRi@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_bRSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES4_S4_RSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES4_S4_RSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_bRSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_bRSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_bRSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb0EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb1EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSi10_M_extractIgEERSiRT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSirsERg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSo9_M_insertIgEERSoT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSolsEg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIgEERS2_RT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIgEERS2_T_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10has_denormE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10is_boundedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10is_integerE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE11round_styleE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12has_infinityE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12max_exponentE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12min_exponentE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE13has_quiet_NaNE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14is_specializedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14max_exponent10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14min_exponent10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE15has_denorm_lossE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE15tinyness_beforeE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE17has_signaling_NaNE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE5radixE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE5trapsE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE6digitsE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE8digits10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE8is_exactE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_iec559E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_moduloE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_signedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt14__convert_to_vIgEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStlsIgcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStlsIgwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStrsIgcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStrsIgwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTIPKg@CXXABI_LDBL_1.3 4.2.1
+ _ZTIPg@CXXABI_LDBL_1.3 4.2.1
+ _ZTIg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSPKg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSPg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSg@CXXABI_LDBL_1.3 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
--- gcj-4.2-4.2.4.orig/debian/NEWS.gcc
+++ gcj-4.2-4.2.4/debian/NEWS.gcc
@@ -0,0 +1,386 @@
+GCC 4.2 Release Series - Changes, New Features, and Fixes
+=========================================================
+
+
+Caveats
+=======
+
+GCC no longer accepts the -fshared-data option.  This option has had
+no effect in any GCC 4 release; the targets to which the option used
+to apply had been removed before GCC 4.0.
+
+
+General Optimizer Improvements
+==============================
+
+- New command-line options specify the possible relationships among
+  parameters and between parameters and global data.  For example,
+  -fargument-noalias-anything specifies that arguments do not alias
+  any other storage.
+
+- Each language will automatically use whatever option is required by
+  the language standard.  You should not need to use these options
+  yourself.
+
+
+New Languages and Language specific improvements
+================================================
+
+- OpenMP is now supported for the C, C++ and Fortran compilers.
+
+- New command line options -fstrict-overflow and -Wstrict-overflow
+  have been added.  -fstrict-overflow tells the compiler that it may
+  assume that the program follows the strict signed overflow semantics
+  permitted for the language: for C and C++ this means that the
+  compiler may assume that signed overflow does not occur.  For
+  example, a loop like
+
+      for (i = 1; i > 0; i *= 2)
+
+  is presumably intended to continue looping until i overflows.  With
+  -fstrict-overflow, the compiler may assume that signed overflow will
+  not occur, and transform this into an infinite loop.
+  -fstrict-overflow is turned on by default at -O2, and may be
+  disabled via -fno-strict-overflow.  The -Wstrict-overflow option may
+  be used to warn about cases where the compiler assumes that signed
+  overflow will not occur.  It takes five different levels:
+  -Wstrict-overflow=1 to 5.  See the documentation for details.
+  -Wstrict-overflow=1 is enabled by -Wall.
+
+- The new command line option -fno-toplevel-reorder directs GCC to
+  emit top-level functions, variables, and asm statements in the same
+  order that they appear in the input file.  This is intended to
+  support existing code which relies on a particular ordering (for
+  example, code which uses top-level asm statements to switch
+  sections).  For new code, it is generally better to use function and
+  variable attributes.  The -fno-toplevel-reorder option may be used
+  for most cases which currently use -fno-unit-at-a-time.  The
+  -fno-unit-at-a-time option will be removed in some future version of
+  GCC.  If you know of a case which requires -fno-unit-at-a-time which
+  is not fixed by -fno-toplevel-reorder, please open a bug report.
+
+
+C family
+--------
+
+- The pragma redefine_extname will now macro expand its tokens for
+  compatibility with SunPRO.
+
+- In the next release of GCC, 4.3, -std=c99 or -std=gnu99 will direct
+  GCC to handle inline functions as specified in the C99 standard.  In
+  preparation for this, GCC 4.2 will warn about any use of non-static
+  inline functions in gnu99 or c99 mode.  This new warning may be
+  disabled with the new gnu_inline function attribute or the new
+  -fgnu89-inline command line option.  Also, GCC 4.2 and later will
+  define one of the preprocessor macros __GNUC_GNU_INLINE__ or
+  __GNUC_STDC_INLINE__ to indicate the semantics of inline functions
+  in the current compilation.
+
+- A new command line option -Waddress has been added to warn about
+  suspicious uses of memory addresses as, for example, using the
+  address of a function in a conditional expression, and comparisons
+  against the memory address of a string literal.  This warning is
+  enabled by -Wall.
+
+
+C++
+---
+
+- C++ visibility handling has been overhauled.
+
+  Restricted visiblity is propagated from classes to members, from
+  functions to local statics, and from templates and template
+  arguments to instantiations, unless the latter has explicitly
+  declared visibility.
+
+  The visibility attribute for a class must come between the class-key
+  and the name, not after the closing brace.
+
+  Attributes are now allowed for enums and elaborated-type-specifiers
+  that only declare a type.
+
+  Members of the anonymous namespace are now local to a particular
+  translation unit, along with any other declarations which use them,
+  though they are still treated as having external linkage for
+  language semantics.
+
+- The (undocumented) extension which permitted templates with default
+  arguments to be bound to template template parameters with fewer
+  parameters has been removed.  For example:
+
+	template <template <typename> class C>
+	void f(C<double>) {}
+
+	template <typename T, typename U = int>
+	struct S {};
+
+	template void f(S<double>);
+
+  is no longer accepted by G++.  The reason this code is not accepted
+  is that S is a template with two parameters; therefore, it cannot be
+  bound to C which has only one parameter.
+
+- The <?, >?, <?=, and >?= operators, deprecated in previous GCC
+  releases, have been removed.
+
+- The command line option -fconst-strings, deprecated in previous GCC
+  releases, has been removed.
+
+- The configure variable enable-__cxa_atexit is now enabled by default
+  for more targets.  Enabling this variable is necessary in order for
+  static destructors to be executed in the correct order, but it
+  depends upon the presence of a non-standard C library in the target
+  library in order to work.  The variable is now enabled for more
+  targets which are known to have suitable C libraries.
+
+- -Wextra will produce warnings for if statements with a semicolon as
+  the only body, to catch code like:
+
+         if (a);
+            return 1;
+         return 0;
+
+  To suppress the warning in valid cases, use { } instead.
+
+- The C++ frontend now also produces strict aliasing warnings when
+  -fstrict-aliasing -Wstrict-aliasing is in effect.
+
+
+Runtime Library (libstdc++)
+---------------------------
+
+- Added support for TR1 <random>, <complex>, and C compatibility
+  headers. In addition, a lock-free version of shared_ptr was
+  contributed as part of Phillip Jordan's Google Summer of Code
+  project on lock-free containers.  The implementation status for TR1
+  can be tracked in tr1.html.
+
+- In association with the Summer of Code work on lock-free containers,
+  the interface for atomic builtins was adjusted, creating simpler
+  alternatives for non-threaded code paths.  Also, usage was
+  consolidated and all elements were moved from namespace std to
+  namespace__gnu_cxx.  Affected interfaces are the functions
+  __exchange_and_add, __atomic_add, and the objects __mutex,
+  __recursive_mutex, and __scoped_lock.
+
+- Support for versioning weak symbol names via namespace association
+  was added. However, as this changes the names of exported symbols,
+  this is turned off by default in the current ABI.  Intrepid users can
+  enable this feature by using
+  --enable-symvers=gnu-versioned-namespace during configuration.
+
+- Revised, simplified, and expanded policy-based associative
+  containers, including data types for tree and trie forms
+  (basic_tree, tree, trie), lists (list_update), and both
+  collision-chaining and probing hash-based containers
+  (basic_hash_table, cc_hash_table, gp_hash_table).  More details per
+  the documentation.
+
+- The implementation of the debug mode was modified, whereby the debug
+  namespaces were nested inside of namespace std and namespace
+  __gnu_cxx in order to resolve some long standing corner cases
+  involving name lookup.  Debug functionality from the policy-based
+  data structures was consolidated and enabled with the single macro,
+  _GLIBCXX_DEBUG. See PR 26142 for more information.
+
+- Added extensions for type traits: __conditional_type,
+  __numeric_traits, __add_unsigned, __removed_unsigned, __enable_if.
+
+- Added a typelist implementation for compile-time
+  meta-programming.  Elements for typelist construction and operation
+  can be found within namespace __gnu_cxx::typelist.
+
+- Added a new allocator, __gnu_cxx::throw_allocator, for testing
+  exception-safety.  Enabled library-wide visibility control, allowing
+  -fvisibility to be used.
+
+- Consolidated all nested namespaces and the conversion of
+  __gnu_internal implementation-private details to anonymous namespaces
+  whenever possible.
+
+- Implemented LWG resolutions DR 431 and DR 538.
+
+
+Fortran
+-------
+
+- Support for allocatable components has been added (TR 15581 and
+  Fortran 2003).
+
+- Support for the Fortran 2003 streaming IO extension has been added.
+
+- The GNU Fortran compiler now uses 4-byte record markers by default
+  for unformatted files to be compatible with g77 and most other
+  compilers.  The implementation allows for records greater than 2 GB
+  and is compatible with several other compilers. Older versions of
+  gfortran used 8-byte record markers by default (on most systems).  In
+  order to change the length of the record markers, e.g. to read
+  unformatted files created by older gfortran versions, the
+  -frecord-marker=8 option can be used.
+
+
+Java (GCJ)
+----------
+
+- A new command line option -static-libgcj has been added for targets
+  that use a linker compatible with GNU Binutils.  As its name
+  implies, this causes libgcj to be linked statically.  In some cases
+  this causes the resulting executable to start faster and use less
+  memory than if the shared version of libgcj were used.  However
+  caution should be used as it can also cause essential parts of the
+  library to be omitted.  Some of these issues are discussed in:
+  http://gcc.gnu.org/wiki/Statically%20linking%20libgcj
+
+- fastjar is no longer bundled with GCC.  To build libgcj, you will
+  need either InfoZIP (both zip and unzip) or an external jar program.
+  In the former case, the GCC build will install a jar shell script
+  that is based on InfoZIP and provides the same functionality as
+  fastjar.
+
+
+New Targets and Target Specific Improvements
+============================================
+
+IA-32/x86-64
+------------
+
+- -mtune=generic can now be used to generate code running well on
+  common x86 chips. This includes AMD Athlon, AMD Opteron, Intel
+  Pentium-M, Intel Pentium 4 and Intel Core 2.
+
+- -mtune=native and -march=native will produce code optimized for the
+  host architecture as detected using the cpuid instruction.
+
+- Added a new command line option -fstackrealign and and __attribute__
+  ((force_align_arg_pointer)) to realign the stack at runtime.  This
+  allows functions compiled with a vector-aligned stack to be invoked
+  from legacy objects that keep only word-alignment.
+
+
+SPARC
+-----
+
+- The default CPU setting has been changed from V7 to V9 in 32-bit
+  mode on Solaris 7 and above.  This is already the case in 64-bit
+  mode.  It can be overridden by specifying --with-cpu at configure
+  time.
+
+- Back-end support of built-in functions for atomic memory access
+  has been implemented.
+
+- Support for the Sun UltraSPARC T1 (Niagara) processor has been added.
+
+
+M32C
+----
+
+- Various bug fixes have made some functions (notably, functions
+  returning structures) incompatible with previous releases.
+  Recompiling all libraries is recommended.  Note that code quality
+  has considerably improved since 4.1, making a recompile even more
+  beneficial.
+
+
+MIPS
+----
+
+- Added support for the Broadcom SB-1A core.
+
+
+IA-64
+-----
+
+- Added support for IA-64 data and control speculation.  By default
+  speculation is enabled only during second scheduler pass.  A number
+  of machine flags was introduced to control the usage of speculation
+  for both scheduler passes.
+
+
+HPPA
+----
+
+- Added Java language support (libffi and libjava) for 32-bit HP-UX 11
+  target.
+
+
+Obsolete Systems
+================
+
+
+Documentation improvements
+==========================
+
+PDF Documentation
+-----------------
+
+- A make pdf target has been added to the top-level makefile, enabling
+  automated production of PDF documentation files.  (Front-ends
+  external to GCC should modify their Make-lang.in file to add a
+  lang.pdf: target.)
+
+
+Other significant improvements
+==============================
+
+Build system improvements
+-------------------------
+
+- All the components of the compiler are now bootstrapped by default.
+  This improves the resilience to bugs in the system compiler or
+  binary compatibility problems, as well as providing better testing
+  of GCC 4.2 itself.  In addition, if you build the compiler from a
+  combined tree, the assembler, linker, etc. will also be bootstrapped
+  (i.e. built with themselves).
+
+  You can disable this behavior, and go back to the pre-GCC 4.2 set
+  up, by configuring GCC with --disable-bootstrap.
+
+- The rules that configure follows to find target tools resemble more
+  closely the locations that the built compiler will search.  In
+  addition, you can use the new configure option --with-target-tools
+  to specify where to find the target tools used during the build,
+  without affecting what the built compiler will use.
+
+  This can be especially useful when building packages of GCC.  For
+  example, you may want to build GCC with GNU as or ld, even if the
+  resulting compiler to work with the native assembler and linker.  To
+  do so, you can use --with-target-tools to point to the native tools.
+
+
+Incompatible changes to the build system
+----------------------------------------
+
+- Front-ends external to GCC should modify their Make-lang.in file to
+  replace double-colon rules (e.g. dvi::) with normal rules (like
+  lang.dvi:). Front-end makefile hooks do not use double-colon rules
+  anymore.
+
+  Up to GCC 4.1, a popular way to specify the target tools used during
+  the build was to create directories named gas, binutils, etc. in the
+  build tree, and create links to the tools from there.  This does not
+  work any more when the compiler is bootstrapped.  The new configure
+  option --with-target-tools provides a better way to achieve the same
+  effect, and works for all native and cross settings.
+
+
+
+------------------------------------------------------------------------------
+Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are
+also other ways to contact the FSF.
+
+These pages are maintained by the GCC team.
+
+For questions related to the use of GCC, please consult these web
+pages and the GCC manuals. If that fails, the gcc-help@gcc.gnu.org
+mailing list might help.  Please send comments on these web pages and
+the development of GCC to our developer mailing list at gcc@gnu.org or
+gcc@gcc.gnu.org.  All of our lists have public archives.
+
+
+Copyright (C) Free Software Foundation, Inc.,
+51 Franklin St, Fifth Floor, Boston, MA 02110, USA.
+
+Verbatim copying and distribution of this entire article is
+permitted in any medium, provided this notice is preserved.
+
+Last modified 2007-05-12
--- gcj-4.2-4.2.4.orig/debian/lib64stdc++CXX.postinst
+++ gcj-4.2-4.2.4/debian/lib64stdc++CXX.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib64stdc++@CXX@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/runcheck.sh
+++ gcj-4.2-4.2.4/debian/runcheck.sh
@@ -0,0 +1,20 @@
+#! /bin/sh
+
+mkdir -p build
+
+cat >build/runcheck.c <<EOF
+#include <stdio.h>
+int main()
+{
+	return printf("yes\n") != 4;
+}
+EOF
+
+if m=$(${CC:-gcc} -o build/runcheck build/runcheck.c 2>&1); then
+    m=$(build/runcheck 2>&1)
+    echo ${m#* } > build/runcheck.out
+    echo ${m#* }
+else
+    echo ${m##*:} > build/runcheck.out
+    echo ${m##*:}
+fi
--- gcj-4.2-4.2.4.orig/debian/lib64gcc1.symbols.sparc
+++ gcj-4.2-4.2.4/debian/lib64gcc1.symbols.sparc
@@ -0,0 +1,101 @@
+libgcc_s.so.1 lib64gcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.2@GLIBC_2.2 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.2 1:4.1.1
+ __deregister_frame_info@GLIBC_2.2 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divtc3@GCC_4.0.0 1:4.1.1
+ __divti3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixtfti@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunstfti@GCC_3.0 1:4.1.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattitf@GCC_3.0 1:4.1.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntitf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.2 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multc3@GCC_4.0.0 1:4.1.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GLIBC_2.2 1:4.1.1
+ __register_frame_info@GLIBC_2.2 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.2 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.2 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.amd64
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.amd64
@@ -0,0 +1,100 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __deregister_frame@GCC_3.0 1:4.1.1
+ __deregister_frame_info@GCC_3.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divti3@GCC_3.0 1:4.1.1
+ __divxc3@GCC_4.0.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunsxfdi@GCC_3.0 1:4.1.1
+ __fixunsxfti@GCC_3.0 1:4.1.1
+ __fixxfti@GCC_3.0 1:4.1.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattixf@GCC_3.0 1:4.1.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntixf@GCC_4.2.0 1:4.2.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __mulxc3@GCC_4.0.0 1:4.1.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powixf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GCC_3.0 1:4.1.1
+ __register_frame_info@GCC_3.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GCC_3.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GCC_3.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/gnat-BV-doc.doc-base.ug
+++ gcj-4.2-4.2.4/debian/gnat-BV-doc.doc-base.ug
@@ -0,0 +1,16 @@
+Document: gnat_ugn_unw-@BV@
+Title: GNAT User's Guide for Unix Platforms
+Author: Various
+Abstract: This guide describes the use of GNAT, a compiler and
+ software development toolset for the full Ada 95 programming language.
+ It describes the features of the compiler and tools, and details how
+ to use them to build Ada 95 applications.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gnat-@BV@-doc/gnat_ugn_unw.html
+Files: /usr/share/doc/gnat-@BV@-doc/gnat_ugn_unw.html
+
+Format: info
+Index: /usr/share/info/gnat_ugn_unw-@BV@.info.gz
+Files: /usr/share/info/gnat_ugn_unw-@BV@*
--- gcj-4.2-4.2.4.orig/debian/gcjwebplugin-BV.prerm
+++ gcj-4.2-4.2.4/debian/gcjwebplugin-BV.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+browser_dirs="@browser_dirs@"
+PLUGINPTH=/usr/lib/gcj-@BV@-@GCJSO@/libgcjwebplugin.so
+
+for browser_dir in $browser_dirs; do
+    if [ $browser_dir = xulrunner-addons ]; then
+        browser=xulrunner-1.9
+    else
+        browser=$browser_dir
+    fi
+    update-alternatives --quiet --remove \
+	$browser-javaplugin.so \
+	$PLUGINPTH
+done
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.ia64
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.ia64
@@ -0,0 +1,110 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3.2@GCC_3.3.2 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetBSP@GCC_3.3.2 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdf3@GCC_3.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divsf3@GCC_3.0 1:4.1.1
+ __divsi3@GCC_3.0 1:4.1.1
+ __divtf3@GCC_3.0 1:4.1.1
+ __divti3@GCC_3.0 1:4.1.1
+ __divxc3@GCC_4.0.0 1:4.1.1
+ __divxf3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixtfti@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunstfti@GCC_3.0 1:4.1.1
+ __fixunsxfdi@GCC_3.0 1:4.1.1
+ __fixunsxfti@GCC_3.0 1:4.1.1
+ __fixxfti@GCC_3.0 1:4.1.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattitf@GCC_3.0 1:4.1.1
+ __floattixf@GCC_3.0 1:4.1.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntixf@GCC_4.2.0 1:4.2.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __ia64_nonlocal_goto@GCC_3.0 1:4.1.1
+ __ia64_restore_stack_nonlocal@GCC_3.0 1:4.1.1
+ __ia64_save_stack_nonlocal@GCC_3.0 1:4.1.1
+ __ia64_trampoline@GCC_3.0 1:4.1.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __modsi3@GCC_3.0 1:4.1.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __mulxc3@GCC_4.0.0 1:4.1.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powixf2@GCC_4.0.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivsi3@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
+ __umodsi3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libmudflapMF.postinst
+++ gcj-4.2-4.2.4/debian/libmudflapMF.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+set -e
+
+case "$1" in configure)
+    if [ -d /usr/share/doc/libmudflap@MF@ ] && [ ! -h /usr/share/doc/libmudflap@MF@ ]; then
+	rm -rf /usr/share/doc/libmudflap@MF@
+	ln -s gcc-@BV@-base /usr/share/doc/libmudflap@MF@
+    fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/changelog
+++ gcj-4.2-4.2.4/debian/changelog
@@ -0,0 +1,6914 @@
+gcj-4.2 (4.2.4-4) unstable; urgency=low
+
+  * Upload as gcj-4.2.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 Oct 2008 20:43:05 +0000
+
+gcc-4.2 (4.2.4-4) unstable; urgency=low
+
+  * Update to SVN 20081008 from the ubuntu/gcc-4_2-branch.
+    - PR middle-end/37731 (wrong code), PR middle-end/36575 (wrong code),
+      PR rtl-optimization/37544 (wrong code), PR target/37101 (wrong code),
+      PR middle-end/35432 (ice-on-valid).
+    - PR libgcj/8995 (race conditions in interpreter), PR libgcj/31890
+      out-of-sync javaprims.h regenerated).
+    - Fix naming of bridge targets in gjavah (wrong header generation).
+  * Fix PR c/35437 (ice-on-invalid), taken from the gcc-4.3 branch.
+    LP: #251744.
+  * gij/gcj: Don't remove alternatives on upgrade. Addresses: #479950.
+  * Fix PR libgomp/28432. LP: #235070.
+  * debian/rules.conf: Filter empty '[]' and '!none' in control file (Andrea
+    Gasparini). LP: #268132.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 Oct 2008 20:52:10 +0200
+
+gcc-4.2 (4.2.4-3) unstable; urgency=low
+
+  [Arthur Loiret]
+  * Remove libffi symbol files.
+  * debian/rules2: configure sh4-linux with --with-multilib-list=m4,m4-nofpu
+    and --with-cpu=sh4.
+  * debian/rules.patch: Don't apply sh4-multilib.dpatch.
+  * mips-warnings.dpatch: Add missing #undef ASM_OUTPUT_EXTERNAL to fix
+    warnings during build.
+
+  [Matthias Klose]
+  * Update to SVN 20080705 from the ubuntu/gcc-4_2-branch.
+    - Fix PR target/36634, wrong-code on powerpc with -msecure-plt.
+  * debian/rules.defs: Remove hurd-i386 from ssp_no_archs (Samuel Thibault).
+    Closes: #483613.
+  * Do not create a /usr/lib/gcc/<target-arch>/4.2.3 symlink.
+  * debian/patches/multiarch-lib.dpatch: Remove obsolete patch.
+  * Update patch for PR other/28322, that unknown -Wno-* options do not
+    cause errors, but warnings instead.
+  * Don't run the libjava testsuite with -mabi=n32 (not built as multilib).
+  * libjava/classpath: Set and use EXTRA_CFLAGS (taken from the trunk).
+  * On m68k, add -fgnu89-inline when in gnu99 mode (requested by Michael
+    Casadeval for the m68k port). Addresses: #489234.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 05 Jul 2008 18:53:55 +0200
+
+gcc-4.2 (4.2.4-2) unstable; urgency=low
+
+  * Build the libmudflap0-4.2-dev package again.
+  * Suggest the correct libmudflap0-dbg package.
+  * Fix PR libgcj/36252, taken from the gcc-4_3-branch.
+  * Fix PR libjava/35020, taken from the trunk.
+  * On hurd-i386 with -fstack-protector do not link with libssp_nonshared
+    (Samuel Thibault). Closes: #483613.
+  * Fix cross builds targeting powerpc and i486 biarch (Hector Oron).
+    Closes: #483906.
+  * Fix some lintian warnings.
+  * Remove debian-revision in symbols files.
+  * Include library symlinks in gobjc and gfortran multilib packages, when
+    not building the library packages.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 04 Jun 2008 01:47:33 +0200
+
+gcc-4.2 (4.2.4-1) unstable; urgency=low
+
+  [Arthur Loiret]
+  * Update gdc to upstream SVN 20080427.
+    - Don't use svn-gdc-updates this time, new orig tarball.
+
+  [Matthias Klose]
+  * Update to SVN 20080520 from the ubuntu/gcc-4_2-branch, corresponding
+    to the GCC-4.2.4 release.
+    - Addresses CERT Vulnerability Note VU#162289.
+    - Gets rid of the large diff confusing some people.
+  * Don't build Obj-C++ on armel.
+  * Use iceape-dev as a build dependency for Java enabled builds.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 21 May 2008 09:56:32 +0200
+
+gcc-4.2 (4.2.3-5) unstable; urgency=low
+
+  [Matthias Klose]
+  * Fix a build failure on alpha, arm and hppa.
+
+  [Arthur Loiret]
+  * Support sh4 targets:
+    - sh4-multilib.dpatch: Add, fix multilib (m4/m4-nofpu) for sh4-linux
+    - multiarch-include.dpatch: Don't apply on sh4.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 01 May 2008 08:21:01 +0200
+
+gcc-4.2 (4.2.3-4) unstable; urgency=low
+
+  * Update to SVN 20080420 from the ubuntu/gcc-4_2-branch.
+    - Fix PR middle-end/35163, wrong code, folding comparison loses cast.
+    - Remove pr34688.dpatch, applied upstream.
+  * Add gcc-multilib64dir patch, remove ppc64-biarch patch; gcc
+    -print-multi-os-directory prints `../lib' again.
+  * Add four more symbols to libgcj_bc, patch taken from the trunk.
+  * Fix alternative names for amd64 cross builds. Closes: #466422.
+  * debian/copyright: Update to GPLv3, remove the text of the GFDL
+    and reference the copy in common-licenses. Closes: #454487.
+  * Generate the locale data for the testsuite, if the locales package
+    is installed (not a dependency on all archs).
+  * Stop building gij/gcj on alpha, arm and hppa.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 Apr 2008 01:12:20 +0200
+
+gcc-4.2 (4.2.3-3) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20080322 from the ubuntu/gcc-4_2-branch.
+    - Fix PR target/26149, testsuite failures in libgomp with -m32.
+    - libjava/link.cc: Remove broken code that attempts to enforce
+      linker constraints. Addresses: #432541.
+    - debian/patches/amd64-biarch.dpatch: Remove.
+    - debian/patches/{powerpc,ppc64}-biarch.dpatch: Update.
+  * libgnatprj4.2-dev: Depend on libgnatvsn4.2-dev instead of libgnatvsn-dev.
+  * Include the biarch libobjc_gc library in the packages.
+  * Link libobjc_gc with libgcjgc_convenience.la.
+  * Update PR other/28322, ignore only unknown -W* options.
+  * debian/rules.unpack: Avoid make warnings.
+  * gcj-4.2: Hardcode libgcj-bc dependency, don't run dh_shlibdeps on ecj1.
+  * debian/rules2: The build is not yet prepared to take variables from
+    the environment; unexport and unset those.
+  * Stop building treelang (removed upstream).
+
+  [Aurelien Jarno]
+  * debian/rules.patch: don't apply amd64-biarch.dpatch on kfreebsd-amd64.
+
+  [Arthur Loiret]
+  * Update gdc to upstream SVN 20080312.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 23 Mar 2008 19:18:51 +0100
+
+gcc-4.2 (4.2.3-2) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20080225 from the ubuntu/gcc-4_2-branch.
+    - gcj: Install rmic template files. Closes: #427677.
+    - Fix PR rtl-optimization/33410, ICE in iv_analyze_expr.
+      Closes: #442036.
+    - debian/patches/pr31868.dpatch: Remove, applied upstream.
+  * Require 4.2.3-1 as a minimum dependency for the binary packages.
+  * libgcj8-dev: Don't claim that the package contains the static
+    libraries. LP: #163231.
+  * libjava-xulrunner1.9.dpatch: Add configure check for xulrunner-1.9,
+    configure with xulrunner-1.9-dev if available (Alexander Sack).
+  * libgcj-doc: Don't include the examples; these cannot be built
+    with the existing Makefile anyway. Addresses: #449608.
+  * Manpages for gc-analyze and grmic are GFDL. Don't include these when
+    building DFSG compliant packages.
+  * Fix build failure building amd64 cross-target libstdc++ packages
+    (Tim Bagot). Closes: #464365.
+  * Fix typos in rename-info-files patch.
+  * Fix PR libgcj/24170.
+  * Apply proposed patch to fix root cause for PR middle-end/32889.
+  * Fix PR other/28322, GCC new warnings and compatibility.
+    Closes: #367657.
+
+  [Arthur Loiret]
+  * gdc updates:
+    - Use a new lzma-compressed tarball.
+    - debian/rules.patch: Disable svn-gdc-updates.dpatch.
+    - gdc-4.2-build.dpatch: Update, support gcc-4.3 as well.
+    - gdc-4.2.dpatch: Update, re-enable builtin assert support.
+    - gdc-driver-defaultlib.dpatch: Update.
+    - gdc-fix-build.dpatch: Fix FTBFS on powerpc.
+
+  [Aurelien Jarno]
+  * kbsd-gnu-ada.dpatch: update from upstream to enable ZCX on 
+    GNU/kFreeBSD.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 26 Feb 2008 01:59:27 +0100
+
+gcc-4.2 (4.2.3-1) unstable; urgency=low
+
+  * Update to SVN 20080201 from the ubuntu/gcc-4_2-branch, corresponding
+    to the gcc-4.2.3 release.
+
+  [ Matthias Klose ]
+  * gij-4.2: Provide java*-runtime-headless instead of java*-runtime.
+  * Apply backport for PR middle-end/34688. Closes: #459429.
+  * Renable build of libobjc_gc, using the internal version of boehm-gc.
+    Closes: #212248. LP: #186681.
+  * Handle lzma compressed tarballs.
+  * Remove the GFDL documentation from the source. Go, DFSG!. Closes: #456262.
+
+  [ Aurelien Jarno ]
+  * debian/multiarch.inc: change mipsel64 into mips64el.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 01 Feb 2008 22:23:24 +0100
+
+gcc-4.2 (4.2.2-7) unstable; urgency=low
+
+  * Update to SVN 20080114 from the ubuntu/gcc-4_2-branch.
+    - Fix PR middle-end/34762. LP: #182412.
+  * Update debian/watch. Closes: #459259. Addresses: #459391, #459392.
+  * Build libgomp documentation without building libgomp. Closes: #460660.
+  * Restore gomp development files. Closes: #460736.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 14 Jan 2008 23:20:04 +0100
+
+gcc-4.2 (4.2.2-6) unstable; urgency=low
+
+  * Update to SVN 20080113 from the ubuntu/gcc-4_2-branch.
+  * Adjust build-dependency on debhelper, dpkg-dev.
+  * Fix gnat-4.2 build failure (addresses: #456867).
+  * Do not build packages built from the gcc-4.3 source.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 13 Jan 2008 13:48:49 +0100
+
+gcc-4.2 (4.2.2-5) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20080102 from the ubuntu/gcc-4_2-branch.
+    - Fix PR middle-end/32889, ICE in delete_output_reload.
+      Closes: #444873, #445336, #451047.
+    - Fix PR target/34215, ICE in assign_386_stack_local.
+      Closes: #446714, #452451.
+    - Fix PR target/33848, reference to non-existent label at -O1 on
+      mips/mipsel. Closes: #441633.
+  * debian/rules.d/binary-java.mk: dpkg-shlibsdeps can't handle the dangling
+    symlink to libgcj_bc.so.1. Remove it temporarily.
+  * Add libgcj_bc to the libgcj8-1 shlibs file.
+  * Fix build failures for gnat-4.2, gpc-4.2, gdc-4.2 introduced by recent
+    gdc changes.
+  * Add symbol files for libgcc1, lib32gcc1, lib64gcc1, libstdc++6,
+    lib32stdc++6, lib64stdc++6, libgomp1, lib32gomp1, lib64gomp1, libffi4,
+    lib32ffi4, lib64ffi4, libobjc2, lib32objc2, lib64objc2. Adjust build
+    dependencies on dpkg-dev and debhelper.
+    Adjust build-dependency on dpkg-dev.
+
+  [Arthur Loiret]
+  * Fix gdc-4.2 build failure.
+  * Update gdc to upstream SVN 20071124.
+    - d-bi-attrs: Support attributes on declarations in other modules.
+    - d-codegen.cc (IRState::attributes): Support constant declarations as
+      string arguments.
+  * Enable libphobos:
+    - gdc-4.2.dpatch: Fix ICEs.
+    - gdc-4.2-build.dpatch: Update, make it cleaner.
+  * Install libphobos in the private gcc lib dir.
+  * gdc-4.2.dpatch: Update from gdc-4.1.dpatch.
+    - gcc/tree-sra.c: Do not use SRA on structs with aliased fields created
+      for anonymous unions.
+    - gcc/predict.c: Add null-pointer check.
+  * debian/rules.defs: Disable phobos on hurd-i386.
+    - gdc-hurd-proc_maps.dpatch: Remove.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 02 Jan 2008 15:49:30 +0100
+
+gcc-4.2 (4.2.2-4) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20071123 from the ubuntu/gcc-4_2-branch.
+    - Fix PR middle-end/34130, wrong code with some __builtin_abs expressions.
+      Closes: #452108.
+  * Don't run the testsuite on hppa when expect-tcl8.3 is not available.
+  * Fix libgcc1-dbg doc directory symlink. Closes: #447969.
+  * Use gcc-multilib as build-dependency instead of gcc-4.1-mulitlib.
+  * Support for fast-math on hurd-i386 (Michael Banck). Closes: #451520.
+  * Fix again profiling support on the Hurd (Thomas Schwinge). Closes: #434937.
+
+  [Arthur Loiret]
+  * Merge gdc-4.1 patches and build infrastructure:
+    - gdc-4.2.dpatch: Add, setup gcc-4.2.x for D.
+    - gdc-4.2-build.dpatch: Add, update gdc builtins and driver objs.
+    - gdc-driver-zlib.dpatch: Add, use up-to-date system zlib.
+    - gdc-driver-defaultlib.dpatch: Add, add -defaultlib/-debuglib switches.
+    - gdc-driver-nophobos.dpatch: Add, disable libphobos when unsupported.
+    - gdc-libphobos-build.dpatch: Add, enable libphobos build when supported.
+    - gdc-fix-build.dpatch: Add, fix build on non-biarched 64bits targets.
+    - gdc-libphobos-std-format.dpatch: Add, replace assert when formating a
+      struct on non-x86_64 archs by a FormatError.
+    - gdc-arm-unwind_ptr.dpatch: Add, fix build on arm.
+    - gdc-mips-gcc-config.dpatch: Add, fix build on mips.
+    - gdc-hurd-proc_maps.dpatch: Add, fix build on hurd.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 24 Nov 2007 12:01:06 +0100
+
+gcc-4.2 (4.2.2-3) unstable; urgency=low
+
+  * Update to SVN 20071014 from the ubuntu/gcc-4_2-branch.
+    - Fix build failure in libjava on mips/mipsel.
+  * Make 4.2.2-2 a requirement for frontends built from separate sources.
+    Addresses: #446596.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Oct 2007 14:13:00 +0200
+
+gcc-4.2 (4.2.2-2) unstable; urgency=low
+
+  * Update to SVN 20071011 from the ubuntu/gcc-4_2-branch.
+    - Fix PR middle-end/33448, ICE in create_tmp_var. Closes: #439687.
+    - Remove debian/patches/pr31899.dpatch, applied upstream.
+    - Remove debian/patches/pr33381.dpatch, applied upstream.
+  * gij-hppa: Call gij-4.2, not gij-4.1. Addresses: #446282.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 11 Oct 2007 23:41:52 +0200
+
+gcc-4.2 (4.2.2-1) unstable; urgency=low
+
+  * Update to SVN 20071008 from the ubuntu/gcc-4_2-branch, corresponding
+    to the GCC-4.2.2 release.
+  * Fix dependencies of lib*gcc1-dbg packages. Closes: #445190.
+  * Remove libjava-armeabi patch integrated upstream.
+  * gcjwebplugin: Fix path of the gcj subdirectory. LP: #149792.
+  * Apply proposed patch for PR debug/31899. Closes: #445268.
+
+  * Add niagara2 optimization support (David Miller).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 08 Oct 2007 21:12:41 +0200
+
+gcc-4.2 (4.2.1-6) unstable; urgency=high
+
+  [Matthias Klose]
+  * Update to SVN 20070929 from the ubuntu/gcc-4_2-branch.
+    - Fix PR middle-end/33382, ICE (closes: #441481).
+    - Fix PR tree-optimization/28544 (4.2.1, closes: #380482).
+    - Fix PR libffi/28313, port to mips64 (closes: #358235).
+  * Fix PR tree-optimization/33099, PR tree-optimization/33381,
+    wrong code generation with VRP/SCEV. Closes: #440545, #443576.
+  * Update Hurd fixes (Samuel Thibault).
+  * When -fstack-protector is the default (Ubuntu), do not enable
+    -fstack-protector when -nostdlib is specified. LP: #77865.
+  * Add -g to BOOT_CFLAGS, set STAGE1_CFLAGS to -g -O, only pass
+    other settings when required.
+  * Fix installation of the s390 libstdc++ biarch headers.
+  * Allow the powerpc build on a 32bit machine (without running the
+    biarch testsuite).
+  * Build -dbg packages for libgcc, libgomp, libmudflap, libffi, libobjc,
+    libgfortran.
+  * Drop the build dependency on expect-tcl8.3 (the hppa testsuite seems
+    to complete sucessfully with the expect package).
+  * Downgrade libmudflap-dev recommendation to a suggestion. Closes: #443929.
+
+  * Closing reports reported against gcc-4.1 and fixed in gcc-4.2:
+    - General
+      + PR rtl-optimization/21299, error in invalid asm statement.
+        Closes: #380121.
+    - C++
+      + PR libstdc++/19664, libstdc++ headers have pop/push of the visibility
+        around the declarations (closes: #307207, #324290, #423547).
+      + PR c++/21581, functions in anonymous namespaces default to "hidden"
+        visibility (closes: #278310).
+      + PR c++/4882, specialization of inner template using outer template
+        argument (closes: #269513).
+      + PR c++/6634, wrong parsing of "long long double" (closes: #247112).
+      + PR c++/10891, code using dynamic_cast causes segfaults when -fno-rtti
+        is used (closes: #188943).
+      + PR libstdc++/14991, stream::attach(int fd) porting entry out-of-date.
+        Closes: #178561.
+      + PR libstdc++/31638, string usage leads to warning with -Wcast-align.
+        Closes: #382153.
+      + Fix memory hog seen with g++-4.1. Closes: #411234.
+    - Fortran
+      + PR fortran/29228, ICE in gfc_trans_deferred_array (closes: #387222).
+      + PR fortran/24285, allow dollars everywhere in format (closes: #324600).
+      + PR libfortran/28354, 0.99999 printed as 0. instead of 1. by
+        format(f3.0). Closes: #397671.
+      + Fix ICE in gfc_get_extern_function_decl (closes: #396292).
+    - Architecture specific:
+      - i386
+        + Fix error with -m64 (unable to find a register to spill in class
+          'DIREG'). Closes: #430049.
+      - mips
+        + Fix ICE in tsubst (closes: #422303).
+      - s390
+        + Fix ICE (segmentation fault) building dcmtk (closes: #435736).
+
+  [Roman Zippel]
+  * Update the m68k patches.
+
+  [Riku Voipio]
+  * Configure armeabi with --disable-sjlj-exceptions.
+  * armel testsuite takes ages, adjust build accordingly.
+
+  [Ludovic Brenta and Xavier Grave]
+  * Add a version of the Ada run-time library using the setjump/longjump
+    exception handling mechanism (static library only).  Use with
+    gnatmake --RTS=sjlj.  Particularly useful for distributed (Annex E)
+    programs.
+  * Restore building libgnatvsn-dev and libgnatprj-dev.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 29 Sep 2007 11:19:40 +0200
+
+gnat-4.2 (4.2.1-5) unstable; urgency=low
+
+  * Merge from gcc-4.2, in particular this change from 4.2.1-1:
+  * Update kbsd-gnu-ada patch (Aurelien Jarno): Closes: #434754.
+
+ -- Ludovic Brenta <lbrenta@debian.org>  Tue,  4 Sep 2007 23:03:57 +0200
+
+gcc-4.2 (4.2.1-5) unstable; urgency=low
+
+  * Update to SVN 20070902 from the ubuntu/gcc-4_2-branch.
+    - Fix PR debug/32610, LP: #121911.
+  * Apply proposed patches:
+    - Improve debug info for packed arrays with constant bounds
+      (PR fortran/22244).
+    - Fix libgcc.a(tramp.o) on ppc32.
+    - Fix redundant reg/mem stores/moves (PR target/30961).
+  * Update the -fdirectives-only backport.
+  * Update gpc patches and build support (not yet enabled).
+  * Fix gcc-snapshot hppa64 install target.
+  * Set the priority of the source package to optional.
+  * debian/patches: Remove patches only applied for the trunk.
+  * debian/copyright: Adjust package names.
+  * Move toplevel upstream changelog into gcc-4.2.
+  * debian/copyright: Mention that the sources are currently updated
+    to GPLv3/LGPLv3. The copyright file will be updated with the final
+    4.2.2 release.
+
+  * gappletviewer-4.2: Include the gcjwebplugin binary. LP: #131114.
+  * gcj-4.2: Install gc-analyze.
+  * Remove .la files from the biarch libstdc++ debug packages,
+    conflict with the 3.4 package. Closes: #440490.
+  * Update libjava-armeabi patch from the gcj-eabi-branch.
+  * Only remove libgcj8's classmap db if no other libgcj8* library is
+    installed.
+  * gcj-4.2: Use the ecj1 from the ecj1 package on alpha.
+
+  [Arthur Loiret]
+  * Add build support for GDC.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 02 Sep 2007 21:10:24 +0200
+
+gcc-4.2 (4.2.1-4) unstable; urgency=medium
+
+  * gcc-4.2: Include missing std*.h header files.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 14 Aug 2007 11:14:35 +0200
+
+gcc-4.2 (4.2.1-3) unstable; urgency=low
+
+  * Update to SVN 20070812 from the ubuntu/gcc-4_2-branch.
+  * debian/rules.defs: Fix typo, run the checks in biarch mode too.
+  * libgcj8-awt: Loosen dependency on gcj-4.2-base.
+  * Build only needed multilib libraries when building as gcj or gnat.
+  * Always build biarch libgomp in biarch builds.
+  * debian/rules2: Adjust testsuite logs files for logwatch.sh.
+  * Include header files from $/gcc_lib_dir)/include-fixed.
+  * Backport from trunk: -fdirectives-only (when preprocessing, handle
+    directives, but do not expand macros).
+  * Report an ICE to apport (if apport is available and the environment
+    variable GCC_NOAPPORT is not set)
+  * Fix gcj build failure on the Hurd (Samuel Thibault). Closes: #437470.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 12 Aug 2007 21:11:00 +0200
+
+gcc-4.2 (4.2.1-2) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20070804 from the ubuntu/gcc-4_2-branch (20070804):
+    - Merge gcc-4_2-branch SVN 20070804.
+    - Imported classpath CVS 20070727.
+    - Bump the libgcj soname, add conflict with java-gcj-compat (<< 1.0.76-4).
+    - Remove patches integrated in the branches: pr32862.
+    - Update patches: libjava-subdir, libjava-jar.
+    - Add regenerated class files: svn-class-updates.
+
+  * Fix profiling support on the Hurd (Michael Casadeval). Closes: #434937.
+  * Fix build on kfreebsd-amd64 (Aurelien Jarno). Closes: #435053.
+  * Period of grace is over, run the testsuite on m68k-linux again.
+  * Update infrastructure for the gcc-source package (Bastian Blank).
+  * Update profiling on the Hurd (Samuel Thibault, Michael Casadevall). 
+    Closes: #433539.
+  * debian/rules2: Allow DEB_BUILD_OPTIONS=parallel=<n> to overwrite NJOBS.
+  * Allow lang=<l1>,<l2> nolang=<l3,l4> in DEB_BUILD_OPTIONS; deprecating
+    WITHOUT_LANG, and WITHOUT_CHECK.
+  * debian/rules.defs, debian/rules.conf: Cache some often used macros.
+
+  * Preliminary work: Enable Java for ARM EABI (Andrew Haley), build
+    libffi for armel.
+  * gcj: Don't build the browser plugin in gcc-snapshot builds to get
+    rid of the xulrunner dependency.
+  * gcjwebplugin: Register for more browsers (package currently not built).
+  * gij/boehm-gc: Use sysconf as fallback, if reading /proc/stat fails.
+    Closes: #422469.
+  * libjava: Avoid dependency on MAXHOSTNAMELEN (Samuel Thibault).
+  * gcj: On arm and armel, use the ecj1 binary built from the ecj package.
+  * gcj: Don't require javac without java maintainer mode, remove build
+    dependencies on gcj and ecj, add build dependency on libecj-java.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 05 Aug 2007 15:56:07 +0200
+
+gcc-4.2 (4.2.1-1) unstable; urgency=medium
+
+  [Matthias Klose]
+  * debian/rules.conf: Fix breakage of Fortran build dependencies introduced
+    by merge of the Ada bits.
+  * Don't include the gccbug binary anymore in the gcc package; upstream bug
+    reports should be reported to the upstream bug tracker at
+    http://gcc.gnu.org/bugzilla.
+  * Don't build and test libjava for the biarch architecture.
+  * Install gappletviewer man page. Addresses: #423094.
+  * debian/patches/m68k-java.dpatch: Readd.
+  * gjar: support @ arguments.
+  * Update to SVN 20070726 from the ubuntu/gcc-4_2-branch.
+    - Fix mips/mipsel builds.
+  * libmudflap0: Fix update leaving an empty doc dir. Closes: #428306.
+  * arm/armel doesn't have ssp support. Closes: #433172.
+  * Update kbsd-gnu-ada patch (Aurelien Jarno): Addresses: #434754. 
+  * gcj-4.2: Build depend on gcj-4.2 to build the classpath examples files
+    for the binary-indep target.
+  * Fix PR java/32862, bugs in EnumMap implementation. Addresses: #423160.
+
+  [Arthur Loiret]
+  * Fix cross builds targeting x86_64. Closes: LP: #121834.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 26 Jul 2007 21:46:03 +0200
+
+gnat-4.2 (4.2.1-0) unstable; urgency=low
+
+  * debian/patches/ada-symbolic-tracebacks.c: remove all trace of
+    the function convert_addresses from adaint.c.  Fixes FTBFS on alpha,
+    s390 and possibly other platforms.  Closes: #433633.
+  * debian/control.m4: list myself as uploader if the source package name
+    is gnat.  Relax build-dependency on gnat-4.2-source.
+  * debian/control.m4, debian/rules.conf: Build-depend on libmpfr-dev only
+    if building Fortran.
+
+ -- Ludovic Brenta <lbrenta@debian.org>  Thu, 19 Jul 2007 19:58:54 +0200
+
+gcc-4.2 (4.2.1-0) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20070719 from the ubuntu/gcc-4_2-branch, corresponding
+    to the GCC-4.2.1 release.
+    - debian/patches/arm-gij.dpatch: Remove. Closes: #433714.
+  * Apply proposed patch for PR tree-optimization/32723.
+  * Tighten build dependency on libmpfr-dev.
+  * On ia64, apply proposed patch for PR target/27880. Closes: #433719.
+
+  [Hector Oron]
+  * Fix cross and reverse-cross builds. Closes: #432356.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 19 Jul 2007 17:59:37 +0200
+
+gnat-4.2 (4.2-20070712-1) unstable; urgency=low
+
+  * debian/rules.d/binary-ada.mk, debian/control.m4:
+    disable building libgnatvsn-dev and libgnatprj-dev, as they conflict
+    with packages from gnat-4.1.  Will reenable them for the transition to
+    gnat-4.2.
+  * Upload as gnat-4.2.  Closes: #432525.
+
+ -- Ludovic Brenta <lbrenta@debian.org>  Sat, 14 Jul 2007 15:12:34 +0200
+
+gcc-4.2 (4.2-20070712-1) unstable; urgency=high
+
+  [Matthias Klose]
+  * Update to SVN 20070712 from the ubuntu/gcc-4_2-branch.
+    - 4.2.1 RC2, built from SVN.
+    - same as gcc-4_2-branch, plus backport of gcc/java, boehm-gc, libffi,
+      libjava, zlib from the trunk.
+    - debian/patches/arm-libffi.dpatch: Remove.
+    - Fixes ICE in update_equiv_regs. Closes: #432604.
+  * debian/control.m4: Restore build dependency on dejagnu.
+  * debian/patches/arm-gij.dpatch: Update.
+  * i386-biarch.dpatch: Update for the backport for PR target/31868.
+    Closes: #432599.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 13 Jul 2007 08:07:51 +0200
+
+gcc-4.2 (4.2-20070707-1) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20070707 from the ubuntu/gcc-4_2-branch.
+    - debian/patches/libjava-soname.dpatch: Remove.
+    - debian/patches/disable-configure-run-check.dpatch: Update.
+  * Only suggest multilib packages on multilib architectures.
+  * Point ICE messages to the 4.2 docdir.
+  * Explicitely use fastjar to build gcj-4.1. Addresses: #416001.
+  * Configure with --enable-libgcj on m32r (Kazuhiro Inaoka).
+  * Include the hppa64 cross compiler on hppa snapshot builds.
+  * debian/patches/arm-libffi.dpatch: Update.
+  * libgcj-doc: Include the generated documentation.
+  * Fix building the libjava/classpath examples.
+  * Support reverse cross builds (Neil Williams). Closes: #431086.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 07 Jul 2007 10:59:26 +0200
+
+gcc-4.2 (4.2-20070627-1) unstable; urgency=high
+
+  [Matthias Klose]
+  * Update to SVN gcc-4_2-branch/20070626.
+  * Update to SVN trunk/20070626 (gcc/java, libjava, libffi, boehm-gc).
+  * On mips*-linux, always imply -lpthread for -pthread (Thiemo Seufer).
+    Addresses: #428741.
+  * Fix libstdc++ cross builds (Arthur Loiret). Closes: #430395.
+  * README.Debian: Point to debian-toolchain for general toolchain topics.
+  * Use the generated locales for the libstdc++ build to fix the setting
+    of the gnu locale model. Closes: #428926, #429660.
+  * For ix86 lpia targets, configure --with-tune=i586.
+  * Make build dependency on gcc-4.1-multilib architecture specific.
+  * Do not ignore bootstrap comparision failure on ia64.
+
+  [Ludovic Brenta]
+  * ada-link-lib.dpatch: update to apply cleanly on GCC 4.2.
+  * ada-libgnat{vsn,prj}.dpatch: adjust to GCC 4.2.  Reenable in rules.patch.
+  * rules.conf: do not build libgomp as part of gnat-4.2.
+  * rules.conf, control.m4: build-depend on libz-dev, lib32z-dev or
+    lib64-dev only when building Java.
+  * rules2, rules.defs: $(with_mudflap): remove, use $(with_libmudflap) only.
+  * config.m4, binary-ada.mk: tighten dependencies; no Ada package depends
+    on gcc-4.2-base anymore.
+  * TODO: rewrite.
+  * README.gnat: include in gnat-4.2-base.  Remove outdated information.
+  * README.maintainers: new.  Include in gnat-4.2-base.
+
+  [Hector Oron]
+  * Merge DEB_CROSS_INDEPENDENT with DEB_CROSS.
+  * Disables libssp0 for arm and armel targets when cross compiling.
+  * Updates README.cross.
+  * Fixes linker mapping problem on binary-libstdcxx-cross.mk. Closes: #430688.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 27 Jun 2007 21:54:08 +0200
+
+gcc-4.2 (4.2-20070609-1) unstable; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070609.
+    - Remove patches integrated upstream: pr30052, hppa-caller-save-pic-tls.
+  * Update to SVN trunk/20070609 (gcc/java, libjava, libffi, boehm-gc).
+    - Remove patches integrated upstream: libjava-qt-peer,
+      classpath-config-guess.
+  * Do not build with --enable-java-maintainer-mode.
+  * debian/rules.patch: Comment out m68k-peephole, requires m68k-split_shift.
+  * Add target to apply patches up to a specific patch (Wouter Verhelst).
+    Closes: #424855.
+  * libstdc++6-4.2-*: Add conflicts with 4.1 packages. Closes: #419511.
+  * Apply proposed fix for PR target/28102. Closes: #426905.
+  * Fix build failure for cross compiler builds (Jiri Palecek). Closes: #393897.
+  * Update build macros for kfreebsd-amd64. Closes: #424693.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  9 Jun 2007 06:54:13 +0200
+
+gcc-4.2 (4.2-20070528-1) unstable; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070528.
+  * Add backport for PR middle-end/20218.
+  * Add proposed PTA solver backport, PR tree-optimization/30052.
+  * Add backport for PR target/31868.
+  * Reenable the testsuite for arm, mips, mipsel.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 28 May 2007 09:03:04 +0200
+
+gcc-4.2 (4.2-20070525-1) unstable; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070525.
+  * Update to SVN trunk/20070520 (gcc/java, libjava, libffi, boehm-gc).
+  * Do not explicitely configure for __cxa_atexit.
+  * libstdc++6-4.2-doc: Conflict with libstdc++6-4.1-doc. Closes: #424896.
+  * Update m68k patches:
+    - Remove patches applied upstream: m68k-jumptable, m68k-gc, 
+    - Reenable patches: m68k-save_pic, m68k-dwarf, m68k-limit_reload,
+      m68k-prevent-qipush, m68k-peephole, m68k-return, m68k-sig-unwind,
+      m68k-align-code m68k-align-stack, m68k-symbolic-operand,
+      m68k-bitfield-offset.
+    - Update: m68k-return, m68k-secondary-addr-reload, m68k-notice-move
+      m68k-secondary-addr-reload, m68k-notice-move.
+    - TODO: m68k-split_shift, m68k-dwarf3, m68k-fpcompare.
+  * Update the kfreebsd and arm patches (Aurelien Jarno). Closes: #425011.
+  * Temporarily disable the testsuite on slow architectures to get the
+    package built soon.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 25 May 2007 07:14:36 +0200
+
+gcc-4.2 (4.2-20070516-1) unstable; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070516.
+  * Update to SVN trunk/20070516 (gcc/java, libjava, libffi, boehm-gc).
+  * Merge changes from gcc-4.1_4.1.2-7.
+  * Update NEWS files.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 16 May 2007 02:33:57 +0200
+
+gcc-4.2 (4.2-20070502-1) unstable; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070502.
+    - Remove pr11953 patch, integrated upstream.
+  * Update to SVN trunk/20070502 (gcc/java, libjava, libffi, boehm-gc).
+  * Adjust tetex/tex-live build dependency.
+  * Fix gobjc-4.2's, gobjc++-4.2's dependency on libobjc2.
+  * Tighten (build) dependency on binutils. Addresses: #421197.
+  * gfortran-4.2: Depend on libgfortran2, provide the libgfortran.so
+    symlink. Adresses: #421362.
+  * Build-depend on gcc-multilib [amd64 i386 powerpc ppc64 s390 sparc].
+  * (Build-) depend on glibc (>= 2.5) for all architectures.
+  * Remove libssp packages from the control file.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  2 May 2007 18:46:57 +0200
+
+gcc-4.2 (4.2-20070405-1) experimental; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070405.
+  * Update to SVN trunk/20070405 (gcc/java, libjava, libffi, boehm-gc).
+  * gcc-4.2-hppa64: Don't depend on libc6-dev.
+  * Robustify setting of make's -j flag. Closes: #410919.
+  * gcc-snapshot: Use the install_snap_stamp target for installation.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  5 Apr 2007 23:56:35 +0200
+
+gcc-4.2 (4.2-20070307-1) experimental; urgency=low
+
+  * Update to SVN gcc-4_2-branch/20070307.
+  * Update to SVN trunk/20070307 (gcc/java, libjava, libffi, boehm-gc).
+  * Build gnat from separate sources.
+  * Merge changes from gcc-4.1-4.1.2-1.
+  * Install into /usr/lib/gcc/<target_alias>/4.2, to ease upgrades
+    between subminor versions.
+  * Configure --with-gxx-include-dir=/usr/include/c++/4.2
+
+ -- Matthias Klose <doko@debian.org>  Thu,  8 Mar 2007 02:52:00 +0100
+
+gcc-4.2 (4.2-20070210-1) experimental; urgency=low
+
+  * Merge Java backport from Ubuntu:
+    - Update to SVN gcc-4_2-branch/20070210.
+    - Update to SVN trunk/20070210 (gcc/java, libjava).
+    - Backout trunk specific gcc/java changes.
+    - Build-depend on gcj-4.1 and ecj-bootstrap.
+    - gcj-4.2: Depend on ecj-bootstrap, recommend ecj-bootstrap-gcj.
+    - Merge libgcj8-awt-gtk back into libgcj8-awt; the Qt peers
+      are disabled by upstream again.
+    - Generate manual pages for the classpath tools from the classpath
+      documentation.
+    - Adopt packaging for the merged libjava.
+    - Update patches for the merged libjava: libjava-lib32-properties,
+      i386-biarch, reporting, libjava-soname, libjava-subdir,
+      libjava-lib32subdir.
+    - Remove obsolete patches: libjava-plugin-binary, libjava-ia32fix,
+      libstdc++-docfixes.
+
+  * Set priority of development packages to optional.
+  * debian/libgcjGCJ.postrm: Don't fail on purge when directories
+    don't exist anymore. Closes: #406017.
+  * debian/patches/gcc-textdomain.dpatch: Update for 4.2.
+  * Generate and install libgomp docs into gcc-4.2-doc.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 10 Feb 2007 16:53:11 +0100
+
+gcc-4.2 (4.2-20070105-1) experimental; urgency=low
+
+  * Update to SVN 20070105.
+  * Add tetex-extra to Build-Depend-Indep (libstd++ doxygen docs),
+    fix doxygen build (libstdc++-docfixes.dpatch).
+  * Enable parallel build by default on SMP machines.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  5 Jan 2007 22:42:18 +0100
+
+gcc-4.2 (4.2-20061217-1) experimental; urgency=low
+
+  * Update to SVN 20061217.
+  * Merge changes from gcc-4.1_4.1.1-16 to gcc-4.1_4.1.1-21.
+  * Update patches to the current branch.
+  * Add multilib packages for gcc, g++, gobjc, gobjc++, gfortran.
+  * Link using --hash-style=gnu (alpha, amd64, ia64, i386, powerpc, ppc64,
+    s390, sparc).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 17 Dec 2006 15:54:54 +0100
+
+gcc-4.2 (4.2-20061003-1) experimental; urgency=low
+
+  * libgcj.postinst: Remove /var/lib/gcj-4.2 on package removal.
+  * Don't install backup files in the doc directory, only one gcc-4.1
+    upgrade was broken. Closes: #389366.
+  * Merge gcc-biarch-generic.dpatch into i386-biarch.dpatch.
+  * Update link-libs.dpatch.
+  * Merge libgfortran2-dev into gfortran-4.2.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 Oct 2006 16:26:38 +0000
+
+gcc-4.2 (4.2-20060923-1) experimental; urgency=low
+
+  * Update to SVN 20060923.
+  * Remove patches applied upstream: kbsd-gnu-java, kbsd-gnu.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 23 Sep 2006 15:11:36 +0200
+
+gcc-4.2 (4.2-20060905-1) experimental; urgency=low
+
+  * Update to SVN 20060905.
+  * Merge changes from gcc-4.1 (4.1.1-10 - 4.1.1-12).
+  * Move gomp development files into gcc and gfortran.
+  * Build-depend on binutils (>= 2.17).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  5 Sep 2006 03:33:00 +0200
+
+gcc-4.2 (4.2-20060818-1) experimental; urgency=low
+
+  * Update to SVN 20060818.
+    - libjava-libgcjbc.dpatch: Remove, applied upstream. 
+  * Merge changes from the Ubuntu gcj-4.2 package:
+    - libjava-soname.dpatch: Remove, applied upstream.
+    - libjava-native-libdir.dpatch: update.
+    - libffi-without-libgcj.dpatch: Remove, new libffi-configure to
+      enable --disable-libffi.
+    - Changes required for the classpath-0.92 update:
+      - New packages gappletviewer-4.2, gcjwebplugin-4.2.
+      - gij-4.2: Add keytool alternative.
+      - gcj-4.2: Add jarsigner alternative.
+    - libgcj8-dev: Remove conflicts with older libgcjX-dev packages.
+    - lib32gcj8: Populate the /usr/lib32/gcj-4.2 directory.
+    - libjava-library-path.dpatch:
+      - When running the i386 binaries on amd64, look in
+        /usr/lib32/gcj-x.y and /usr/lib32/jni instead.
+      - Add /usr/lib/jni to java.library.path. Adresses: #364820.
+    - Add more debugging symbols to libgcj8-dbg. Adresses: #383705.
+    - Fix and renable the biarch build for sparc.
+  * Disable gnat for alpha, fails to build.
+  * Configure without --enable-objc-gc, fails to build.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 19 Aug 2006 18:25:50 +0200
+
+gcc-4.2 (4.2-20060709-1) experimental; urgency=low
+
+  * Test build, SVN trunk 20060709.
+  * Merge libssp0-dev into gcc-4.1 (-fstack-protector is a common option).
+  * Rename libmudflap0-dev to libmudflap0-4.2-dev.
+  * Ignore compiler warnings when checking whether compiler driver understands
+    Ada fails.
+  * Merge changes from the gcc-4.1 package.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  9 Jul 2006 14:28:03 +0200
+
+gcc-4.2 (4.2-20060617-1) experimental; urgency=low
+
+  * Test build, SVN trunk 20060617.
+
+  [Matthias Klose]
+  * Configure using --enable-objc-gc, using the internal boehm-gc.
+  * Build-depend on bison (>= 1:2.3).
+  * Build the QT based awt peer library, not yet the same functionality
+    as the GTK based peer library.
+  * Update libjava-* patches.
+
+  [Ludovic Brenta]
+  * Do not provide the symbolic link /usr/bin/gnatgcc; this will now
+    be provided by package gnat from the source package gcc-defaults.
+  * debian/control.m4, debian/control (gnat): conflict with gnat (<< 4.1),
+    not all versions of gnat, since gcc-defaults will now provide gnat (= 4.1)
+    which depends on gnat-4.1.
+
+  [Bastian Blank]
+  * Make it possible to overwrite arch per DEB_TARGET_ARCH and
+    DEB_TARGET_GNU_TYPE.
+  * Disable biarch only on request for cross builds.
+  * Use correct source directory for tarballs.
+  * Produce correct multiarch.inc for source builds.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 17 Jun 2006 19:02:01 +0200
+
+gcc-4.2 (4.2-20060606-1) experimental; urgency=low
+
+  * Test build, SVN trunk 20060606.
+  * Remove obsolete patches, update patches for 4.2.
+  * Update the biarch-include patches to work with mips-triarch.
+  * Disable Ada, not yet updated.
+  * New packages: libgomp*.
+  * Remove fastjar, not included upstream anymore.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  6 Jun 2006 10:52:28 +0200
+
+gcc-4.1 (4.1.2-12) unstable; urgency=high
+
+  * i386-biarch.dpatch: Update for the backport for PR target/31868.
+    Closes: #427185.
+  * m68k-libffi2.dpatch: Update. Closes: #425399.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  4 Jun 2007 23:53:23 +0200
+
+gcc-4.1 (4.1.2-11) unstable; urgency=low
+
+  * Update to SVN 20070601.
+  * Build the libmudflap0-dev package again.
+  * Don't build libffi, when the packages are not built.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  1 Jun 2007 23:55:22 +0200
+
+gcc-4.1 (4.1.2-10) unstable; urgency=low
+
+  * Regenerate the control file.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 30 May 2007 00:29:29 +0200
+
+gcc-4.1 (4.1.2-9) unstable; urgency=low
+
+  * Update to SVN 20070528.
+  * Don't build packages now built from the gcc-4.2 source (arm, m68k,
+    mips, mipsel).
+  * Add backport for PR middle-end/20218.
+  * Add backport for PR target/31868.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 29 May 2007 00:01:12 +0200
+
+gcc-4.1 (4.1.2-8) unstable; urgency=low
+
+  * Update to SVN 20070518.
+  * Don't build packages now built from the gcc-4.2 source.
+
+  [ Aurelian Jarno ]
+  * Update libffi patch for ARM. Closes: #425011.
+  * arm-pr30486, arm-pr28516, arm-unbreak-eabi-armv4t: New.
+  * Disable FFI, Java, ObjC for armel.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 20 May 2007 10:31:24 +0200
+
+gcc-4.1 (4.1.2-7) unstable; urgency=low
+
+  * Update to SVN 20070514.
+  * Link using --hash-style=both on supported architectures. Addresses: #421790.
+  * On hppa, build ecjx as a native binary.
+  * note-gnu-stack.dpatch: Fix ARM comment marker (Daniel Jacobowitz).
+    Closes: #422978.
+  * Add build dependency on libxul-dev for *-freebsd. Closes: #422995.
+  * Update config.guess/config.sub and build gcjwebplugin on GNU/kFreeBSD
+    (Aurelian Jarno). Closes: #422995.
+  * Disable ssp on hurd-i386. Closes: #423757.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 14 May 2007 08:40:08 +0200
+
+gcc-4.1 (4.1.2-6) unstable; urgency=low
+
+  * Update libjava from the gcc-4.1 Fedora branch 20070504.
+  * gfortran-4.1: Fix the target of the libgfortran.so symlink.
+    Closes: #421362.
+  * Build-depend on gcc-multilib [amd64 i386 powerpc ppc64 s390 sparc].
+  * Readd build dependency on binutils on arm.
+  * (Build-) depend on glibc (>= 2.5) for all architectures.
+  * Remove libssp packages from the control file.
+  * Fix wrong code generation on hppa when TLS variables are used.
+    Closes: #422421.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  6 May 2007 10:00:23 +0200
+
+gcc-4.1 (4.1.2-5) unstable; urgency=low
+
+  * Update to SVN 20070429.
+  * Update libjava from the gcc-4.1 Fedora branch 20070428.
+  * Update m68k patches:
+    - Remove pr25514, pr27736, applied upstream.
+    - Update m68k-java.
+  * Link using --hash-style=gnu/both.
+  * Tighten (build) dependency on binutils. Closes: #421197.
+  * gij-4.1: Add a conflict with java-gcj-compat (<< 1.0.69).
+  * gfortran-4.1: Depend on libgfortran1, provide the libgfortran.so
+    symlink. Closes: #421362.
+  * gcc-4.1, gcc-4.1-multilib: Fix compatibility symlinks. Closes: #421382.
+  * Temporarily remove build dependency on locales on arm, hppa, m68k, mipsel.
+  * Temporarily remove build dependency on binutils on arm.
+  * Fix FTBFS on GNU/kFreeBSD (Aurelian Jarno). Closes: #421423.
+  * gij-4.1 postinst: Create /var/lib/gcj-4.1. Closes: #421526.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 30 Apr 2007 08:13:32 +0200
+
+gcc-4.1 (4.1.2-4) unstable; urgency=medium
+
+  * Update to SVN 20070423.
+    - Remove pr11953, applied upstream.
+    - Fix ld version detection in libstdc++v3.
+  * Update libjava from the gcc-4.1 Fedora branch 20070423.
+  * Merge libgfortran1-dev into gfortran-4.1.
+  * Add multilib packages for gcc, g++, gobjc, gobjc++, gfortran.
+  * Don't link using --hash-style=gnu/both; loosen dependency on binutils.
+  * Don't revert the patch to fix PR c++/27227.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 Apr 2007 23:13:14 +0200
+
+gcc-4.1 (4.1.2-3) experimental; urgency=low
+
+  * Update to SVN 20070405.
+  * Update libjava from the gcc-4.1 Fedora branch 20070405.
+  * Robustify setting of make's -j flag. Closes: #414316.
+  * Only build the libssp packages, when building the common libraries.
+  * gcc-4.1-hppa64: Don't depend on libc6-dev.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  6 Apr 2007 00:28:29 +0200
+
+gcc-4.1 (4.1.2-2) experimental; urgency=low
+
+  * Update to SVN 20070306.
+  * Update libjava from the gcc-4.1 Fedora branch 20070306.
+
+  [Matthias Klose]
+  * Don't install gij-wrapper anymore, directly register gij as a java
+    alternative.
+  * Don't install gcjh-wrapper anymore.
+  * Don't use exact versioned dependencies on gcj-base for libgcj and
+    libgcj-awt.
+  * Fix glibc build dependency for alpha.
+  * Support -ffast-math on hurd-i386 (Samuel Thibault). Closes: #413342.
+  * Update kfreebsd-amd64 patches (Aurelien Jarno). Closes: #406015.
+  * gij: Consistently use $(dbexecdir) to reference the gcj sub dir.
+  * Install into /usr/lib/gcc/<target_alias>/4.1, to ease upgrades
+    between minor versions.
+    Add compatibility symlinks in <target_alias>/4.1.2 to build gnat-4.1
+    and gcj-4.1 from separate sources.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  7 Mar 2007 03:51:47 +0100
+
+gcc-4.1 (4.1.2-1) experimental; urgency=low
+
+  [Matthias Klose]
+  * Update to gcc-4.1.2.
+  * Update libjava backport patches, split out boehm-gc-backport patch.
+  * Enable the cpu-default-generic patch (i386, amd64), backport from 4.2.
+  * Correct mfctl instruction syntax (hppa), backport from the trunk.
+  * Backport PR java/9861 (name mangling updates).
+  * gcc.c (main): Call expandargv (backport from 4.2).
+  * Apply gcc dwarf2 unwinding patches from the trunk.
+  * Apply backport for PR 20208 on amd64 i386 powerpc ppc64 sparc s390.
+  * Apply patches from the 4.1 branch for PR rtl-optimization/28772,
+    PR middle-end/30313, PR middle-end/30473, PR c++/30536, PR debug/30189,
+    PR fortran/30478, PR rtl-optimization/30787, PR tree-optimization/30823,
+    PR rtl-optimization/28173, PR ada/30684, bug in pointer dependency test,
+    PR rtl-optimization/30931, PR fortran/25392, PR fortran/30400,
+    PR libgfortran/30910, PR libgfortran/30918, PR fortran/29441,
+    PR target/30634.
+  * Update NEWS files.
+  * Include a backport of the ecj+generics java updates as
+    gcj-ecj-20070215.tar.bz2. Install it into the gcc-4.1-source package.
+  * Do not build fastjar anymore from this source.
+  * debian/control.m4: Move expect-tcl8.3 before dejagnu.
+  * Work around firefox/icewhatever dropping plugin dependencies on xpcom.
+  * Refactor naming of libgcj packages in the build files.
+  * Make libstdc++-doc's build dependencies depending on the source package.
+  * Do not build packages on architectures, which are already built by gcc-4.2.
+
+  * Merge the gcj generics backport from Ubuntu:
+
+    - Merge the Java bits (eclipse based compiler, 1.5 compatibility,
+      classpath generics) from the gcc-4.1 Fedora branch.
+    - Drop all previous patches from the classpath-0.93 merge, keep
+      the boehm-gc backport (splitted out as a separate patch).
+    - Add a gcj-ecj-generics.tar.bz2 tarball, containing gcc/java, libjava,
+      config/unwind_ipinfo.m4, taken from the Fedora branch.
+    - Drop the libjava-hppa, libjava-plugin-binary, pr29362, pr29805 patches
+      integrated in the backport.
+    - Update patches for the merge: reporting, libjava-subdir, i386-biarch,
+      classpath-tooldoc, pr26885
+    - Add libjava-dropped, libjava-install; dropped chunks from the merge.
+    - Add pr9861-nojava mangling changes, non-java parts for PR 9861.
+    - Add gcc-expandv, expand `@' parameters on the commandline; backport
+      from the trunk.
+    - Disable the m68k-gc patch, needs update for the merge.
+    - Configure --with-java-home set for 1.5.0.
+    - Configure with --enable-java-maintainer-mode to build the header
+      and class files on the fly.
+    - Add build dependency on ecj-bootstrap, configure --with-ecj-jar.
+    - Build an empty libgcj-doc package; gjdoc currently cannot handle
+      generics.
+    - Apply gcc dwarf2 unwinding patches from the trunk, allowing the Events
+      testcase to pass.
+      - Tighten dependencies on shared libraries.
+    - Use /usr/lib/gcj-4-1-71 as private gcj subdir.
+    - Bump the libgcj soversion to 71, rename the libgcj7-0 package
+      to libgcj7-1, rename the libgcj7-awt package to libgcj7-1-awt.
+    - gij-4.1: Add and provide alternatives for gorbd, grmid, gserialver.
+    - gcj-4.1: Remove gcjh, gcjh-wrapper, gjnih.
+    - gcj-4.1: Add and provide alternatives for jar, javah, native2ascii,
+      tnameserv.
+    - gcj-4.1: Add dependency on ecj-bootstrap, recommend fastjar,
+      ecj-bootstrap-gcj.
+    - Add build dependency on ecj-bootstrap version providing the GCCMain
+      class.
+    - libgcj7-1: Recommend libgcj7-1-awt.
+    - Add build dependency on libmagic-dev.
+    - Build-depend on gcj-4.1; build our own ecj1 and gjdoc before
+      starting the build.
+    - Make ecj1 available when running the testsuite.
+    - Fix build failure on sparc-linux.
+    - Fix gjavah compatibility problems (PR cp-tools/3070[67]).
+    - Fixed driver issue source files (PR driver/30714).
+    - Add (rudimentary) manual pages for classpath tools.
+
+  [Kevin Brown]
+  * debian/control.m4, debian/rules.d/binary-ada.mk: provide new packages
+    containing debugging symbols for Ada libraries: libgnat-4.1-dbg,
+    libgnatprj4.1-dbg, and libgnatvsn4.1-dbg.  Adresses: #401385.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  3 Mar 2007 23:12:08 +0100
+
+gcc-4.1 (4.1.1ds2-30) experimental; urgency=low
+
+  * Update to SVN 20070106.
+  * Do not revert the fixes for PR 25878, PR 29138, PR 29408.
+  * Don't build the packages built by gcc-4.2 source.
+  * debian/patches/note-gnu-stack.dpatch: Add .note.GNU-stack sections
+    for gcc's crt files, libffi and boehm-gc. Taken from FC. Closes: #382741.
+  * Merge from Ubuntu:
+    - Backport g++ visibility patches from the FC gcc-4_1-branch.
+    - Update the long-double patches; require glibc-2.4 as a build dependency
+      on alpha, powerpc, sparc, s390. Bump the shlibs dependencies to
+      require 4.1.1-21.
+    - On powerpc-linux configure using --enable-secureplt. Closes: #382748.
+    - When using the cpu-default-generic patch, build for generic x86-64
+      on amd64 and i386 biarch.
+    - Link using --hash-style=both (alpha, amd64, ia64, i386, powerpc, ppc64,
+      s390, sparc).
+  * gij-4.1: Recommends libgcj7-awt instead of suggesting it. Closes: #394917.
+  * Split the gcc-long-double patch into a code and doc part.
+  * Set priority of development packages to optional.
+  * Add support for kfreebsd-amd64 (Aurelian Jarno). Closes: #406015.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Jan 2007 10:35:42 +0100
+
+gcc-4.1 (4.1.1ds2-22) unstable; urgency=high
+
+  * Enable -pthread for GNU/Hurd (Michael Banck). Closes: #400031.
+  * Update the m68k-fpcompare patch (Roman Zippel). Closes: #401585.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Dec 2006 12:35:06 +0100
+
+gcc-4.1 (4.1.1ds2-20) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20061115.
+    - Fix PR tree-optimization/27891, ICE in tree_split_edge.
+      Closes: #370248, #391657, #394630.
+    - Fix PR tree-optimization/9814, duplicate of PR tree-optimization/29797.
+      Closes: #181096.
+  * Apply the libjava/net backport from the redhat/gcc-4_1-branch.
+  * Apply proposed patch for PR java/29805.
+
+  [Roman Zippel]
+  * Build the ObjC and ObjC++ compilers in cross builds.
+  * debian/patches/m68k-symbolic-operand.dpatch: Better recognize
+    symbolic operands in addresses.
+  * debian/patches/m68k-bitfield-offset.dpatch: Only use constant offset
+    for register bitfields (combine expects shifts, but does a rotate).
+  * debian/patches/m68k-bitfield-offset.dpatch: Update and apply.
+
+  [Daniel Jacobowitz]
+  * Don't try to use _Unwind_Backtrace on SJLJ targets.
+    See bug #387875, #388505, GCC PR 29206.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 Nov 2006 08:59:53 -0800
+
+gcc-4.1 (4.1.1ds2-19) unstable; urgency=low
+
+  * Fix typo in arm-pragma-pack.dpatch.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 28 Oct 2006 11:04:00 +0200
+
+gcc-4.1 (4.1.1ds2-18) unstable; urgency=medium
+
+  [Matthias Klose]
+  * Update to SVN 20061028.
+  * Fix #pragma pack on ARM (Paul Brook). Closes: #394703.
+  * Revert PR c++/29138, PR c++/29408. Closes: #392559.
+  * Revert PR c++/25878. Addresses: #387989.
+  * fastjar: Provide jar. Closes: #395397.
+
+  [Ludovic Brenta]
+  * debian/control.m4 (libgnatprj-dev): depend on libgnatvsn-dev.
+    debian/gnatprj.gpr: with gnatvsn.gpr. Closes: #395000.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 26 Oct 2006 23:51:10 +0200
+
+gcc-4.1 (4.1.1ds2-17) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20061020.
+    - Fix PR debug/26881, ICE in dwarf2out_finish. Closes: #377613.
+    - Fix PR PR c++/29408, parse error for valid code. Closes: #392327, #393010.
+    - Fix PR c++/29435, segfault with sizeof and templates. Closes: #393071.
+    - Fix PR target/29338, segfault with -finline-limit on arm. Closes: 390620.
+    - Fix 3.4/4.0 backwards compatibility problem in libstdc++.
+  * Fix PR classpath/29362, taken from the redhat/gcc-4_1-branch.
+  * Remove the INSTALL directory from the source tarball. Closes: #392974.
+  * Disable building the static libgcj; non-functional, and cutting
+    down build times.
+  * libgcj7-0: Tighten dependency on libgcj-common.
+  * libgcj7-dev: Install .pc file as libgcj-4.1.pc.
+  * README.cross: Updated (Hector Oron). Addresses: #380251.
+  * config-ml.dpatch: Use *-linux-gnu as *_GNU_TYPE. Closes: #394034.
+
+  [Nikita V. Youshchenko]
+  * Fix typo in the cross build scripts.  Closes: #391445.
+
+  [Falk Hueffner]
+  * alpha-no-ev4-directive.dpatch: Fix kernel build failure.
+
+  [Roman Zippel]
+  * debian/patches/m68k-align-code.dpatch: Use "move.l %a4,%a4" to advance
+    within code.
+  * debian/patches/m68k-align-stack.dpatch: Try to keep the stack word aligned.
+  * debian/patches/m68k-dwarf3.dpatch: Emit correct dwarf info for cfa offset
+    and register with -fomit-frame-pointer.
+  * debian/patches/m68k-fpcompare.dpatch: Bring fp compare early to its
+    desired form to relieve reload. Closes: #390879.
+  * debian/patches/m68k-prevent-swap.dpatch: Don't swap operands
+    during reloads.
+  * debian/patches/m68k-reg-inc.dpatch: Reinsert REG_INC notes after splitting
+    an instruction.
+  * debian/patches/m68k-secondary-addr-reload.dpatch: Add secondary reloads
+    to allow reload to get byte values into addr regs. Closes: #385327.
+  * debian/patches/m68k-symbolic-operand.dpatch: Better recognize symbolic
+    operands in addresses.
+  * debian/patches/m68k-limit_reload.dpatch: Remove, superseded by
+    m68k-secondary-addr-reload.dpatch.
+  * debian/patches/m68k-notice-move.dpatch: Apply, was checked in in -16.
+  * debian/patches/m68k-autoinc.dpatch: Updated, don't attempt to increment
+    the register, if it's used multiple times in the instruction .
+
+ -- Matthias Klose <doko@debian.org>  Sat, 21 Oct 2006 00:25:05 +0200
+
+gcc-4.1 (4.1.1ds1-16) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20061008.
+    - Fix PR c++/29226, ICE in make_decl_rtl. Closes: #388263.
+  * libgcj7-0: Fix package removal. Closes: #390874.
+  * Configure with --disable-libssp on architectures that don't
+    support it (alpha, hppa, ia64, m68k, mips, mipsel).
+  * On hppa, remove build-dependency on dash.
+  * gij/gcj: Do not install slave links for the non DFSG manpages.
+    Closes: #390425, #390532.
+  * libgcj-common: rebuild-gcj-db: Don't do anything, if no classmap
+    files are found. Closes: #390966.
+  * Fix PR libstdc++/11953, extended for all linux architectures.
+    Closes: #391268.
+  * libffi4-dev: Conflict with libffi. Closes: #387561.
+  * Backport PR target/27880 to the gcc-4_1-branch. Patch by Steve Ellcey.
+    Closes: #390693.
+  * On ia64, don't use _Unwind_GetIPInfo in libjava and libstdc++.
+  * Add a README.ssp with minimal documentation about stack smashing
+    protection. Closes: #366094.
+  * Do not build libgcj-common from the gcc-4.1/gcj-4.1 sources anymore.
+
+  [Roman Zippel]
+  * debian/patches/m68k-notice-move.dpatch: Don't set cc_status
+    for fp move without fp register.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  8 Oct 2006 02:21:49 +0200
+
+gcc-4.1 (4.1.1ds1-15) unstable; urgency=medium
+
+  * Update to SVN 20060927.
+    - Fix PR debug/29132, exception handling on mips. Closes: #389468, #390042.
+    - Fix typo in gcc documentation. Closes: #386180.
+    - Fix PR target/29230, wrong code generation on arm. Closes: #385505.
+  * libgcj-common: Ignore exit value of gcj-dbtool in rebuild-gcj-db on
+    arm, m68k, hppa. Adresses: #388505.
+  * libgcj-common: Replaces java-gcj-compat-dev and java-gcj-compat.
+    Closes: #389539.
+  * libgcj-common: /usr/share/gcj/debian_defaults: Define gcj_native_archs.
+  * Update the java backport from the redhat/gcc-4_1-branch upto 2006-09-27;
+    remove libjava-str2double.dpatch, pr28661.dpatch.
+  * Disable ssp on hppa, not supported.
+  * i386-biarch.dpatch: Avoid warnings about macro redefinitions.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 29 Sep 2006 22:32:41 +0200
+
+gcc-4.1 (4.1.1ds1-14) unstable; urgency=medium
+	
+  [Matthias Klose]
+  * Update to SVN 20060920.
+    - Fix PR c++/26957. Closes: #373257, #386910.
+    - Fix PR rtl-optimization/28243. Closes: #378325.
+  * Remove patch for PR rtl-optimization/28634, applied upstream.
+  * Fix FTBFS on GNU/kFreeBSD (fallout from the backport of classpath-0.92).
+    (Petr Salinger). Closes: #385974.
+  * Merge from Ubuntu:
+    - Do not encode the subminor version in the jar files.
+    - Fix typo for the versioned gcj subdirectory in lib32gcj-0.
+    - When running the i386 binaries on amd64, adjust the properties
+      java.home, gnu.classpath.home.url, sun.boot.class.path,
+      gnu.gcj.precompiled.db.path.
+    - Configure the 32bit build on amd64 
+      --with-java-home=/usr/lib32/jvm/java-1.4.2-gcj-4.1-1.4.2.0/jre.
+    - Configure --with-long-double-128 for glibc-2.4 on alpha, powerpc, ppc64,
+      s390, s390x, sparc, sparc64.
+    - Update the java backport from the redhat/gcc-4_1-branch upto 2006-09-20.
+      - Fix PR java/29013, invalid byte code generation. Closes: #386926.
+    - debian/patches/gcc-pfrs-2.dpatch: Apply a fix for a regression in the
+      backport of PR 28946 from the trunk (H.J. Lu).
+  * Backport PR classpath/28661 from the trunk.
+  * Don't ship the .la files for the java modules. Closes: #386228.
+  * gcj-4.1: Remove dangling symlink. Closes: #386430.
+  * gij: Suggest java-gcj-compat, gcj: Suggest java-gcj-compat-dev.
+    Closes: #361942.
+  * Fix infinite loop in string-to-double conversion on 64bit targets.
+    Closes: #348792.
+  * gij-4.1: Ignore exit value of gcj-dbtool in postinst. Adresses: #388505.
+  * libgcj-common: Move rebuild-gcj-db from java-gcj-compat into libgcj-common.
+  * On hppa, install a wrapper around gij-4.1 to ignore unaligned memory
+    accesses. Works around buildd configurations enabling this check by
+    default. Addresses: #364819.
+
+  [Ludovic Brenta]
+  * debian/patches/ada-libgnatprj.dpatch: Build mlib-tgt-linux.adb instead of
+    mlib-tgt.adb.  Closes: #387826.
+  * debian/patches/ada-pr15802.dpatch: Backport from the trunk.
+    Closes: #246384.
+  * debian/control.m4 (gnat-4.1): do not provide gnat (supplied by
+    gcc-defaults instead); conflict with gnat-4.2 which will soon be in
+    unstable.
+
+  [Roman Zippel]
+  * debian/patches/m68k-dwarf2.dpatch: Recognize stack adjustments also
+    in the src of an instruction.
+  * debian/patches/m68k-jumptable.dpatch: Don't force byte offset when
+    accessing the jumptable, gas can generate the correct offset size instead.
+  * debian/patches/m68k-peephole.dpatch: Convert some text peepholes to rtl
+    peepholes, so the correct DWARF2 information can be generated for stack
+    manipulations (Keep a few peepholes temporarily disabled).
+  * debian/patches/m68k-peephole-note.dpatch: Don't choke on notes while
+    reinserting REG_EH_REGION notes.
+  * debian/patches/m68k-return.dpatch: Don't use single return if fp register
+    have to be restored. Closes: #386864.
+  * debian/patches/m68k-sig-unwind.dpatch: Add support for unwinding over
+    signal frames.
+  * Fix PR rtl-optimization/27736, backport from the trunk.
+  * Add java support for m68k. Closes: #312830, #340874, #381022.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Sep 2006 19:36:31 +0200
+
+gcc-4.1 (4.1.1ds1-13) unstable; urgency=medium
+
+  * Update to SVN 20060901; remove patches applied upstream:
+    - PR target/24367.
+    - PR c++/26670.
+  * Apply proposed patch for PR fortran/28908.
+  * Fix biarch symlinks in lib64stdc++ for cross builds.
+  * Fix biarch symlinks in lib32objc on amd64.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  1 Sep 2006 00:04:05 +0200
+
+gcc-4.1 (4.1.1ds1-12) unstable; urgency=medium
+
+  [Matthias Klose]
+  * Update to SVN 20060830.
+  * Add backport of PR other/26208, bump libgcc1 shlibs dependency.
+  * Add backport of PR c++/26670. Closes: #356548.
+  * Apply proposed patch for PR target/24367 (s390).
+  * Add /usr/lib/jni to the libjava dlsearch path. Closes: #364820.
+  * Build without GFDL licensed docs. Closes: #384036.
+    - debian/patches/{svn-doc-updates,pr25524-doc,pr26885-doc}.dpatch:
+      Split out -doc specific patches.
+    - debian/*.texi, debian/porting.html: Add dummy documentation.
+    - debian/rules.unpack, debian/rules.patch: Update for non-gfdl build.
+    - fastjar.texi: Directly define the gcctabopt and gccoptlist macros.
+
+  * Merge from Ubuntu:
+    - Backport the classpath-0.92, libjava, gcc/java merge from the
+      redhat/gcc-4_1-branch branch.
+    - Apply the proposed patch for PR libgcj/28698.
+    - Change the libgcj/libgij sonames. Rename libgcj7 to libgcj7-0.
+    - Do not remove the rpath from libjvm.so and libjawt.so. Some
+      configure scripts rely on being able to link that libraries
+      directly.
+    - When running the i386 binaries on amd64, look in
+      /usr/lib32/gcj-x.y and /usr/lib32/jni instead.
+    - Add /usr/lib/jni to java.library.path. Closes: #364820.
+    - Add debugging symbols for more binary packages to libgcj7-dbg.
+      Closes: #383705.
+    - libgcj7-dev: Remove conflicts with older libgcjX-dev packages.
+    - Do not build the libgcj-bc and lib32gcj-bc packages anymore from
+      the gcj-4.1 source.
+
+  [Roman Zippel]
+  * debian/patches/m68k-limit_reload.dpatch: Correctly limit reload class.
+    Closes: #375522.
+  * debian/patches/m68k-split_shift.dpatch: Use correct predicates for long long
+    shifts and use more splits. Closes: #381572.
+  * debian/patches/m68k-prevent-qipush.dpatch: Prevent combine from creating
+    a byte push on the stack (invalid on m68k). Closes: #385021.
+  * debian/patches/m68k-autoinc.dpatch: Recognize a few more autoinc possibilities.
+  * debian/patches/pr25514.dpatch: Backport from the trunk.
+  * debian/patches/m68k-gc.dpatch: Change STACKBOTTOM to LINUX_STACKBOTTOM
+    so it works with 2.6 kernels.
+  * Other m68k bug reports fixed in 4.1.1-11 and 4.1.1-12:
+    Closes: #378599, #345574, #344041, #323426, #340293.
+  * Build the stage1 compiler using -g -O2; saves a few hours build time
+    and apparently is working at the moment.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 29 Aug 2006 21:37:28 +0200
+
+gcc-4.1 (4.1.1-11) unstable; urgency=low
+
+  * The "Our priority are our users, remove the documentation!" release.
+
+  [Matthias Klose]
+  * Fix build failure building the hppa->hppa64 cross compiler.
+  * Update to SVN 20060814.
+    - Fix directory traversal vulnerability in fastjar. Closes: #368397.
+      CVE-2006-3619.
+    - Fix PR rtl-optimization/23454, ICE in invert_exp_1 on sparc.
+      Closes: #321215.
+    - Fix PR c++/26757, C++ front-end producing two DECLs with the same UID.
+      Closes: #356569.
+  * Remove patch for PR rtl-optimization/28075, applied upstream.
+  * Apply proposed patch for PR rtl-optimization/28634, rounding problem with
+    -fdelayed-branch on hppa/mips. Closes: #381710.
+  * Fixed at least in 4.1.1-10: boost::date_time build failure.
+    Closes: #382352.
+  * Build-depend on make (>= 3.81), add make (>= 3.81) as dependency to
+    gcc-4.1-source. Closes: #381117.
+  * Backport of libffi from the trunk; needed for the java backport in
+    experimental.
+  * libffi4-dev: Install the libffi_convenience library as libffi_pic.a.
+  * When building a package without the GFDL'd documentation, don't create
+    the alternative's slave links for manual pages for the java tools.
+  * Do not build the -doc packages and derived manual pages licensed under
+    the GFDL with invariant sections or cover texts.
+  * Only build the libssp package, if the target libc doesn't provide
+    ssp support.
+  * Run the complete testsuite, when building a standalone gcj package.
+
+  [Roman Zippel]
+  * debian/patches/m68k-fjump.dpatch:
+    Always use as fjcc pseudo op, we rely heavily on as to generate the
+    right size for the jump instructions. Closes: #359281.
+  * debian/patches/m68k-gc.dpatch:
+    The thread suspend handler has to save all registers.
+    Reenable MPROTECT_VDB, it should work, otherwise it's probably a kernel bug.
+  * debian/patches/m68k-save_pic.dpatch:
+    Correctly save the pic register, when not done by reload().
+    (fixes _Unwind_RaiseException and thus exception handling).
+  * debian/patches/m68k-libffi.dpatch: Add support for closures.
+  * debian/patches/m68k-bitfield.dpatch: Avoid propagation of mem expression
+    past a zero_extract lvalue.
+  * debian/patches/m68k-dwarf.dpatch: Correct the dwarf frame information,
+    but preserve compatibility.
+
+  [Christian Aichinger]
+  * Fix building a cross compiler targeted for ia64. Closes: #382627.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 15 Aug 2006 00:41:00 +0200
+
+gcc-4.1 (4.1.1-10) unstable; urgency=low
+
+  * Update to SVN 20060729.
+    - Fix PR c++/28225, segfault in type_dependent_expression_p.
+      Closes: #376148.
+  * Apply proposed patch for PR rtl-optimization/28075.
+    Closes: #373820.
+  * Apply proposed backport and proposed patch for PR rtl-optimization/28221.
+    Closes: #376084.
+  * libgcj7-jar: Loosen dependency on gcj-4.1-base.
+  * Add ssp header files to the private gcc includedir.
+  * Do not build the Ada packages from the gcc-4.1 source, introducing
+    a new gnat-4.1 source package.
+  * Build libgnat on alpha and s390 as well.
+  * Do not build the gnat-4.1-doc package (GFDL with invariant sections or
+    cover texts).
+  * Remove references to the stl-manual package. Closes: #378698.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 29 Jul 2006 22:08:59 +0200
+
+gcc-4.1 (4.1.1-9) unstable; urgency=low
+
+  * Update to SVN 20060715.
+    - Fix PR c++/28016, do not emit uninstantiated static data members.
+      Closes: #373895, #376871.
+  * Revert the patch to fix PR c++/27227. Closes: #378321.
+  * multiarch-include.dpatch: Renamed from biarch-include.dpatch;
+    apply for all architectures.
+  * Do not build the java compiler in gcc-4.1 package, just include the
+    options and specs in the gcc driver.
+  * Remove gnat-4.0 as an alternative build dependency.
+  * Add a patch to enable -fstack-protector by default for C, C++, ObjC, ObjC++.
+    The patch is disabled by default.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 15 Jul 2006 17:07:29 +0200
+
+gcc-4.1 (4.1.1-8) unstable; urgency=medium
+
+  * Update to SVN 20060708.
+    - Fix typo in gcov documentation. Closes: #375140.
+    - Fix typo in gccint documentation. Closes: #376412.
+    - [alpha], Fix -fvisibility-inlines-hidden segfaults on reference to
+      static method. PR target/27082. Closes: #369642.
+
+  * Fix ppc64 architecture string in debian/multiarch.inc. Closes: #374535.
+  * Fix conflict, replace and provide libssp0-dev for cross compilers.
+    Closes: #377012.
+  * Ignore compiler warnings when checking whether compiler driver understands
+    Ada fails. Closes: #376660.
+  * Backport fix for PR libmudflap/26864 from the trunk. Closes: #26864.
+  * README.C++: Remove non-existing URL. Closes: #347601.
+  * gij-4.1: Provide java2-runtime. Closes: #360906.
+
+  * Closed reports reported against gcc-3.0 and fixed in gcc-4.1:
+    - C++
+      + PR libstdc++/13943, call of overloaded `llabs(int)' is ambiguous.
+        Closes: #228645.
+    - Java
+      + Fixed segmentation fault on compiling bad program. Closes: #165635
+  * Closed reports reported against gcc-3.3 and fixed in gcc-4.1:
+    - Stack protector available. Closes: #213994, #233208.
+    - Better documentation of -finline-limit option. Closes: #296047.
+  * Closed reports reported against gcc-3.4 and fixed in gcc-4.1:
+    - General
+      + Fixed [unit-at-a-time] Using -O2 cannot detect missing return
+        statement in a function. Closes: #276843.
+    - C++
+      + PR13943, call of overloaded `llabs(int)' is ambiguous. Closes: #228645.
+      + PR c++/21280, #pragma interface, templates, and "inline function used
+        but never defined". Closes: #364412.
+    - Architecture specific:
+      - m68k
+        + Segfault building glibc. Closes: #353618.
+        + ICE when trying to build boost. Closes: #321486.
+  * Closed reports reported against gcc-4.0 and fixed in gcc-4.1:
+    - General
+      + Handling of #pragma GCC visibility for builtin functions.
+        Closes: #330279.
+      + gettext interpretation the two conditional strings as one.
+        Closes: #227193.
+      + ICE due to if-conversion. Closes: #335078.
+      + Fix unaligned accesses with __attribute__(packed) and memcpy.
+        Closes: #355297.
+      + Fix ICE in expand_expr_real_1, at expr.c. Closes: #369817.
+    - Ada
+      + Link error not finding -laddr2line. Closes: #322849.
+      + ICE on invalid code. Closes: #333564.
+    - C++
+      + libstdc++: bad thousand separator with fr_FR.UTF-8. Closes: #351786.
+      + The Compiler uses less memory than 4.0. Closes: #336225.
+      + Fix "fails to compare reverse map iterators". Closes: #362840.
+      + Fix "fail to generate code for base destructor defined inline with
+        pragma interface". Closes: #356435.
+      + Fix ICE in cp_expr_size, at cp/cp-objcp-common.c. Closes: #317455.
+      + Fix wrong warning: control may reach end of non-void function.
+        Closes: #319309.
+      + Fix bogus warning "statement has no effect" with template and
+        statement-expression. Closes: #336915.
+      + Fixed segfault on syntax error. Closes: #349087.
+      + Fix ICE with __builtin_constant_p in template argument.
+        Closes: #353366.
+      + Implement DR280 (fixing "no operator!= for const_reverse_iterator").
+        Closes: #244894.
+    - Fortran
+      + Fix wrong behaviour in unformatted writing. Closes: #369547.
+    - Java
+      + Fixed segfault on -fdump-tree-all-all. Closes: #344265.
+      + Fixed ant code completion in eclipse generating a nullpointer
+        exception. Closes: #337510.
+      + Fixed abort in gnu_java_awt_peer_gtk_GtkImage.c. Closes: #343112.
+      + Fixed assertion failure in gij with rhdb-explain. Closes: #335650.
+      + Fixed assertion failure when calling JTabbedPane.addTab(null, ...).
+        Closes: #314704.
+      + Fixed error when displaying empty window with bound larger than the
+        displayed content. Closes: #324502.
+      + Fixed: Exception in JComboBox.removeAllItems(). Closes: #314706.
+      + Fixed assertian error in gnu_java_awt_peer_gtk_GtkImage.c.
+        Closes: #333733.
+    - libmudflap
+      + PR libmudflap/23170, libmudflap should not use functions marked
+        obsolescent by POSIX/SUS. Closes: #320398.
+    - Architecture specific:
+      - m68k
+        + FTBFS building tin. Closes: #323016.
+        + ICE with -g -fomit-frame-pointer. Closes: #331150.
+        + ICE in instantiate_virtual_regs_lossage. Closes: #333536.
+        + Wrong code generation with loop unrolling. Closes: #342121.
+        + ICEs while building gst-ffmpeg. Closes: #343692.
+      - mips
+        + Fix gjdoc build failure. Closes: #344986.
+        + Fix link failure for static libs and object files when xgot
+          needs to be used. Closes: #274942.
+  * gnat bug reports fixed since gnat-3.15p:
+    - GNAT miscounts UTF8 characters in string with -gnaty. Closes: #66175.
+    - Bug box from "with Text_IO" when compiling optimized. Closes: #243795.
+    - Nonconforming parameter lists not detected. Closes: #243796.
+    - Illegal use clause not detected. Closes: #243797.
+    - Compiler enters infinite loop on illegal program with tagged records.
+      Closes: #243799.
+    - Compiler crashes on illegal program (missing discriminant, unconstrained
+      parent). Closes: #243800.
+    - Bug box at sinfo.adb:1215 on illegal program. Closes: #243801.
+    - Bug box at sinfo.adb:1651 on illegal program. Closes: #243802.
+    - Illegal program not detected (entry families). Closes: #243803.
+    - Illegal program not detected, RM 10.1.1(14). Closes: #243807.
+    - Bug box at exp_ch9.adb:7254 on illegal code. Closes: #243812.
+    - Illegal program not detected, RM 4.1.4(14). Closes: #243816.
+    - Bug box in Gigi, code=116, on legal program. Closes: #244225.
+    - Illegal program not detected, 12.7(10) (generic parameter is visible,
+      shouldn't be). Closes: #244483.
+    - Illegal program not detected, ambiguous aggregate. Closes: #244496.
+    - Bug box at sem_ch3.adb:8003. Closes: #244940.
+    - Bug box in Gigi, code=103, on illegal program. Closes: #244945.
+    - Legal program rejected, overloaded procedures. Closes: #246188.
+    - Bug box in Gigi, code=999, on legal program. Closes: #246388.
+    - Illegal program not detected, RM 10.1.6(3). Closes: #246389.
+    - Illegal program not detected, RM 3.10.2(24). Closes: #247014.
+    - Illegal program not detected, RM 3.9(17). Closes: #247015.
+    - Legal program rejected. Closes: #247016.
+    - Legal program rejected. Closes: #247021.
+    - Illegal program not detected, RM 4.7(3). Closes: #247022.
+    - Illegal program not detected, RM 3.10.2(27). Closes: #247562.
+    - Legal program rejected, "limited type has no stream attributes".
+      Closes: #247563.
+    - Wrong output from legal program. Closes: #247565.
+    - Compiler enters infinite loop on illegal program. Closes: #247567.
+    - Illegal program not detected, RM 8.6(31). Closes: #247568.
+    - Legal program rejected, visible declaration not seen. Closes: #247572.
+    - Illegal program not detected, RM 8.2(9). Closes: #247573.
+    - Wrong output from legal program, dereferencing access all T'Class.
+      Closes: #248171.
+    - Compiler crashes on illegal program, RM 5.2(6). Closes: #248174.
+    - Cannot find generic package body, RM 1.1.3(4). Closes: #248677.
+    - Illegal program not detected, RM 3.4.1(5). Closes: #248679.
+    - Compiler ignores legal override of abstract subprogram. Closes: #248686.
+    - Bug box, Assert_Failure at sinfo.adb:2365 on illegal program.
+      Closes: #251266.
+    - Ada.Numerics.Generic_Elementary_Functions.Log erroneout with -gnatN.
+      Closes: #263498.
+    - Bug box, Assert_Failure at atree.adb:2906 or Gigi abort, code=102
+      with -gnat -gnatc. Closes: #267788.
+    - Bug box in Gigi, code=116, 'Unrestricted_Access of a protected
+      subprogram. Closes: #269775.
+    - Stack overflow on illegal program, AI-306. Closes: #276225.
+    - Illegal program not detected, RM B.1(24). Closes: #276226.
+    - Wrong code generated with -O -fPIC. Closes: #306833.
+    - Obsolete: bashism's in debian/rules file. Closes: #370681.
+    - Supports more debian architectures. Closes: #171477.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  8 Jul 2006 16:24:47 +0200
+
+gcc-4.1 (4.1.1-7) unstable; urgency=low
+
+  * Prefer gnat-4.1 over gnat-4.0 as a build dependency.
+  * libssp0: Set priority to standard.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  2 Jul 2006 10:22:50 +0000
+
+gcc-4.1 (4.1.1-6) unstable; urgency=low
+
+  [Ludovic Brenta]
+  * Do not provide the symbolic link /usr/bin/gnatgcc; this will now
+    be provided by package gnat from the source package gcc-defaults.
+  * debian/control.m4, debian/control (gnat): conflict with gnat (<< 4.1),
+    not all versions of gnat, since gcc-defaults will now provide gnat (= 4.1)
+    which depends on gnat-4.1.
+
+  [Matthias Klose]
+  * libjava: Change the default for enable_hash_synchronization_default
+    on PA-RISC. Tighten the libgcj7 shlibs version on hppa.
+  * Update to SVN 20060630.
+  * Apply proposed patch for PR 26991.
+  * Don't use the version for the libstdc++ shlibs dependency for the libgcj
+    shlibs dependency.
+  * Merge from Ubuntu edgy:
+    - Fix %g7 usage in TLS, add patch sparc-g7.dpatch, fixes glibc-2.4 build
+      failure on sparc (Fabio M. Di Nitto).
+    - Merge libssp0-dev into gcc-4.1 (-fstack-protector is a common option).
+    - Run the testsuite with -fstack-protector as well.
+
+  [Bastian Blank]
+  * Make it possible to overwrite arch per DEB_TARGET_ARCH and DEB_TARGET_GNU_TYPE.
+  * Disable biarch only on request for cross builds.
+  * Use correct source directory for tarballs.
+  * Produce correct multiarch.inc for source builds.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  1 Jul 2006 01:49:55 +0200
+
+gcc-4.1 (4.1.1-5) unstable; urgency=low
+
+  * Fix build error running with dpkg-buildpackage -rsudo.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 14 Jun 2006 01:54:13 +0200
+
+gcc-4.1 (4.1.1-4) unstable; urgency=low
+
+  * Really do not backout the fix for PR c++/26068.
+    Closes: #372152, #372559.
+  * Update fastjar version string to 4.1.
+  * Disable pascal again.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 12 Jun 2006 20:29:57 +0200
+
+gcc-4.1 (4.1.1-3) unstable; urgency=low
+
+  * Update to SVN 20060608, do not revert the fix for PR c++/26068.
+    Closes: #372152, #372559.
+  * Fix build failures for Pascal, enable Pascal on all architectures.
+  * Fix another build failure on GNU/kFreeBSD (Aurelien Jarno).
+    Closes: #370661.
+  * Fix build fauilure in gcc/p with parallel make.
+  * Remove cross-configure patch (Kazuhiro Inaoka). Closes: #370649.
+  * Only build the gcc-4.1-source package, when building from the gcc-4.1
+    source.
+  * Fix upgrade problem from standalone gcj-4.1.
+  * Fix build error using bison-2.2, build-depend on bison (>= 2.3).
+    Closes: #372605.
+  * Backport PR libstdc++/25524 from the trunk, update the biarch-include
+    patch. mips triarch support can be added more easily.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 12 Jun 2006 00:23:45 +0200
+
+gcc-4.1 (4.1.1-2) unstable; urgency=low
+
+  * Update to SVN 20060604.
+    - Fix PR c++/26757, C++ front-end producing two DECLs with the same UID.
+      Closes: #356569.
+    - Fix PR target/27158, ICE in extract_insn with -maltivec.
+      Closes: #362307.
+  * Revert PR c++/26068 to work around PR c++/27884 (Martin Michlmayr).
+    Closes: #370308.
+  * Mention Ada in copyright, update copyright file (Ludovic Brenta).
+    Closes: #366744.
+  * Fix kbsd-gnu-java.dpatch (Petr Salinger). Closes: #370320.
+  * Don't include version control files in gcc-4.1-source.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  4 Jun 2006 19:13:37 +0000
+
+gcc-4.1 (4.1.1-1) unstable; urgency=low
+
+  [Matthias Klose]
+  * Update to SVN 20060601.
+  * Reenable the gpc build.
+  * PR libgcj/26483, libffi patch for IA-64 denorms, taken from trunk.
+  * Disable Ada for m32r targets. Closes: #367595.
+  * lib32gfortran1: Do not create empty directory /usr/lib32. Closes: #367999.
+  * gcc-4.1: Add a conflict to the gcj-4.1 version with a different
+    gcc_libdir.
+  * Build gij/gcj for GNU/k*BSD. Closes: #367166.
+  * Update hurd-changes patch (Michael Banck). Closes: #369690.
+  * debian/copyright: Add exception for the gpc runtime library.
+  * Update gpc/gpc-doc package descriptions.
+
+  [Ludovic Brenta]
+  * patches/ada-libgnatprj.dpatch: add prj-pars.ad[bs] and sfn_scan.ad[bs]
+    to libgnatprj; remove them from gnatmake.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  1 Jun 2006 20:35:54 +0200
+
+gcc-4.1 (4.1.0-4) unstable; urgency=low
+
+  [Ludovic Brenta]
+  * Fix a stupid bug whereby fname.ad{b,s} would be included in both
+    libgnatvsn-dev and libgnatprj-dev, preventing use of gnatprj.gpr.
+    Closes: #366733.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 11 May 2006 04:34:50 +0200
+
+gcc-4.1 (4.1.0-3) unstable; urgency=low
+
+  * Update to SVN 20060507.
+  * debian/rules.d/binary-java.mk: Use $(lib32) everywhere. Closes: #365388.
+  * Always configure hppa64-linux-gnu with
+    --includedir=/usr/hppa64-linux-gnu/include.
+  * Make libgnatvsn4.1 and libgnatprj4.1 priority optional. Closes: #365900.
+  * Call autoconf2.13 explicitely in the Ada patches, build-depend on
+    autoconf2.13. Closes: #365780.
+  * Fix libgnatprj-dev and libgnatvsn-dev dependencies on their shared
+    libraries.
+  * Deduce softfloat and vfp (ARM) configure options (Pjotr Kourzanov).
+  * Update proposed patch for PR26885 (May 2 version).
+  * Build the libxxstdc++-dbg packages, when not building the library pacakges.
+  * Do not include the _pic library in the libxxstdc++-dbg packages.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  7 May 2006 15:29:53 +0200
+
+gcc-4.1 (4.1.0-2) unstable; urgency=medium
+
+  * Update to SVN 20060428.
+  * Apply proposed patches for PR26885.
+
+  * Keep libffi doc files in its own directory. Closes: #360466.
+  * Update ppc64 patches for 4.1 (Andreas Jochens). Closes: #360498.
+  * Fix PR tree-optimization/26763, wrong-code, taken from the 4.1 branch.
+    Closes: #356896. CVE-2006-1902.
+  * hppa-cbranch, hppa-cbranch2 patches: Fix for PR target/26743,
+    PR target/11254, PR target/10274, backport from trunk (Randolph Chung).
+  * Let libgccN provide -dcv1 when cross-compiling (Pjotr Kourzanov).
+    Closes: #363289.
+  * (Build-)depend on glibc-2.3.6-7. Closes: #360895, #361904.
+  * Fix a pedantic report about a package description. Add a hint that
+    we do not like bug reports with locales other than "C". Closes: #361409.
+  * Enable the libjava interpreter on mips/mipsel.
+  * gcc-4.1-source: Depend on gcc-4.1-base.
+  * gnat-4.1: Fix permissions of .ali files.
+  * Build lib32gcj7 on amd64.
+  * debian/patches/ada-gnatvsn.dpatch: New.  Apply proposed fix for
+    PR27194.
+
+  [Ludovic Brenta]
+  * debian/patches/ada-default-project-path.dpatch: new.  Change the
+    default search path for project files to the one specified
+    by the Debian Policy for Ada: /usr/share/ada/adainclude.
+  * debian/patches/ada-symbolic-tracebacks.dpatch: new.  Enable support for
+    symbolic tracebacks in exceptions.
+  * debian/patches/ada-missing-lib.dpatch: remove, superseded by the above.
+  * debian/patches/ada-link-lib.dpatch: changed.
+    - Instead of building libada as a target library only, build it as
+      both a host and, if different, target library.
+    - Build the GNAT tools in their top-level directory; do not use
+      recursive makefiles.
+    - Link the GNAT tools dynamically against libgnat.
+    - Apply proposed fix for PR27300.
+    - Rerun autoconf (Matthias Klose).
+  * debian/patches/ada-libgnatvsn.dpatch: new.
+    - Introduce a new shared library named libgnatvsn, containing
+      common components of GNAT under the GNAT-Modified GPL, for
+      use in GNAT tools, ASIS, GLADE and GPS.
+    - Link the gnat tools against this new library.
+    - Rerun autoconf (Matthias Klose).
+  * debian/patches/ada-libgnatprj.dpatch: new.
+    - Introduce a new shared library named libgnatprj, containing the
+      GNAT Project Manager, i.e. the parts of GNAT that parses project
+      files (*.gpr).  Licensed under pure GPL; for use in GLADE and GPS.
+    - Link the gnat tools against this new library.
+    - Rerun autoconf (Matthias Klose).
+  * debian/patches/ada-acats.dpatch: new.
+     - When running the ACATS, look for the gnat tools in their new
+       directory (build/gnattools), and for the shared libraries in
+       build/gcc/ada/rts, build/libgnatvsn and build/libgnatprj.
+  * debian/gnatvsn.gpr, debian/gnatprj.gpr: new.
+  * debian/rules.d/binary-ada.mk, debian/control.m4: new binary packages:
+    libgnatvsn-dev, libgnatvsn4.1, libgnatprj-dev, libgnatprj4.1. Place
+    the *.gpr files in their respective -dev packages.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 29 Apr 2006 00:32:09 +0200
+
+gcc-4.1 (4.1.0-1) unstable; urgency=low
+
+  * libstdc++CXX-BV-dev.preinst: Remove (handling of c++ include dir for 4.0).
+  * libgcj-common: Move removal of docdir from preinst into postinst.
+  * libgcj7: Move removal of docdir from preinst into postinst.
+  * Drop alternative build dependency on gnat-3.4, not built anymore.
+  * Fix PR libgcj/26103, wrong exception thrown (4.1 branch).
+  * debian/patches/libjava-stacktrace.dpatch: Add support to print file names
+    and line numbers in stacktraces.
+  * Add debugging symbols for libgcjawt and lib-gnu-java-awt-peer-gtk
+    in the libgcj7-dbg and lib32gcj7-dbg packages.
+  * Remove dependency of the libgcj-dbg packages on the libgcj-dev packages,
+    add recommendations on binutils and libgcj-dev. Mention the requirement
+    of binutils for the stacktraces.
+  * Fix upgrade from version 4.0.2-9, loosing the Debian changelog.
+    Closes: #355439.
+  * gij/gcj: Install one alternative for each command, do not use slave
+    links for rmiregistry, javah, rmic. Ubuntu #26781. Closes: #342557.
+  * Fix for PR tree-optimization/26587, taken from the 4.1 branch.
+  * Fix PR libstdc++/26526 (link failure when _GLIBCXX_DEBUG is defined).
+  * Configure with --enable-clocale=gnu, even if not building C++ packages.
+  * Remove runtime path from biarch libraries as well.
+  * PR middle-end/26557 (ice-on-vaild-code, regression), taken from
+    the gcc-4_1-branch. Closes: #349083.
+  * PR tree-optimization/26672 (ice-on-vaild-code, regression), taken from
+    the gcc-4_1-branch. Closes: #356231.
+  * PR middle-end/26004 (rejects-vaild-code, regression), taken from
+    the gcc-4_1-branch.
+  * When building as standalone gcj, build libgcc4 (hppa only) and fastjar.
+  * Configure --with-cpu=v8 on sparc.
+  * debian/patches/libjava-hppa.dpatch: pa/pa32-linux.h
+    (CRT_CALL_STATIC_FUNCTION): Define when CRTSTUFFS_O is defined.
+    (John David Anglin). Closes: #353346.
+  * Point to the 4.1 version of README.Bugs (closes: #356230).
+  * Disable the libmudflap testsuite on alpha (getting killed).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 18 Mar 2006 23:00:39 +0100
+
+gcc-4.1 (4.1.0-0) experimental; urgency=low
+
+  * GCC 4.1.0 final release.
+  * Build the packages for the Java language from a separate source.
+  * Update NEWS.html, NEWS.gcc.
+  * libgcj-doc: Auto generated API documentation for libgcj7, classpath
+    example programs.
+  * Add gjdoc to Build-Depends-Indep.
+  * On amd64, build-depend on libc6-dev-i386 instead of ia32-libs-dev.
+  * Internal ssp headers now installed in the gcc libdir.
+  * Do not build gcj-4.1-base when building the gcc-4.1 packages.
+  * When building as gcj-4.1, use the tarball from the gcc-4.1-source
+    package.
+
+  [Ludovic Brenta]
+  * Allow to enable and disable NLS and bootstrapping from the environment.
+    - Adding "nls" to WITHOUT_LANG disables NLS support.
+    - If WITH_BOOTSTRAP is set, debian/rules2 calls configure
+      --enable-bootstrap=$(WITH_BOOTSTRAP) and just "make".  If
+      WITH_BOOTSTRAP is unset, it calls configure without a bootstrapping
+      option and calls "make profiledbootstrap" or "make bootstrap-lean"
+      depending on the target CPU.
+      Currently overwritten to default to "bootstrap".
+
+ -- Matthias Klose <doko@debian.org>  Thu,  2 Mar 2006 00:03:45 +0100
+
+gcc-4.1 (4.1ds9-0exp9) experimental; urgency=low
+
+  * Update to GCC 4.1.0 release candidate 1 (gcc-4.1.0-20060219 tarball).
+  * Update gcc-version patch for gcc-4.1.
+  * libgccN, libstdc++N*: Fix upgrade of /usr/share/doc symlinks.
+  * libjava awt & swing update, taken from trunk 2006-02-16.
+  * libgcj7-dev: Suggest libgcj-doc, built from a separate source package.
+  * Shorten build-dependency line (work around buildd problems
+    on arm* and mips*).
+  * New patch gcc-ice-hack (saving the preprocessed source on an ICE),
+    taken from Fedora.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 20 Feb 2006 10:07:23 +0100
+
+gcc-4.1 (4.1ds8-0exp8) experimental; urgency=low
+
+  * Update to SVN 20060212, taken from the 4.1 release branch.
+  * libgccN: Fix upgrade of /usr/share/doc/libgccN symlink.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 12 Feb 2006 19:48:31 +0000
+
+gcc-4.1 (4.1ds7-0exp7) experimental; urgency=low
+
+  * Update to SVN 20060127, taken from the 4.1 release branch.
+    - On hppa, bump the libgcc soversion to 4.
+  * Add an option not to depend on the system -base package for cross compiler
+    (Ian Wienand). Closes: #347484.
+  * Remove workaround increasing the stack size limit for some architectures,
+    not needed anymore on ia64.
+  * On amd64, build-depend on libc6-dev-i386, depend on libc6-i386, where
+    available.
+  * libstdc++6: Properly upgrade the doc directory. Closes: #346171.
+  * libstdc++6: Add a conflict to scim (<< 1.4.2-1). Closes: #343313.
+  * Set default 32bit ix86 architecture to i486.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 27 Jan 2006 22:23:22 +0100
+
+gcc-4.1 (4.1ds6-0ubuntu6) experimental; urgency=low
+
+  * Update to SVN 20060107, taken from the 4.1 release branch.
+    - Remove fix for PR ada/22533, fixed by patch for PR c++/23171.
+  * Remove binary packages from the control file, which aren't built
+    yet on any architecture.
+  * gcc-hppa64: Use /usr/hppa64-linux-gnu/include as location for the glibc
+    headers, tighten glibc (build-)dependency.
+  * libffi [arm]: Add support for closures, libjava [arm]: enable the gij
+    interpreter (Phil Blundell). Addresses: #337263.
+  * For the gcj standalone build, include cc1 into the gcj-4.1 package,
+    needed for linking java programs compiled to native code.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  7 Jan 2006 03:36:33 +0100
+
+gcc-4.1 (4.1ds4-0exp4) experimental; urgency=low
+
+  * Update to SVN 20051210, taken from the 4.1 release branch.
+  * Prepare to build the java packages from it's own source (merged
+    from Ubuntu).
+    - Build the java packages from the gcc-4.1 source, as long as packages
+      are prepared for experimental.
+    - When built as gcj, run only the libjava testsuite, don't build the
+      libstdc++ debug packages, don't package the gcc source.
+    - Loosen package dependencies, when java packages are built from
+      separate sources.
+    - Fix gcj hppa build, when java packages are built from separate sources.
+    - gij-4.1: Install test-summary, when doing separate builds.
+    - Allow java packages be installed independent from other packages built
+      from the source package.
+    - Rename libgcj7-common to libgcj7-jar.
+    - Introduce a gcj-4.1-base package to completely separate the two and not
+      duplicate the changelog in each gcj/gij package.
+  * Java related changes:
+    - libjava-xml-transform: Update from classpath trunk, needed for
+      eclipse (Michael Koch), applied upstream.
+    - Fix java wrapper scripts to point to 4.1 (closes: #341710).
+    - Reenable java on mips and mipsel.
+    - Fix libgcj6 dependency. Ubuntu #19935.
+    - Add libxt-dev as a java build dependency. autoconf explicitely checks
+      for X11/Intrinsic.h.
+  * Ada related changes:
+    - Apply proposed fix for PR ada/22533, reenable ada on alpha, powerpc,
+      mips, mipsel and s390.
+    - Add Ada support for GNU/kFreeBSD (Aurelien Jarno). Closes: #341356.
+    - Remove ada bootstrap workaround for alpha.
+  * Build a separate gcc-4.1-source package (Bastian Blank). Closes: #333922.
+  * Remove obsolete patch: libstdc++-automake.
+  * Remove patch integrated upstream: libffi-mips.
+  * Fix the installation of the hppa64 compiler in snapshot builds.
+  * Rename libgfortran0* to libgfortran1* (upstream soversion change).
+  * Add a dependency on libc-dev for all compilers / -dev packages except
+    gcc (which can be used for kernel builds without libc-dev).
+  * libffi4-dev: Fix package description.
+  * On amd64, install 32bit libraries into /emul/ia32-linux/usr/lib.
+    Addresses: #341147.
+  * Fix installation of biarch libstdc++ headers on amd64.
+  * Configure --with-tune=i686 on ix86 architectures (on Ubuntu with
+    -mtune=pentium4). Remove the cpu-default-* patches.
+  * debian/control.m4: Fix libxxgcc package names.
+  * Update the build infrastructure to build cross compilers
+    (Nikita V. Youshchenko).
+  * Tighten binutils (build-)dependency. Closes: #342484.
+  * Symlink more doc directories.
+  * debian/control.m4: Explicitely set Architecture for biarch packages.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 10 Dec 2005 16:56:45 +0100
+
+gcc-4.1 (4.1ds1-0ubuntu1) UNRELEASED; urgency=low
+
+  * Build Java packages only.
+  * Update to SVN 20051121, taken from the 4.1 release branch.
+    - Remove libjava-saxdriver-fix patch, applied upstream.
+    - Remove ada-gnat-version patch, applied upstream.
+  * Fix FTBFS in biarch builds on 32bit kernels.
+  * Update libstdc++-doc doc-base file (closes: #339046).
+  * Remove obsolete patch: gcc-alpha-ada_fix.
+  * Fix installation of biarch libstdc++ headers (Ubuntu #19655).
+  * Fix sparc and s390 biarch patches to build the 64bit libffi.
+  * Work around biarch build failure in libjava/classpath/native/jni/midi-alsa.
+  * Install spe.h header on powerpc.
+  * Add libasound build dependencies.
+  * libgcj: Fix installation of libgjsmalsa library.
+  * Remove patches not used anymore: libjava-no-rpath, i386-config-ml-nomf,
+    libobjc, multiarch-include, disable-biarch-check-mf, gpc-profiled,
+    gpc-no-gpidump, libgpc-shared, acats-expect.
+  * Fix references to manuals in gnat(1). Ubuntu #19772.
+  * Remove build dependency on xlibs-dev, add libxtst-dev.
+  * Do not configure with --disable-werror.
+  * Merge *-config-ml patches into one config-ml patch, configure the biarch
+    libs in debian/rules.defs.
+  * debian/gcj-wrapper: Accept -Xss.
+  * Do not build biarch java on Debian (missing biarch libasound).
+  * Do not build the java packages from this source package, avoiding
+    dependencies on X.
+
+ -- Matthias Klose <doko@ubuntu.com>  Mon, 21 Nov 2005 20:29:43 +0100
+
+gcc-4.1 (4.1ds0-0exp0) experimental; urgency=low
+
+  * Configure libstdc++ using the default allocator.
+  * Update to 20051112, taken from the svn trunk.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 12 Nov 2005 23:47:01 +0100
+
+gcc-4.1 (4.1ds0-0ubuntu0) breezy; urgency=low
+
+  * UNRELEASED
+  * First snapshot of gcc-4.1 (CVS 20051019).
+    - adds SSP support (closes: #213994, #233208).
+  * Remove patches applied upstream/not needed anymore.
+  * Update patches for 4.1: link-libs, gcc-textdomain, libjava-dlsearch-path,
+    rename-info-files, reporting, classmap-path, i386-biarch, sparc-biarch,
+    libjava-biarch-awt, ada-gcc-name.
+  * Disable patches:
+    - 323016, m68k, necessary for 4.1?
+  * debian/copyright: Update for 4.1.
+  * debian/control, debian/control.m4, debian/rules.defs, debian/rules.conf:
+    Update for 4.1, add support for Obj-C++ and SSP.
+  * Fix generation of Ada docs in info format.
+  * Set Ada library version to 4.1.
+  * Drop gnat-3.3 as an alternative build dependency.
+  * Use fortran instead of f95 for the build files.
+  * Update build support for awt peer libs.
+  * Add packaging support for SSP library.
+  * Add packaging support for Obj-C++.
+  * Run the testsuite for -march=i686 on i386 and amd64 as well.
+  * Fix generation of Pascal docs in html format.
+  * Update config-ml patches to build libssp biarch.
+  * Disable libssp for hppa64 build.
+  * libgcj7-dev: Install jni_md.h.
+  * Disable gnat for powerpc, currently fails to build.
+  * Add biarch runtime lib packages for ssp, mudflap, ffi.
+  * Do not explicitely configure with --enable-java-gc=boehm, which is the
+    default.
+  * libjava-saxdriver-fix: Fix a problem in the Aelfred2 SAX parser.
+  * libstdc++6-4.0-dev: Depend on the libc-dev package. Ubuntu #18885.
+  * Build-depend on expect-tcl8.3 on all architectures.
+  * Build-depend on lib32z1-dev on amd64 and ppc64, drop build dependency on
+    amd64-libs.
+  * Disable ada on alpha mips mipsel powerpc s390, currently broken.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 19 Oct 2005 11:02:31 +0200
+
+gcc-4.0 (4.0.2-3) unstable; urgency=low
+
+  * Update to CVS 20051015, taken from the gcc-4_0-branch.
+    - gcc man page fixes (closes: #327254, #330099).
+    - PR java/19870, PR java/20338, PR java/21844, PR java/21540:
+      Remove Debian patches.
+    - Applied libjava-echo-fix patch.
+    - Fix PR target/24284, ICE (Segmentation fault) on sparc-linux.
+      Closes: #329840.
+    - Fix PR c++/23797, ICE on typename outside template. Closes: #325545.
+    - Fix PR c++/22551, ICE in tree_low_cst. Closes: #318932.
+  * libstdc++6: Tighten libstdc++ shlibs version to 4.0.2-3 (new symbol).
+  * Update generated Ada files.
+  * Fix logic to disable mudflap and Obj-C++ via the environment.
+  * Remove f77 build bits.
+  * gij-4.0: Remove /var/lib/gcj-4.0/classmap.db on purge (closes: #330800).
+  * Let gcj-4.0 depend on libgcj6-dev, instead of recommending it. This is
+    not necessary for byte-code compilations, but for compilations to native
+    code. For compilations to byte-code, use a better compiler like ecj
+    for now (found in the ecj-bootstrap package).
+  * Disable biarch setup in cross compilers (Josh Triplett). Closes: #333952.
+  * Fix with_libnof logic for cross-compilations (Josh Triplett).
+    Closes: #333951.
+  * Depend on binutils (>= 2.16.1cvs20050902-1) on the alpha architecture.
+    Closes: #333954.
+  * On i386, build-depend on libc6-dev-amd64. Closes: #329108.
+  * (Build-)depend on glibc 2.3.5-5.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  2 Oct 2005 14:25:54 +0200
+
+gcc-4.0 (4.0.2-2) unstable; urgency=low
+
+  * Update to CVS 20051001, taken from the gcc-4_0-branch. Includes the
+    changes between 4.0.2 RC3 and the final 4.0.2 release, missing from
+    the upstream tarball. Remove patches applied upstream (gcc-c-decl,
+    pr23182, pr23043, pr23367, pr23891, pr21418, pr24018).
+  * On ix86 architectures run the testsuite for -march=i686 as well.
+  * Build libffi on the Hurd (closes: #328705).
+  * Add big-endian arm (armeb) support (Lennert Buytenhek). Closes: #330730.
+  * Update libjava xml to classpath CVS HEAD 20050930 (Michael Koch).
+  * Reapply patch to make -mieee the default on alpha-linux. Closes: #330826.
+  * Add workaround not to make libmudflap _start/_end not small data on
+    mips/mipsel, taken from CVS HEAD.
+  * Don't build the nof libraries on powerpc.
+  * Number crunching time on m68k, reenable gfortran on m68k-linux-gnu.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  1 Oct 2005 15:42:10 +0200
+
+gcc-4.0 (4.0.2-1) unstable; urgency=low
+
+  * GCC 4.0.2 release.
+  * lib64stdc++6: Set priority to optional.
+  * Fix bug in StreamSerializer, seen with eclipse-3.1 (Ubuntu 12744).
+    Backport from CVS HEAD, Michael Koch.
+  * Apply java patches, proposed for the 4.0 branch: PR java/24018,
+    PR libgcj/23182, PR java/19870, PR java/21844, PR libgcj/23367,
+    PR java/20338.
+  * Update the expect/pty test to actually call expect directly, rather
+    than test for the existence of PTYs, since a working expect is what
+    we really care about, not random device files (Adam Conrad).
+    Closes: #329715.
+  * Add build dependencies on lib64z1-dev.
+  * gcc-c-decl.dpatch: Fix C global decl handling regression in 4.0.2 from
+    4.0.1
+
+ -- Matthias Klose <doko@debian.org>  Thu, 29 Sep 2005 19:50:08 +0200
+
+gcc-4.0 (4.0.1-9) unstable; urgency=low
+
+  * Update to CVS 20050922, taken from the gcc-4_0-branch (4.0.2 RC3).
+  * Apply patches:
+    - Fix PR java/21418: Order of source files matters when compiling,
+      backported from mainline.
+    - Fix for PR 23043, backported form mainline.
+    - Proposed patch for #323016 (m68k only). Patch by Roman Zippel.
+  * libstdc++6: Tighten libstdc++ shlibs version to 4.0.1-9 (new symbol).
+  * Fail the build early, if the system doesn't have any pty devices
+    created in /dev. Needed for running the testsuite.
+  * Update hurd changes again (closes: #328973).
+
+ -- Matthias Klose <doko@debian.org>  Thu, 22 Sep 2005 07:28:18 +0200
+
+gcc-4.0 (4.0.1-8) unstable; urgency=medium
+
+  * Update to CVS 20050917, taken from the gcc-4_0-branch.
+    - Fix FTBFS for boost, introduced in 4.0.1-7 (closes: #328684).
+  * Fix PR java/23891, eclipse bootstrap.
+  * Set priority of gcc-4.0-hppa64 package to standard.
+  * Bump standards version to 3.6.2.
+  * Fix java wrapper script, mishandles command line options with arguments.
+    Patch from Olly Betts. Closes: #296456.
+  * Bump epoch of the lib32gcc1 package to the same epoch as for the the
+    libgcc1 and lib64gcc1 packages.
+  * Fix some lintian warnings.
+  * Build libffi on the Hurd (closes: #328705).
+  * For biarch builds, disable the testsuite for the non-default architecture
+    for runtime libraries, which are not built by default (libjava).
+  * Add gsfonts-x11 to Build-Depends-Indep to avoid warnings from doxygen.
+  * Install Ada .ali files read-only.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 17 Sep 2005 10:35:23 +0200
+
+gcc-4.0 (4.0.1-7) unstable; urgency=low
+
+  * Update to CVS 20050913, taken from the gcc-4_0-branch.
+    - Fix PR c++/19004, ICE in uses_template_parms (closes: #284777).
+    - Fix PR rtl-optimization/23454, ICE in invert_exp_1 on sparc.
+      Closes: #321215.
+    - Fix PR libstdc++/23417, make bits/stl_{list,tree}.h -Weffc++ clean.
+      Closes: ##322170.
+  * Install 'altivec.h' on ppc64 (closes: #323945).
+  * Install locale data with the versioned package name (closes: #321591).
+  * Fix fastjar build without building libjava.
+  * On hppa, don't build using gcc-3.3 when ada is disabled.
+  * On m68k, don't build the stage1 compiler using -O.
+
+  * Ludovic Brenta <ludovic@ludovic-brenta.org>
+    - Allow the choice whether or not to build with NLS.
+    - Fix a typo whereby libffi was always enabled on i386.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 13 Sep 2005 23:23:11 +0200
+
+gcc-4.0 (4.0.1-6) unstable; urgency=low
+
+  * Update to CVS 20050821, taken from the gcc-4_0-branch.
+    - debian/patches/pr21562.dpatch: Removed, applied upstream.
+    - debian/patches/libjava-awt-name.dpatch: Updated.
+    - debian/patches/classpath-20050618.dpatch: Updated.
+  * Use all available CPU's for the check target, unless USE_NJOBS == no.
+  * debian/patches/biarch-include.dpatch: Include
+    /usr/local/include/<arch>-linux-gnu before including /usr/local/include.
+  * Fix biarch system include directories for the non-default architecture.
+  * Prefer gnat-4.0 over gnat-3.4 over gnat-3.3 as a build-dependency.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 18 Aug 2005 18:36:23 +0200
+
+gcc-4.0 (4.0.1-5) unstable; urgency=low
+
+  * Update to CVS 20050816, taken from the gcc-4_0-branch.
+    - Fix PR middle-end/23369, wrong code generation for funcptr comparison
+      on hppa. Closes: #321785.
+    - Fix PR fortran/23368 ICE with NAG routines (closes: #322912).
+  * Build-depend on libcairo2-dev (they say, that's the final package name ...)
+  * libgcj: Search /usr/lib/gcj-4.0 for dlopened libraries, place a copy
+    of the .la files in the libgcj6 package into this directory.
+    Closes: #322576.
+  * Tighten the dependencies between the compiler packages to the same
+    version and release. Use some substitution variables for control file
+    generation.
+  * Remove build dependencies for gpc.
+  * Don't use '/emul/ia32-linux' on ppc64 (closes: #322890).
+  * Synchronize with Ubuntu.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 16 Aug 2005 22:45:47 +0200
+
+gcc-4.0 (4.0.1-4ubuntu1) breezy; urgency=low
+
+  * Jeff Bailey <jbailey@ubuntu.com>
+
+    Enable i386 biarch using biarch glibc (not yet enabled for unstable).
+    - debian/rules.d/binary-libgcc.mk: Make i386 lib64gcc1 depend on
+      libc6-amd64
+    - debian/control.m4: Suggest libc6-amd64 rather than amd64-libs.
+    - debian/rules.conf: Build-Dep on libc6-dev-amd64 [i386]
+      Build-Dep on binutils >= 2.16.1-2ubuntu3
+    - debian/rules2: Enable biarch build in Ubuntu.
+
+  * Matthias Klose <doko@ubuntu.com>
+
+    - Add shlibs file and dependency information for the lib32gcc1 package.
+    - debian/patches/gcc-textdomain.dpatch: Update (closes: #321591).
+    - Set priority of gcc-4.0-base and libstdc++6 packages to `required'.
+      Closes: #321016.
+    - libffi-hppa.dpatch: Remove, applied upstream.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  8 Aug 2005 19:39:02 +0200
+
+gcc-4.0 (4.0.1-4) unstable; urgency=low
+
+  * Enable the biarch compiler for powerpc (closes: #268023).
+  * Update to CVS 20050806, taken from the gcc-4_0-branch.
+  * Build depend on libcairo0.6.0-dev (closes: #321540).
+  * Fix Ada build on the hurd (closes: #321350).
+  * Update libffi for mips (Thiemo Seufer). Closes: #321100.
+  * Fix segfault on 64bit archs in the AWT Gtk peer library (Dan Frazier).
+    Closes: #320915.
+  * Add libXXgcc1 build dependencies for biarch builds.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  7 Aug 2005 07:01:59 +0000
+
+gcc-4.0 (4.0.1-3) unstable; urgency=medium
+
+  * Update to CVS 20050725, taken from the gcc-4_0-branch.
+    - Fix ICE with -O and -mno-ieee-fp/-ffast-math (closes: #319087).
+  * Synchronize with Ubuntu.
+  * Fix applying hurd specific patches for the hurd build (closes: #318443).
+  * Do not build-depend on libmpfr-dev on architectures, where fortran
+    is not built.
+  * Apply biarch include patch on ppc64 as well (closes: #318603).
+  * Correct libstdc++-dev package description (closes: #319082).
+  * debian/rules.defs: Replace DEB_TARGET_GNU_CPU with DEB_TARGET_ARCH_CPU.
+  * gcc-4.0-hppa64: Rename hppa64-linux-gcc to hppa64-linux-gnu-gcc.
+    Closes: #319818.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 25 Jul 2005 10:43:06 +0200
+
+gcc-4.0 (4.0.1-2ubuntu3) breezy; urgency=low
+
+  * Update to CVS 20050720, taken from the gcc-4_0-branch.
+    - Fix PR22278, volatile issues, seen when building xorg.
+  * Build against new libcairo1-dev (0.5.2).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Jul 2005 12:29:50 +0200
+
+gcc-4.0 (4.0.1-2ubuntu2) breezy; urgency=low
+
+  * Acknowledge that i386 biarch builds still need to be fixed for glibc-2.3.5.
+
+ -- Matthias Klose <doko@ubuntu.com>  Tue, 19 Jul 2005 08:29:30 +0000
+
+gcc-4.0 (4.0.1-2ubuntu1) breezy; urgency=low
+
+  * Synchronize with Debian.
+  * Update to CVS 20050718, taken from the gcc-4_0-branch.
+    - Fix PR c++/22132 (closes: #318488), upcasting a const class pointer
+      to struct the class derives from generates wrong code.
+  * Build biarch runtime libraries for Fortran and ObjC.
+  * Apply proposed patch for PR22309 (crash with mt_allocator if libstdc++
+    is dlclosed). Closes: #293466.
+
+ -- Matthias Klose <doko@ubuntu.com>  Mon, 18 Jul 2005 17:10:18 +0200
+
+gcc-4.0 (4.0.1-2) unstable; urgency=low
+
+  * Don't apply the patch to make -mieee the default on alpha-linux-gnu.
+    Causes the bootstrap to fail on alpha-linux-gnu.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Jul 2005 00:14:12 +0200
+
+gcc-4.0 (4.0.1-1) unstable; urgency=high
+
+  * GCC 4.0.1 final release.  See /usr/share/doc/gcc-4.0/NEWS.{gcc,html}.
+  * Build fastjar on mips/mipsel, fix fastjar build without building java.
+  * Disable the comparision check on unstable/ia64. adaint.o differs,
+    currently cannot be reproduced with glibc-2.3.5 and binutils-2.16.1.
+  * libffi/hppa: Fix handling of 3 and 5-7 byte struct returns.
+  * amd64: Fix libgcc symlinks to point to /usr/lib32, instead of /lib32.
+  * On powerpc, don't build with -j >1, apparently doesn't succeeds
+    on the Debian buildd.
+  * Apply revised patch to make -mieee the default on alpha-linux,
+    and add -mieee-disable switch to turn the default off (Tyson Whitehead).
+  * Disable multiarch-includes; redo biarch-includes to include the paths
+    for the non-default biarch, when called with -m32/-m64.
+  * Move new java headers from libstdc++-dev to libgcj-dev, add replaces
+    line.
+  * Update classpath patch to work with cairo-0.5.1. Patch provided by
+    Michael Koch.
+  * Further classpath updates for gnu.xml and javax.swing.text.html.
+    Patch provided by Michael Koch.
+  * Require binutils (>= 2.16.1) as a build dependency and a dependency.
+  * On i386, require amd64-libs-dev (>= 1.2).
+  * Update debian/NEWS.{html,gcc}.
+
+  * Closing bug reports reported against older gcc versions (some of them
+    still present in Debian, but not anymore as the default compiler).
+    Usually, forwarded bug reports are linked to
+        http://gcc.gnu.org/PR<upstream bug number>
+    The upstream bug number usually can be found in the Debian reports.
+
+  * Closed reports reported against gcc-3.3 and fixed in gcc-3.4:
+    - General:
+      + PR rtl-optimization/2960: Duplicate loop conditions even with -Os
+        Closes: #94701.
+      + PR optimization/3995: i386 optimisation: joining tests.
+        Closes: #105309.
+      + PR rtl-optimization/11635: Unnecessary store onto stack, more
+        curefully expand union cast (closes: #202016).
+      + PR target/7618: vararg disallowed in virtual function. Closes: #205404.
+      + Large array problem on 64 bit platforms (closes: #209152).
+      + Mark more strings as translatable (closes: #227129).
+      + PR gcc/14711: ICE when compiling a huge source file Closes: #234711.
+      + Better code generation for if(!p) return NULL;return p;
+        Closes: #242318.
+      + PR rtl-optimization/16152: Perl ftbfs on {ia64,arm,m68k}-linux.
+        Closes: #255801.
+      + ICE (segfault) while compiling Linux 2.6.9 (closes: #277206).
+      + Link error building memtest (closes: #281445).
+    - Ada:
+      + PR ada/12450: Constraint error for valid input (closes: #210844).
+      + PR ada/13620: miscompilation of array initializer with
+        -O3 -fprofile-arcs. Closes: #226244.
+    - C:
+      + PR c/6897: Code produced with -fPIC reserves EBX, but compiles
+        bad __asm__ anyway (closes: #73065).
+      + PR c/9209: On i386, gcc-3.0 allows $ in indentifiers but not the asm.
+        Closes: #121282.
+      + PR c/11943: Accepts invalid declaration "int x[2, 3];" in C99 mode.
+        Closes: #177303.
+      + PR c/11942: restrict keyword broken in C99 mode. Closes: #187091.
+      + PR other/11370: -Wunreachable-code gives false complaints.
+        Closes: #196600.
+      + PR c/11369: Too relaxed checking with -Wstrict-prototypes.
+        Closes: #197504.
+      + PR c/11445: False positive warning with -Wunreachable-code.
+        Closes: #200140.
+      + PR c/11459: -stdc=c90 -pedantic warns about C90's non long-long
+         support when in C99 mode. Closes: #200392.
+      + PR c/456: Handling of constant expressions. Closes: #225935.
+      + ICE on invalid #define with -traditional (closes: #242916).
+      + No warning when initializing a variable with itself, new option
+        -Winit-self (closes: #293957).
+    - C++:
+      + C++ parse error (closes: #42946).
+      + PR libstdc++/9073: Replacement for __STL_ASSERTIONS (libstdc++v3
+        debug mode). Closes: #128993.
+      + Parse errors in nested constructor calls (closes: #138561).
+      + PR optimization/1823: -ftrapv aborts with pointer difference due to
+        division optimization. Closes: #169862.
+      + ICE on invalid code (closes: #176101).
+      + PR c++/10199: ICE handling method parametrized by template.
+        Closes: #185604.
+      + High memory usage building packages OpenOffice.org and MythTV.
+        Closes: #194345, #194513.
+      + Improved documentation of std::lower_bound (closes: #196380).
+      + ICE in regenerate_decl_from_template (closes: #197674).
+      + PR c++/11444: Function fails to propagate up class tree
+        (template-related).  Closes: #198042.
+      + ICE when using namespaced typedef of primitive type as struct.
+        Closes: #198261.
+      + Bug using streambuf / iostream to read from a named pipe.
+        Closes: #216105.
+      + PR c++/11437: ICE in lookup_name_real (closes: #200011).
+      + Add large file support (LFS) in libstdc++ (closes: #220000).
+      + PR c++/13621: ICE compiling a statement expression returning type
+        string (closes: #224413).
+      + g++ doesn't find inherited inner class after template instantiation.
+        Closes: #227518.
+      + PR libstdc++/13928: Add whatis info in man pages generated by doxygen.
+        Closes: #229642.
+      + Missing symbol _M_setstate in libstdc++ (closes: #232709).
+      + Unable to parse declaration of inline constructor explicit
+        specialization (closes: #234709).
+      + ICE (segfault) on invalid C++ code (closes: #246031).
+      + ICE in lookup_tempate_function (closes: #262441).
+      + Undefined symbols in libstdc++, when using specials char_traits.
+        Closes: #266110.
+      + PR libstdc++/16011: Outputting numbers with ostream in the locale fr_BE
+        causes infinite recursion (closes: #270795).
+      + ICE in tree_low_cst (closes: #276291).
+      + ICE in in expand_call (closes: #283503).
+      + typeof operator is misparsed in a template function (closes: #288555).
+      + ICE in tree_low_cs (closes: #291374).
+      + Improve uninformative error messages (closes: #292961, #293076).
+      + ICE on array initialization (closes: #294560).
+      + Failure to build xine-lib with -finline-functions (closes: #306854).
+    - Java:
+      + Fix error finding files in subdirectories (closes: #195480).
+      + Implement java.text.CollationElementIterator lacks getOffset().
+        Closes: #259789.
+    - Treelang:
+      + Pointer truncation on 64bit architectures (closes: #308367).
+    - Architecture specific:
+      - alpha
+        + PR debug/10695: ICE on alpha while building agistudio.
+          Closes: #192568.
+        + ICE when building fceu (closes: #228018, #252764).
+      - amd64
+        + Miscompilation of Objective-C code (closes: #250174).
+        + g++ hangs compiling k3d on amd64 (closes: #285364).
+      - arm
+        + PR target/19008: gcc -O3 -fPIC produces wrong code via auto inlining.
+          Closes: #285238.
+      - i386
+        + PR target/4106: i386 -fPIC asm ebx clobber no error.
+          Closes: #153472.
+        + PR target/10984: x86/sse2 ICEs on vector intrinsics. Closes: #166940.
+        + Wrong code generation on at least ix86 (closes: #275655).
+      - m68k
+        + PR target/9201: ICE compiling octave-2.1 (closes: #175478).
+        + ICE in verify_initial_elim_offsets (closes: #204407, #257012).
+        + g77 generates invalid assembly code (closes: #225621).
+        + ICE in verify_local_live_at_start (closes #245584).
+      - powerpc
+        + PR optimization/12828: -floop-optimize is unstable on PowerPC (float
+          to int conversion problem). Closes: #218219.
+        + PR target/13619: ICE building altivec code in ffmpeg.
+          Closes: #226148.
+        + PR target/20046: Miscompilation of bind 9.3.0. Closes: #292958.
+      - sparc
+        + ICE (segfault) while building atlas3 on sparc32 (closes: #249108).
+        + Wrong optimization on sparc32 when building linux kernel.
+          Closes: #254626.
+
+  * Closed reports reported against gcc-3.3 or gcc-3.4 and fixed in gcc-4.0:
+    - General:
+      + PR rtl-optimization/6901: Optimizer improvement (removing unused
+        local variables). Closes: #67206.
+      + PR middle-end/179: Failure to detect use of unitialized variable
+        with -O -Wall. Closes: #117765.
+      + ICE building glibc's nptl on amd64 (closes: #260710, #307993).
+      + PR middle-end/17827: ICE in make_decl_rtl. Closes: #270854.
+      + PR middle-end/21709: ICE on compile-time complex NaN. Closes: #305344.
+    - Ada:
+      + PR ada/10889: Convention Fortran matrices mishandled in generics.
+        Closes: #192135.
+      + PR ada/13897: Implement tasking on powerpc. Closes: #225346.
+    - C:
+      + PR c/13072: Bogus warning with VLA in switch. Closes: #218803.
+      + PR c/13519: typeof(nonconst+const) is const. Closes: #208981.
+      + PR c/12867: Incorrect warning message (void format, should be void*
+        format). Closes: #217360.
+      + PR c/16066: PR 16066] i386 loop strength reduction bug.
+        Closes: #254659.
+    - C++:
+      + PR c++/13518: -Wnon-virtual-dtor doesn't always work. Closes: #212260.
+      + PR translation/16025: ICE with unsupported locale(closes: #242158).
+      + PR c++/15125: -Wformat doesn't warn for different types in fprintf.
+        Closes: #243507.
+      + PR c++/15214: Warn only if the dtor is non-private or the class has
+        friends. (closes: #246639).
+      + PR libstdc++/17218: Unknown subjects in generated libstdc++ manpages.
+        Closes: #262934.
+      + PR libstdc++/17223: Missing .so references in generated libstdc++
+        manpages. Closes: #262956.
+      + libstdc++-doc: Improve man pages (closes: #280910).
+      + PR c++/19006: ICE in tree_low_cst. Closes: #285692.
+      + g++ does not check arguments to fprintf. Closes: #281847.
+    - Java:
+      + PR java/7304: gcj ICE (closes: #152501).
+      + PR libgcj/7305: Installation of headers not directly in /usr/include.
+        Closes: #195483.
+      + PR libgcj/11941: libgcj timezone handling (closes: #203212).
+      + PR java/14709: gcj fails to wait for its child processes on exec().
+        Closes: #238432.
+      + PR libgcj/21703: gcj hangs when rapidly calling String.intern().
+        Closes: #275547.
+      + SocketChannel.get(ByteBuffer) returns 0 at EOF. Closes: #281602.
+      + PR java/19711: gcj segfaults instead of reporting the ambiguous
+        expression. Closes: #286715.
+      + Static libgcj contains repeated archive members (closes: #298263).
+    - Architecture specific:
+      - alpha
+        + Unaligned accesses with ?-operator (closes: #301983).
+      - arm
+        + Compilation error of glibc-2.3.4 on arm (closes: #298508).
+      - m68k
+        + ICE in add_insn_before (closes: #248432).
+      - mips
+        + Fix o32 ABI breakage in gcc 3.3/3.4 (closes: #270620).
+      - powerpc
+        + ICE in extract_insn (closes: #311128).
+
+  * Closing bug reports as wontfix:
+    - g++ defines _GNU_SOURCE when using the libstdc++ header files.
+      Behaviour did change since 3.0. Closes: #126703, #164872.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  9 Jul 2005 17:10:54 +0000
+
+gcc-4.0 (4.0.0ds2-12) unstable; urgency=high
+
+  * Update to CVS 20050701, taken from the gcc-4_0-branch.
+  * Apply proposed patch for MMAP configure fix; aka PR 19877. Backport
+    from mainline.
+  * Disable Fortran on m68k. Currently FTBFS.
+  * Split multiarch-include/lib patches. Update multiarch-include patch.
+  * Fix FTBFS of the hppa64-linux cross compiler. Don't add the
+    multiarch include dirs when cross compiling.
+  * Configure --with-java-home, as used by java-gcj-compat.
+    Closes: #315646.
+  * Make libgcj-dbg packages priority extra.
+  * Set the path of classmap.db to /var/lib/gcj-@gcc_version@.
+  * On m68k, do not create the default classmap.db in the gcj postinst.
+    See #312830.
+  * On amd64, install the 32bit libraries into /emul/ia32-linux/usr/lib.
+    Restore the /usr/lib32 symlink.
+  * On amd64, don't reference lib64, but instead lib (lib64 is a symlink
+    to lib). Closes: #293050.
+  * Remove references to build directories from the .la files.
+  * Make cpp-X.Y conflict with earlier versions of gcc-X.Y, g++-X.Y, gobjc-X.Y,
+    gcj-X.Y, gfortran-X.Y, gnat-X.Y, treelang-X.Y, if a path component in
+    the gcc library path changes (i.e. version or target alias).
+  * Disable Ada for sh3 sh3eb sh4 sh4eb.
+  * For gcj-4.0, add a conflict to libgcj4-dev and libgcj5-dev.
+    Closes: #316499.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  2 Jul 2005 11:04:35 +0200
+
+gcc-4.0 (4.0.0ds1-11) unstable; urgency=low
+
+  * debian/rules.defs: Disable Ada for alpha.
+  * debian/rules.conf: Fix typo in type-handling replacement code.
+  * Don't ship an empty libgcj6-dbg package.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 23 Jun 2005 09:03:21 +0200
+
+gcc-4.0 (4.0.0ds1-10) unstable; urgency=medium
+
+  * debian/patches/libstdc++-api-compat.dpatch: Apply proposed patch
+    to fix libstdc++ 3.4.5/4.0 compatibility.
+  * type-handling output became insane. Don't use it anymore.
+  * Drop the reference to the stl-manual package (closes: #314983).
+  * Disable java on GNU/kFreeBSD targets, requested by Robert Millan.
+    Closes: #315140.
+  * Terminate the acats-killer process, even if the build is aborted
+    by the user (closes: #314405).
+  * debian/rules.defs: Define DEB_TARGET_ARCH_{OS,CPU}.
+  * Start converting the use of DEB_*_GNU_* to DEB_*_ARCH_* in the build
+    files.
+  * Do not configure with --enable-gtk-cairo. Needs newer gtk. Drop
+    build dependency on libcairo-dev.
+  * Fix setting of the system header directory for the hurd (Michael Banck).
+    Closes: #315386.
+  * Fix FTBFS on hurd-i386: MAXPATHLEN issue (Michael Banck). Closes: #315384.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 22 Jun 2005 19:45:50 +0200
+
+gcc-4.0 (4.0.0ds1-9ubuntu2) breezy; urgency=low
+
+  * Fix version number in libgcj shlibs file.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sun, 19 Jun 2005 10:34:02 +0200
+
+gcc-4.0 (4.0.0ds1-9ubuntu1) breezy; urgency=low
+
+  * Update to 4.0.1, release candidate 2.
+  * libstdc++ shlibs file: Require 4.0.0ds1-9ubuntu1 as minimum version.
+  * Rename libawt to libgcjawt to avoid conflicts with other
+    libawt implementations (backport from HEAD).
+  * Update classpath awt, swing and xml parser for HTML support in swing.
+    Taken from classpath CVS HEAD 2005-06-18. Patch provided by Michael Koch.
+  * Remove the libgcj-buffer-strategy path, part of the classpath update.
+  * libgcj shlibs file: Require 4.0.0ds1-9ubuntu1 as minimum version.
+  * Require cairo-0.5 as build dependency.
+  * gij-4.0: Provide java1-runtime.
+  * gij-4.0: Provide an rmiregistry alternative (using grmiregistry-4.0).
+  * gcj-4.0: Provide an rmic alternative (using grmic-4.0).
+  * libgcj6-dev conflicts with libgcj5-dev, libgcj4-dev, not libgcj6.
+    Closes: #312741.
+  * libmudflap-entry-point.dpatch: Correct name of entry point on mips/mipsel.
+  * Apply proposed patch for PR 18421 and PR 18719 (m68k only).
+  * Apply proposed path for PR 21562.
+  * Add build dependency on dpkg (>= 1.13.7).
+  * On linux systems, configure for <cpu>-linux-gnu.
+  * Configure the hppa64 cross compiler to target hppa64-linux-gnu.
+  * (Build-)depend on binutils-2.16.1.
+  * libstdc{32,64}++6-4.0-dbg: Depend on libstdc++6-4.0-dev.
+  * gnat-4.0: only depend on libgnat, when a shared libgnat is built.
+  * gfortran-4.0: Depend on libgmp3c2 | libgmp3.
+  * On hppa, explicitely use gcc-3.3 as a build dependency in the case
+    that Ada is disabled.
+  * libmudflap: Always build the library for the non-default biarch
+    architecture, or else the test results show link failures.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat, 18 Jun 2005 00:42:55 +0000
+
+gcc-4.0 (4.0.0-9) unstable; urgency=low
+
+  * Upload to unstable.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 25 May 2005 19:02:20 +0200
+
+gcc-4.0 (4.0.0-8ubuntu3) breezy; urgency=low
+
+  * debian/control: Regenerate.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  4 Jun 2005 10:56:27 +0200
+
+gcc-4.0 (4.0.0-8ubuntu2) breezy; urgency=low
+
+  * Fix powerpc-config-ml patch.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  3 Jun 2005 15:47:52 +0200
+
+gcc-4.0 (4.0.0-8ubuntu1) breezy; urgency=low
+
+  * powerpc biarch support:
+    - Enable powerpc biarch support, build lib64gcc1 on powerpc.
+    - Add patch to disable libstdc++'s configure checking, if it can't run
+      64bit binaries on 32bit kernels (Sven Luther).
+    - Apply the same patch to the other runtime librararies as well.
+    - Run the testsuite with -m64, if we can execute 64bit binaries.
+    - Add libc6-dev-ppc64 as build dependency for powerpc.
+  * 32bit gcj libs for amd64.
+  * debian/logwatch.sh: Don't remove logwatch pid file on exit (suggested
+    by Ryan Murray).
+  * Update to CVS 20050603, taken from the gcc-4_0-branch.
+  * g++-4.0 provides c++abi2-dev.
+  * Loosen dependencies on packages of architecture `all' to not break
+    binary only uploads.
+  * Build libgfortran for biarch as well, else the testsuite will fail.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  3 Jun 2005 13:38:19 +0200
+
+gcc-4.0 (4.0.0-8) experimental; urgency=low
+
+  * Synchronize with Ubuntu.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 May 2005 01:56:28 +0000
+
+gcc-4.0 (4.0.0-7ubuntu7) breezy; urgency=low
+
+  * Fix build failures for builds with disabled testsuite.
+  * Adjust debian/rules conditionals to work with all dpkg versions.
+  * Build separate lib32stdc6-4.0-dbg/lib64stdc6-4.0-dbg packages.
+  * Add the debugging symbols of the optimzed libstdc++ build in the
+    lib*stdc++6-dbg packages as well.
+  * Build a libgcj6-dbg package.
+  * Update to CVS 20050522, taken from the gcc-4_0-branch.
+  * Add Ada support for the ppc64 architecture (Andreas Jochens):
+    * debian/patches/ppc64-ada.dpatch
+      - Add gcc/ada/system-linux-ppc64.ads, which has been copied from
+        gcc/ada/system-linux-ppc.ads and changed to use 'Word_Size' 64
+        instead of 32.
+      - gcc/ada/Makefile.in: Use gcc/ada/system-linux-ppc64.ads on powerpc64.
+    * debian/rules.patch
+      - Use ppc64-ada patch on ppc64.
+    * debian/rules.d/binary-ada.mk
+      Place the symlinks libgnat.so, libgnat-4.0.so, libgnarl.so,
+      libgnarl-4.0.so in '/usr/lib' instead of '<gcc_lib_dir>/adalib'.
+    Closes: #308948.
+  * Add libc6-dev-i386 as an alternative build dependency for amd64.
+    Closes: #305690.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sun, 22 May 2005 22:14:20 +0200
+
+gcc-4.0 (4.0.0-7ubuntu6) breezy; urgency=low
+
+  * Don't trust dpkg-architecture (1.13.4), it "hurds" ...
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 18 May 2005 11:36:38 +0200
+
+gcc-4.0 (4.0.0-7ubuntu5) breezy; urgency=low
+
+  * libgcj6-dev: Don't provide libgcj-dev.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 18 May 2005 00:30:32 +0000
+
+gcc-4.0 (4.0.0-7ubuntu4) breezy; urgency=low
+
+  * Update to CVS 20050517, taken from the gcc-4_0-branch.
+  * Apply proposed patch for PR21293.
+
+ -- Matthias Klose <doko@ubuntu.com>  Tue, 17 May 2005 23:05:40 +0000
+
+gcc-4.0 (4.0.0-7ubuntu2) breezy; urgency=low
+
+  * Update to CVS 20050515, taken from the gcc-4_0-branch.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sun, 15 May 2005 23:48:00 +0200
+
+gcc-4.0 (4.0.0-7ubuntu1) breezy; urgency=low
+
+  * Synchronize with Debian.
+
+ -- Matthias Klose <doko@ubuntu.com>  Mon,  9 May 2005 19:35:29 +0200
+
+gcc-4.0 (4.0.0-7) experimental; urgency=low
+
+  * Update to CVS 20050509, taken from the gcc-4_0-branch.
+  * Remove the note from the fastjar package description, stating, that
+    fastjar is incomplete compared to the "standard" jar utility.
+  * Fix typo in build depends. dpkg-checkbuilddeps doesn't like a comma
+    inside [].
+  * Tighten shlibs dependencies to require the current version.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  9 May 2005 19:02:03 +0200
+
+gcc-4.0 (4.0.0-6) experimental; urgency=low
+
+  * Update to CVS 20050508, taken from the gcc-4_0-branch.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  8 May 2005 14:08:28 +0200
+
+gcc-4.0 (4.0.0-5ubuntu1) breezy; urgency=low
+
+  * Temporarily disable the i386 biarch build. Remove the amd64-libs-dev
+    build dependency, add (build-)conflict (<= 1.1ubuntu1).
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  7 May 2005 16:56:21 +0200
+
+gcc-4.0 (4.0.0-5) breezy; urgency=low
+
+  * gnat-3.3 and gnat-4.0 are alternative build dependencies (closes: #308002).
+  * Update to CVS 20050507, taken from the gcc-4_0-branch.
+  * gcj-4.0: Install gjnih.
+  * Add libgcj buffer strategy framework (Thomas Fitzsimmons), needed for OOo2.
+    Backport from 4.1.
+  * Fix all lintian errors and most of the warnings.
+
+ -- Matthias Klose <doko@ubuntu.com>  Sat,  7 May 2005 12:26:15 +0200
+
+gcc-4.0 (4.0.0-4) breezy; urgency=low
+
+  * Still prefer gnat-3.3 over gnat-4.0 as a build dependency.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  6 May 2005 22:30:43 +0200
+
+gcc-4.0 (4.0.0-3) breezy; urgency=low
+
+  * Update to CVS 20050506, taken from the gcc-4_0-branch.
+  * Update priority of java alternatives to 40.
+  * Move gcj-dbtool to gij package, move the default classmap.db to
+    /var/lib/gcj-4.0/classmap.db. Create it in the postinst.
+  * Fix gcc-4.0-hppa64 postinst (closes: #307762).
+  * Fix gcc-4.0-hppa64, gij-4.0 and gcj-4.0 postinst, to not ignore errors
+    from update-alternatives.
+  * Fix gcc-4.0-hppa64, fastjar, gij-4.0 and gcj-4.0 prerm,
+    to not ignore errors from update-alternatives.
+
+ -- Matthias Klose <doko@ubuntu.com>  Fri,  6 May 2005 17:50:58 +0200
+
+gcc-4.0 (4.0.0-2) experimental; urgency=low
+
+  * GCC 4.0.0 release.
+  * Update to CVS 20050503, taken from the gcc-4_0-branch.
+  * Add gnat-4.0 as an alternative build dependency (closes: #305690).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 May 2005 15:41:26 +0200
+
+gcc-4.0 (4.0.0-1) experimental; urgency=low
+
+  * GCC 4.0.0 release.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Apr 2005 11:28:42 +0200
+
+gcc-4.0 (4.0ds11-0pre11) breezy; urgency=low
+
+  * CVS 20050413, taken from the gcc-4_0-branch.
+  * Add proposed patches for PR20126, PR20490, PR20929.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed, 13 Apr 2005 09:43:00 +0200
+
+gcc-4.0 (4.0ds10-0pre10) experimental; urgency=low
+
+  * gcc-4.0.0-20050410 release candidate 1, built from the prerelease tarball.
+    - C++ fix for "optimizer breaks function inlining". Closes: #302989.
+  * Append the GCC version to the fastjar/grepjar version string.
+  * Use short file names in the libstdc++ docs (closes: #301140).
+  * Fix libstdc++-dbg dependencies (closes: #303866).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 11 Apr 2005 13:16:01 +0200
+
+gcc-4.0 (4.0ds9-0pre9) experimental; urgency=low
+
+  * CVS 20050326, taken from the gcc-4_0-branch.
+  * Reenable Ada on ia64.
+  * Build libgnat on hppa, sparc, s390 again.
+  * ppc64 support (Andreas Jochens):
+    * debian/control.m4
+      - Add libc6-dev-powerpc [ppc64] to the Build-Depends.
+      - Change the Description for lib32gcc1: s/ia32/32 bit Version/
+    * debian/rules.defs
+      - Define 'biarch_ia32' for ppc64 to use the same 32 bit multilib
+        facilities as amd64.
+    * debian/rules.d/binary-gcc.mk
+      - Correct an error in the 'files_gcc' definition for biarch_ia32
+        (replace '64' by '32').
+    * debian/rules2
+      - Do not use '--disable-multilib' on powerpc64-linux.
+        Use '--disable-nof --disable-softfloat' instead.
+    * debian/rules.d/binary-libstdcxx.mk
+      - Put the 32 bit libstdc++ files in '/usr/lib32'.
+    * debian/rules.patch
+      - Apply 'ppc64-biarch' patch on ppc64.
+    * debian/patches/ppc64-biarch.dpatch
+      - MULTILIB_OSDIRNAMES: Use /lib for native 64 bit libraries and
+        /lib32 for 32 bit libraries.
+      - Add multilib handling to src/config-ml.in (taken from
+        amd64-biarch.dpatch).
+  * Rename biarch_ia32 to biarch32, as suggsted by Andreas.
+  * Use /bin/dash on hppa.
+  * Reenable the build of the hppa64 compiler.
+  * Enable parallel builds by defaults (set environment variale USE_NJOBS=no
+    or USE_NJOBS=<number> to modify the default, which is to use the
+    number of available processors).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 Mar 2005 19:07:30 +0100
+
+gcc-4.0 (4.0ds8-0pre8) experimental; urgency=low
+
+  * CVS 20050322, taken from the gcc-4_0-branch.
+    - Add proposed fix for PR19406.
+  * Configure --with-gtk-cairo only if version 0.3.0 is found.
+  * Split out gcc-4.0-locales package. Better chance of getting
+    bug reports in english language.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 22 Mar 2005 14:20:24 +0100
+
+gcc-4.0 (4.0ds7-0pre7) experimental; urgency=low
+
+  * CVS 20050304, taken from the gcc-4_0-branch.
+  * Build the treelang compiler.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  4 Mar 2005 21:29:56 +0100
+
+gcc-4.0 (4.0ds6-0pre6ubuntu6) hoary; urgency=low
+
+  * Fix lib32gcc1 symlink on amd64. Ubuntu #7099.
+
+ -- Matthias Klose <doko@ubuntu.com>  Thu,  3 Mar 2005 00:17:26 +0100
+
+gcc-4.0 (4.0ds6-0pre6ubuntu5) hoary; urgency=low
+
+  * Add patch from PR20160, avoid creating archives with components
+    that have duplicate basenames.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed,  2 Mar 2005 14:22:04 +0100
+
+gcc-4.0 (4.0ds6-0pre6ubuntu4) hoary; urgency=low
+
+  * CVS 20050301, taken from the gcc-4_0-branch.
+    Test builds on i386, amd64, powerpc, ia64, check libgcc_s.so.1.
+  * Add fastjar-4.0 binary and manpage. Some java packages append it
+    for all java related tools.
+  * Add libgcj6-src package for source code availability in IDE's.
+  * On hppa, disable the build of the hppa64 cross compiler, disable
+    java, disable running the testsuite (request by Lamont).
+  * On amd64, lib32gcc1 replaces ia32-libs.openoffice.org (<< 1ubuntu3).
+  * Build-Depend on libcairo1-dev, configure with --enable-gtk-cairo.
+    Work around libtool problems install libjawt.
+    Install jawt header files in libgcj6-dev.
+  * Add workaround for PR debug/19769.
+
+ -- Matthias Klose <doko@ubuntu.com>  Tue,  1 Mar 2005 11:26:19 +0100
+
+gcc-4.0 (4.0ds5-0pre6ubuntu3) hoary; urgency=low
+
+  * Drop libgmp3-dev (<< 4.1.4-3) as an alterntative build dependency.
+
+ -- Matthias Klose <doko@ubuntu.com>  Thu, 10 Feb 2005 15:16:27 +0100
+
+gcc-4.0 (4.0ds5-0pre6ubuntu2) hoary; urgency=low
+
+  * Disable Ada for powerpc.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed,  9 Feb 2005 16:47:07 +0100
+
+gcc-4.0 (4.0ds5-0pre6ubuntu1) hoary; urgency=low
+
+  * Avoid build dependency on type-handling.
+  * Install 32bit libs on amd64 in /lib32 and /usr/lib32.
+
+ -- Matthias Klose <doko@ubuntu.com>  Wed,  9 Feb 2005 08:27:21 +0100
+
+gcc-4.0 (4.0ds5-0pre6) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20050208.
+  * Build-depend on graphviz (moved to main), remove the pregenerated
+    libstdc++ docs from the diff.
+  * Fix PR19162, libobjc build failure on arm-linux (closes: #291497).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  8 Feb 2005 11:47:31 +0000
+
+gcc-4.0 (4.0ds4-0pre5) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20050125.
+  * Call the 4.0 gcx versions in the java wrappers (closes: #291075).
+  * Correctly install libgij (closes: #291077).
+  * libgcj6-dev: Add conflicts to other libgcj-dev packages (closes: #290950).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 24 Jan 2005 23:59:54 +0100
+
+gcc-4.0 (4.0ds3-0pre4) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20050115.
+  * Update cross build patches (Nikita V. Youshchenko).
+  * Enable Ada on i386, amd64, mips, mipsel, powerpc, sparc, s390.
+    Doesn't yet bootstrap on alpha, hppa, ia64.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 15 Jan 2005 18:44:03 +0100
+
+gcc-4.0 (4.0ds2-0pre3) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20041224.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 22 Dec 2004 00:31:44 +0100
+
+gcc-4.0 (4.0ds1-0pre2) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20041205.
+  * Lot's of merges and updates from the gcc-3.4 packages.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 04 Dec 2004 12:14:51 +0100
+
+gcc-4.0 (4.0ds0-0pre1) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20041114.
+    - Addresses many issues with the libstdc++ man pages (closes: #278549).
+  * Disable Ada on hppa, ia64, mips, mipsel, powerpc, s390 and sparc, at least
+    these are known to be broken at the time of the snapshot.
+  * Minor kbsd.gnu build fixes (Robert Millan). Closes: #273004.
+  * For amd64, add missing libstdc++ files to 'libstdc++6-dev' package.
+    (Andreas Jochens). Fixes: #274362.
+  * Update libffi-mips patch (closes: #274096).
+  * Updated i386-biarch patch. Don't build 64bit libstdc++, ICE.
+  * Update sparc biarch patch.
+  * Fix symlinks for gfortran manpage (closes: #278548).
+  * Update cross build patches (Nikita V. Youshchenko).
+  * Update Ada patches (Ludovic Brenta).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 13 Nov 2004 10:38:25 +0100
+
+gcc-4.0 (4.0-0pre0) experimental; urgency=low
+
+  * gcc-4.0 snapshot, taken from the HEAD branch CVS 20040912.
+
+  * Matthias Klose <doko@debian.org>
+
+    - Integrate accumulated packaging patches from gcc-3.4.
+    - Rename libstdc++6-* packages to libstdc++6-4-* (closes: #261693).
+    - libffi4-dev: conflict with libffi3-dev (closes: #265939).
+
+  * Robert Millan <rmh@debian.org>
+
+    * control.m4: 
+      - s/locale_no_archs !hurd-i386/locale_no_archs/g 
+        (This is now handled in rules.defs. [1]) 
+      - s/procps [check_no_archs]/procps [linux_gnu_archs]/g [2] 
+      - Add type-handling to build-deps. [3] 
+    * rules.conf: 
+      - Don't require (>= $(libc_ver)) for libc0.1-dev. [4] 
+      - Generate *_no_archs variables with type-handling and use them for 
+        for m4's -D parameters. [3] 
+    * rules.defs: 
+      - use filter instead of findstring [1]. 
+      - s/netbsd-elf-gnu/netbsdelf-gnu/g [5]. 
+      - enable java for kfreebsd-gnu [6] 
+      - enable ffi for kfreebsd-gnu and knetbsd-gnu [6] 
+      - enable libgc for kfreebsd-gnu [6] 
+      - enable checks for kfreebsd-gnu and knetbsd-gnu [7] 
+      - enable locales for kfreebsd-gnu and gnu [1] [8]. 
+    * Closes: #264025.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 12 Sep 2004 12:52:56 +0200
+
+gcc-3.5 (3.5ds1-0pre1) experimental; urgency=low
+
+  * gcc-3.5 snapshot, taken from the HEAD branch CVS 20040724.
+  * Install locale data with versioned package name (closes: #260497).
+  * Fix libgnat symlinks.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 24 Jul 2004 21:26:23 +0200
+
+gcc-3.5 (3.5-0pre0) experimental; urgency=low
+
+  * gcc-3.5 snapshot, taken from the HEAD branch CVS 20040718.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 18 Jul 2004 12:26:00 +0200
+
+gcc-3.4 (3.4.1-1) experimental; urgency=low
+
+  * gcc-3.4.1 final release.
+    - configured wth --enable-libstdcxx-allocator=mt.
+  * Fixes for generating cross compiler packages (Jeff Bailey).
+
+ -- Matthias Klose <doko@debian.org>  Fri,  2 Jul 2004 22:49:05 +0200
+
+gcc-3.4 (3.4.0-4) experimental; urgency=low
+
+  * gcc-3.4.1 release candidate 1.
+  * Add logic to build biarch compiler on powerpc (disabled, needs lib64c).
+  * Don't build the libg2c0 package on mipsel-linux (no clear answer on
+    debian-mips, if the libg2c0's built by gcc-3.3 and gcc-3.4 are compatible
+    (post-sarge issue).
+  * Don't use gcc-2.95 as bootstrap compiler on m68k anymore.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 Jun 2004 22:40:20 +0200
+
+gcc-3.4 (3.4.0-3) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040613.
+  * On sparc, set the the build target to sparc64-linux, build with
+    switch defaulting to code generation for v7. To generate code for
+    sparc64, use the -m64 switch.
+  * Add missing doc-base files to -doc packages.
+  * Add portability patches and kbsd-gnu patch (Robert Millan).
+    Closes: #251293, #251294.
+  * Apply fixes for cross build (Nikita V. Youshchenko).
+  * Do not include the precompiled libstdc++ header files into the -dev
+    package (still experimental). Closes: #251707.
+  * Reflect renaming of Ada user's guide.
+  * Move AWT peer libraries for libgcj into it's own package (fixes: #247791).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 14 Jun 2004 00:03:18 +0200
+
+gcc-3.4 (3.4.0-2) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040516.
+  * Do not provide the /usr/hppa64-linux/include in the gcc-hppa64 package,
+    migrated to libc6-dev. Adjust dependencies.
+  * Integrate gpc test results into the GCC test summary.
+  * gnatchop calls gcc-3.4 (closes: #245438).
+  * debian/locale-gen.sh: Update for recent libstdc+++ testsuite.
+  * debian/copyright: Add libstdc++-v3's exception clause.
+  * Add libffi update for mips (Thiemo Seufer).
+  * Reference Debian specific bug reporting instructions.
+  * Update README.Bugs.
+  * Fix FTBFS for libstdc++-doc.
+  * Update libjava patch for hppa (Randolph Chung).
+  * Fix installation of ffitarget.h header file.
+  * On amd64-linux, configure --without-multilib, disable Ada.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 May 2004 07:53:39 +0200
+
+gcc-3.4 (3.4.0-1) experimental; urgency=low
+
+  * gcc-3.4.0 final release.
+
+  * Why experimental?
+    - Do not interfer with packages currently built from gcc-3.3 sources,
+      i.e. libgcc1, libobjc1, libffi2, libffi2-dev, libg2c0.
+    - Biarch sparc compiler doesn't built yet.
+    - Use of configure flags affecting binary ABI's not yet determined.
+    - Several ABI bugs have been fixed. Unfortunately, these changes will break
+      binary compatibility with earlier releases on several architectures:
+      alpha, mips, sparc, 
+    - hppa and m68k changed sjlj based exception handling to dwarf2 based
+      exception handling.
+
+      See NEWS.html or http://gcc.gnu.org/gcc-3.4/changes.html for more
+      specific information.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 20 Apr 2004 20:54:56 +0200
+
+gcc-3.4 (3.4ds3-0pre4) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040403.
+  * Add gpc tarball, gpc patches for 3.4 (Waldek Hebisch).
+  * Reenable sparc-biarch patches (closes: #239856).
+  * Build the shared libgnat library, needed to fix FTBFS for some
+    Ada library packages (Ludovic Brenta).
+    Currently enabled for hppa, i386, ia64.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  3 Apr 2004 08:47:55 +0200
+
+gcc-3.4 (3.4ds1-0pre2) experimental; urgency=low
+
+  * Update to gcc-3.4 CVS 20040320.
+  * For libstdc++6-doc, add a conflict to libstdc++5-3.3-doc (closes: #236560).
+  * For libstdc++6-dbg, add a conflict to libstdc++5-3.3-dbg (closes: #236798).
+  * Reenable s390-biarch patches.
+  * Update the cross compiler build files (Nikita V. Youshchenko).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 20 Mar 2004 09:15:10 +0100
+
+gcc-3.4 (3.4ds0-0pre1) experimental; urgency=low
+
+  * Start gcc-3.4 packaging, get rid of the epoch for most of the
+    packages.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 22 Feb 2004 16:00:03 +0100
+
+gcc-3.3 (1:3.3.3ds6-6) unstable; urgency=medium
+
+  * Update to gcc-3_3-branch CVS 20040401.
+    - Fixed ICE in emit_move_insn_1 on legal code (closed: #223215).
+    - Fix PR 14755, miscompilation of loops with bitfield counter.
+      Closes: #241255.
+    - Fix PR 16040, crash in function initializing const data with
+      reinterpret_cast-ed pointer-to-member function crashes (closes: #238621).
+    - Remove patches integrated upstream.
+  * Reenable build of gpidump on powerpc and s390.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  1 Apr 2004 23:51:54 +0200
+
+gcc-3.3 (1:3.3.3ds6-5) unstable; urgency=medium
+
+  * Update to gcc-3_3-branch CVS 20040321.
+    - Fix PR target/13889 (ICE on valid code on m68k).
+  * Fix FTFBS on s390. Do not build gpc's gpidump on s390.
+  * Reenable gpc on arm.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 22 Mar 2004 07:37:26 +0100
+
+gcc-3.3 (1:3.3.3ds6-4) unstable; urgency=low
+
+  * Update to gcc-3_3-branch CVS 20040320.
+    - Revert patch for PR14640 (with this, at least mozilla-firefox was
+      miscompiled on x86 (closes: #238621).
+  * Update the gpc tarball (there were two releases with the same name ...).
+  * Reenable gpc on alpha and ia64.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 20 Mar 2004 07:39:24 +0100
+
+gcc-3.3 (1:3.3.3ds5-3) unstable; urgency=low
+
+  * Update to gcc-3_3-branch CVS 20040314.
+    - Fixes miscompilation with -O -funroll-loops on powerpc (closes: #229567).
+    - Fix ICE in dwarf-2 on code using altivec (closes: #203835).
+  * Update hurd-changes patch.
+  * Add libgcj4-dev as a recommendation for gcj (closes: #236547).
+  * debian/copyright: Added exemption to static linking of libgcc.
+
+  * Phil Blundell:
+    - debian/patches/arm-ldm.dpatch, debian/patches/arm-gotoff.dpatch: Update.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Mar 2004 09:56:06 +0100
+
+gcc-3.3 (1:3.3.3ds5-2) unstable; urgency=low
+
+  * Update to gcc-3_3-branch CVS 20040306.
+    - Fixes bootstrap comparision error on ia64.
+    - Allows ghc build with gcc-3.3.
+    - On amd64, don't imply 3DNow! for -m64 by default.
+    - Some arm specific changes
+    - Fix C++/13944: exception in constructor of a class to be thrown is not
+      caught. Closes: #228099.
+  * Enable the build of gcc-3.3-hppa64 on hppa.
+    Add symlinks for as and ld to point to hppa64-linux-{as,ld}.
+  * gcj-3.3 depends on g++-3.3, recommends gij-3.3. gij-3.3 suggests gcj-3.3.
+  * Fix libgc2c-pic compatibility links (closes: #234333).
+    The link will be removed for gcc-3.4.
+  * g77-3.3: Conflict with other g77-x.y packages.
+  * Tighten shlibs dependencies to latest released versions.
+
+  * Phil Blundell:
+    - debian/patches/arm-233633.dpatch: New  Fixes problems with half-word
+      loads on ARMv3 architecture.  (Closes: #233633)
+    - debian/patches/arm-ldm.dpatch: New.  Avoids inefficient epilogue for
+      leaf functions in PIC code on ARM.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Mar 2004 10:57:14 +0100
+
+gcc-3.3 (1:3.3.3ds5-1) unstable; urgency=medium
+
+  * gcc-3.3.3 final release.
+    See /usr/share/doc/gcc-3.3/NEWS.{gcc,html}.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 16 Feb 2004 08:59:52 +0100
+
+gcc-3.3 (1:3.3.3ds4-0pre4) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20040214 (2nd gcc-3.3.3 prerelease).
+  * Fix title of libstdc++'s html main index (closes: #196381).
+  * Move libg2c libraray files out of the gcc specific libdir to /usr/lib.
+    For g77-3.3 add conflicts to other g77 packages. Closes: #224848.
+  * Update the stack protector patch to 3.3-7, but don't apply it by default.
+    Closes: #230338.
+  * On arm, use arm6 as the cpu default (backport from mainline, PR12527).
+  * Add libffi and libjava support for hppa (Randolph Chung). Closes: #232615.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 14 Feb 2004 09:26:15 +0100
+
+gcc-3.3 (1:3.3.3ds3-0pre3) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20040125.
+    - Fixed PR11350, undefined labels with -Os -fPIC (closes: #195911).
+    - Fixed PR11793, ICE in extract_insn, at recog.c (closes: #203835).
+    - Fixed PR13544, removed backport for PR12862.
+    - Integrated backport for PR12441.
+  * Fixed since 3.3: java: not implemented interface methods of abstract
+    classes not found (closes: #225438).
+  * Disable pascal on arm architecture (currently broken).
+  * Update the build files to build a cross compiler (Nikita V. Youshchenko).
+    See debian/README.cross in the source package.
+  * Apply revised patch to make -mieee the default on alpha-linux,
+    and add -mieee-disable switch to turn the default off (closes: #212912).
+    (Tyson Whitehead)
+
+ -- Matthias Klose <doko@debian.org>  Sun, 25 Jan 2004 17:41:04 +0100
+
+gcc-3.3 (1:3.3.3ds2-0pre2) unstable; urgency=medium
+
+  * Update to gcc-3.3.3 CVS 20040110.
+    - Fixes compilation not terminating at -O1 on hppa (closes: #207516).
+  * Add backport to fix PR12441 (closes: #224576).
+  * Revert backport to 3.3 branch to fix PR12862, which introduced another
+    regression (PR13544). Closes: #225663.
+  * Tighten dependency of gnat-3.3 on gcc-3.3 (closes: #226273).
+  * Disable treelang build for cross compiler build.
+  * Disable pascal on alpha and ia64 architectures (currently broken).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 10 Jan 2004 12:33:59 +0100
+
+gcc-3.3 (1:3.3.3ds1-0pre1) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20031229.
+    - Fixes bootstrap error on ia64-linux.
+    - Fix -pthread on mips{,el}-linux (closes: #224875).
+    - Fix -Wformat for C++ (closes: #217075).
+  * Backport from mainline: Preserve inline-ness when redeclaring
+    a function template (closes: #195264).
+  * Add missing intrinsics headers on ix86 (closes: #224593).
+  * Fix location of libg2c libdir in libg2c.la file (closes: #224848).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 29 Dec 2003 10:36:29 +0100
+
+gcc-3.3 (1:3.3.3ds0-0pre0.1) unstable; urgency=high
+
+   * NMU
+   * Fixed mips(el) spec file for -pthread: (Closes: #224875)
+   * [debian/patches/mips-pthread.dpatch] New.
+   * [debian/rules.patch] Added it to debian_patches.
+
+ -- J.H.M. Dassen (Ray) <jdassen@debian.org>  Sat, 27 Dec 2003 15:51:47 +0100
+
+gcc-3.3 (1:3.3.3ds0-0pre0) unstable; urgency=low
+
+  * Update to gcc-3.3.3 CVS 20031206.
+    - Fixes ICE in verify_local_live_at_start (hppa). Closes: #201550.
+    - Fixes miscompilation of linux-2.6/sound/core/oss/rate.c.
+      Closes: #219949.
+  * Add missing unwind.h to gcc package (closes: #220846).
+  * Regenerate control file to fix build dependencies for m68k.
+  * More gpc only patches to fix test failures on m68k.
+  * Reenable gpc for the Hurd (closes: #189851).
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Dec 2003 10:29:07 +0100
+
+gcc-3.3 (1:3.3.2ds5-4) unstable; urgency=low
+
+  * Update libffi-dev package description (closes: #219508).
+  * For gij and libgcj fix dependency on the libstdc++ package, if
+    the latter isn't installed during the build.
+  * Apply patch to emit .note.GNU-stack section on linux arches
+    which by default need executable stack.
+  * Prefer gnat-3.3 over gnat-3.2 as a build dependency.
+  * Update the pascal tarball (different version released with the
+    same name).
+  * Add pascal patches to address various gpc testsuite failures.
+    On alpha and ia64, build gpc from the 20030830 version. Reenable
+    the build on m68k.
+    Remove the 20030507 gpc version from the tarball.
+  * Apply patch to build the shared ada libs and link the ada tools
+    against the shared libs. Not enabled by default, because gnat
+    and gnatlib are rebuilt during install. (Ludovic Brenta)
+
+ -- Matthias Klose <doko@debian.org>  Sun,  9 Nov 2003 22:34:33 +0100
+
+gcc-3.3 (1:3.3.2ds4-3) unstable; urgency=low
+
+  * Fix rules to omit inclusion of gnatpsta in mips(el) gnat package.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  2 Nov 2003 14:29:59 +0100
+
+gcc-3.3 (1:3.3.2ds4-2) unstable; urgency=medium
+
+  * s390-ifcvt patch added. Fixes gcl miscompilation (closes: #217240).
+    (Gerhard Tonn)
+  * Fix an infinite loop in g++ compiling lufs, regression from 3.3.1.
+  * Fix a wrong code generation bug on alpha.
+    (Falk Hueffner)
+  * Update NEWS files.
+  * Add Falk Hueffner to the Debian GCC maintainers.
+  * Enable ada on mips and mipsel, but don't build the gnatpsta tool.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 29 Oct 2003 00:12:37 +0100
+
+gcc-3.3 (1:3.3.2ds4-1) unstable; urgency=medium
+
+  * Update to gcc-3.3.2.
+  * Update NEWS files.
+  * Miscompilation in the pari package at -O3 fixed (closes: #198172).
+  * On alpha-linux, revert -mieee as the default (Falk Hueffner).
+    Reopens: #212912.
+  * Add ia64-unwind patch (Jeff Bailey).
+  * Closed reports reported against gcc-2.96 (ia64), fixed at least in gcc-3.3:
+    - ICE in verify_local_live_at_start, at flow.c:2733 (closes: #135404).
+    - Compilation failure of stlport (closes: #135224).
+    - Infinite loop compiling cssc's pfile.cc with -O2 (closes: #115390).
+    - Added missing some string::compare() members (closes: #141199).
+    - <cmath> header declares std::pow (closes: #161853).
+    - <vector> does have at() method (closes: #59776).
+    - Fixed error in stl_deque.h (closes: #69530).
+    - Fixed problem with bastring (closes: #75759, #96539).
+    - bad_alloc and std:: namespace problem (closes: #75120).
+    - Excessive warnings from headers with -Weffc++ (closes: #76827).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 17 Oct 2003 08:07:01 +0200
+
+gcc-3.3 (1:3.3.2ds3-0pre5) unstable; urgency=low
+
+  * Update to gcc-3.3.2 CVS 20031005.
+    - Fixes cpp inserting a spurious newline (closes: #210478, #210482).
+    - Fixes generation of unrecognizable insn compiling kernel source
+      on alpha (closes: #202762).
+    - Fixes ICE in add_abstract_origin_attribute (closes: #212406).
+    - Fixes forward declaration in libstdc++ (closes: #209386).
+    - Fixes ICE in in extract_insn, at recog.c on alpha (closes: #207564).
+  * Make libgcj-common architecture all (closes: #211909).
+  * Build depend on: flex-old | flex (<< 2.5.31).
+  * Fix spec linking libraries with -pthread on powerpc (closes: #211054).
+  * debian/patches/arm-gotoff.dpatch: fix two kinds of PIC lossage.
+    (Phil Blundell)
+  * debian/patches/arm-common.dpatch: fix excessive alignment of common
+    blocks causing binutils testsuite failures.
+    (Phil Blundell)
+  * Update priorities in debian/control to match the archive.
+    (Ryan Murray)
+  * s390-nonlocal-goto patch added. Fixes some pascal testcase failures. 
+    (Gerhard Tonn)
+  * On alpha-linux, make -mieee default and add -mieee-disable switch
+    to turn default off (closes: #212912).
+    (Tyson Whitehead)
+  * Add gpc upstream patch for memory corruption fix.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  5 Oct 2003 19:53:49 +0200
+
+gcc-3.3 (1:3.3.2ds2-0pre4) unstable; urgency=low
+
+  * Add gcc-unsharing_lhs patch (closes: #210848)
+
+ -- Ryan Murray <rmurray@debian.org>  Fri, 19 Sep 2003 22:51:19 -0600
+
+gcc-3.3 (1:3.3.2ds2-0pre3) unstable; urgency=low
+
+  * Update to gcc-3.3.2 CVS 20030908.
+  * PR11716 (Michael Eager, Dan Jacobowitz):
+    Make GCC think that the maximum length of a short branch is
+    64K instead of 128K.  It's a big hammer, but it works.
+    Closes: #207915.
+  * Downgrade gpc to 20030507 on alpha and ia64 (closes: #208717).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  8 Sep 2003 21:49:52 +0200
+
+gcc-3.3 (1:3.3.2ds1-0pre2) unstable; urgency=low
+
+  * Update to gcc-3.3.2 CVS 20030831.
+    - Fix java NullPointerException detection with 2.6 kernels.
+      Closes: #206377.
+    - Fix bug in C++ typedef handling (closes: #205402).
+    - Fix -Wunreachable-code giving false complaints (closes: #196600).
+  * Update to gpc-20030830.
+  * Don't include /usr/share/java/repository into the class path according
+    to the new version of th Debian Java policy (closes: #205643).
+  * Build-Depend/Depend on libgc-dev.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 31 Aug 2003 08:56:53 +0200
+
+gcc-3.3 (1:3.3.2ds0-0pre1) unstable; urgency=low
+
+  * Remove the build dependency on locales for now.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 15 Aug 2003 07:48:18 +0200
+
+gcc-3.3 (1:3.3.2ds0-0pre0) unstable; urgency=medium
+
+  * Update to gcc-3.3.2 CVS 20030812.
+    - Fixes generation of wrong code for XDM-AUTHORIZATION-1 key generation
+      and/or validation. Closes: #196090.
+  * Update NEWS files.
+  * Change ix86 default CPU type for code generation:
+    - i386-linux       -> i486-linux
+    - i386-gnu         -> i586-gnu
+    - i386-freebsd-gnu -> i486-freebsd-gnu
+    Use -march=i386 to target i386 CPUs.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Aug 2003 10:31:28 +0200
+
+gcc-3.3 (1:3.3.1ds3-1) unstable; urgency=low
+
+  * gcc-3.3.1 (taken from CVS 20030805).
+    - C++: Fix declaration conflicts (closes: #203351).
+    - Fix ICE on ia64 (closes: #203840).
+
+ -- Matthias Klose <doko@debian.org>  Tue,  5 Aug 2003 20:38:02 +0200
+
+gcc-3.3 (1:3.3.1ds2-0rc2) unstable; urgency=low
+
+  * Update to gcc-3.3.1 CVS 20030728.
+    - Fix ICE in extract_insn, at recog.c:2148 on m68k.
+      Closes: #177840, #180375, #190818.
+    - Fix ICE while building libquicktime on alpha (closes: #192576).
+    - Fix failure to deal with using and private inheritance (closes: #202696).
+  * On sparc, /usr/lib was added to the library search path. Fix it.
+  * Closed reports reported against gcc-3.2.x and fixed in gcc-3.3:
+    - Fix error building the gcl package on arm (closes: #199835).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 28 Jul 2003 20:39:07 +0200
+
+gcc-3.3 (1:3.3.1ds1-0rc1) unstable; urgency=low
+
+  * Update to gcc-3.3.1 CVS 20030722 (3.3.1 release candidate 1).
+    - Fix ICE in copy_to_mode_reg on 64-bit targets (closes: #189365).
+    - Remove documentation about multi-line strings (closes: #194391).
+    - Correctly document -falign-* parameters (closes: #198269).
+    - out-of-class specialization of a private nested template class.
+      Closes: #193830.
+    - Tighten shlibs dependency due to new symbols in libgcc.
+  * README.Debian for libg2c0, describing the need for g77-x.y when
+    working with the g2c header and library (closes: #189059).
+  * Call make with -j<number of CPU's>, if USE_NJOBS is set and non-empty
+    in the environment.
+  * Add another two m68k patches, partly replacing the workarounds provided
+    by Roman Zippel.
+  * Add the stack protector patch, but don't apply it by default. Edit
+    debian/rules.patch to apply it (closes: #171699, #189494).
+  * Remove wrong symlinks from gnat package (closes: #201882).
+  * Closed reports reported against gcc-2.95 and fixed in newer versions:
+    - SMP kernel compilation on alpha (closes: #134197, #146883).
+    - ICE on arm while building imagemagick (closes: #173475).
+  * Closed reports reported against gcc-3.2.x and fixed in gcc-3.3:
+    - Miscompilation of octave2.1 on hppa (closes: #192296, #193804).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 13 Jul 2003 10:26:30 +0200
+
+gcc-3.3 (1:3.3.1ds0-0pre0) unstable; urgency=medium
+
+  * Update to gcc-3.3.1 CVS 20030626.
+    - Fix ICE on arm compiling xfree86 (closes: #195424).
+    - Fix ICE on arm compiling fftw (closes: #186185).
+    - Fix ICE on arm in change_address_1, affecting a few packages.
+      Closes: #197099.
+    - Fix ICE in merge_assigned_reloads building Linux 2.4.2x sched.c.
+      Closes: #195237.
+    - Do not warn about failing to inline functions declared in system headers.
+      Closes: #193049.
+    - Fix ICE on mips{,el} in propagate_one_insn (closes: #194330, #196091).
+    - Fix ICE on m68k in reg_overlap_mentioned_p (closes: #194749).
+    - Build crtbeginT.o on m68k (closes: #197613).
+  * Fix g++ man page symlink (closes: #196271).
+  * mips/mipsel: Depend on binutils (>= 2.14.90.0.4). Closes: #196744.
+  * Disable treelang on powerpc (again). Closes: #196915.
+  * Pass -encoding in gcj-wrapper.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 27 Jun 2003 00:14:43 +0200
+
+gcc-3.3 (1:3.3ds9-3) unstable; urgency=low
+
+  * Closing more reports, fixed in 3.2/3.3:
+    - ICE building texmacs on m68k (closes: #177433).
+    - libstdc++: <cmath> doesn't define trunc(...) (closes: #105285).
+    - libstdc++: setw is ignored for strings output (closes: #52382, #76645).
+  * Add build support to omit the manual pages and info docs from the
+    packages, disabled by default. Wait for a Debian statement, which can
+    be cited. Adresses: #193787.
+  * Reenable the m68k-const patch, don't run the g77 testsuite on m68k.
+    Addresses ICEs (#177840, #190818).
+  * Update arm-xscale patch.
+  * libstdc++: use __attribute__(__unknown__), instead of (unknown).
+    Closes: #195796.
+  * Build-Depend on glibc (>= 2.3.1) to prevent incorrect builds on woody.
+    Request from Adrian Bunk.
+  * Add treelang-update patch (Tim Josling), reenable treelang on powerpc.
+  * Add <GNU_TYPE>-{cpp,gcc,g++,gcj,g77} symlinks (addresses: #189466).
+  * Make sure not to build using binutils-2.14.90.0.[12].
+
+ -- Matthias Klose <doko@debian.org>  Mon,  2 Jun 2003 22:35:45 +0200
+
+gcc-3.3 (1:3.3ds9-2) unstable; urgency=medium
+
+  * Correct autoconf-related snafu in newly added ARM patches (Phil Blundell).
+  * Correct libgcc1 dependency (closes: #193689).
+  * Work around ldd/dpkg-shlibs failure on s390x.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 18 May 2003 09:40:15 +0200
+
+gcc-3.3 (1:3.3ds9-1) unstable; urgency=low
+
+  * gcc-3.3 final release.
+    See /usr/share/doc/gcc-3.3/NEWS.{gcc,html}.
+  * First merge of i386/x86-64 biarch support (Arnd Bergmann).
+    Disabled by default. Closes: #190066.
+  * New gpc-20030507 version.
+  * Upstream gpc update to fix netbsd build failure (closes: #191407).
+  * Add arm-xscale.dpatch, arm-10730.dpatch, arm-tune.dpatch, copied
+    from gcc-3.2 (Phil Blundell).
+  * Closing bug reports reported against older gcc versions (some of them
+    still present in Debian, but not anymore as the default compiler).
+    Usually, forwarded bug reports are linked to
+        http://gcc.gnu.org/PR<upstream bug number>
+    The upstream bug number usually can be found in the Debian reports.
+
+  * Closed reports reported against gcc-3.1.x, gcc-3.2.x and fixed in gcc-3.3:
+    - General:
+      + GCC accepts multi-line strings without \ or " " &c (closes: #2910).
+      + -print-file-name sometimes fails (closes: #161615).
+      + ICE: reporting routines re-entered (closes: #179597, #180937).
+      + Misplaced paragraph in gcc documentation (closes: #179363).
+      + Error: suffix or operands invalid for `div' (closes: #150558).
+      + builtin memcmp() could be optimised (closes: #85535).
+    - Ada:
+      + Preelaborate, exceptions, and -gnatN (closes: #181679).
+    - C:
+      + Duplicate loop conditions even with -Os (closes: #94701).
+      + ICE (signal 11) (closes: #65686).
+    - C++:
+      + C++ error on virtual function which uses ... (closes: #165829).
+      + ICE when warning about cleanup nastiness in switch statements
+        (closes: #184108).
+      + Fails to compile virtual inheritance with variable number of
+        argument method (closes: #151357).
+      + xmmintrin.h broken for c++ (closes: #168310).
+      + Stack corruption with variable-length automatic arrays and virtual
+        destructors (closes: #188527).
+      + ICE on illegal code (closes: #184862).
+      + _attribute__((unused)) is ignored in C++ (closes: #45440).
+      + g++ handles &(void *)foo bizzarely (closes: #79225).
+      + ICE (with wrong code, though) (closes: #81122).
+    - Java:
+      + Broken zip file handling (closes: #180567).
+    - ObjC:
+      + @protocol forward definitions do not work (closes: #80468).
+    - Architecture specific:
+      - alpha
+        + va_start is off by one (closes: #186139).
+        + ICE while building kseg/ddd (closes: #184753).
+        + g++ -O2 optimization error (closes: #70743).
+      - arm
+        + ICE with -O2 in change_address_1 (closes: #180750).
+        + gcc optimization error with -O2, affecting bison (closes: #185903).
+      - hppa
+        + ICE in insn_default_length (closes: #186447).
+      - ia64
+        + gcc-3.2 fails w/ optimization (closes: #178830).
+      - i386
+        + unnecessary generation of instruction cwtl (closes: #95318).
+        + {athlon} ICE building mplayer (closes: #184800).
+        + {pentium4} ICE while compiling mozilla with -march=pentium4
+          (closes: #187910).
+        + i386 optimisation: joining tests (closes: #105309).
+      - m68k
+        + ICE in instantiate_virtual_regs_1 (closes: #180493).
+        + gcc optimizer bug on m68k (closes: #64832).
+      - powerpc
+        + ICE in extract_insn, at recog.c:2175 building php3 (closes: #186299).
+        + ICE with -O -Wunreachable-code (closes: #189702).
+      - s390
+        + Operand out of range at assembly time when using -O2
+          (closes: #178596).
+      - sparc
+        + gcc-3.2 regression (wrong code) (closes: #176387).
+        + ICE in mem_loc_descriptor when optimizing (closes: #178909).
+        + ICE in gen_reg_rtx when optimizing (closes: #178965).
+        + Optimisation leads to unaligned access in memcpy (closes: #136659).
+
+  * Closed reports reported against gcc-3.0 and fixed in gcc-3.2.x:
+    - General:
+      + Use mkstemp instead of mktemp (closed: #127802).
+    - Preprocessor:
+      + Fix redundant error message from cpp (closed: #100722).
+    - C:
+      + Optimization issue on ix86 (pointless moving) (closed: #97904).
+      + Miscompilation of allegro on ix86 (closed: #105741).
+      + Fix generation of ..ng references for static aliases (alpha-linux).
+        (closed: #108036).
+      + ICE compiling pari on hppa (closed: #111613).
+      + ICE on ia64 in instantiate_virtual_regs_1 (closed: #121668).
+      + ICE in c-typeck.c (closed: #123687).
+      + ICE in gen_subprogram_die on alpha (closed: #127890).
+      + SEGV in initialization of flexible char array member (closed: #131399).
+      + ICE on arm compiling lapack (closed: #135967).
+      + ICE in incomplete_type_error (closed: #140606).
+      + Fix -Wswitch (also part of -Wall) (closed: #140995).
+      + Wrong code in mke2fs on hppa (closed: #150232).
+      + sin(a) * sin(b) gives wrong result (closed: #164135).
+    - C++:
+      + Error in std library headers on arm (closed: #107633).
+      + ICE nr. 19970302 (closed: #119635).
+      + std::wcout does not perform encoding conversions (closed: #128026).
+      + SEGV, when compiling iostream.h with -fPIC (closed: #134315).
+      + Fixed segmentation fault in included code for <rope> (closed: #137017).
+      + Fix with exception handling and -O (closed: #144232).
+      + Fix octave-2.1 build failure on ia64 (closed: #144584).
+      + nonstandard overloads in num_get facet (closed: #155900).
+      + ICE in expand_end_loop with -O (closed: #158371).
+    - Fortran:
+      + Fix blas build failure on arm (closed: #137959).
+    - Java:
+      + Interface members are public by default (closed: #94974).
+      + Strange message with -fno-bounds-check in combination with -W.
+        (closed: #102353).
+      + Crash in FileWriter using IOException (closed: #116128).
+      + Fix ObjectInputStream.readObject() calling constructors.
+        (closed: #121636).
+      + gij: better error reporting on `class not found' (closed: #125649).
+      + Lockup during .java->.class compilation (closed: #141899).
+      + Compile breaks using temporary inner class instance (closed: #141900).
+      + Default constructor for inner class causes broken bytecode.
+        (closed: #141902).
+      + gij-3.2 linked against libgcc1 (closed: #165180).
+      + gij-wrapper understands -classpath parameter (closed: #146634).
+      + gij-3.2 doesn't ignore -jar when run as "java" (closed: #167673).
+    - ObjC:
+      + ICE on alpha (closed: #172353).
+
+  * Closed reports reported against gcc-2.95 and fixed in newer versions:
+    - General:
+      + Undocumented option -pthread (closes: #165110).
+      + stdbool.h broken (closes: #167439).
+      + regparm/profiling breakage (closes: #20695).
+      + another gcc optimization error (closes: #51456).
+      + ICE in `output_fix_trunc' (closes: #55967).
+      + Fix "Unable to generate reloads for" (closes: #58219, #131890).
+      + gcc -c -MD x/y.c -o x/y.o leaves y.d in cwd (closes: #59232).
+      + Compiler error with -O2 (closes: #67631).
+      + ICE (unrecognizable insn) compiling php4 (closes: #83550, #84969).
+      + Another ICE (closes: #90666).
+      + man versus info inconsistency (-W and -Wall) (closes: #93708).
+      + ICE on invalid extended asm (closes: #136630).
+      + ICE in `emit_no_conflict_block' compiling perl (closes: #154599).
+      + ICE in `gen_tagged_type_instantiation_die'(closes: #166766).
+      + ICE on __builtin_memset(s, 0, -1) (closes: #170994).
+      + -Q option to gcc appears twice in the documentation (closes: #137382).
+      + New options for specifying targets:- -MQ and -MT (closes: #27878).
+      + Configure using --enable-nls (closes: #51651).
+      + gcc -dumpspecs undocumented (closes: #65406).
+    - Preprocessor:
+      + cpp fails to parse macros with varargs correctly(closes: #154767).
+      + __VA_ARGS__ stringification crashes preprocessor if __VA_ARGS__ is
+        empty (closes: #152709).
+      + gcc doesn't handle empty args in macro function if there is only
+        one arg(closes: #156450).
+    - C:
+      + Uncaught floating point exception causes ICE (closes: #33786).
+      + gcc -fpack-struct doesn't pack structs (closes: #64628).
+      + ICE in kernel (matroxfb) code (closes: #151196).
+      + gcc doesn't warn about unreachable code (closes: #158704).
+      + Fix docs for __builtin_return_address(closes: #165992).
+      + C99 symbols in limits.h not defined (closes: #168346).
+      + %zd printf spec generates warning, even in c9x mode (closes: #94891).
+      + Update GCC attribute syntax (closes: #12253, #43119).
+    - C++ & libstdc++-v3:
+      + template and virtual inheritance bug (closes: #152315).
+      + g++ has some troubles with nested templates (closes: #21255).
+      + vtable thunks implementation is broken (closes: #34876, #35477).
+      + ICE for templated friend (closes: #42662).
+      + ICE compiling mnemonic (closes: #42989).
+      + Deprecated: result naming doesn't work for functions defined in a
+        class (closes: #43170).
+      + volatile undefined ... (closes: #50529).
+      + ICE concerning templates (closes: #53698).
+      + Program compiled -O3 -malign-double segfaults in ofstream::~ofstream
+        (closes: #56867).
+      + __attribute__ ((constructor)) doesn't work with C++ (closes: #61806).
+      + Another ICE (closes: #65687).
+      + ICE in `const_hash' (closes: #72933).
+      + ICE on illegal code (closes: #83221).
+      + Wrong code with -O2 (closes: #83363).
+      + ICE on template class (closes: #85934).
+      + No warning for missing return in non-void member func (closes: #88260).
+      + Not a bug/fixed in libgcc1: libgcc.a symbols end up exported by
+        shared libraries (closes: #118670).
+      + ICE using nested templates (closes: #118781).
+      + Another ICE with templates (closes: #127489).
+      + More ICEs (closes: #140427, #141797).
+      + ICE when template declared after use(closes: #148603).
+      + template function default arguments are not handled (closes: #157292).
+      + Warning when including stl.h (closes: #162074).
+      + g++ -pedantic-errors -D_GNU_SOURCE cannot #include <complex>
+        (closes: #151671).
+      + c++ error message improvement suggestion (closes: #46181).
+      + Compilation error in stl_alloc.h with -fhonor-std (closes: #59005).
+      + libstdc++ has no method at() in stl_= (closes: #68963).
+    - Fortran:
+      + g77 crash (closes: #130415).
+    - ObjC:
+      + ICE: program cc1obj got fatal signal 11 (closes: #62309).
+      + Interface to garbage collector is undocumented. (closes: #68987).
+    - Architecture specific:
+      - alpha
+        + Can't compile with define gnu_source with stdio and curses
+          (closes: #97603).
+        + Header conflicts on alpha (closes: #134558).
+        + lapack-dev: cannot link on alpha (closes: #144602).
+        + ICE `fixup_var_refs_1' (closes: #43001).
+        + Mutt segv on viewing list of attachments (closes: #47981).
+        + ICE building open-amulet (closes: #48530).
+        + ICE compiling hatman (closes: #55291).
+        + dead code removal in switch() broken (closes: #142844).
+      - arm
+        + Miscompilation using -fPIC on arm (closes: #90363).
+        + infinite loop with -O on arm (closes: #151675).
+      - i386
+        + ICE when using -mno-ieee-fp and -march=i686 (closes: #87540).
+      - m68k
+        + Optimization (-O2) broken on m68k (closes: #146006).
+      - mips
+        + g++ exception catching does not work... (closes: #105569).
+        + update-menus gets Bus Error (closes: #120333).
+      - mipsel
+        + aspell: triggers ICE on mipsel (closes: #128367).
+      - powerpc
+        + -O2 produces wrong code (gnuchess example) (closes: #131454).
+      - sparc
+        + Misleading documentation for -malign-{jump,loop,function}s
+          (closes: #114029).
+        + Sparc GCC issue with -mcpu=ultrasparc (closes: #172956).
+        + flightgear: build failure on sparc (closes: #88694).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 16 May 2003 07:13:57 +0200
+
+gcc-3.3 (1:3.3ds8-0pre9) unstable; urgency=high
+
+  * gcc-3.3 second prerelease.
+    - Fixing exception handling on s390 (urgency high).
+  * Reenabled gpc build (I had it disabled ...). Closes: #192347.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  9 May 2003 07:32:14 +0200
+
+gcc-3.3 (1:3.3ds8-0pre8) unstable; urgency=low
+
+  * gcc-3.3 prerelease.
+    - Fixes gcj ICE (closes: #189545).
+  * For libstdc++ use the i486 atomicity implementation, introduced with
+    0pre6, left out in 0pre7 (closes: #191684).
+  * Add README.Debian for treelang (closes: #190812).
+  * Apply NetBSD changes (Joel Baker). Closes: #191551.
+  * New symbols in libgcc1, tighten the shlibs dependency.
+  * Disable testsuite run on mips/mipsel because of an outdated libc-dev
+    package.
+  * Do not build libffi with debug information, although configuring
+    with --enable-debug.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  6 May 2003 06:53:49 +0200
+
+gcc-3.3 (1:3.3ds7-0pre7) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030429).
+  * Revert upstream libstdc++ change (closes: #191145, #191147, #191148,
+    #191149, #149159, #149151, and other reports).
+    Sorry for not detecting this before the upload, seems to be
+    broken on i386 "only".
+  * hurd-i386: Use /usr/include, not /include.
+  * Disable gpc on hurd-i386 (closes: #189851).
+  * Disable building the debug version of libstdc++ on powerpc-linux
+    (fixes about 200 java test cases).
+  * Install libstdc++v3 man pages (closes: #127263).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 29 Apr 2003 23:28:44 +0200
+
+gcc-3.3 (1:3.3ds6-0pre6) unstable; urgency=high
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030426).
+  * libstdc++-doc: Fix index.html link (closes: #189424).
+  * Revert back to the i486 atomicity implementation, that was used
+    for gcc-3.2 as well. Reopens: #184446, #185662. Closes: #189983.
+    For this reason, tighten the libstdc++5 shlibs dependency. See
+    http://lists.debian.org/debian-devel/2003/debian-devel-200304/msg01895.html
+    Don't build the ix86 specfic libstdc++ libs anymore.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 27 Apr 2003 19:47:54 +0200
+
+gcc-3.3 (1:3.3ds5-0pre5) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030415).
+  * Disable treelang on powerpc.
+  * Disable gpc on m68k.
+  * Install locale data. Conflict with gcc-3.2 (<= 1:3.2.3-0pre8).
+  * Fix generated bits/atomicity.h (closes: #189183).
+  * Tighten libgcc1 shlibs dependency (new symbol _Unwind_Backtrace).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 16 Apr 2003 00:37:05 +0200
+
+gcc-3.3 (1:3.3ds4-0pre4) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030412).
+  * Avoid sparc64 dependencies for libgcc1 on sparc (Clint Adams).
+  * Make the default sparc 32bit target v8 instead of v7. This mainly
+    enables hardmul, which should speed up v8 and v9 systems by a large
+    margin (Ben Collins).
+  * Tighten binutils dependency for sparc.
+  * On i386, build libstdc++ optimized for i486 and above. The library
+    in /usr/lib is built for i386. Closes: #184446, #185662.
+  * Add gpc build (from gcc-snapshot package).
+  * debian/control: Include all packages, that _can_ be built from
+    this source package (except the cross packages).
+  * Add m68k patches: m68k-const, m68k-subreg, m68k-loop.
+  * Run the 3.3 testsuite a second time with the installed gcc-3.2
+    to check for regressions (promised, only this time, and for the
+    final release ;). Add build dependencies (gobjc-3.2, g77-3.2, g++-3.2).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 12 Apr 2003 10:11:11 +0200
+
+gcc-3.3 (1:3.3ds3-0pre3) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030331).
+  * Reenable java on arm.
+  * Build-Depend on binutils-2.13.90.0.18-1.3 on m68k. Fixes all
+    bprob/gcov testsuite failures.
+  * Enable C++ build on arm.
+  * Enable the sparc64 build.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 31 Mar 2003 23:24:54 +0200
+
+gcc-3.3 (1:3.3ds2-0pre2) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030317).
+  * Disable building the gcc-3.3-nof package.
+  * Disable Ada on mips and mipsel.
+  * Remove the workaround to build Ada on powerpc.
+  * Add GNU Free documentation license to copyright file.
+  * Update the sparc64 build patches (Clint Adams). Not yet enabled.
+  * Disable C++ on arm (Not yet tested).
+  * Add fix for ICE on powerpc (see: #184684).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 Mar 2003 21:40:57 +0100
+
+gcc-3.3 (1:3.3ds1-0pre1) unstable; urgency=low
+
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030310).
+  * Add gccbug manpage.
+  * Don't build libgnat package (no shared library).
+  * Configure with --enable-sjlj-exceptions on hppa and m68k for
+    binary compatibility with libstdc++ built with gcc-3.2.
+  * Disable Java on arm-linux (never seen it sucessfully bootstrap).
+  * Install non-conflicting baseline README.
+  * multilib *.so and *.a moved to /usr/lib/gcc-lib/... , so that several
+    compiler versions can be installed concurrently.
+  * Remove libstdc++-incdir patch applied upstream.
+  * libstdc++ 64 bit development files now handled in -dev target.
+    (Gerhard Tonn)
+  * Drop build dependencies for gpc (tetex-bin, help2man, libncurses5-dev).
+  * Add libstdc++5-3.3-dev confict to libstdc++5-dev (<= 1:3.2.3-0pre3).
+  * Enable builds on m68k (all but C++ for the moment). gcc-3.3 bootstraps,
+    while gcc-3.2 doesn't.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 10 Mar 2003 23:41:00 +0100
+
+gcc-3.3 (1:3.3ds0-0pre0) unstable; urgency=low
+
+  * First gcc-3.3 package, built for s390 only. All other architectures
+    build the gcc-3.3-base package only.
+    To build the package on other architectures, edit debian/rules.defs
+    (macro no_dummy_archs).
+  * gcc-3.3 prerelease taken from the gcc-3_3-branch (CVS 20030301).
+  * Don't include the gcc locale files (would conflict with 3.2).
+  * Remove libffi-install-fix patch.
+  * Fix netbsd-i386 patches.
+  * Change priority of libstdc++5 and gcc-3.2-base to important.
+  * Install gcjh-wrapper for javah.
+  * gij suggests fastjar, gcj recommends fastjar.
+  * Allow builds using automake1.4 | automake (<< 1.5).
+  * Backport fix for to output more correct line numbers.
+  * Add help2man to build dependencies needed for some gpc man pages.
+  * gpc: Install binobj and gpidump binaries and man pages.
+  * Apply cross compilation patches submitted by Bastian Blank.
+  * Replace s390-biarch patch and copy s390-config-ml patch from 3.2
+    (Gerhard Tonn).
+  * Configure using --enable-debug.
+  * Add infrastructure to only build a subset of binary packages.
+  * Rename libstdc++-{dev,dbg,pic,doc} packages.
+  * Build treelang compiler.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  1 Mar 2003 12:56:42 +0100
+
+gcc-3.2 (1:3.2.3ds2-0pre3) unstable; urgency=low
+
+  * gcc-3.2.3 prerelease (CVS 20030228)
+    - Fixes bootstrap failure on alpha-linux.
+    - Fixes ICE on m68k (closes: #177016).
+  * Build Pascal with -O1 on powerpc, disable Pascal on arm, m68k and
+    sparc (due to wrong code generation for fwrite in glibc,
+    see PR optimization/9279).
+  * Apply cross compilation patches submitted by Bastian Blank.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 28 Feb 2003 20:26:30 +0100
+
+gcc-3.2 (1:3.2.3ds1-0pre2) unstable; urgency=medium
+
+  * gcc-3.2.3 prerelease (CVS 20030221)
+    - Fixes ICE on hppa (closes: #181813).
+  * Patch for ffitest in s390-java.dpatch deleted, since already fixed
+    upstream. (Gerhard Tonn)
+  * Build crtbeginT.o on m68k-linux (closes: #179807).
+  * Install gcjh-wrapper for javah (closes: #180218).
+  * gij suggests fastjar, gcj recommends fastjar (closes: #179298).
+  * Allow builds using automake1.4 | automake (<< 1.5) (closes: #180048).
+  * Backport fix for to output more correct line numbers (closes: #153965).
+  * Add help2man to build dependencies needed for some gpc man pages.
+  * gpc: Install binobj and gpidump binaries and man pages.
+  * Disable gpc on arm due to wrong code generation for fwrite in
+    glibc (see PR optimization/9279).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 22 Feb 2003 19:58:20 +0100
+
+gcc-3.2 (1:3.2.3ds0-0pre1) unstable; urgency=low
+
+  * gcc-3.2.3 prerelease (CVS 20030210)
+    - Fixes long millicode calls on hppa (closes: #180520)
+  * New gpc-20030209 version.  Remove gpc-update.dpatch and gpc-testsuite.dptch
+    as they are no longer needed.
+  * Fix netbsd-i386 patches (closes: #180129, #179931)
+  * m68k-bootstrap.dpatch: backport gcse.c changes from 3.3/MAIN to 3.2
+  * Change priority of libstdc++5 and gcc-3.2-base to important.
+
+ -- Ryan Murray <rmurray@debian.org>  Tue, 11 Feb 2003 06:18:09 -0700
+
+gcc-3.2 (1:3.2.2ds8-1) unstable; urgency=low
+
+  * gcc-3.2.2 release.
+    - Fixes ICE, regression from 2.95 (closes: #176117).
+    - Fixes ICE, regression from 2.95 (closes: #179161).
+  * libstdc++ for biarch installs now upstream to usr/lib64,
+    therefore mv usr/lib/64 usr/lib64 no longer necessary. (Gerhard Tonn)
+
+ -- Ryan Murray <rmurray@debian.org>  Wed,  5 Feb 2003 01:35:29 -0700
+
+gcc-3.2 (1:3.2.2ds7-0pre8) unstable; urgency=low
+
+  * gcc-3.2.2 prerelease (CVS 20030130).
+  * update s390 libffi patch
+  * debian/control: add myself to uploaders and change libc12-dev depends to
+    libc-dev on i386 (closes: #179128)
+  * Build-Depend on procps so that ps is available for logwatch
+
+ -- Ryan Murray <rmurray@debian.org>  Fri, 31 Jan 2003 04:00:15 -0700
+
+gcc-3.2 (1:3.2.2ds6-0pre7) unstable; urgency=low
+
+  * gcc-3.2.2 prerelease (CVS 20030128).
+    - Update needed for hppa.
+    - Fixes ICE on arm, regression from 2.95.x (closes: #168086).
+    - Can use default bison (1.875).
+  * Apply netbsd build patches (closes: #177674, #178328, #178325,
+    #178326, #178327).
+  * Run the logwatch script on "slow" architectures (arm, m68k) only.
+  * autoreconf.dpatch: Only update libtool.m4, which is newer conceptually
+    than libtool 1.4 (Ryan Murray).
+  * Apply autoreconf patch universally (Ryan Murray).
+  * More robust gij/gcj wrapper scripts, include /usr/lib/jni in default
+    JNI search path (Ben Burton). Closes: #167932.
+  * Build crtbeginT.o on m68k (closes: #177036).
+  * Fixed libc-dev source dependency (closes: #178602).
+  * Tighten shlib dependency to the current package version; should be
+    1:3.2.2-1 for the final release (closes: #178867).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 28 Jan 2003 21:59:30 +0100
+
+gcc-3.2 (1:3.2.2ds5-0pre6) unstable; urgency=low
+
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20030123).
+  * Build locales needed by the libstdc++ testsuite.
+  * Update config.{guess,sub} files from autotools-dev (closes: #177674).
+  * Disable Ada and Java on netbsd-i386 (closes: #177679).
+  * gnat: Add suggests for gnat-doc and ada-reference-manual.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 23 Jan 2003 22:16:53 +0100
+
+gcc-3.2 (1:3.2.2ds4-0pre5.1) unstable; urgency=low
+
+  * Readd build dependency `locales' on arm.  locales is now installable
+  * Add autoreconf patch for mips{,el}. (closes: #176311)
+
+ -- Ryan Murray <rmurray@debian.org>  Wed, 22 Jan 2003 14:31:14 -0800
+
+gcc-3.2 (1:3.2.2ds4-0pre5) unstable; urgency=low
+
+  * Remove build dependency `libc6-dev-sparc64 [sparc]' for now.
+  * Remove build dependency `locales' on arm. locales is uninstallable
+    on arm due to the missing glibc-2.3.
+  * Use bison-1.35. bison-1.875 causes an hard error on the reduce/reduce
+    conflict in objc-parse.y.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 10 Jan 2003 10:10:43 +0100
+
+gcc-3.2 (1:3.2.2ds4-0pre4) unstable; urgency=low
+
+  * Try building with gcc-2.95 on m68k-linux. Building gcc-3.2 with gcc-3.2
+    does not work for me. m68k-linux doesn't look good at all ...
+  * Fix s390 build error.
+  * Add locales to build dependencies. A still unsolved issue is the
+    presence of the locales de_DE, en_PH, en_US, es_MX, fr_FR and it_IT,
+    or else some tests in the libstdc++ testsuite will fail.
+  * Put all -nof files in the -nof package (closes: #175253).
+  * Correctly exit logwatch script (closes: #175251).
+  * Install linker-map.gnu file for libstdc++_pic (closes: #175144).
+  * Install versioned gpcs docs only (closes: #173844).
+  * Include gpc test results in gpc package.
+  * Link local libstdc++ documentation to local source-level documentation.
+  * Clarify libstdc++ description (so version and library version).
+    Closes: #175799.
+  * Include library in libstdc++-dbg package (closes: #176005).
+
+ -- Matthias Klose <doko@debian.org>  Wed,  8 Jan 2003 23:39:50 +0100
+
+gcc-3.2 (1:3.2.2ds3-0pre3) unstable; urgency=low
+
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021231).
+    - Fix loop count computation for preconditioned unrolled loops.
+      Closes: #162919.
+    - Fix xmmintrin.h (_MM_TRANSPOSE4_PS) CVS 20021027 (closes: #163647).
+    - Fix [PR 8601] strlen/template interaction causes ICE CVS 20021201.
+      Closes: #166143.
+  * Watch the log files, which are written during the testsuite runs and print
+    out a message, if there is still activity. No more buildd timeouts on arm
+    and m68k ...
+  * Remove gpc's reference to librx1g-dev package (closes: #172953).
+  * Remove trailing dots on package descriptions.
+  * Fix external reference to cpp.info in gcc.info (closes: #174598).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 31 Dec 2002 13:47:52 +0100
+
+gcc-3.2 (1:3.2.2ds2-0pre2) unstable; urgency=medium
+
+  * Friday, 13th upload, so what do you expect ...
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021212).
+  * Fix gnat build (autobuild maintainers: please revert back to gnat-3.2
+    (<= 1:3.2.1ds6-1) for building gnat-3.2, if the build fails building
+    gnatlib and gnattools).
+  * Really disable sparc64 support.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 13 Dec 2002 00:26:37 +0100
+
+gcc-3.2 (1:3.2.2ds1-0pre1) unstable; urgency=low
+
+  * A candidate for the transition ...
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021210).
+    - doc/invoke.texi: Remove last reference to -a (closes: #171748).
+  * Disable sparc64 support. For now please use egcs64 to build sparc64
+    kernels.
+  * Disable Pascal on the sparc architecture (doesn't bootstrap).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 10 Dec 2002 22:33:13 +0100
+
+gcc-3.2 (1:3.2.2ds0-0pre0) unstable; urgency=low
+
+  * gcc-3.2 snapshot taken from the gcc-3_2-branch (CVS 20021202).
+    - Should fix _Pragma expansion within macros (closes: #157416).
+  * New gpc-20021128 version. Run check using EXTRA_TEST_PFLAGS=-g0
+  * Add tetex-bin to build dependencies (gpc needs it). Closes: #171203.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 Dec 2002 08:22:33 +0100
+
+gcc-3.2 (1:3.2.1ds6-1) unstable; urgency=low
+
+  * gcc-3.2.1 final release.
+  * Build gpc-20021111 for all architectures. hppa and i386 are
+    known to work. For the other architectures, send the usual FTBFS ...
+    WARNING: this gpc version is an alpha version, especially debug info
+    doesn't work well, so use -g0 for compiling. If you need a stable
+    gpc compiler, use gpc-2.95.
+  * Encode the gpc upstream version in the package name, the gpc release
+    date in the version number (requested by gpc upstream).
+  * Added libncurses5-dev and libgmp3-dev as build dependencies for the
+    gpc tests and runtime.
+  * Clean CVS files as well (closes: #169101).
+  * s390-biarch.dpatch added, backported from CVS (Gerhard Tonn).
+  * s390-config-ml.dpatch added, disables biarch for java,
+    libffi and boehm-gc on s390. They need a 64 bit runtime
+    during build which is not yet available on s390 (Gerhard Tonn).
+  * Biarch support for packaging adapted (Gerhard Tonn).
+    biarch variable added and with-sparc64 variable substituted in
+    most places by biarch.
+    dh_shlibdeps is applied only to 32 bit libraries on s390, since
+    ldd for 64 bit libraries don't work on 32 bit runtime.
+    Build dependency to libc6-dev-s390x added.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Nov 2002 00:20:58 +0100
+
+gcc-3.2 (1:3.2.1ds5-0pre6) unstable; urgency=medium
+
+  * gcc-3.2.1 prerelease.
+  * Removed arm patch integrated upstream.
+  * Adjust gnat build dependency (closes: #167116).
+  * Always configure with --enable-clocale=gnu. The autobuilders do have
+    locales installed, but not generated the "de_DE" locale needed for
+    the autoconf test in libstdcc++-v3/aclocal.m4.
+  * libstdc++ documentaion: Don't compresss '*.txt' referenced by html pages.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Nov 2002 07:19:44 +0100
+
+gcc-3.2 (1:3.2.1ds4-0pre5) unstable; urgency=medium
+
+  * gcc-3.2.1 snapshot (CVS 20021103).
+  * sparc64-build.dpatch: Updated. Lets sparc boostrap again.
+  * s390-loop.dpatch removed, already fixed upstream (Gerhard Tonn).
+  * bison.dpatch: Removed, patch submitted upstream.
+  * backport-java-6865.dpatch: Apply again during build.
+  * Tighten glibc dependency (closes: #166703).
+
+ -- Matthias Klose <doko@debian.org>  Sun,  3 Nov 2002 12:22:02 +0100
+
+gcc-3.2 (1:3.2.1ds3-0pre4) unstable; urgency=high
+
+  * gcc-3.2.1 snapshot (CVS 20021020).
+    - Expansion of _Pragma within macros fixed (closes: #157416).
+  * FTBFS: With the switch to bison-1.50 (and 1.75), gcc-3.2 fails to build from
+    source on Debian unstable systems. This is fixed in gcc HEAD, but not on
+    the current release branch.
+    HELP NEEDED:
+    - check what is missing from the patches in debian/patches/bison.dpatch.
+      This is a backport of the bison related patches, but showing regressions
+      in the gcc testsuite, so it cannot be applied.
+    - build gcc using byacc (bootstrap currently fails using byacc).
+    - build bison-1.35 in it's own package (the current 1.35-3 package fails
+      to build form source).
+    - and finally ask upstream to backport the patch to the branch. It's not
+      helpful not beeing able to follow the stable branch. Maybe we should
+      just switch to gcc HEAD as BSD does ...
+    As a terrible workaround, build the sources from CVS first on a machine,
+    with bison-1.35 installed, then package the tarball, so the bison
+    generated files are not rebuilt.
+
+  * re-add lost patch: configure with --enable-__cxa_atexit (closes: #163422),
+    Therefore urgency high.
+  * gcj-wrapper, gij-wrapper: Accept names starting with `.' (closes: #163172,
+    #164009).
+  * Point g++ manpage to correct g++ version (closes: #162843).
+  * Support for i386-freebsd-gnu (closes: #163883).
+  * s390-java.dpatch replaced with backport from cvs head (Gerhard Tonn).
+  * Disable the testsuite run on the Hurd (closes: #159650).
+  * s390-loop.dpatch added, fixes runtime problem (Gerhard Tonn).
+  * debian/patches/bison.dpatch: Backport for bison-1.75 compatibility.
+    Don't use it due to regressions.
+  * debian/patches/backport-java-6865.dpatch: Directly applied in the
+    included tarball because of bison problems.
+  * Make fixincludes priority optional, so linda can depend on it.
+  * Tighten binutils dependency.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 20 Oct 2002 10:52:49 +0200
+
+gcc-3.2 (1:3.2.1ds2-0pre3) unstable; urgency=low
+
+  * gcc-3.2.1 snapshot (CVS 20020923).
+  * Run the libstdc++ check-abi script. Results are put into the file
+    /usr/share/doc/libstdc++5/README.libstdc++-baseline in the libstdc++5-dev
+    package. This file contains a new baseline, if no baseline for this
+    architecture is included in the gcc sources.
+  * gcj-wrapper: Accept files starting with an underscore, accept
+    path names (closes: #160859, #161517).
+  * Explicitely call automake-1.4 when rebuilding Makefiles (closes: #161438).
+  * Let installed fixincludes script find files in /usr/lib/fixincludes.
+  * debian/rules.patch: Add .NOTPARALLEL as target, so that patches are
+    applied sequentially (closes: #159395).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 24 Sep 2002 07:36:56 +0200
+
+gcc-3.2 (1:3.2.1ds1-0pre2) unstable; urgency=low
+
+  * gcc-3.2.1 snapshot (CVS 20020913). Welcome back m68k in bootstrap land!
+  * Fix arm-tune.dpatch (closes: #159354).
+  * Don't overwrite LD_LIBRARY_PATH in build (closes: #158459).
+  * --disable-__cxa_atexit on NetBSD (closes: #159620).
+  * Reenable installation of message catalogs (disabled in 3.2-0pre2).
+    Closes: #160175.
+  * Ben Collins
+    - Re-enable sparc64 build. This time, it's part of the default compiler.
+      I have disabled 64/alt libraries as they are too much overhead. All
+      libraries build 64bit, but currently only libgcc/libstdc++ include the
+      64bit libraries.
+    Closes: #160404.
+  * Depend on autoconf2.13, instead of autoconf.
+  * Phil Blundell
+    - debian/patches/arm-update.dpatch: Fix python2.2 build failure.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  7 Sep 2002 08:05:02 +0200
+
+gcc-3.2 (1:3.2.1ds0-0pre1) unstable; urgency=medium
+
+  * gcc-3.2.1 snapshot (CVS 20020829).
+    New g++ option -Wabi:
+      Warn when G++ generates code that is probably not compatible with the
+      vendor-neutral C++ ABI.  Although an effort has been made to warn about
+      all such cases, there are probably some cases that are not warned about,
+      even though G++ is generating incompatible code.  There may also be
+      cases where warnings are emitted even though the code that is generated
+      will be compatible.
+    The current version of the ABI is 102, defined by the __GXX_ABI_VERSION
+    macro.
+  * debian/NEWS.*: Updated.
+  * Fix libstdc++-dev dependency on libc-dev for the Hurd (closes: #157004).
+  * Add versioned expect build dependency.
+  * Tighten binutils dependency to 2.13.90.0.4.
+  * debian/patches/arm-tune.dpatch: Increase stack limit for configure.
+  * 3.2-0pre4 did build gnat-3.2 compilers for all architectures. Build-Depend
+    on gnat-3.2 now (closes: #156734).
+  * Remove bashism's in gcj-wrapper (closes: #157982).
+  * Add -cp and -classpath options to gij(1). Backport from HEAD (#146634).
+  * Add fastjar documentation.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 30 Aug 2002 10:35:00 +0200
+
+gcc-3.2 (1:3.2ds0-0pre4) unstable; urgency=low
+
+  * Correct build dependency on gnat-3.1.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 12 Aug 2002 01:21:58 +0200
+
+gcc-3.2 (1:3.2ds0-0pre3) unstable; urgency=low
+
+  * gcc-3.2 upstream prerelease.
+  * Disable all configure options, which are standard:
+    --enable-threads=posix --enable-long-long, --enable-clocale=gnu
+
+ -- Matthias Klose <doko@debian.org>  Fri,  9 Aug 2002 21:59:08 +0200
+
+gcc-3.2 (1:3.2ds0-0pre2) unstable; urgency=low
+
+  * gcc-3.2 snapshot (CVS 20020802).
+  * Fix g++-include dir.
+  * Don't install the locale files (temporarily, until we don't build
+    gcc-3.1 anymore).
+  * New package libgcj-common to avoid conflict with classpath package.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  3 Aug 2002 09:08:34 +0200
+
+gcc-3.2 (1:3.2ds0-0pre1) unstable; urgency=low
+
+  * gcc-3.2 snapshot (CVS 20020729).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 29 Jul 2002 20:36:54 +0200
+
+gcc-3.1 (1:3.1.1ds3-1) unstable; urgency=low
+
+  * gcc-3.1.1 release. Following this release we will have a gcc-3.2
+    release soon, which is gcc-3.1.1 plus some C++ ABI changes. Once
+    gcc-3.2 hits the archives, gcc-3.1.1 will go away.
+  * Don't build the sparc64 compiler. The packaging/patches are
+    currently broken.
+  * Add missing headers on m68k and powerpc.
+  * Install libgcc_s_nof on powerpc.
+  * Install libffi's copyright and doc files (closes: #152198).
+  * Remove dangling symlink (closes: #149002).
+  * libgcj3: Add a conflict to the classpath package (closes: #148664).
+  * README.C++: Fix URLs.
+  * libstdc++-dbg: Install into /usr/lib/debug, document it.
+  * backport-java-6865.dpatch: backport from HEAD.
+  * Fix typo in gcj docs (closes: #148890).
+  * Change libstdc++ include dir: /usr/include/c++/3.1.
+  * libstdc++-codecvt.dpatch: New patch (closes: #149776).
+  * Build libstdc++-pic package.
+  * Move 64bit libgcc in its own package libgcc1-64 (closes: #147249).
+  * Tighten glibc dependency.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 29 Jul 2002 00:34:49 +0200
+
+gcc-3.1 (1:3.1.1ds2-0pre3) unstable; urgency=low
+
+  * Updated to CVS 2002-06-06 (gcc-3_1-branch).
+  * Updated s390-java patch (Gerhard Tonn).
+  * Don't use -O in STAGE1_FLAGS on m68k.
+  * Fix `-classpath' option in gcj-wrapper script (closes: #150142).
+  * Remove g++-cxa-atexit patch, use --enable-__cxa_atexit configure option.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  3 Jul 2002 23:52:58 +0200
+
+gcc-3.1 (1:3.1.1ds1-0pre2) unstable; urgency=low
+
+  * Updated to CVS 2002-06-06 (gcc-3_1-branch), fixing an ObjC regression.
+  * Welcome m68k to bootstrap land (thanks to Andreas Schwab).
+  * Add javac wrapper for gcj-3.1 (Michael Koch).
+  * Remove dangling symlink in /usr/share/doc/gcc-3.1 (closes: #149002).
+
+ -- Matthias Klose <doko@debian.org>  Fri,  7 Jun 2002 00:26:05 +0200
+
+gcc-3.1 (1:3.1.1ds0-0pre1) unstable; urgency=low
+
+  * Updated to CVS 2002-05-31 (gcc-3_1-branch).
+  * Change priorities from fastjar and gij-wrapper-3.1 from 30 to 31.
+  * Update arm-tune patch.
+  * Install xmmintrin.h header on i386 (closes: #148181).
+  * Install altivec.h header on powerpc.
+  * Call correct gij in gij-wrapper (closes: #148662, #148682).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 29 May 2002 22:47:40 +0200
+
+gcc-3.1 (1:3.1ds2-2) unstable; urgency=low
+
+  * Tighten binutils dependency.
+  * Fix libstdc include dir for multilibs (Dan Jacobowitz).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 21 May 2002 08:03:49 +0200
+
+gcc-3.1 (1:3.1ds2-1) unstable; urgency=low
+
+  * GCC 3.1 release.
+  * Ada cannot be built by the autobuilders for the first time. Do it by hand.
+    gnatgcc and gnatbind need to be in the PATH.
+  * Build with CC=gnatgcc, when building the Ada compiler.
+  * Hurd fixes.
+  * Don't build the sparc64 compiler; the hack isn't up to date and glibc
+    isn't converted to use /lib64 and /usr/lib64.
+  * m68k-linux shows bootstrap comparision failures. If you want to build
+    the compiler anyway and ignore the bootstrap comparision failure, edit
+    debian/rules.patch and uncomment the patch to ignore the failure. See
+    /usr/share/doc/gcc-3.1/BOOTSTRAP_COMPARISION_FAILURE for the differences.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 May 2002 09:53:00 +0200
+
+gcc-3.1 (1:3.1ds1-0pre6) unstable; urgency=low
+
+  * Build from the "final prerelease" tarball (gcc-3.1-20020508.tar.gz).
+  * Build gnat-3.1-doc package.
+  * Build fastjar package without building java packages.
+  * Hurd fixes.
+  * Updated sparc64-build patch.
+  * Add s390-ada patch (Gerhard Tonn).
+  * Undo the dwarf2 support for hppa from -0pre5.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  9 May 2002 17:21:09 +0200
+
+gcc-3.1 (1:3.1ds0-0pre5) unstable; urgency=low
+
+  * Use /usr/include/g++-v3-3.1 as C++ include dir.
+  * Update s390-java patch (Gerhard Tonn).
+  * Tighten binutils dependency (gas patch for m68k-linux).
+  * Use gnat-3.1 as the gnat package name (as found in gcc/ada/gnatvsn.ads).
+  * dwarf2 support hppa: a snapshot of the gcc/config/pa directory
+    from the trunk dated 2002-05-02.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  3 May 2002 22:51:37 +0200
+
+gcc-3.1 (1:3.1ds0-0pre4) unstable; urgency=low
+
+  * Use gnat-5.00w as the gnat package name (as found in gcc/ada/gnatvsn.ads).
+  * Don't build the shared libgnat library. It assumes an existing shared
+    libiberty library.
+  * Don't install the libgcjgc library.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 25 Apr 2002 08:48:04 +0200
+
+gcc-3.1 (1:3.1ds0-0pre3) unstable; urgency=low
+
+  * Build fastjar on all architectures.
+  * Update m68k patches.
+  * Update s390-java patch (Gerhard Tonn).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Apr 2002 15:34:47 +0200
+
+gcc-3.1 (1:3.1ds0-0pre2) unstable; urgency=low
+
+  * Add Ada support. To successfully build, a working gnatbind and gcc
+    driver with Ada support is needed.
+  * Apply needed arm patches from 3.0.4.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  6 Apr 2002 13:17:08 +0200
+
+gcc-3.1 (1:3.1ds0-0pre1) unstable; urgency=low
+
+  * First try for gcc-3.1.
+
+ -- Matthias Klose <doko@debian.org>  Mon,  1 Apr 2002 23:39:30 +0200
+
+gcc-3.0 (1:3.0.4ds3-6) unstable; urgency=medium
+
+  * Second try at fixing sparc build problems.
+
+ -- Phil Blundell <pb@debian.org>  Sun, 24 Mar 2002 14:49:26 +0000
+
+gcc-3.0 (1:3.0.4ds3-5) unstable; urgency=medium
+
+  * Enable java on ARM.
+  * Create missing directory to fix sparc build.
+
+ -- Phil Blundell <pb@debian.org>  Fri, 22 Mar 2002 20:21:59 +0000
+
+gcc-3.0 (1:3.0.4ds3-4) unstable; urgency=low
+
+  * Link with system zlib (closes: #136359).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 12 Mar 2002 20:47:59 +0100
+
+gcc-3.0 (1:3.0.4ds3-3) unstable; urgency=low
+
+  * Build libf2c (pic and non-pic) with -mieee on alpha-linux.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Mar 2002 00:37:24 +0100
+
+gcc-3.0 (1:3.0.4ds3-2) unstable; urgency=medium
+
+  * Apply hppa-build patch (Randolph Chung). Closes: #136731.
+  * Make libgcc1 conflict/replace with libgcc1-sparc64. Closes: #135709.
+  * gij-3.0 provides the `java' command. Closes: #128947.
+  * Depend on binutils (>= 2.11.93.0.2-2), allows stripping of libgcj.a
+    again. Closes: #99307.
+  * Update README.cross pointing to the README of the toolchain-source
+    package.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  6 Mar 2002 21:53:34 +0100
+
+gcc-3.0 (1:3.0.4ds3-1) unstable; urgency=low
+
+  * Final gcc-3.0.4 release.
+  * debian/rules.d/binary-java.mk: Fix dormant typo, exposed by removing the
+    duplicate libgcj dependency and adding the gij-3.0 package.
+    Closes: #134005.
+  * New patch by Phil Blundell to fix scalapack build error on m68k.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Feb 2002 23:59:43 +0100
+
+gcc-3.0 (1:3.0.4ds2-0pre020210) unstable; urgency=low
+
+  * Make the base package dependent on the binary-arch target. Closes: #133433.
+  * Get libstdc++ on arm woring (define _GNU_SOURCE). Closes: #133435.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 11 Feb 2002 20:31:12 +0100
+
+gcc-3.0 (1:3.0.4ds2-0pre020209) unstable; urgency=high
+
+  * Update to CVS sources (20020209 gcc-3_0-branch).
+  * Apply patch to fix bootstrap error on arm-linux (submitted upstream
+    by Phil Blundell). Closes: #130422.
+  * Make base package architecture any.
+  * Decouple versioned shlib dependencies from release number for
+    libobjc as well.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  9 Feb 2002 01:30:11 +0100
+
+gcc-3.0 (1:3.0.4ds1-0pre020203) unstable; urgency=medium
+
+  * One release critical bug outstanding:
+    - bootstrap error on arm.
+  * Update to CVS sources (20020203 gcc-3_0-branch).
+  * Fixed upstream: PR c/3504: Correct documentation of __alignof__.
+    Closes: #85445.
+  * Remove libgcc-powerpc patch, integrated upstream (closes: #131977).
+  * Tighten binutils build dependency (to address #126162).
+  * Move jv-convert to gcj package (closes: #131985).
+
+ -- Matthias Klose <doko@debian.org>  Sun,  3 Feb 2002 14:47:14 +0100
+
+gcc-3.0 (1:3.0.4ds0-0pre020127) unstable; urgency=low
+
+  * Two release critical bugs outstanding:
+    - bootstrap error on arm.
+    - bus errors for C++ and java executables on sparc (see the testsuite
+      results).
+  * Update to CVS sources (20020125 gcc-3_0-branch).
+  * Enable java support for s390 architecture (patch from Gerhard Tonn).
+  * Updated NEWS file for 3.0.3.
+  * Disable building the gcc-sparc64, but build a multilibbed compiler
+    for sparc as the default.
+  * Disabled the subreg-byte patch for sparc (request from Ben Collins).
+  * Fixed reference to libgcc1 package in README (closes: #126218).
+  * Do recommend libc-dev, not depend on it. For low-end or embedded systems
+    the dependency on libc-dev can make the difference between
+    having enough or having too little space to build a kernel.
+  * README.cross: Updated by Hakan Ardo.
+  * Decouple versioned shlib dependencies from release number. Closes: #118391.
+  * Fix diversions for gcc-3.0-sparc64 package (closes: #128178),
+    unconditionally remove `sparc64-linux-gcc' alternative.
+  * g77/README.libg2c.Debian: New file mentioning `libg2c-pic'. The next
+    g77 version (3.1) does build a static and shared library (closes: #104250).
+  * Fix formatting errors in the synopsis of the java man pages. Maybe the
+    reason for #127571. Closes: #127571.
+  * fastjar: Fail for the (currently incorrect) -u option. Addresses: #116145.
+    Add alternative for `jar' using priority 30 (closes: #118648).
+  * jv-convert: Add --help option and man page. Backport from HEAD branch.
+  * libgcj2-dev: Remove duplicate dependency (closes: #127805).
+  * Giving up and make just another new package gij-X.Y with only the gij-X.Y
+    binary for policy conformance (closes: #127111).
+  * gij: Provides an alternative for `java' (priority 30) using a wrapper
+    script (Stephen Zander) (closes: #128974). Added simple manpage.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 27 Jan 2002 13:33:41 +0100
+
+gcc-3.0 (1:3.0.3ds3-1) unstable; urgency=low
+
+  * Final gcc-3.0.3 release.
+  * Do not compress .txt files in libstdc++ docs referenced from html
+    pages (closes: #124136).
+  * libstdc++-dev suggests libstdc++-doc.
+  * debian/patches/gcc-ia64-NaT.dpatch: Update (closes: #123685).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 21 Dec 2001 02:54:11 +0100
+
+gcc-3.0 (1:3.0.3ds2-0pre011215) unstable; urgency=low
+
+  * Update to CVS sources (011215).
+  * libstdc++ documentation updated upstream (closes: #123790).
+  * debian/patches/gcc-ia64-NaT.dpatch: Disable. Fixes bootstrap error
+    on ia64 (#123685).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 15 Dec 2001 14:43:21 +0100
+
+gcc-3.0 (1:3.0.3ds1-0pre011210) unstable; urgency=medium
+
+  * Update to CVS sources (011208).
+  * Supposed to fix powerpc build error (closes: #123155).
+
+ -- Matthias Klose <doko@debian.org>  Thu, 13 Dec 2001 07:26:05 +0100
+
+gcc-3.0 (1:3.0.3ds0-0pre011209) unstable; urgency=medium
+
+  * Update to CVS sources (011208). Frozen for upstream 3.0.3 release.
+  * Apply contrib/PR3145.patch, a backport of Nathan Sidwell's patch to
+    fix PR c++/3145, the infamous "virtual inheritance" bug. This affected
+    especially KDE2 (eg. artsd). Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+  * cc1plus segfault in strength reduction fixed upstream. Closes: #122547.
+  * debian/patches/gcc-ia64-NaT.dpatch: Add patch to avoid a bug that can
+    cause miscompiled userapps to crash the kernel. Closes: #121924.
+  * Reenable shared libgcc for powerpc. Fixed upstream.
+    http://gcc.gnu.org/ml/gcc-patches/2001-11/msg00340.html
+    debian/patches/libgcc-powerpc.dpatch: New patch.
+  * Add upstream changelogs.
+  * Remove gij alternative. Move to gij package.
+
+ -- Matthias Klose <doko@debian.org>  Sun,  9 Dec 2001 09:36:48 +0100
+
+gcc-3.0 (1:3.0.2ds4-4) unstable; urgency=medium
+
+  * Disable building of libffi on mips and mipsel.
+    (closes: #117503).
+  * Enable building of shared libgcc on s390
+    (closes: #120452).
+
+ -- Christopher C. Chimelis <chris@debian.org>  Sat, 1 Dec 2001 06:15:29 -0500
+
+gcc-3.0 (1:3.0.2ds4-3) unstable; urgency=medium
+
+  * Fix logic to build libffi without java (closes: #117503).
+
+ -- Matthias Klose <doko@debian.org>  Sun,  4 Nov 2001 14:34:50 +0100
+
+gcc-3.0 (1:3.0.2ds4-2) unstable; urgency=medium
+
+  * Enable java for ia64 (Jeff Licquia). Closes: #116798.
+  * Allow building of libffi without gcj (Jeff Licquia).
+    New libffi packages for arm hurd-i386 mips mipsel,
+    still missing: hppa, s390.
+  * debian/NEWS.gcc: Add 3.0.2 release notes.
+  * debian/patches/hppa-align.dpatch: New patch from Alan Modra,
+    submitted by Randolph Tausq.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 25 Oct 2001 23:59:31 +0200
+
+gcc-3.0 (1:3.0.2ds4-1) unstable; urgency=medium
+
+  * Final gcc-3.0.2 release. The source tarball is not the released
+    tarball, but taken from CVS 011024).
+  * Remove patch for s390, included upstream.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 24 Oct 2001 00:49:40 +0200
+
+gcc-3.0 (1:3.0.2ds3-0pre011014) unstable; urgency=low
+
+  * Update to CVS sources (011014). Frozen for upstream 3.0.2 release.
+    Closes: #109351, #114099, #114216, #105741 (allegro3938).
+  * Added debian/patches/fastjar.dpatch, which makes fastjar extract
+    filenames correctly (previously, some had incorrect names on extract).
+    Closes: #113236.
+  * Priorities fixed in the past (closes: #94404).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 Oct 2001 13:19:43 +0200
+
+gcc-3.0 (1:3.0.2ds2-0pre010923) unstable; urgency=low
+
+  * Bootstraps on powerpc again (closes: #112777).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 23 Sep 2001 01:32:11 +0200
+
+gcc-3.0 (1:3.0.2ds2-0pre010922) unstable; urgency=low
+
+  * Update to CVS sources (010922).
+  * Fixed upstream (closes: #111801). #105569 on hppa.
+  * Update hppa patch (Matt Taggart).
+  * Fix libstdc++-dev package description (closes: #112758).
+  * debian/rules.d/binary-objc.mk: Fix build error (closes: #112462).
+  * Make gobjc-3.0 conflict with gcc-3.0-sparc64 (closes: #111772).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 22 Sep 2001 09:34:49 +0200
+
+gcc-3.0 (1:3.0.2ds1-0pre010908) unstable; urgency=low
+
+  * Update to CVS sources (010908).
+  * Update hppa patch (Matt Taggart).
+  * Depend on libgc6-dev, not libgc5-dev, which got obsolete (during
+    the freeze ...). However adds s390 support (closes: #110189).
+  * debian/patches/m68k-reload.dpatch: New patch (Roman Zippel).
+    Fixes #89023.
+  * debian/patches/gcc-sparc.dpatch: New patch ("David S. Miller").
+    Fixes libstdc++ testsuite failures on sparc.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 8 Sep 2001 14:26:20 +0200
+
+gcc-3.0 (1:3.0.2ds0-0pre010826) unstable; urgency=low
+
+  * gcc-3.0-nof: Fix symlink to gcc-3.0-base doc directory.
+  * debian/patches/gcj-without-rpath: New patch.
+  * Remove self dependency on libgcj package.
+  * Handle diversions for upgrades from 3.0 and 3.0.1 -> 3.0.2
+    in gcc-3.0-sparc64 package.
+  * Build libg2c.a with -fPIC -DPIC and name the result libg2c-pic.a.
+    Link with this library to avoid linking with non-pic code.
+    Use this library when building dynamically loadable objects (python
+    modules, gimp plugins, ...), which need to be linked against g2c or
+    a library which is linked against g2c (i.e. lapack).
+    Packages needing '-lg2c-pic' must have a build dependency on
+    'g77-3.0 (>= 1:3.0.2-0pre010826).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 26 Aug 2001 13:59:03 +0200
+
+gcc-3.0 (1:3.0.2ds0-0pre010825) unstable; urgency=low
+
+  * Update to CVS sources (010825).
+  * Add libc6-dev-sparc64 to gcc-3.0-sparc64 and to sparc build dependencies.
+  * Remove conflicts on egcc package (closes: #109718).
+  * Fix gcc-3.0-nof dependency.
+  * s390 patches against gcc-3.0.1 (Gerhard Tonn).
+  * debian/control: Require binutils (>= 2.11.90.0.27)
+
+ -- Matthias Klose <doko@debian.org>  Sat, 25 Aug 2001 10:59:15 +0200
+
+gcc-3.0 (1:3.0.1ds3-1) unstable; urgency=low
+
+  * Final gcc-3.0.1 release.
+  * Changed upstream: default of -flimit-inline is 600 (closes: #106716).
+  * Add fastjar man page (submitted by "The Missing Man Pages Project",
+    http://www.netmeister.org/misc/m2p2i/) (closes: #103051).
+  * Fixed in last upload as well: #105246.
+  * debian/patches/cpp-memory-leak.dpatch: New patch
+  * Disable installation of shared libgcc on s390 (Gerhard Tonn).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 20 Aug 2001 20:47:13 +0200
+
+gcc-3.0 (1:3.0.1ds2-0pre010811) unstable; urgency=high
+
+  * Update to CVS sources (010811). Includes s390 support.
+  * Add xlibs-dev to Build-Depends (libgcj).
+  * Enable java for powerpc, disable java for ia64.
+  * Enable ObjC garbage collection for all archs, which have a libgc5-dev
+    package.
+  * New patch libstdc++-codecvt (Michael Piefel) (closes: #104614).
+  * Don't strip static libgcj library (work around binutils bug #107812).
+  * Handle diversions for upgrade 3.0 -> 3.0.1 in gcc-3.0-sparc64 package
+    (closes: #107569).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 11 Aug 2001 20:42:15 +0200
+
+gcc-3.0 (1:3.0.1ds1-0pre010801) unstable; urgency=high
+
+  * Update to CVS sources (010801). (closes: #107012).
+  * Remove build dependency on non-free graphviz and include pregenerated
+    docs (closes: #107124).
+  * Fixed in 3.0.1 (closes: #99307).
+  * Updated m68k-updates patch (Roman Zippel).
+  * Another fix for ia64 packaging bits (Randolph Chung).
+
+ -- Matthias Klose <doko@debian.org>  Tue, 31 Jul 2001 21:52:55 +0200
+
+gcc-3.0 (1:3.0.1ds0-0pre010727) unstable; urgency=high
+
+  * Update to CVS sources (010727).
+  * Add epoch to source version. Change '.dsx' to 'dsx', so that
+    3.1.1ds0 gt 3.1ds7 (closes: #106538).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 28 Jul 2001 09:56:29 +0200
+
+gcc-3.0 (3.0.1.ds0-0pre010723) unstable; urgency=high
+
+  * ia64 packaging bits (Randolph Chung) (closes: #106252).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 23 Jul 2001 23:02:03 +0200
+
+gcc-3.0 (3.0.1.ds0-0pre010721) unstable; urgency=high
+
+  * Update to CVS sources (010721).
+    - Remove patches applied upstream: libstdc++-limits.dpatch,
+      objc-data-references
+    - Updated other patches.
+  * Fix gij alternative (closes: #103468, #103883).
+  * Patch to fix bootstrap on sparc (closes: #103568).
+  * Corrected (closes: #105371) and updated README.Debian.
+  * m68k patches for sucessful bootstrap (Roman Zippel).
+  * Add libstdc++v3 porting hints to README.Debian and README.C++.
+  * m68k md fix (#105622) (Roman Zippel).
+  * debian/rules2: Disable non-functional ulimit on Hurd (#105884).
+  * debian/control: Require binutils (>= 2.11.90.0.24)
+  * Java is enabled for alpha (closes: #87300).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 22 Jul 2001 08:24:04 +0200
+
+gcc-3.0 (3.0.ds9-4) unstable; urgency=high
+
+  * Move this version to testing ASAP. testing still has a prerelease
+    version with now incompatible ABI's. If sparc doesn't build,
+    then IMHO it's better to remove it from testing.
+  * debian/control.m4: Set uploaders field. Adjust description of
+    gcc-3.0 (binary) package (closes: #102271, #102620).
+  * Separate gij.1 in it's own pseudo man page (closes: #99523).
+  * debian/patches/java-manpages.dpatch: New patch.
+  * libgcj: Install unversioned gij.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  3 Jul 2001 07:38:08 +0200
+
+gcc-3.0 (3.0.ds9-3) unstable; urgency=high
+
+  * Reenable configuration with posix threads on i386 (lost in hurd-i386
+    merge).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Jun 2001 22:21:45 +0200
+
+gcc-3.0 (3.0.ds9-2) unstable; urgency=medium
+
+  * Move this version to testing ASAP. testing still has a prerelease
+    version with now incompatible ABI's.
+  * Add libgcc0 and libgcc300 to the build conflicts (#102041).
+  * debian/README.FIRST: Removed (#101534).
+  * Updated subreg-byte patch (doc files).
+  * Disable java for the Hurd, mips and mipsel (#101570).
+  * Patch for building on the Hurd (#101708) (Jeff Bailey <jbailey@nisa.net>).
+  * Packaging fixes for the Hurd (#101711) (Jeff Bailey <jbailey@nisa.net>).
+  * Include pregenerated doxygen (1.2.6) docs for libstdc++-v3 (#101557).
+    The current doxygen-1.2.8.1 segaults.
+  * C++: Enable -fuse-cxa-atexit by default (#101901).
+  * Correct mail address in gccbug (#101743).
+  * Make rules resumable after failure in binary-xxx targets (#101637).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 24 Jun 2001 16:04:53 +0200
+
+gcc-3.0 (3.0.ds9-1) unstable; urgency=low
+
+  * Final 3.0 release.
+  * Update libgcc version number (#100983, #100988, #101069, #101115, #101328).
+  * Updated hppa-build patch (Matt Taggart <taggart@carmen.fc.hp.com>).
+  * Disable java for hppa.
+  * Updated subreg-byte patch for sparc (Ben Collins).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 18 Jun 2001 18:26:04 +0200
+
+gcc-3.0 (3.0.ds8-0pre010613) unstable; urgency=low
+
+  * Update patches for recent (010613 23:13 +0200) CVS sources.
+  * Fix packaging bugs (#100459, #100447, #100483).
+  * Build-Depend on gawk, mawk doesn't work well with test_summary.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 13 Jun 2001 23:13:38 +0200
+
+gcc-3.0 (3.0.ds7-0pre010609) unstable; urgency=low
+
+  * Fix build dependency for the hurd (#99164).
+  * Update patches for recent (010609) CVS sources.
+  * Disable java on powerpc (link error in libjava).
+  * gcc-3.0-base.postinst: Don't prompt for non-interactive installs (#100110).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Jun 2001 09:45:57 +0200
+
+gcc-3.0 (3.0.ds6-0pre010526) unstable; urgency=high
+
+  * Urgency "high" for replacing the gcc-3.0 snapshots in testing, which
+    now are incompatile due to the changed ABIs.
+  * Upstream begins tagging with "gcc-3_0_pre_2001mmdd".
+  * Tighten dependencies to install only binary packages derived from
+    one source (#98851). Tighten libc6-dev dependency to match libc6.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 27 May 2001 11:35:31 +0200
+
+gcc-3.0 (3.0.ds6-0pre010525) unstable; urgency=low
+
+  * ATTENTION: The ABI (exception handling) changed. No upgrade path from
+    earlier snapshots (you had been warned in the postinst ...)
+    Closing #93597, #94576, #96448, #96461.
+    You have to rebuild
+  * HELP is appreciated for scanning the Debian BTS and sending followups
+    to bug reports!!!
+  * Should we name debian gcc uploads? What about a "still seeking
+    g++ maintainer" upload?
+  * Fixed in gcc-3.0: #97030
+  * Update patches for recent (010525) CVS sources.
+  * Make check depend on build target (fakeroot problmes).
+  * debian/rules.d/binary-libgcc.mk: new file, build first.
+  * Free memory detection on the hurd for running the testsuite.
+  * Update debhelper build dependency.
+  * libstdc++-doc: Include doxygen generated docs.
+  * Fix boring packaging bugs, too tired for appropriate changelogs ...
+    #93343, #96348, #96262, #97134, #97905, #96451, #95812, #93157
+  * Fixed bugs: #87000.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 26 May 2001 23:10:42 +0200
+
+gcc-3.0 (3.0.ds5-0pre010510) unstable; urgency=low
+
+  * Update patches for recent (010506) CVS sources.
+  * New version of source, as of 2001-05-10
+  * New version of gpc source, as of 2001-05-06 (disabled by default).
+  * Make gcc-3.0-sparc64 provide an alternative for sparc64-linux-gcc,
+    since it can build kernels just fine (it seems)
+  * Add hppa patch from Matt Taggart
+  * Fix objc info inclusion...now merged with gcc info
+  * Do not install the .la for libstdc++, since it confuses libtool linked
+    applications when libstdc++3-dev and libstdc++2.10-dev are both
+    installed (closes #97905).
+  * Fixed gcc-base and libgcc section/prio to match overrides
+
+ -- Ben Collins <bcollins@debian.org>  Mon,  7 May 2001 00:08:52 +0200
+
+gcc-3.0 (3.0.ds5-0pre010427) unstable; urgency=low
+
+  * Fixed priority for fastjar from optional to extra
+  * New version of source, as of 2001-04-27
+  * Fix description of libgcj-dev
+  * libffi-install: Make libffi installable
+  * Add libffi and libffi-dev packages. libffi is only enabled for java
+    targets right now. Perhaps more will be enabled later.
+  * Fixes to build cross compiler package (for avr)
+    (Hakan Ardo <hakan@debian.org>).
+  * Better fixincludes description (#93157).
+  * Remove all remnants of libg++
+  * Remove all hacks around libstdc++ version. Since we are strictly v3 now,
+    we can treat it like a normal shared lib, and not worry about all those
+    ABI changes.
+  * Remove all cruft control scripts. Note, debhelper will create scripts
+    that it needs to. It will do the doc link stuff and the ldconfig stuff
+    explicitly.
+  * Clean up the SONAME parsing stuff, make it a little more cleaner over
+    all the lib packages
+  * Make libffi install when built (IOW, whenever java is enabled). This
+    should obsolete the libffi package, which is old and broken
+  * Revert to normal sonames, except for ia64 (for now)
+  * Remove all references to dh_testversion, since they are deprecated for
+    Build-Depends
+  * Fix powerpc nof build
+  * Remove all references to the MULTILIB stuff, since the arches are
+    using specialized builds anyway (nof, softfloat).
+  * Added 64bit sparc64 package (gcc-3.0-sparc64, libgcc0-sparc64)
+  * Removed obsolete shlibs.local file
+
+ -- Ben Collins <bcollins@debian.org>  Sun, 15 Apr 2001 21:33:15 -0400
+
+gcc-3.0 (3.0.ds4-0pre010403) unstable; urgency=low
+
+  * debian/README: Updated for gcc-3.0
+  * debian/rules.patch: Added subreg-byte patch for sparc
+  * debian/rules.unpack: Update to current CVS for gcc tarball name
+  * debian/patches/subreg-byte.dpatch: sparc subreg-byte support
+  * debian/patches/gcc-rawhide.dpatch: Removed
+    debian/patches/gpc-2.95.dpatch: Removed
+    debian/patches/sparc32-rfi.dpatch: Removed
+    debian/patches/temporary.dpatch: Removed
+  * Moving to unstable now
+  * debian/patches/gcc-ppc-disable-shared-libgcc.dpatch: New patch,
+    disables shared libgcc for powerpc target, since it isn't compatible
+    with the EABI objects.
+  * Create $(with_shared_libgcc) var
+  * debian/rules.d/binary-gcc.mk: Use this new variable to determine if
+    the libgcc package actually has any files
+
+ -- Ben Collins <bcollins@debian.org>  Tue,  3 Apr 2001 23:00:55 -0400
+
+gcc-3.0 (3.0.ds2-0pre010223) experimental; urgency=low
+
+  * New snapshot. Use distinct shared object names for shared libraries:
+    we don't know if binary API's still change until the final release.
+  * Versioned package names.
+  * debian/control.m4: New file. Add gcc-base, libgcc0, libobjc1,
+    libstdc++-doc, libgcj1, libgcj1-dev, fastjar, fixincludes packages.
+    Remove gcc-docs package.
+  * debian/gcov.1: Remove.
+  * debian/*: Remove 2.95.x support. Prepare for 3.0.
+  * debian/patches: Remove 2.95.x patches.
+  * Changed source package name. It's not allowed anymore to overwrite
+    source packages with different content. Introducing a 'debian source
+    element' (.ds<num>), which is stripped again from the version number
+    for the binary packages.
+  * Fixed bugs and added functionality:
+    #26436, #27878, #33786, #34876, #35477, #42662, #46181, #42989,
+    #47981, #48530, #50529, #51227, #51456, #51651, #52382, #53698,
+    #55291, #55967, #56867, #58219, #59005, #59232, #59776, #64628,
+    #65687, #67631, #68632, #68963, #68987, #69530, #72933, #75120,
+    #75759, #76645, #76827, #83221, #87540
+  * libgcj fixes: 42894, #51266, #68560, #71187, #79984
+
+ -- Matthias Klose <doko@debian.org>  Sat, 24 Feb 2001 13:41:11 +0100
+
+gcc-2.95 (2.95.3-2.001222) experimental; urgency=low
+
+  * New upstream version 2.95.3 experimental (CVS 20001222).
+  * debian/control.in: Versioned package names, removal of snapshot logic.
+    Remove fake gcc-docs package.
+  * Reserve -1 release numbers for woody.
+  * Updated to gpc-20001218.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 22 Dec 2000 19:53:03 +0100
+
+gcc (2.95.2-20) unstable; urgency=low
+
+    * Apply patch from gcc-2_95-branch; remove ulimit for make check.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 10 Dec 2000 17:01:13 +0100
+
+gcc (2.95.2-19) unstable; urgency=low
+
+  * Added testsuite-20001207 from current snapshots. We'll need results
+    for 2.95.2 to make sure there are no regressions against that release.
+    Dear build daemons and porters to other architectures, please send an
+    email to gcc-testresults@gcc.gnu.org.
+    You can do this by running "debian/rules mail-summary".
+  * Updated to gpc-20001206.
+  * Added S/390 patch prepared by Chu-yeon Park <kokids@debian.org> (#78983).
+  * debian/patches/libio.dpatch: Fix iostream doc (fixes #77647).
+  * debian/patches/gcc-doc.dpatch: Update URL (fixes #77542).
+  * debian/patches/gcc-reload1.dpatch Patch from the gcc-bug list which
+    fixes a problem in "long long" on i[345]86 (i686 was not affected).
+
+ -- Matthias Klose <doko@debian.org>  Sat,  9 Dec 2000 12:30:32 +0100
+
+gcc (2.95.2-18) unstable; urgency=low
+
+  * debian/control.in: Fix syntax errors (fixes #76146, #76458).
+    Disable gpc on the hurd by request (#75686).
+  * debian/patches/arm-various.dpatch: Patches from Philip Blundell
+    for ARM arch (fixes #75801).
+  * debian/patches/gcc-alpha-mi-thunk.dpatch: Patches from Chris Chimelis
+    for alpha arch.
+  * debian/patches/g77-docs.dpatch: Adjust g77 docs (fixes #72594).
+  * Update gpc to gpc-20001118.
+  * Reenable gpc for alpha.
+  * debian/README.C++: Merge debian/README.libstdc++ and C++ FAQ information
+    provided by Matt Zimmermann.
+  * Build gcj only on architectures, where libgcj-2.95.1 can be built as well.
+    Probably needs some adjustments ...
+  * Conditionalize for chill, fortran, java, objc and chill.
+
+  * NOT APPLIED:
+    debian/patches/libstdc++-bastring.dpatch: Apply fix (fixes #75759).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 19 Nov 2000 10:40:41 +0100
+
+gcc (2.95.2-17) unstable; urgency=low
+
+  * Disable gpc for alpha.
+  * Include gpc-cpp in gpc package (fixes #74492).
+  * Don't build gcc-docs compatibility package anymore.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 11 Oct 2000 06:16:53 +0200
+
+gcc (2.95.2-16) unstable; urgency=low
+
+  * Applied the emdebian/cross compiler patch and documentation
+    (Frank Smith <smith@amirix.com>).
+  * Applied patch for avr target (Hakan Ardo <hakan@debian.org>).
+  * debian/control.in: Add awk to Build-Depends.
+    Tighten libc6-dev dependency for libstdc++-dev (fixes #73031,
+    #72531, #72534).
+  * Disable libobjc_gc for m68k again (fixes #74380).
+  * debian/patches/arm-namespace.dpatch: Apply patch from Philip
+    Blundell <pb@futuretv.com> to fix name space pollution on arm
+    (fixes #70937).
+  * Fix more warnings in STL headers (fixes #69352, #71943).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  9 Oct 2000 21:51:41 +0200
+
+gcc (2.95.2-15) unstable; urgency=low
+
+  * debian/control.in: Add libgc5-dev to build depends (fixes #67015).
+  * debian/rules.def: Build GC enabled ObjC runtime for sparc.
+  * Bug #58741 fixed (in some version since 2.95.2-5).
+  * debian/control.in: Recommend librx1g-dev, libgmp2-dev, libncurses5-dev
+    (unit dependencies).
+  * Patches from Marcus Brinkmann for the hurd (fixes #67763):
+    - debian/rules.defs: Disable objc_gc on hurd-i386.
+      Disable libg++ on GNU systems.
+    - debian/rules2: Set correct names of libstdc++/libg++
+      libraries on GNU systems.
+      Write out correct shlibs and shlibs.local file content.
+    - Keep _G_config.h for the Hurd.
+  * Apply patch for ObjC linker warnings.
+  * Don't apply gcj backport patch for sparc.
+  * Apply libio compatability patch
+  * debian/glibcver.sh: generate appropriate version for glibc
+  * debian/rules.conf: for everything after glibc 2.1, we always append
+    "-glibc$(ver)" to the C++ libs for linux.
+  * Back down gpc to -13 version (-14 wont compile on anything but i386
+    and m68k becuase of gpc).
+  * Remove extraneous and obsolete sparc64 patches/files from debian/*
+
+ -- Ben Collins <bcollins@debian.org>  Thu, 21 Sep 2000 08:08:35 -0400
+
+gcc-snapshot (20000901-2.2) experimental; urgency=low
+
+  * New snapshot.
+  * debian/rules2: Move tradcpp0 to cpp package.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  2 Sep 2000 01:14:28 +0200
+
+gcc-snapshot (20000802-2.1) experimental; urgency=low
+
+  * New snapshot.
+  * debian/rules2: Fixes. tradcpp0 is in gcc package, not cpp.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  3 Aug 2000 07:40:05 +0200
+
+gcc-snapshot (20000720-2) experimental; urgency=low
+
+  * New snapshot.
+  * Enable libstdc++-v3.
+  * debian/rules2: Don't use -D for /usr/bin/install.
+
+ -- Matthias Klose <doko@debian.org>  Thu, 20 Jul 2000 22:33:37 +0200
+
+gcc (2.95.2-14) unstable; urgency=low
+
+  * Update gpc patch.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  5 Jul 2000 20:51:16 +0200
+
+gcc (2.95.2-13) frozen unstable; urgency=low
+
+  * Update debian/README: document how to compile 2.0.xx kernels; don't
+    register gcc272 as an alternative for gcc (closes #62419).
+    Clarify compiler setup (closes #65548).
+  * debian/control.in: Make libstdc++-dev depend on current version of g++.
+  * Undo CVS update from release -8 (problems on alpha, #55263).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 19 Jun 2000 23:06:48 +0200
+
+gcc (2.95.2-12) frozen unstable; urgency=low
+
+  * debian/gpc.postinst: Correct typo introduced with -11 (fixes #64193).
+  * debian/patches/gcc-rs600.dpatch: ppc codegen fix (fixes #63933).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 21 May 2000 15:56:05 +0200
+
+gcc (2.95.2-11) frozen unstable; urgency=medium
+
+  * Upload to unstable again (fixes critical #63784).
+  * Fix doc-base files (fixes important #63810).
+  * gpc wasn't built in -10 (fixes #63977).
+  * Make /usr/bin/pc an alternative (fixes #63888).
+  * Add SYSCALLS.c.X to gcc package.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 14 May 2000 22:17:44 +0200
+
+gcc (2.95.2-10) frozen; urgency=low
+
+  * debian/control.in: make gcc conflict on any version of egcc
+    (slink to potato upgrade problem, fixes grave #62084).
+  * Build protoize programs, separate out in new package (fixes #59436,
+    #62911).
+  * Create dummy gcc-docs package for smooth update from slink (fixes #62537).
+  * Add doc-base support for all -doc packages (fixes #63380).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  1 May 2000 22:24:28 +0200
+
+gcc (2.95.2-9) frozen unstable; urgency=low
+
+  * Disable the sparc-bi-arch.dpatch (patch from Ben Collins, built
+    for sparc as NMU 8.1) (fixes critical #61529 and #61511).
+    "Seems that when you compile gcc 2.95.x for sparc64-linux and compile
+     sparc32 programs, the code is not the same as sparc-linux compile for
+     sparc32 (this is a bug, and is fixed in gcc 2.96 CVS)."
+  * debian/patches/gcj-vs-iconv.dpatch: Option '--encoding' for
+    encoding of input files. Patch from Tom Tromey  <tromey@cygnus.com>
+    backported to 2.95.2 (fixes #42895).
+    Compile a Latin-1 encoded file with `gcj --encoding=Latin1 ...'.
+  * debian/control.in: gcc, g++ and gobjc suggest their corresponding
+    task packages (fixes #59623).
+
+ -- Matthias Klose <doko@debian.org>  Sat,  8 Apr 2000 20:19:15 +0200
+
+gcc (2.95.2-8) frozen unstable; urgency=low
+
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 20000313.
+  * debian/rules2: configure with --enable-java-gc=no for sparc. Fixes
+    gcj side of #60535.
+  * debian/rules.patch: Disable gcc-emit-rtl patch for all archs but
+    alpha. Disable g++-is-tree patch ("just for 2.95.1").
+  * debian/README: Update for gcc-2.95.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 27 Mar 2000 00:03:16 +0200
+
+gcc (2.95.2-7) frozen unstable; urgency=low
+
+  * debian/patches/gcc-empty-struct-init.dpatch; Apply patch from
+    http://gcc.gnu.org/ml/gcc-patches/2000-02/msg00637.html. Fixes
+    compilation of 2.3.4x kernels.
+  * debian/patches/gcc-emit-rtl.dpatch: Apply patch from David Huggins-Daines
+    <dhuggins@linuxcare.com> (backport from 2.96 CVS to fix #55263).
+  * debian/patches/gcc-pointer-arith.dpatch: Apply patch from Jim Kingdon
+    <kingdon@redhat.com> (backport from 2.96 CVS to fix #54951).
+
+ -- Matthias Klose <doko@debian.org>  Thu,  2 Mar 2000 23:16:43 +0100
+
+gcc (2.95.2-6) frozen unstable; urgency=low
+
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 20000220.
+  * Remove dangling symlink probably left over from libstdc++2.9
+    package (fixes #53661).
+  * debian/patches/gcc-alpha-complex-float.dpatch: Fixed patch by
+    David Huggins-Daines (fixes #58486).
+  * debian/g++.{postinst,prerm}: Remove outdated g++FAQ registration
+    (fixes #58253).
+  * debian/control.in: gcc-doc replaces gcc-docs (fixes #58108).
+  * debian/rules2: Include some fixed headers (asm, bits, linux, ...).
+  * debian/patches/{gcc-alpha-ev5-fix,libstdc++-valarray}.dpatch: Remove.
+    Applied upstream.
+  * debian/patches/libstdc++-bastring.dpatch: Add patch from
+    sicard@bigruth.solsoft.fr (fixes #56715).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 20 Feb 2000 15:08:13 +0100
+
+gcc (2.95.2-5) frozen unstable; urgency=low
+
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 20000116.
+  * Add more build dependencies (fixes #53204).
+  * debian/patches/gcc-alpha-complex-float.dpatch: Patch from
+    Joel Klecker <jk@espy.org> to compile glibc correctly on alpha.
+    "Should fix the g77 problems too."
+  * debian/patches/{libio,libstdc++-wall2}.dpatch. Remove patches
+    applied upstream.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 Jan 2000 19:16:54 +0100
+
+gcc (2.95.2-4) unstable; urgency=low
+
+  * debian/patches/libio.dpatch: Patch from Martin v. Loewis.
+    (fixes: #35628).
+  * debian/patches/libstdc++-deque.dpatch: Patch from Martin v. Loewis.
+    (fixes: #52689).
+  * debian/control.in: Updated Build-Depends, removed outdated README.build.
+    Fixes #51246.
+  * Tighten dependencies to cpp (>= 2.95.2-4) (closes: #50294).
+  * debian/rules.patch: Really do not apply patches/gcj-backport.dpatch.
+    Fixes #51636.
+  * Apply updated sparc-bi-arch.dpatch from Ben Collins.
+  * libstdc++: Define wstring type, if __ENABLE_WSTRING is defined. Request
+    from the author of the War FTP Daemon for Linux ("Jarle Aase"
+    <jgaa@jgaa.com>).
+  * debain/g++.preinst: Remove dangling sysmlinks (fixes #52359).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 19 Dec 1999 21:53:48 +0100
+
+gcc (2.95.2-3) unstable; urgency=low
+
+  * debian/rules2: Don't install $(gcc_lib_dir)/include/asm; these are
+    headers fixed for glibc-1.x (closes: #49434).
+  * debian/patches/cpp-dos-newlines.dpatch: Keep CR's without
+    following LF (closes: #49186).
+  * Bug #37358 (internal compiler errors when building vdk_0.6.0-5)
+    fixed in gcc-2.95.? (closes: #37358).
+  * Apply patch gcc-alpha-ev5-fix from Richard Henderson <rth@cygnus.com>
+    (should fix #48527 and #46963).
+  * debian/README.Bugs: Documented non bug #44554.
+  * Applied patch from Alexandre Oliva to fix gpc boostrap on alpha.
+    Reenabled gpc on all architectures.
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 19991108.
+  * Explicitely generate postinst/prerm chunks for usr/doc transition.
+    debhelper currently doesn't handle generation for packages with
+    symlinked directories.
+  * debian/patches/libstdc++-wall3.dpatch: Fix warnings in stl_deque.h
+    and stl_rope.h (closes: #46444, #46720).
+  * debian/patches/gcj-backport.dpatch: Add file, don't apply (yet).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 10 Nov 1999 18:58:45 +0100
+
+gcc (2.95.2-2) unstable; urgency=low
+
+  * New gpc-19991030 snapshot.
+  * Post-2.95.2 CVS updates of the gcc-2_95-branch until 19991103.
+  * Reintegrated sparc patches (bcollins@debian.org), which were lost
+    in 2.95.2-1.
+  * debian/rules2: Only install $(gcc_lib_dir)/include/asm, when existing.
+  * debian/patches/gpc-2.95.{dpatch,diff}: updated patch to drop
+    initialization in stor-layout.c.
+  * debian/NEWS.gcc: Updated for gcc-2.95.2.
+  * debian/bugs/bug-...: Removed testcases for fixed bugs.
+  * debian/patches/...dpatch: Removed patches applied upstream.
+  * debian/{rules2,g++.postinst,g++.prerm}: Handle c++ alternative.
+  * debian/changelog: Merged gcc272, egcs and snapshot changelogs.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  2 Nov 1999 23:09:23 +0200
+
+gcc (2.95.2-1.1) unstable; urgency=low
+
+  * Most of the powerpc patches have been applied upstream.  Remove all
+    but ppc-ice, ppc-andrew-dwarf-eh, and ppc-descriptions.
+  * mulilib-install.dpatch was definitely a bad idea.  Fix it properly
+    by using install -D.
+  * Also, don't make directories before installing any more.  Simplifies
+    rules a (tiny) bit.
+  * Do not build with LDFLAGS=-s.  Everything gets stripped out anyway by
+    dh_strip -a -X_debug; so leave the binaries in the build tree with
+    debugging symbols for simplified debugging of the packages.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Sat, 30 Oct 1999 12:40:12 -0400
+
+gcc (2.95.2-1) unstable; urgency=low
+
+  * gcc-2.95.2 release (taken from the CVS archive). -fstrict-aliasing
+    is disabled upstream.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 25 Oct 1999 10:26:19 +0200
+
+gcc (2.95.2-0pre4) unstable; urgency=low
+
+  * Updated to cvs updates of the gcc-2_95-branch until 19991021.
+  * Updated gpc to gpc-19991018 snapshot (closes: #33037, #47453).
+    Enable gpc for all architectures ...
+  * Document gcc exit codes (closes: #43863).
+  * According to the bug submitter (Sergey V Kovalyov <sqk0316@scires.nyu.edu>)
+    the original source of these CERN librarties is outdated now. The latest
+    version of cernlibs compiles and works fine with slink (closes #31546).
+  * According to the bug submitter (Gergely Madarasz <gorgo@sztaki.hu>),
+    the problem triggered on i386 cannot be reproduced with the current
+    jade and php3 versions anymore (closes: #35215).
+  * Replace corrupted m68k-pic.dpatch (from Roman Hodek and Andreas Schwab
+    <Roman.Hodek@informatik.uni-erlangen.de> <schwab@suse.de> and apply to
+    all architectures (closes: #48011).
+  * According to the bug submitter (Herbert Xu <herbert@gondor.apana.org.au>)
+    this bug "probably has been fixed". Setting it to severity "fixed"
+    (fixes: #39616), will close it later ...
+  * debian/README.Bugs: Document throwing C++ exceptions "through" C
+    libraries (closes: #22769).
+
+ -- Matthias Klose <doko@debian.org>  Fri, 22 Oct 1999 20:33:00 +0200
+
+gcc (2.95.2-0pre3) unstable; urgency=low
+
+  * Updated to cvs updates of the gcc-2_95-branch until 19991019.
+  * Apply NMU patches (closes: #46217).
+  * debian/control.in: Fix egcs64 conflict-dependency for sparc
+    architecture (closes: #47088).
+  * debian/rules2: dbg-packages share doc dir with lib packages
+    (closes #45067).
+  * debian/patches/gcj-debian-policy.dpatch: Patch from Stephane
+    Bortzmeyer to conform to Debian policy (closes: #44463).
+  * debian/bugs/bug-*: Added test cases for new bug reports.
+  * debian/patches/libstdc++-bastring.dpatch: Patch by Richard Kettlewell
+    (closes #46550).
+  * debian/rules.patch: Apply libstdc++-wall2 patch (closes #46609).
+  * debian/README: Fix typo (closes: #45253).
+  * debian/control.in: Remove primary/secondary distinction;
+    dbg-packages don't provide their normal counterparts (closes #45206).
+  * debian/rules.patch: gcc-combine patch applied upstream.
+  * debian/rules2: Only use mail if with_check is set (off by default).
+  * debian/rules.conf: Tighten binutils dependency to 2.9.5.0.12.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 19 Oct 1999 20:33:00 +0200
+
+gcc (2.95.2-0pre2.0.2) unstable; urgency=HIGH (for m68k)
+
+  * Binary-only NMU for m68k as quick fix for another bug; the patch
+    is in CVS already, too.
+  * Applied another patch by Andreas Schwab to fix %a5 restauration in
+    some cases.
+
+ -- Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>  Thu, 30 Sep 1999 16:09:15 +0200
+
+gcc (2.95.2-0pre2.0.1) unstable; urgency=HIGH (for m68k)
+
+  * Binary-only NMU for m68k as quick fix for serious bugs; the patches
+    are already checked into gcc CVS and should be in the next official
+    version, too.
+  * Applied two patches by Andreas Schwab to fix -fpic and loop optimization.
+
+ -- Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>  Mon, 27 Sep 1999 15:32:49 +0200
+
+gcc (2.95.2-0pre2) unstable; urgency=low
+
+  * Fixed in 2.95.2 (closes: #43478).
+  * Previous version had Pascal examples missing in doc directory.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 8 Sep 1999 22:18:17 +0200
+
+gcc (2.95.2-0pre1) unstable; urgency=low
+
+  * Updated to cvs updates of the gcc-2_95-branch until 19990828.
+  * Apply work around memory corruption (just for 2.95.1)  by
+    Daniel Jacobowitz <dan@debian.org>.
+  * debian/patches/libstdc++-wall2.dpatch: Patch from Franck Sicard
+    <sicard@miniruth.solsoft.fr> to fix some warnings (closes: #44670).
+  * debian/patches/libstdc++-valarray.dpatch: Patch from Hideaki Fujitani
+    <fjtani@flab.fujitsu.co.jp> to fix a bug in valarray_array.h.
+  * Applied NMU from Jim Pick minus the jump.c and fold-const.c patches
+    already in the gcc-2_95-branch (closes: #44690).
+  * Conform to debian-java policy (closes: #44463).
+  * Move docs to /usr/share/doc (closes: #44782).
+  * Remove debian/patches/gcc-align.dpatch applied upstream.
+  * debian/*.postinst: Call install-info only, when configuring.
+  * debian/*.{postinst,prerm}: Add #DEBHELPER# comments to handle
+    /usr/doc -> /usr/share/doc transition.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  8 Sep 1999 22:18:17 +0200
+
+gcc (2.95.1-2.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * ARM platform no longer needs library-prefix patch.
+  * Updated patches from Philip Blundell.
+
+ -- Jim Pick <jim@jimpick.com>  Wed,  8 Sep 1999 20:14:07 -0700
+
+gcc (2.95.1-2) unstable; urgency=low
+
+  * debian/gcc.{postinst,prerm}: gcc provides an alternative for
+    sparc64-linux-gcc.
+  * Applied patch from Ben Collins to enable bi-architecture (32/64)
+    support for sparc.
+  * Rebuild debian/control and debian/rules.parameters after unpacking.
+  * debian/rules2: binary-indep. Conditionalize on with_pascal.
+
+ -- Matthias Klose <doko@debian.org>  Sat,  4 Sep 1999 13:47:30 +0200
+
+gcc (2.95.1-1) unstable; urgency=low
+
+  * Updated to release gcc-2.95.1 and cvs updates of the gcc-2_95-branch
+    until 19990828.
+  * debian/README.gcc: Updated NEWS file to include 2.95 and 2.95.1 news.
+  * debian/README.java: New file.
+  * debian/rules.defs: Disabled gpc for alpha, arm. Disabled ObjC-GC
+    for alpha.
+  * debian/rules [clean]: Remove debian/rules.parameters.
+  * debian/rules2 [binary-arch]: Call dh_shlibdeps with LD_LIBRARY_PATH set
+    to installation dir of libstdc++. Why isn't this the default?
+  * debian/control.in: *-dev packages do not longer conflict with
+    libg++272-dev package.
+  * Apply http://egcs.cygnus.com/ml/gcc-patches/1999-08/msg00599.html.
+  * Only define BAD_THROW_ALLOC, when using exceptions (fixes #43462).
+  * For ObjC (when configured with GC) recommend libgc4-dev, not libgc4.
+  * New version of 68060 build patch.
+  * debian/rules.conf: For m68k, depend on binutils version 2.9.1.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 28 Aug 1999 18:16:31 +0200
+
+gcc (2.95.1-0pre2) unstable; urgency=medium
+
+  * gpc is back again (fixes grave #43022).
+  * debian/patches/gpc-updates.dpatch: Patches sent to upstream authors.
+  * Work around the fatal dependtry assertion failure bug in dpkg (hint
+    from "Antti-Juhani Kaijanaho" <ajk@debian.org>, fixes important #43072).
+
+ -- Matthias Klose <doko@debian.org>  Mon, 16 Aug 1999 19:34:14 +0200
+
+gcc (2.95.1-0pre1) unstable; urgency=low
+
+  * Updated to cvs 19990815 gcc-2_95-branch; included install docs and
+    FAQ from 2.95 release; upload source package as well.
+  * Source package contains tarballs only (gcc, libg++, installdocs).
+  * debian/rules: Splitted into debian/rules{,.unpack,.patch,.conf,2}.
+  * debian/gcc.postinst: s/any key/RETURN; warn only when upgrading from
+    pre 2.95 version; reference /usr/doc, not /usr/share/doc.
+  * Checked syntax for attributes of functions; checked for #35068;
+    checked for bad gmon.out files (at least with libc6 2.1.2-0pre5 and
+    binutils 2.9.1.0.25-2 the problem doesn't show up anymore).
+  * debian/patches/cpp-macro-doc.dpatch: Document macro varargs in cpp.texi.
+  * gcc is primary compiler for all platforms but m68k. Setting
+    severity of #22513 to fixed.
+  * debian/patches/gcc-default-arch.dpatch: New patch to enable generation
+    of i386 instruction as default (fixes #42743).
+  * debian/rules: Removed outdated gcc NEWS file (fixes #42742).
+  * debian/patches/libstdc++-out-of-mem.dpatch: Throw exception instead
+    of aborting when out of memory (fixes #42622).
+  * debian/patches/cpp-dos-newlines.dpatch: Handle ibackslashes after
+    DOS newlines (fixes #29240).
+  * Fixed in gcc-2.95.1: #43001.
+  * Bugs closed in this version:
+    Closes: #11525, #12253, #22513, #29240, #35068, #36182, #42584, #42585,
+    #42602, #42622, #42742 #42743, #43001, #43002.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 15 Aug 1999 10:31:50 +0200
+
+gcc (2.95-3) unstable; urgency=high
+
+  * Provide /lib/cpp again (fixes important bug #42524).
+  * Updated to cvs 19990805 gcc-2_95-branch.
+  * Build with the default scheduler.
+  * Apply install-multilib patch from Dan Jacobowitz.
+  * Apply revised cpp-A- patch from Dan Jacobowitz.
+
+ -- Matthias Klose <doko@debian.org>  Fri,  6 Aug 1999 07:25:19 +0200
+
+gcc (2.95-2) unstable; urgency=low
+
+  * Remove /lib/cpp. This driver uses files from /usr/lib/gcc-lib anyway.
+  * The following bugs are fixed (compared to egcs-1.1.2).
+    Closes: #4429, #20889, #21122, #26369, #28417, #28261, #31416, #35261,
+    #35900, #35906, #38246, #38872, #39098, #39526, #40659, #40991, #41117,
+    #41290, #41302, #41313.
+  * The following by Joel Klecker:
+    - Adopt dpkg-architecture variables.
+    - Go back to SHELL = bash -e or it breaks where /bin/sh is not bash.
+    - Disabled the testsuite, it is not included in the gcc 2.95 release.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 31 Jul 1999 18:00:42 +0200
+
+gcc (2.95-1) unstable; urgency=low
+
+  * Update for official gcc-2.95 release.
+  * Built without gpc.
+  * debian/rules: Remove g++FAQ from rules, which is outdated.
+    For ix86, build for i386, not i486.
+  * Apply patch from Jim Pick for building multilib package on arm.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 31 Jul 1999 16:38:21 +0200
+
+gcc (2.95-0pre10) unstable; urgency=low
+
+  * Use ../builddir-gcc-$(VER) by default instead of ./builddir; upstream
+    strongly advises configuring outside of the source tree, and it makes
+    some things much easier.
+  * Add patch to prevent @local branches to weak symbols on powerpc (fixes
+    apt compilation).
+  * Add patch to make cpp -A- work as expected.
+  * Renamed debian/patches/ppc-library-prefix.dpatch to library-prefix.dpatch;
+    apply on all architectures.
+  * debian/control.in: Remove snapshot dependencies.
+  * debian/*.postinst: Reflect use of /usr/share/{info,man}.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Thu, 22 Jul 1999 19:27:12 -0400
+
+gcc (2.95-0pre9) unstable; urgency=low
+
+  * The following bugs are fixed (compared to egcs-1.1.2): #4429, #20889,
+    #21122, #26369, #28417, #28261, #35261, #38246, #38872, #39526, #40659,
+    #40991, #41117, #41290.
+  * Updated to CVS gcc-19990718 snapshot.
+  * debian/control.in: Removed references to egcs in descriptions.
+    Changed gcj's Recommends libgcj-dev to Depends.
+  * debian/rules: Apply ppc-library-prefix for alpha as well.
+  * debian/patches/arm-config.dpatch: Updated patch sent by Jim Pick.
+
+ -- Matthias Klose <doko@debian.org>  Sun, 18 Jul 1999 12:21:07 +0200
+
+gcc (2.95-0pre8) unstable; urgency=low
+
+  * Updated CVS.
+  * debian/copyright: s%doc/copyright%share/common-licenses%
+  * debian/README.Bugs: s/egcs.cygnus.com/gcc.gnu.org/ s/egcs-bugs/gcc-bugs/
+  * debian/patches/reporting.dpatch: Remake diff for current sources.
+  * debian/libstdc++-dev.postinst: It's /usr/share/info/iostream.info.
+  * debian/rules: Current dejagnu snapshot reports a framework version
+    of 1.3.1.
+
+ -- Joel Klecker <espy@debian.org>  Sun, 18 Jul 1999 02:09:57 -0700
+
+gcc-snapshot (19990714-0pre6) experimental; urgency=low
+
+  * Updated to CVS gcc-19990714 snapshot.
+  * Applied ARM patch (#40515).
+  * Converted DOS style linefeeds in debian/patches/ppc-* files.
+  * debian/rules: Reflect change in gcc/version.c; use sh -e as shell:
+    for some obscure reason, bash -e doesn't work.
+  * Reflect version change for libstdc++ (2.10). Remove libg++-name
+    patch; libg++ now has version 2.8.1.3. Removed libc version from
+    the package name.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 14 Jul 1999 18:43:57 +0200
+
+gcc-snapshot (19990625-0pre5.1) experimental; urgency=low
+
+  * Non-maintainer upload.
+  * Added ARM specific patch.
+
+ -- Jim Pick <jim@jimpick.com>  Tue, 29 Jun 1999 22:36:08 -0700
+
+gcc-snapshot (19990625-0pre5) experimental; urgency=low
+
+  * Updated to CVS gcc-19990625 snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 25 Jun 1999 16:11:53 +0200
+
+gcc-snapshot (19990609-0pre4.1) experimental; urgency=low
+
+  * Added and re-added a few last PPC patches.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Sat, 12 Jun 1999 16:48:01 -0500
+
+gcc-snapshot (19990609-0pre4) experimental; urgency=low
+
+  * Updated to CVS egcs-19990611 snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 11 Jun 1999 10:20:09 +0200
+
+gcc-snapshot (19990609-0pre3) experimental; urgency=low
+
+  * CVS gcc-19990609 snapshot.
+  * New gpc-19990607 snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  9 Jun 1999 19:40:44 +0200
+
+gcc-snapshot (19990524-0pre1) experimental; urgency=low
+
+  * egcs-19990524 snapshot.
+  * First snapshot of the gcc-2_95-branch. egcs-1.2 is renamed to gcc-2.95,
+    which is now the "official" successor to gcc-2.8.1. The full version
+    name is: gcc-2.95 19990521 (prerelease).
+  * debian/control.in: Changed maintainers to `Debian GCC maintainers'.
+  * Moved all version numbers to epoch 1.
+  * debian/rules: Major changes. The support for secondary compilers
+    was already removed for the egcs-1.2 snapshots. Many fixes by
+    Joel Klecker <espy@debian.org>.
+    - Send mail to Debian maintainers for successful builds.
+    - Fix VER and VERNO sed expressions.
+    - Replace remaining GNUARCH occurrences.
+  * New gpc snapshot (but don't build).
+  * debian/patches/valarray.dpatch: Backport from libstdc++-v3.
+  * debian/gcc-doc.*: Info is now gcc.info* (Joel Klecker <espy@debian.org>).
+  * Use cpp driver provided by the package.
+  * New script c89 (fixes #28261).
+
+ -- Matthias Klose <doko@debian.org>  Sat, 22 May 1999 16:10:36 +0200
+
+egcs (1.1.2-2) unstable; urgency=low
+
+  * Integrate NMU's for arm and sparc (fixes #37582, #36857).
+  * Apply patch for the Hurd (fixes #37753).
+  * Describe open bugs in TODO.Debian. Please have a look if you can help.
+  * Update README / math functions section (fixes #35906).
+  * Done by J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>:
+    - At Richard Braakman's request, made -dbg packages for libstdc++
+      and libg++.
+    - Provide egcc(1) (fixes lintian error).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 16 May 1999 14:30:56 +0200
+
+egcs-snapshot (19990502-1) experimental; urgency=low
+
+  * New snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Thu,  6 May 1999 11:51:02 +0200
+
+egcs-snapshot (19990418-2) experimental; urgency=low
+
+  * Merged Rays changes to build debug packages.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 21 Apr 1999 16:54:56 +0200
+
+egcs-snapshot (19990418-1) experimental; urgency=low
+
+  * New snapshot.
+  * Disable cpplib.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 19 Apr 1999 11:32:19 +0200
+
+egcs (1.1.2-1.2) unstable; urgency=low
+
+  * NMU for arm
+  * Added arm-optimizer.dpatch with optimizer workaround for ARM
+
+ -- Jim Pick <jim@jimpick.com>  Mon, 19 Apr 1999 06:17:13 -0700
+
+egcs (1.1.2-1.1) unstable; urgency=low
+
+  * NMU for sparc
+  * Included dpatch to modify the references to gcc/crtstuff.c so that
+    __register_frame_info is not a weak reference. This allows potato to
+    remain binary compatible with slink, while still retaining compatibility
+    with other sparc/egcs1.1.2 distributions. Diff in .dpatch format has
+    been sent to the maintainer with a note it may not be needed for 1.1.3.
+
+ -- Ben Collins <bcollins@debian.org>  Tue, 27 Apr 1999 10:15:03 -0600
+
+egcs (1.1.2-1) unstable; urgency=low
+
+  * Final egcs-1.1.2 release built for potato as primary compiler
+    for all architectures except m68k.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Thu,  8 Apr 1999 13:14:29 +0200
+
+egcs-snapshot (19990321-1) experimental; urgency=low
+
+  * New snapshot.
+  * Disable gpc.
+  * debian/rules: Simplified (no secondary compiler, bumped all versions
+    to same epoch, libapi patch is included upstream).
+  * Separated out cpp documentation to cpp-doc package.
+  * Fixed in this version: #28417.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 23 Mar 1999 02:11:18 +0100
+
+egcs (1.1.2-0slink2) stable; urgency=low
+
+  * Applied H.J.Lu's egcs-19990315.linux patch.
+  * Install faq.html and egcs-1.1.2 announcment.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 23 Mar 1999 01:14:54 +0100
+
+egcs (1.1.2-0slink1) stable; urgency=low
+
+  * Final egcs-1.1.2 release; compiled with glibc-2.0 for slink on i386.
+  * debian/control.in: gcc provides egcc, when FIRST_PRIMARY defined.
+  * Fixes #30767, #32278, #34252, #34352.
+  * Don't build the libstdc++.so.2.9 library on architectures, which have
+    switched to glibc-2.1.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 17 Mar 1999 12:55:59 +0100
+
+egcs (1.1.1.63-2.2) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Incorporate patch from Joel Klecker to fix snapshot packages
+    by moving/removing the application of libapi.
+  * Disable the new libstdc++-dev-config and the postinst message in
+    glibc 2.1 versions.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Mon, 12 Mar 1999 14:16:02 -0500
+
+egcs (1.1.1.63-2.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Compile with glibc 2.1 release version.
+  * New upstream version egcs-1.1.2 pre3.
+  * Miscellaneous rules updates (see changelog.snapshot).
+  * New set of powerpc-related patches from Franz Sirl,
+    <fsirl@kernel.crashing.org>.
+  * Disable libgcc.dpatch (new solution implemented upstream).  Remove it.
+  * Also pass $target to config.if.
+  * Enable Dwarf2 EH for powerpc.  Bump the C++ binary version.  No
+    loss in -backwards- compatibility as far as I can tell, so add a
+    compatibility symlink, and add to shlibs file.
+  * Add --no-backup-if-mismatch to the debian/patches/*.dpatch files,
+    to prevent bogus .orig's in diffs.
+  * Merged with (unreleased) 1.1.1.62-1 and 1.1.1.63-{1,2} packages from
+    Matthias Klose <doko@debian.org>.
+  * Stop adding a backwards compatibility link for egcs-nof on powerpc.
+    To my knowledge, nothing uses it.  Do add the libstdc++ API change
+    link, though.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Mon, 8 Mar 1999 14:24:01 -0500
+
+egcs (1.1.1.63-2) stable; urgency=low
+
+  * Provide a libstdc++ with a shared object name, which is compatible
+    to other distributions. Documented the change in README.Debian,
+    the libstdc++-2.9.postinst and the libstdc++-dev-config script.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 12 Mar 1999 00:36:20 +0100
+
+egcs (1.1.1.63-1.1) unstable; urgency=low
+
+  * Non-Maintainer release.
+  * Build against glibc 2.1.
+  * Make egcs the primary compiler on i386.
+  * Also confilct with egcc (<< FIRST_PRIMARY)
+    if FIRST_PRIMARY is defined.
+    (this tells dpkg that gcc completely obsoletes egcc)
+  * Remove hjl-12 patch again, HJL says it should not be
+    necessary with egcs 1.1.2.
+    (as per forwarded reply from Christopher Chimelis)
+  * Apply libapi patch in clean target before regenerating debian/control
+    and remove the patch afterward. Otherwise, the libstdc++ and libg++
+    package names are generated wrong on a glibc 2.1 system.
+
+ -- Joel Klecker <espy@debian.org>  Tue,  9 Mar 1999 15:31:02 -0800
+
+egcs (1.1.1.63-1) unstable; urgency=low
+
+  * New upstream version egcs-1.1.1-pre3.
+  * Applied improved libstdc++ warning patch from Rob Browning.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  9 Mar 1999 16:14:07 +0100
+
+egcs (1.1.1.62-1) unstable; urgency=low
+
+  * New upstream version egcs-1.1.1-pre2.
+  * New upstream version libg++-2.8.1.3.
+  * Readded ARM support
+  * Readded hjl-12 per request from Christopher C Chimelis
+    <chris@classnet.med.miami.edu>
+
+ -- Matthias Klose <doko@debian.org>  Fri, 26 Feb 1999 09:54:01 +0100
+
+egcs-snapshot (19990224-0.1) experimental; urgency=low
+
+  * New snapshot.
+  * Add the ability to disable CPPLIB by setting CPPLIB=no in
+    the environment.
+  * Disable gpc for powerpc; I spent a long time getting it to
+    make correctly, and then it goes and ICEs.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Tue, 24 Feb 1999 23:34:12 -0500
+
+egcs (1.1.1.61-1) unstable; urgency=low
+
+  * New upstream version egcs-1.1.1-pre1.
+  * debian/control.in: Applied patch from bug report #32987.
+  * Split up H.J.Lu's hjl-19990115-linux patch into several small
+    chunks: libapi, arm-mips, libgcc, hjl-other. The changelog.Linux
+    aren't included in the separate chunks. Please refer to the
+    unmodified hjl-19990115-linux patch file in the egcs source pkg.
+  * Apply warning patch to fix the annoying spew you get if you try to
+    use ropes or deques with -Wall (which makes -Wall mostly useless for
+    spotting errors in your own code). Fixes #32996.
+  * debian/rules: Unapply patches in the exact reverse order they were
+    applied.
+
+ -- Matthias Klose <doko@debian.org>  Sat, 20 Feb 1999 22:06:21 +0100
+
+egcs (1.1.1-5) frozen unstable; urgency=medium
+
+  * Move libgcc.map file to g++ package, where gcc is the secondary
+    compiler (fixes #32329, #32605, #32631).
+  * Prepare to rename libstdc++2.9 package for glibc-2.1 (fixes #32148).
+  * Apply NMU patch for arm architecure (fixes #32367).
+  * Don't apply hjl-12 patch for alpha architectures (requested by the
+    alpha developers, Christopher C Chimelis <chris@classnet.med.miami.edu>).
+  * Call makeinfo with --no-validate to fix obscure build failure on alpha.
+  * Build gpc info files in doc subdirectory.
+  * Remove c++filt diversion (C++ name demangling patch is now in binutils,
+    fixes #30820 and #32502).
+
+ -- Matthias Klose <doko@debian.org>  Sun, 31 Jan 1999 23:19:35 +0100
+
+egcs (1.1.1-4.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Pascal doesn't build for ARM.
+
+ -- Jim Pick <jim@jimpick.com>  Sun, 24 Jan 1999 16:13:34 -0800
+
+egcs (1.1.1-4) frozen unstable; urgency=high
+
+  * Don't strip compiler libraries libgcc.a libobjc.a libg2c.a libgpc.a
+  * Move Pascal examples to the right place (fixes #32149, part 1).
+  * Add dependencies for switching from secondary to primary compiler,
+    if FIRST_PRIMARY is defined (fixes #32149, part 2).
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 Jan 1999 16:51:30 +0100
+
+egcs (1.1.1-3) frozen unstable; urgency=low
+
+  * Updated with the H.J.Lu's hjl-19990115-linux patch (fixes the
+    __register_frame_info problems, mips and arm port included).
+  * Update gpc to 19990118 (beta release candidate).
+  * Strip static libraries (fixes #31247 and #31248).
+  * Changed maintainer address.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 19 Jan 1999 16:34:28 +0100
+
+egcs (1.1.1-2) frozen unstable; urgency=low
+
+  * Moved egcs-docs, g77-doc and gpc-doc packages to doc section.
+  * Downgraded Recommends: egcs-docs to Suggests: egcs-docs dependencies
+    (for archs, where egcs is the primary compiler).
+  * Add 'Suggests: stl-manual' dependency to libstdc++2.9-dev.
+  * Applied one more alpha patch:
+    ftp://ftp.yggdrasil.com/private/hjl/egcs/1.1.1/egcs-1.1.1.diff.12.gz
+  * Applied PPro optimization patch.
+  * Apply emit-rtl-nan patch.
+  * Upgraded to libg++-2.8.1.2a-19981218.tar.gz.
+  * Upgraded to gpc-19981218.
+  * Make symlinks for gobjc, libstdc++2.9-dev and libg++2.8.2 doc directories.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 23 Dec 1998 18:04:53 +0200
+
+egcs-snapshot (19981211-1) experimental; urgency=low
+
+  * New snapshot.
+  * Adapted gpc to egcs-2.92.x (BOOT_CFLAGS must include -g).
+  * New libg++-2.8.1.2a-19981209.tar.gz.
+  * debian/rules: new target mail-summary.
+
+ -- Matthias Klose <doko@debian.org>  Fri, 11 Dec 1998 18:14:53 +0200
+
+egcs (1.1.1-1) frozen unstable; urgency=high
+
+  * Final egcs-1.1.1 release.
+  * The last version depended on a versioned libc6 again.
+  * Add lost dependency for libg++ on libstdc++.
+  * Added debian-libstdc++.sh script to generate a libstdc++ on a Linux
+    system, which doesn't use the libapi patch.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Wed,  2 Dec 1998 12:06:15 +0200
+
+egcs (1.1.0.91.59-2) frozen unstable; urgency=high
+
+  * Fixes bugs from libc6 2.0.7u-6 upload without dependency line
+    Conflicts: libstdc++-2.9 (<< 2.91.59): #30019, #30066, #30078.
+  * debian/copyright: Updated URLs.
+  * gcc --help now mentions /usr/doc/debian/bug-reporting.txt.
+  * Install README.Debian and include information about patches applied.
+  * Depend on unversioned libc6 on i386, such that libstdc++2.9 can be used
+    on a hamm system.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Fri, 27 Nov 1998 18:32:02 +0200
+
+egcs (1.1.0.91.59-1) frozen unstable; urgency=low
+
+  * This is egcs-1.1.1 prerelease #3, compiled with libc6 2.0.7u-6.
+  * Added dependency for libstdc++2.9-dev on g++ (fixes #29631).
+  * Package g77 provides f77 (fixes #29817).
+  * Already fixed in earlier egcs-1.1 releases: #2493, #25271, #10620.
+  * Bugs reported for gcc-2.7.x and fixed in the egcs version of gcc:
+    #2493, #4430, #4954, #5367, #6047, #10612, #12375, #20606, #24788, #26100.
+  * Upgraded libg++ to libg++-2.8.1.2a-19981114.
+  * Upgraded gpc to gpc-19981124.
+  * Close #25869: egcs and splay maintainers are unable to reproduce this
+    bug with the current Debian packages. Bug submitter doesn't respond.
+  * Close #25407: egcs maintainer cannot reproduce this bug with the current
+    Debian compiler. Bug submitter doesn't respond.
+  * Use debhelper 1.2.7 for building.
+  * Replace the libstdc++ and libg++ compatibility links with fake libraries.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Wed, 25 Nov 1998 12:11:42 +0200
+
+egcs (1.1.0.91.58-5) frozen unstable; urgency=low
+
+  * Applied patch to build on the m68060.
+  * Added c++filt and c++filt.1 to the g++ package.
+  * Updated gpc to gpc-981105; fixes some regressions compared to egcs-1.1.
+  * Separated out g77 and gpc doumentation to new packages g77-doc and gpc-doc.
+  * Closed bugs (#22158).
+  * Close #20248; on platforms where gas and gld are the default versions,
+    it makes no difference to configure with or without enable-ld.
+  * Close #24349. The bugs are in the amulet source.
+    See http://www.cs.cmu.edu/afs/cs/project/amulet/www/FAQ.html#GCC28x
+  * Rename gcc.info* files to egcs.info* (fixes #24088).
+  * Documented known bugs (and workarounds) in BUGS.Debian.
+  * Fixed demangling of C++ names (fixes #28787).
+  * Applied patch form aspell to libstdc++/stl/stl_rope.h.
+  * Updated from cvs 16 Nov 1998.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 17 Nov 1998 09:41:24 +0200
+
+egcs-snapshot (19981115-2) experimental; urgency=low
+
+  * New snapshot. Disabled gpc.
+  * New packages g77-doc and gpc-doc.
+
+ -- Matthias Klose <doko@debian.org>  Mon, 16 Nov 1998 12:48:09 +0200
+
+egcs (1.1.0.91.58-3) frozen unstable; urgency=low
+
+  * Previous version installed in potato, not slink.
+  * Updated from cvs 3 Nov 1998.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 3 Nov 1998 18:34:44 +0200
+
+egcs (1.1.0.91.58-2) unstable; urgency=low
+
+  * [debian/rules]: added targets to apply and unapply patches.
+  * [debian/README.patches]: New file.
+  * Moved patches dir to debian/patches. debian/rules has to select
+    the patches to apply.
+  * Manual pages for genclass and gcov (fixes #5995, #20950, #22196).
+  * Apply egcs-1.1-reload patch needed for powerpc architecture.
+  * Fixed bugs (#17768, #20252, #25508, #27788).
+  * Reapplied alpha patch (#20875).
+  * Fixes first part of #22513, extended README.Debian (combining C & C++).
+  * Already fixed in earlier egcs-1.1 releases: #17963, #20252, #20524,
+    #20640, #22450, #24244, #24288, #28520.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Fri, 30 Oct 1998 13:41:45 +0200
+
+egcs (1.1.0.91.58-1) experimental; urgency=low
+
+  * New upstream version. That's the egcs-1.1.1 prerelease plus patches from
+    the cvs archive upto 29 Oct 1998.
+  * Merged files from the egcs and snapshot packages.
+  * Updated libg++ to libg++-2.8.1.2 (although the Debian package name is still
+    2.8.2).
+  * Moved patches dir to patches-1.1.
+  * Dan Jacobowitz:
+    * This is a snapshot from the egcs_1_1_branch, with
+      libapi, reload, builtin-apply, and egcs patches from
+      the debian/patches/ dir applied, along with the egcs-gpc-patches
+      and gcc/p/diffs/gcc-egcs-2.91.55.diff.
+    * Conditionalize gcj and chill (since they aren't in this branch).
+    * Fake snapshots drop the -snap-main.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 29 Oct 1998 15:15:19 +0200
+
+egcs-snapshot (1.1-19981019-5.1) experimental; urgency=low
+
+  * This is a snapshot from the egcs_1_1_branch, with
+    libapi, reload, builtin-apply, and egcs patches from
+    the debian/patches/ dir applied, along with the egcs-gpc-patches
+    and gcc/p/diffs/gcc-egcs-2.91.55.diff.
+  * Conditionalize gcj and chill (since they aren't in this
+    branch).
+  * Fake snapshots drop the -snap-main.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Mon, 19 Oct 1998 22:19:23 -0400
+
+egcs (1.1b-5) unstable; urgency=low
+
+  * [debian/control.in] Fixed typo in dependencies (#28076, #28087, #28092).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 18 Oct 1998 22:56:51 +0200
+
+egcs (1.1b-4) unstable; urgency=low
+
+  * Strengthened g++ dependency on libstdc++_LIB_SO_-dev from
+    `Recommends' to `Depends'.
+  * Updated README.Debian for egcs-1.1.
+  * Updated TODO.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 15 Oct 1998 12:38:47 +0200
+
+egcs-snapshot (19981005-0.1) experimental; urgency=low
+
+  * Make libstdc++2.9-snap-main and libg++-snap-main provide
+    their mainstream equivalents and put those equivalents into
+    their shlibs file.
+  * Package gcj, the GNU Compiler for Java(TM).
+
+  * New upstream version of egcs (The -regcs_latest_snapshot branch).
+  * Build without libg++ entirely.
+  * Leave out gpc for now - the internals are sufficiently different
+    that it does not trivially compile.
+  * Include an experimental reload patch for powerpc - this is,
+    in the words of its author, not release quality, but it allows
+    powerpc linuxthreads to function.
+  * On architectures where we are the primary compiler, let snapshots
+    build with --prefix=/usr and conflict with the stable versions.
+  * Package chill, a front end for the language Chill.
+  * Other applied patches from debian/patches/: egcs-patches and
+    builtin-apply-patch.
+  * Use reload.c revision 1.43 to avoid a nasty bug.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Wed,  7 Oct 1998 00:27:42 -0400
+
+egcs (1.1b-3.1) unstable; urgency=low
+
+  * NMU to fix the egcc -> gcc link once and for all
+
+ -- Christopher C. Chimelis <chris@classnet.med.miami.edu>  Tue, 22 Sep 1998 16:11:19 -0500
+
+egcs (1.1b-3) unstable; urgency=low
+
+  * Oops. The egcc -> gcc link on archs where gcc is egcc was broken.
+    Thanks to Chris Chimelis for pointing this out.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Mon, 21 Sep 1998 20:51:35 +0200
+
+egcs (1.1b-2) unstable; urgency=low
+
+  * New upstream spellfix release (Debian revision is 2 as the internal
+    version numbers didn't change).
+  * Added egcc -> gcc symlink on architectures where egcc is the primary C
+    compiler. Thus, maintainers of packages that require egcc, can now
+    simply use "egcc" without conditionals.
+  * Porters: we hope/plan to make egcs's gcc the default C compiler on all
+    platforms once the 2.2.x kernels are available. Please test this version
+    thoroughly, and give us a GO / NO GO for your architecture.
+  * Some symbols cpp used to predefine were removed upstream in order to clean
+    up the cpp namespace, but imake requires them for determining the proper
+    settings for LinuxMachineDefines (see /usr/X11R6/lib/X11/{Imake,linux}.cf),
+    thus we put them back. Thanks to Paul Slootman for reporting his imake
+    problems on Alpha.
+    * [gcc/config/alpha/linux.h] Added -D__alpha to CPP_PREDEFINES .
+      Thanks to Chris Chimelis for the alpha-only 1.1a-1.1 NMU which fixed
+      this already.
+    * [gcc/config/i386/linux.h] Added -D__i386__ to CPP_PREDEFINES .
+    * [gcc/config/sparc/linux.h] Has -Dsparc in CPP_PREDEFINES .
+    * [gcc/config/sparc/linux64.h] Has -Dsparc in CPP_PREDEFINES .
+    * [gcc/config/m68k/linux.h] Has -Dmc68000 in CPP_PREDEFINES .
+    * [gcc/config/rs6000/linux.h] Has -Dpowerpc in CPP_PREDEFINES .
+    * [gcc/config/arm/linux.h] Has -Darm in CPP_PREDEFINES .
+    * [gcc/config/i386/gnu.h] Has -Di386 in CPP_PREDEFINES .
+  * Small fixes and updates in README.
+  * Changes affecting the source package only:
+    * [gcc/Makefile.in, gcc/cp/Make-lang.in, gcc/p/Make-lang.in]
+      Daniel Jacobowitz: Ugly hacks of various kinds to make cplib2.txt get
+      properly regenerated with multilib.
+    * [debian/TODO] Created.
+    * [INSTALL/index.html] Fixed broken link.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 20 Sep 1998 14:05:15 +0200
+
+egcs (1.1a-1) unstable; urgency=low
+
+  * New upstream release.
+  * Added README.libstdc++ .
+  * Updated Standards-Version.
+  * Matthias:
+    * Downgraded gobjc dependency on egcs-docs from Recommends: to Suggests: .
+    * [libg++/Makefile.in] Patched not to rely on a `-f' flag of `ln'.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed,  2 Sep 1998 19:57:43 +0200
+
+egcs (1.1-1) unstable; urgency=low
+
+  * egcs-1.1 prerelease (from the last Debian package only the version file
+    changed).
+  * "Final" gpc Beta 2.1 gpc-19980830.
+  * Included libg++ and gpc in the .orig tarball. so that diffs are getting
+    smaller.
+  * debian/control.in: Changed maintainer address to galenh-egcs@debian.org.
+  * debian/copyright: Updated URLs.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 31 Aug 1998 12:43:13 +0200
+
+egcs (1.0.99.56-0.1) unstable; urgency=low
+
+  * New upstream snapshot 19980830 from CVS (called egcs-1.1 19980830).
+  * New libg++ snapshot 980828.
+  * Put all patches patches subdirectory; see patches/README in the source.
+  * debian/control.in: readded for libg++2.8.2-dev:
+    Replaces: libstdc++2.8-dev (<= 2.90.29-0.5)
+  * Renamed libg++2.9 package to libg++2.8.2.
+  * gcc/p/gpc-decl.c: Fix from Peter@Gerwinski.de; fixes optimization errors.
+  * patches/gpc-patch2: Fix from Peter@Gerwinski.de; fixes alpha errors.
+  * debian/rules: New configuration flag for building with and without
+    libstdc++api patch; untested without ...
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Sun, 30 Aug 1998 12:04:22 +0200
+
+egcs (1.0.99-0.6) unstable; urgency=low
+
+  * PowerPC fixes.
+  * On powerpc, generate the -msoft-float libs and package them
+    as egcs-nof.
+  * Fix signed char error in gpc.
+  * Create a libg++.so.2.9 compatibility symlink.
+
+ -- Daniel Jacobowitz <dan@debian.org>  Tue, 25 Aug 1998 11:44:09 -0400
+
+egcs (1.0.99-0.5) unstable; urgency=low
+
+  * New upstream snapshot 19980824.
+  * New gpc snapshot gpc-980822; reenabled gpc for alpha.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 25 Aug 1998 01:21:08 +0200
+
+egcs (1.0.99-0.4) unstable; urgency=low
+
+  * New upstream snapshot 19980819. Should build glibc 2.0.9x on PPC.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Wed, 19 Aug 1998 14:18:07 +0200
+
+egcs (1.0.99-0.3) unstable; urgency=low
+
+  * New upstream snapshot 19980816.
+  * debian/rules: build correct debian/control and debian/*.shlibs
+  * Enabled Haifa scheduler for ix86.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 17 Aug 1998 16:29:35 +0200
+
+egcs (1.0.99-0.2) unstable; urgency=low
+
+  * New upstream snapshot: egcs-19980812, minor changes only.
+  * Fixes for building on `primary' targets.
+  * Disabled gpc on `alpha' architecture.
+  * Uses debhelper 1.1.6
+  * debian/control.in: Replace older snapshot versions in favor of newer
+    normal versions.
+  * debian/rules: Fixes building of binary-arch target only.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 13 Aug 1998 11:59:41 +0200
+
+egcs (1.0.99-0.1) unstable; urgency=low
+
+  * New upstream version: pre egcs-1.1 version.
+  * Many changes ... for details see debian/changelog.snapshot in the
+    source package.
+  * New packages libstdc++2.9 and libstdc++2.9-dev.
+  * New libg++ snapshot 980731: new packages libg++2.9 and libg++2.9-dev.
+  * New gpc snapshot gpc-980729: new package gpc.
+  * Uses debhelper 1.1
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 10 Aug 1998 13:00:27 +0200
+
+egcs-snapshot (19980803-4) experimental; urgency=low
+
+  * rebuilt debian/control.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  5 Aug 1998 08:51:47 +0200
+
+egcs-snapshot (19980803-3) experimental; urgency=low
+
+  * debian/rules: fix installation locations of NEWS, header and
+    `undocumented' files.
+  * man pages aren't compressed for the snapshot package.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  4 Aug 1998 17:34:31 +0200
+
+egcs-snapshot (19980803-2) experimental; urgency=low
+
+  * debian/rules: Uses debhelper. Old in debian/rules.old.
+    renamed postinst, prerm files for use with debhelper.
+  * debian/{libg++2.9,libstdc++2.9}/postinst: call ldconfig only,
+    when called for configure.
+  * egcs-docs is architecture independent package.
+  * new libg++ snapshot 980731.
+  * installed libstdc++ api patch (still buggy).
+
+ -- Matthias Klose <doko@debian.org>  Mon,  3 Aug 1998 13:20:59 +0200
+
+egcs-snapshot (19980729-1) experimental; urgency=low
+
+  * New snapshot version 19980729 from CVS archive.
+  * New gpc snapshot gpc-980729.
+  * Let gcc/configure decide about using the Haifa scheduler.
+  * Remove -DDEBIAN. That was needed for the security improvements with
+    regard to the /tmp problem. egcs-1.1 chooses another approach.
+  * Save test-protocol and extract gpc errors to gpc-test-summary.
+  * Tighten binutils dependency to 2.9.1.
+  * debian/rules: new build-info target
+  * debian/{control.in,rules}: _SO_ and BINUTILSV substitution.
+  * debian/rules: add dependency for debian/control.
+  * debian/rules: remove bin/c++filt
+  * TODO: next version will use debhelper; the unorganized moving of
+    files becomes unmanageable ...
+  * TODO: g++ headers in stdc++ package? check!
+
+ -- Matthias Klose <doko@debian.org>  Thu, 30 Jul 1998 12:10:20 +0200
+
+egcs-snapshot (19980721-1) experimental; urgency=low
+
+  * Unreleased. Infinite loops in executables made by gpc.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 22 Jul 1998 18:07:20 +0200
+
+egcs-snapshot (19980715-1) experimental; urgency=low
+
+  * New snapshot version from CVS archive.
+  * New gpc snapshot gpc-980715.
+  * New libg++ version libg++-2.8.2-980708. Changed versioning
+    schema for library. The major versions of libc, libstdc++ and the
+    g++ interface are coded in the library name. Use this new schema,
+    but provide a symlink to our previous schema, since the library
+    seems to be binary compatible.
+  * [debian/rules]: Fixed bug in build target, when bootstrap returns
+    with an error
+
+ -- Matthias Klose <doko@debian.org>  Wed, 15 Jul 1998 10:55:05 +0200
+
+egcs-snapshot (19980701-1) experimental; urgency=low
+
+  * New snapshot version from CVS archive.
+    Two check programs in libg++ had to be manually killed to finish the
+    testsuite (tBag and tSet).
+  * New gpc snapshot gpc-980629.
+  * Incorporated debian/rules changes from egcs-1.0.3a-0.5 (but don't remove
+    gcc/cp/parse.c gcc/c-parse.c gcc/c-parse.y gcc/objc/objc-parse.c
+    gcc/objc/objc-parse.y, since these files are part of the release).
+  * Disable the -DMKTEMP_EACH_FILE -DHAVE_MKSTEMP -DDEBIAN flags for the
+    snapshot. egcs-1.1 will have another solution.
+  * Don't bootstrap the snapshot with -fno-force-mem. Internal compiler
+    error :-(
+  * libf2c.a and f2c.h have changed names to libg2c.a and g2c.h and
+    have moved again into the gcc-lib dir. They are installed under
+    libg2c.a and g2c.h. Is it necessary to provide links f2c -> g2c ?
+  * debian/rules: reflect change of build dir of libraries.
+
+ -- Matthias Klose <doko@debian.org>  Wed,  2 Jul 1998 13:15:28 +0200
+
+egcs-snapshot (19980628-0.1) experimental; urgency=low
+
+  * New upstream snapshot version.
+  * Non-maintainer upload; Matthias appears to be absent currently.
+  * Updated shlibs.
+  * Merged changes from regular egcs:
+    * [debian/control] Tightened dependency on binutils to 2.8.1.0.23 or
+      newer, as according to INSTALL/SPECIFIC PowerPC (and possibly Sparc)
+      need this.
+    * [debian/rules] Clean up some generated files outside builddir,
+      so the .diff.gz becomes smaller.
+    * [debian/rules] Partial sync/update with the one for the regular egcs
+      version.
+  * [debian/rules] Make gcc/p/configure executable.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed,  1 Jul 1998 07:12:15 +0200
+
+egcs (1.0.3a-0.6) frozen unstable; urgency=low
+
+  * Some libg++ development files were in libstdc++2.8-dev rather than
+    libg++2.8-dev. Fixed this and dealt with upgrading from the earlier
+    versions (fixes #23908; this bug is not marked release-critical, but
+    is annoying and can be quite confusing for users. Therefore, I think
+    this fix should go in 2.0).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 30 Jun 1998 11:10:14 +0200
+
+egcs (1.0.3a-0.5) frozen unstable; urgency=low
+
+  * Fixed location of .hP files (Fixes #23448).
+  * [debian/rules] simplified extraction of the files for libg++2.8-dev.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed, 17 Jun 1998 09:33:41 +0200
+
+egcs (1.0.3a-0.4) frozen unstable; urgency=low
+
+  * [gcc/gcc.c] There is one call to choose_temp_base for determining the
+    tempdir to be used only; #ifdef HAVE_MKSTEMP delete the tempfile created
+    as a side effect. (fixes #23123 for egcs).
+  * [gcc/collect2.c] There's still a vulnerability here; I don't see how
+    I can fix it without leaving behind tempfiles though.
+  * [debian/control] Tightened dependency on binutils to 2.8.1.0.23 or
+    newer, as according to INSTALL/SPECIFIC PowerPC (and possibly Sparc)
+    need this.
+  * [debian/rules] Clean up some generated files outside builddir, so the
+    .diff.gz becomes smaller.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 13 Jun 1998 09:06:52 +0200
+
+egcs-snapshot (19980608-1) experimental; urgency=low
+
+  * New snapshot version.
+
+ -- Matthias Klose <doko@debian.org>  Tue,  9 Jun 1998 14:07:44 +0200
+
+egcs (1.0.3a-0.3) frozen unstable; urgency=high (security fixes)
+
+  * [gcc/toplev.c] set flag_force_mem to 1 at optimisation level 3 or higher.
+    This works around #17768 which is considered release-critical.
+  * Changes by Matthias:
+    * [debian/README] Documentation of the compiler situation for Objective C.
+    * [debian/rules, debian/control.*] Generate control file from a master
+      file.
+    * [debian/rules] Updates for Pascal and Fortran parts; brings it in sync
+      with the one for the egcs snapshots.
+  * Use the recommended settings LDFLAGS=-s CFLAGS= BOOT_CFLAGS='-O2'.
+  * Really compile -DMKTEMP_EACH_FILE -DHAVE_MKSTEMP (really fixes #19453
+    for egcs).
+  * [gcc/gcc.c] A couple of temp files weren't marked for deletion.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 31 May 1998 22:56:22 +0200
+
+egcs (1.0.3a-0.2) frozen unstable; urgency=high (security fixes)
+
+  * Security improvements with regard to the /tmp problem
+    (gcc opens predictably named files in TMPDIR which can be abused via
+    symlinks)  (Fixes #19453 for egcs).
+    * Compile -DMKTEMP_EACH_FILE to ensure the %u name is generated randomly
+      every time; affects gcc/gcc.c .
+    * [gcc/choose-temp.c, libiberty/choose-temp.c]: use mktemp(3) if compiled
+      -DUSE_MKSTEMP .
+    * Security improvements: don't use the result of choose_temp_base in a
+      predictable fashion.
+      [gcc/gcc.c]:
+      * @c, @objective-c: use random name rather then tempbasename.i for
+        intermediate preprocessor output (%g.i -> %d%u).
+      * @c, @objective-c: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @c, @objective-c, @cpp-output, @assembler-with-cpp: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @c, @objective-c, @assembler-with-cpp: use previous random name
+        (cc1|cpp output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U)
+      [gcc/f/lang-specs.h]:
+      * @f77-cpp-input: use random name rather then tempbasename.i for
+        intermediate cpp output (%g.i -> %d%u).
+      * @f77-cpp-input: use previous random name (cpp output) rather than
+        tempbasename.i for f771 input (%g.i -> %U).
+      * @f77-cpp-input: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @f77-cpp-input: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: use random name rather then tempbasename.i for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @f77: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %U).
+  * Run the testsuite (this requires the dejagnu package in experimental;
+    unfortunately, it is difficult to distinguish this version from the one
+    in frozen).
+    if possible, and log the results in warn_summary and bootstrap-summary.
+  * [gcc/choose-temp.c, libiberty/choose-temp.c]: s|returh|return| in
+    comment.
+  * Added notes on the Debian compiler setup [debian/README] to the
+    development packages.
+  * Matthias:
+    * [libg++/etc/lf/Makefile.in] Replaced "-ltermcap" by "-lncurses".
+    * [debian/rules] Updated so it can be used for both egcs releases and
+      snapshots easily; added support for the GNU Pascal Compiler gpc.
+    * [contrib/test_summary, contrib/warn_summary] Added from CVS.
+    * Run compiler checks and include results in /usr/doc/<package>.
+    * Updates to the README.
+    * [debian/rules] Use assignments to speed up startup.
+  * [debian/rules] Show the important variables at the start of the build
+    process.
+  * [debian/control.secondary] Added a dependency of gobjc on egcc on
+    architectures where egcs provides the secondary compiler, as
+    /usr/bin/egcc is the compiler driver for gobjc. (Fixes #22829).
+  * [debian/control.*] Bumped Standards-Version; used shorter version
+    numbers in the dependency relationships (esthetic difference only);
+    fixed typo.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 26 May 1998 21:47:41 +0200
+
+egcs-snapshot (19980525-1) experimental; urgency=low
+
+  * New snapshot version.
+
+ -- Matthias Klose <doko@debian.org>  Tue, 26 May 1998 18:04:06 +0200
+
+egcs-snapshot (19980517-1) experimental; urgency=low
+
+  * "Initial" release of the egcs-snapshot package; many debian/* files
+    derived from the egcs-1.0.3a-0.1 package (maintained by Galen Hazelwood
+    <galenh@micron.net>, NMU's by J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>)
+  * The egcs-snapshot packages can coexist with the packages of the
+    egcs release. Package names have a '-ss' appended.
+  * All packages are installed in a separate tree (/usr/lib/egcs-ss following
+    the FHSS).
+  * Made all snapshot packages extra, all snapshot packages conflict
+    with correspondent egcs packages, which are newer than the snapshot.
+  * Included libg++-2.8.1-980505.
+  * Included GNU Pascal (gpc-980511).
+  * Haifa scheduler enabled for all snapshot packages.
+  * Run compiler checks and include results in /usr/doc/<package>.
+  * Further information in /usr/doc/<package>/README.snapshot.
+
+ -- Matthias Klose <doko@debian.org>  Wed, 20 May 1998 11:14:06 +0200
+
+egcs (1.0.3a-0.1) frozen unstable; urgency=low
+
+  * New upstream release egcs-2.90.29 980515 (egcs-1.0.3 release)
+    (we were using 1.0.3-prerelease).  This includes the Haifa patches
+    we had since 1.0.3-0.2 and the gcc/objc/thr-posix.c patch we had
+    since 1.0.3-0.1; the differences with 1.0.3-prerelease + patches
+    we had is negligable.
+  * iostream info documentation was in the wrong package (libg++2.8-dev).
+    Now it's in libstdc++2.8-dev. (Thanks to Jens Rosenboom for bringing
+    this to my attention). As 1.0.3-0.3 didn't make it out of Incoming,
+    I'm not adding "Replaces:" for this; folks who had 1.0.3-0.3 installed
+    already know enough to use --force-overwrite.
+  * [gcc/objc/objc-act.c] Applied patch Matthias Klose supplied me with that
+    demangles Objective C method names in gcc error messages.
+  * Explicitly disable Haifa scheduling on Alpha, to make it easier to use
+    this package's diff with egcs snapshots, which may turn on Haifa
+    scheduling even though it is still unstable. (Requested by Chris Chimelis)
+  * Don't run "configure" again if builddir already exists (makes it faster
+    to restart builds in case one is hacking internals). Requested by
+    Johnnie Ingram.
+  * [gcc/gbl-ctors.h] Don't use extern declaration for atexit on glibc 2.1
+    and higher (the prototype has probably changed; having the declaration
+    broke Sparc compiles).
+  * [debian/rules] Determine all version number automatically (from the
+    version string in gcc/version.c).
+  * [debian/copyright] Updated FTP locations; added text about libg++ (fixes
+    #22465).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 16 May 1998 17:41:44 +0200
+
+egcs (1.0.3-0.3) frozen unstable; urgency=low
+
+  * Made an "egcs-doc" package containing documentation for egcs (e)gcc,
+    g++, gobjc, so that administrators can choose whether to have this
+    documenation or the documentation that comes with the GNU gcc package.
+    Dependency on this is Recommends: on architectures where egcs provides
+    the primary C compiler; Suggests: on the others (where GNU gcc is still
+    the primary C compiler).
+  * Use the g++ FAQ from gcc/cp rather than libg++, as that version is more
+    up to date.
+  * Added iostream info documentation to libstdc++2.8-dev.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed, 13 May 1998 08:46:10 +0200
+
+egcs (1.0.3-0.2) frozen unstable; urgency=low
+
+  * Added libg++ that works with egcs, found at
+    ftp://ftp.yggdrasil.com/private/hjl/libg++-2.8.1-980505.tar.gz
+    (fixes #20587 (Severity: important)).
+  * The "libg++" and "libg++-dev" virtual packages now refer to the GNU
+    extensions.
+  * Added the g++ FAQ that comes with libg++ to the g++ package.
+  * libg++/Makefile.in: added $(srcdir) to rule for g++FAQ.info so that it
+    builds OK in builddir.
+  * Added -D__i386__ to the cpp predefines on intel.
+  * Patches Matthias supplied me with:
+    * Further 1.0.3 prerelease patches from CVS.
+      This includes patches to the Haifa scheduler. Alpha porters, please
+      check if this makes the Haifa scheduler OK again.
+    * Objective C patches from CVS.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri,  8 May 1998 14:43:20 +0200
+
+egcs (1.0.3-0.1) frozen unstable; urgency=low (high for maintainers that use objc)
+
+  * bug fixes only in new upstream version
+  * Applied patches from egcs CVS archive (egcs_1_03_prerelease)
+    (see gcc/ChangeLog in the egcs source package).
+  * libstdc++2.8-dev no longer Provides: libg++-dev (fixes #21153).
+  * libstdc++2.8-dev now Conflicts: libg++27-dev (bo),
+    libg++272-dev (hamm) [regular packages] rather than
+    Conflicts: libg++-dev [virtual package] to prepare the way for "libg++"
+    to be used as a virtual package for a new libg++ package (i.e. an up to
+    date one, which not longer contains libstdc++, but only the GNU
+    extensions) that is compatible with the egcs g++ packages. Such a package
+    isn't available yet. Joel Klecker tried building libg++2.8.1.1a within
+    egcs's libstdc++ setup, but it appears to need true gcc 2.8.1 .
+  * Filed Severity: important bugs against wxxt1-dev (#21707) because these
+    still depend on libg++-dev, which is removed in this version.
+    A fixed libsidplay1-dev has already been uploaded.
+  * libstdc++2.8 is now Section: base and Priority: required (as dselect is
+    linked against it).
+  * Disabled Haifa scheduling on Alpha again; Chris Chimelis reported
+    that this caused problems on some machines.
+  * [gcc/extend.texi]
+    ftp://maya.idiap.ch/pub/tmb/usenix88-lexic.ps.Z is no longer available;
+    use http://master.debian.org/~karlheg/Usenix88-lexic.pdf .
+    (fixes the egcs part of #20002).
+  * Updated Standards-Version.
+  * Changed chmod in debian/rules at Johnie Ingram's request.
+  * Rather than hardwire the Debian part of the packages' version number,
+    extract it from debian/changelog .
+  * Use gcc/objc/thr-posix.c from 980418 egcs snapshot to make objc work.
+    (Fixes #21192).
+  * Applied workaround for the GNUstep packages on sparc systems.
+    See README.sparc (on sparc packages only) in the doc directory.
+    This affects the other compilers as well.
+  * Already done in 1.0.2-0.7: the gobjc package now provides a virtual
+    package objc-compiler.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 28 Apr 1998 12:05:28 +0200
+
+egcs (1.0.2-0.7) frozen unstable; urgency=low
+
+  * Separated out Objective-C compiler.
+  * Applied patch from http://www.cygnus.com/ml/egcs/1998-Apr/0614.html
+
+ -- Matthias Klose <doko@debian.org>  Fri, 17 Apr 1998 10:25:48 +0200
+
+egcs (1.0.2-0.6) frozen unstable; urgency=low
+
+  * Due to upstream changes (libg++ is now only the GNU specific C++
+    classes, and is no longer maintained; libstdc++ contains the C++
+    standard library, including STL), the virtual "libg++-dev"
+    package's meaning has become confusing. Therefore, new or updated
+    packages should no longer use the virtual "libg++-dev" package.
+  * Corrected g++'s Recommends to libstdc++2.8-dev (>=2.90.27-0.1).
+    The previous version had Recommends: libstdc++-dev (>=2.90.27-0.1)
+    which doesn't work, as libstc++-dev is a virtual package.
+  * Bumped Standards-Version.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 14 Apr 1998 11:52:08 +0200
+
+egcs (1.0.2-0.5) frozen unstable; urgency=low (high for maintainers of packages that use libstdc++)
+
+  * Modified shlibs file for libstdc++ to generate versioned dependencies,
+    as it is not link compatible with the 1.0.1-x versions in
+    project/experimental. (Fixes #20247, #20033)
+    Packages depending on libstd++ should be recompiled to fix their
+    dependencies.
+  * Strenghtened g++'s Recommends: libstdc++-dev to the 1.0.2 version or
+    newer.
+  * Fixed problems with the unknown(7) symlink for gcov.
+  * Reordering links now works.
+
+ -- Adam Heath <adam.heath@usa.net>  Sun, 12 Apr 1998 13:09:30 -0400
+
+egcs (1.0.2-0.4) frozen unstable; urgency=low
+
+  * Unreleased. This is the version Adam Heath received from me.
+  * Replaces: gcc (<= 2.7.2.3-3) so that the overlap with the older gcc
+    packages (including bo's gcc_2.7.2.1-8) is handled properly
+    (fixes #19931, #19672, #20217, #20593).
+  * Alpha architecture (fixes #20875):
+    * Patched gcc/config/alpha/linux.h for the gmon functions to operate
+      properly.
+    * Made egcs the primary C compiler.
+    * Enabled Hafia scheduling.
+  * Lintian-detected problems:
+    * E: libstdc++2.8: ldconfig-symlink-before-shlib-in-deb usr/lib/libstdc++.so.2.8
+    * E: egcc: binary-without-manpage gcov
+      Reported as wishlist bug; added link to undocumented(7).
+    * W: libstdc++2.8: non-standard-executable-perm usr/lib/libstdc++.so.2.8.0 0555
+    * E: libstdc++2.8: shlib-with-executable-bit usr/lib/libstdc++.so.2.8.0 0555
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri, 10 Apr 1998 14:46:46 +0200
+
+egcs (1.0.2-0.3) frozen unstable; urgency=low
+
+  * Really fixed dependencies.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Mon, 30 Mar 1998 11:30:26 +0200
+
+egcs (1.0.2-0.2) frozen unstable; urgency=low
+
+  * Fixed dependencies.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 28 Mar 1998 13:58:58 +0100
+
+egcs (1.0.2-0.1) frozen unstable; urgency=low
+
+  * New upstream version; it now has -Di386 in CPP_PREDEFINES.
+  * Only used the debian/* patches from 1.0.1-2; the rest of it appears
+    to be in 1.0.2 already.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri, 27 Mar 1998 11:47:14 +0100
+
+egcs (1.0.1-2) unstable; urgency=low
+
+  * Integrated pre-release 1.0.2 patches
+  * Split out g++
+  * egcs may now provide either the primary or secondary C compiler
+
+ -- Galen Hazelwood <galenh@micron.net>  Sat, 14 Mar 1998 14:15:32 -0700
+
+egcs (1.0.1-1) unstable; urgency=low
+
+  * New upstream version
+  * egcs is now the standard Debian gcc!
+  * gcc now provides c-compiler (#15248 et al.)
+  * g77 now provides fortran77-compiler
+  * g77 dependencies now correct (#16991)
+  * /usr/doc/gcc/changelog.gz now has correct permissions (#16139)
+
+ -- Galen Hazelwood <galenh@micron.net>  Sat,  7 Feb 1998 19:22:30 -0700
+
+egcs (1.0-1) experimental; urgency=low
+
+  * First official release
+
+ -- Galen Hazelwood <galenh@micron.net>  Thu,  4 Dec 1997 16:30:11 -0700
+
+egcs (970917-1) experimental; urgency=low
+
+  * New upstream snapshot (There's a lot of stuff here as well, including
+    a new libstdc++, but it _still_ won't build...)
+  * eg77 driver now works properly
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 17 Sep 1997 20:44:29 -0600
+
+egcs (970904-1) experimental; urgency=low
+
+  * New upstream snapshot
+
+ -- Galen Hazelwood <galenh@micron.net>  Sun,  7 Sep 1997 18:25:06 -0600
+
+egcs (ss-970814-1) experimental; urgency=low
+
+  * Initial packaging (of initial snapshot!)
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 20 Aug 1997 00:36:28 +0000
+
+gcc272 (2.7.2.3-12) unstable; urgency=low
+
+  * Compiled on a glibc-2.0 based system.
+  * Reflect move of manpage to /usr/share in gcc.postinst as well.
+  * Moved gcc272-docs to section doc, priority optional.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Sat, 28 Aug 1999 13:42:13 +0200
+
+gcc272 (2.7.2.3-11) unstable; urgency=low
+
+  * Follow Debian policy for GNU system type (fixes #42657).
+  * config/i386/linux.h: Remove %[cpp_cpu] from CPP_SPEC. Stops gcc-2.95
+    complaining about obsolete spec operators (using gcc -V 2.7.2.3).
+    Patch suggested by Zack Weinberg <zack@bitmover.com>.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Sun, 15 Aug 1999 20:12:21 +0200
+
+gcc272 (2.7.2.3-10) unstable; urgency=low
+
+  * Renamed source package to gcc272. The egcs source package is renamed
+    to gcc, because it's now the "official" GNU C compiler.
+  * Changed maintainer address to "Debian GCC maintainers".
+  * Install info and man stuff to /usr/share.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu, 27 May 1999 12:29:23 +0200
+
+gcc (2.7.2.3-9) unstable; urgency=low
+
+  * debian/{postinst,prerm}-doc: handle gcc272.info, not gcc.info.
+    Fixes #36306.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 20 Apr 1999 07:32:58 +0200
+
+gcc (2.7.2.3-8) unstable; urgency=low
+
+  * Make gcc-2.7 the secondary compiler. Rename gcc package to gcc272.
+    On i386, sparc and m68k, this package is compiled against glibc2.0.
+  * The cpp package is built from the egcs source package.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Mon, 29 Mar 1999 22:48:50 +0200
+
+gcc (2.7.2.3-7) frozen unstable; urgency=low
+
+  * Separated out ObjC compiler to gobjc27 package.
+  * Changed maintainer address.
+  * Synchronized README.Debian with egcs-1.1.1-3.
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Tue, 29 Dec 1998 19:05:26 +0100
+
+gcc (2.7.2.3-6) frozen unstable; urgency=low
+
+  * Link with -lc on i386, m68k, sparc, when building shared libraries
+    (fixes #25122).
+
+ -- Matthias Klose <doko@cs.tu-berlin.de>  Thu,  3 Dec 1998 12:12:12 +0200
+
+gcc (2.7.2.3-5) frozen unstable; urgency=low
+
+  * Updated maintainer info.
+  * Updated Standards-Version; made lintian-clean.
+  * gcc-docs can coexist with the latest egcs-docs, so added (<= version) to
+    the Conflicts.
+  * Updated the README and renamed it to README.Debian .
+  * Put a reference to /usr/doc/gcc/README.Debian in the info docs.
+  * Updated description of g++272 .
+  * Clean up generated info files, to keep the diff small.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Tue, 17 Nov 1998 20:05:59 +0100
+
+gcc (2.7.2.3-4.8) frozen unstable; urgency=high
+
+  * Non-maintainer release
+  * Fix type in extended description
+  * Removed wrong test in postinst
+  * Add preinst to clean up some stuff from an older gcc package properly
+    and stop man complaining about dangling symlinks
+
+ -- Wichert Akkerman <wakkerma@debian.org>  Fri, 17 Jul 1998 18:48:32 +0200
+
+gcc (2.7.2.3-4.7) frozen unstable; urgency=high
+
+  * Really fixed gcc-docs postinst (Fixes #23470), so that `gcc-docs'
+    becomes installable.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Mon, 15 Jun 1998 07:53:40 +0200
+
+gcc (2.7.2.3-4.6) frozen unstable; urgency=high
+
+  * [gcc.c] There is one call to choose_temp_base for determining the
+    tempdir to be used only;
+    #ifdef HAVE_MKSTEMP delete the tempfile created as a side effect.
+    (fixes #23123 for gcc).
+  * gcc-docs postinst was broken (due to a broken line) (fixes #23391, #23401).
+  * [debian/control] description for gcc-docs said `egcs' where it should have
+    said `gcc' (fixes #23396).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Thu, 11 Jun 1998 12:48:50 +0200
+
+gcc (2.7.2.3-4.5) frozen unstable; urgency=high
+
+  * The previous version left temporary files behind, as they were not
+    marked for deletion afterwards.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sun, 31 May 1998 22:49:14 +0200
+
+gcc (2.7.2.3-4.4) frozen unstable; urgency=high (security fixes)
+
+  * Security improvements with regard to the /tmp problem
+    (gcc opens predictably named files in TMPDIR which can be abused via
+    symlinks)  (Fixes #19453 for gcc):
+    * Compile -DMKTEMP_EACH_FILE to ensure the %u name is generated randomly
+      every time; affects gcc/gcc.c .
+    * [cp/g++.c, collect2.c, gcc.c] If compiled -DHAVE_MKSTEMP use mkstemp(3)
+      rather than mktemp(3).
+    * Security improvements: don't use the result of choose_temp_base in a
+      predictable fashion.
+      [gcc.c]:
+      * @c, @objective-c: use random name rather then tempbasename.i for
+        intermediate preprocessor output (%g.i -> %d%u).
+      * @c, @objective-c: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @c, @objective-c, @cpp-output, @assembler-with-cpp: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @c, @objective-c, @assembler-with-cpp: use previous random name
+        (cc1|cpp output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U)
+      [f/lang-specs.h]:
+      * @f77-cpp-input: use random name rather then tempbasename.i for
+        intermediate cpp output (%g.i -> %d%u).
+      * @f77-cpp-input: use previous random name (cpp output) rather than
+        tempbasename.i for f771 input (%g.i -> %U).
+      * @f77-cpp-input: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @f77-cpp-input: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: use random name rather then tempbasename.i for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate ratfor output (%g.f -> %d%u).
+      * @ratfor: use previous random name (ratfor output) rather than
+        tempbasename.i for f771 input (%g.f -> %U).
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @ratfor: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use previous random name
+        (ratfor output) rather then tempbasename.s for intermediate assembler
+        input (%g.s -> %U).
+      * @f77: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %d%u).
+      * @f77: switched
+        "as [-o output file] <input file>" to
+        "as <input file> [-o output file]".
+      * @ratfor: use random name rather then tempbasename.s for
+        intermediate compiler output (%g.s -> %U).
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Sat, 30 May 1998 17:27:03 +0200
+
+gcc (2.7.2.3-4.3) frozen unstable; urgency=high
+
+  * The "alpha" patches from -4 affected a lot more than alpha support,
+    and in all likeliness broke compilation of libc6 2.0.7pre3-1
+    and 2.0.7pre1-4 . I removed them by selective application of the
+    diff between -4 and -4. (should fix #22292).
+  * Fixed reference to the trampolines paper (fixes #20002 for Debian;
+    this still needs to be forwarded).
+  * This is for frozen too. (obsoletes #22390 (request to move -4.2 to
+    frozen)).
+  * Split of gcc-docs package, so that the gcc can be succesfully installed
+    on systems that have egcs-docs installed.
+  * Added the README on the compiler situation that's already in the egcs
+    packages.
+  * Use the recommended settings LDFLAGS=-s CFLAGS= BOOT_CFLAGS='-O2'.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Thu, 28 May 1998 20:03:59 +0200
+
+gcc (2.7.2.3-4.2) unstable; urgency=low
+
+  * Still for unstable, as I have received no feedback about the g++272
+    package yet.
+  * gcc now Provides: objc-compiler .
+  * Clean up /etc/alternatives/{g++,g++.1.gz} if they are dangling.
+    (fixes #19765, #20563)
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Wed, 22 Apr 1998 12:40:45 +0200
+
+gcc (2.7.2.3-4.1) unstable; urgency=low
+
+  * Bumped Standards-Version.
+  * Forked off a g++272 package (e.g. for code that uses the GNU extensions
+    in libg++); for now this is in "unstable" only; feedback appreciated.
+  * Some cleanup (lintian): permissions, absolute link, gzip manpage.
+
+ -- J.H.M. Dassen (Ray) <jdassen@wi.LeidenUniv.nl>  Fri, 17 Apr 1998 13:05:25 +0200
+
+gcc (2.7.2.3-4) unstable; urgency=low
+
+  * Added alpha patches
+  * Only build C and objective-c compilers, split off g++
+
+ -- Galen Hazelwood <galenh@micron.net>  Sun,  8 Mar 1998 21:16:39 -0700
+
+gcc (2.7.2.3-3) unstable; urgency=low
+
+  * Added patches for m68k
+  * Added patches for sparc (#13968)
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri, 17 Oct 1997 18:25:21 -0600
+
+gcc (2.7.2.3-2) unstable; urgency=low
+
+  * Added g77 support (g77 0.5.21)
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 10 Sep 1997 18:44:54 -0600
+
+gcc (2.7.2.3-1) unstable; urgency=low
+
+  * New upstream version
+  * Now using pristine source
+  * Removed misplaced paragraph in cpp.texi (#10877)
+  * Fix security bug for temporary files (#5298)
+  * Added Suggests: libg++-dev (#12335)
+  * Patched objc/thr-posix.c to support conditions (#12502)
+
+ -- Galen Hazelwood <galenh@micron.net>  Mon,  8 Sep 1997 12:20:07 -0600
+
+gcc (2.7.2.2-7) unstable; urgency=low
+
+  * Made cc and c++ managed through alternates mechanism (for egcs)
+
+ -- Galen Hazelwood <galenh@micron.net>  Tue, 19 Aug 1997 22:37:03 +0000
+
+gcc (2.7.2.2-6) unstable; urgency=low
+
+  * Tweaked Objective-C thread support (#11069)
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed,  9 Jul 1997 11:56:57 -0600
+
+gcc (2.7.2.2-5) unstable; urgency=low
+
+  * More updated m68k patches
+  * Now conflicts with libc5-dev (#10006, #10112)
+  * More strict Depends: cpp, prevents version mismatch (#9954)
+
+ -- Galen Hazelwood <galenh@micron.net>  Thu, 19 Jun 1997 01:29:02 -0600
+
+gcc (2.7.2.2-4) unstable; urgency=low
+
+  * Moved to unstable
+  * Temporarily removed fortran support (waiting for new g77)
+  * Updated m68k patches
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri,  9 May 1997 13:35:14 -0600
+
+gcc (2.7.2.2-3) experimental; urgency=low
+
+  * Built against libc6 (fixes bug #8511)
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri, 4 Apr 1997 13:30:10 -0700
+
+gcc (2.7.2.2-2) experimental; urgency=low
+
+  * Fixed configure to build crt{begin,end}S.o on i386
+
+ -- Galen Hazelwood <galenh@micron.net>  Tue, 11 Mar 1997 16:15:02 -0700
+
+gcc (2.7.2.2-1) experimental; urgency=low
+
+  * Built for use with libc6-dev (experimental purposes only!)
+  * Added m68k patches from Andreas Schwab
+
+ -- Galen Hazelwood <galenh@micron.net>  Fri, 7 Mar 1997 12:44:17 -0700
+
+gcc (2.7.2.1-7) unstable; urgency=low
+
+  * Patched to support g77 0.5.20
+
+ -- Galen Hazelwood <galenh@micron.net>  Thu, 6 Mar 1997 22:20:23 -0700
+
+gcc (2.7.2.1-6) unstable; urgency=low
+
+  * Added (small) manpage for protoize/unprotoize (fixes bug #6904)
+  * Removed -lieee from specs file (fixes bug #7741)
+  * No longer builds aout-gcc
+
+ -- Galen Hazelwood <galenh@micron.net>  Mon, 3 Mar 1997 11:10:20 -0700
+
+gcc (2.7.2.1-5) unstable; urgency=low
+
+  * debian/control now lists cpp in section "interpreters"
+  * Re-added Objective-c patches for unstable
+
+ -- Galen Hazelwood <galenh@micron.net>  Wed, 22 Jan 1997 10:27:52 -0700
+
+gcc (2.7.2.1-4) stable unstable; urgency=low
+
+  * Changed original source file so dpkg-source -x works
+  * Removed Objective-c patches (unsafe for stable)
+  * Built against rex's libc, so fixes placed in -3 are available to
+    those still using rex
+
+ -- Galen Hazelwood <galenh@micron.net>  Tue, 21 Jan 1997 11:11:53 -0700
+
+gcc (2.7.2.1-3) unstable; urgency=low
+
+  * New (temporary) maintainer
+  * Updated to new standards and source format
+  * Integrated aout-gcc into gcc source package
+  * Demoted aout-gcc to Priority "extra"
+  * cpp package description more clear (fixes bug #5428)
+  * Removed cpp "Replaces: gcc" (fixes bug #5762)
+  * Minor fix to invoke.texi (fixes bug #2909)
+  * Added latest Objective-C patches for GNUstep people (fixes bug #4657)
+
+ -- Galen Hazelwood <galenh@micron.net>  Sun, 5 Jan 1997 09:57:36 -0700
--- gcj-4.2-4.2.4.orig/debian/gcj-wrapper-BV
+++ gcj-4.2-4.2.4/debian/gcj-wrapper-BV
@@ -0,0 +1,91 @@
+#!/usr/bin/perl -w
+#
+# Starts the GNU Java compiler.
+#
+# Command-line arguments should be in the style of Sun's Java compiler;
+# these will be converted to gcj arguments before being passed to the
+# gcj itself.
+#
+# Copyright (C) 2002-2003 by Ben Burton <bab@debian.org>
+# Based on the original gcj-wrapper-3.2 shell script.
+
+use strict;
+
+# The real Java compiler:
+my $javaCompiler = '/usr/bin/gcj-@BV@';
+
+# The command-line arguments to pass to the real Java compiler:
+my @commandLine;
+
+# The warning flags to pass to the GNU Java compiler:
+my $warnings = '-Wall';
+
+# Build the command-line from the arguments given.
+my $parsingOptions = 1;
+my $copyNextArg = 0;
+my $ignoreNextArg = 0;
+my $appendNextArg = '';
+foreach my $arg (@ARGV) {
+    # See if we already know what to do with this argument.
+    if ($ignoreNextArg) {
+        # Throw it away.
+        $ignoreNextArg = 0;
+        next;
+    } elsif ($copyNextArg or not $parsingOptions) {
+        # Copy it directly.
+        push @commandLine, $arg;
+        $copyNextArg = 0;
+        next;
+    } elsif ($appendNextArg) {
+        # Append it to $appendNextArg and then copy directly.
+        push @commandLine, ($appendNextArg . $arg);
+        $appendNextArg = '';
+        next;
+    }
+
+    # Try to interpret Sun-style options.
+    if ($arg eq '-version') {
+        push @commandLine, '--version';
+    } elsif ($arg eq '-h' or $arg eq '-help') {
+        push @commandLine, '--help';
+    } elsif ($arg eq '-classpath' or $arg eq '--classpath' or $arg eq '--cp') {
+        $appendNextArg = '--classpath=';
+    } elsif ($arg eq '-encoding' or $arg eq '-bootclasspath' or
+             $arg eq '-extdirs') {
+        $appendNextArg = '-' . $arg . '=';
+    } elsif ($arg eq '-d') {
+        push @commandLine, '-d';
+        $copyNextArg = 1;
+    } elsif ($arg eq '-nowarn') {
+        $warnings = '';
+    } elsif ($arg =~ /^-g/) {
+        # Some kind of debugging option - just switch debugging on.
+        push @commandLine, '-g' if ($arg ne '-g:none');
+    } elsif ($arg eq '-O') {
+        push @commandLine, '-O2';
+    } elsif ($arg eq '-Xss') {
+        push @commandLine, $arg;
+    } elsif ($arg =~ /^-X/) {
+        # An extended Sun option (which we don't support).
+        push @commandLine, '--help' if ($arg eq '-X');
+    } elsif ($arg eq '-source' or $arg eq '-sourcepath' or $arg eq '-target') {
+        # An unsupported option with a following argument.
+        $ignoreNextArg = 1;
+    } elsif ($arg =~ /^-/) {
+        # An unsupported standalone option.
+    } else {
+        # Some non-option argument has been given.
+        # Stop parsing options at this point.
+        push @commandLine, $arg;
+        $parsingOptions = 0;
+    }
+}
+
+# Was there a partial argument that was never completed?
+push @commandLine, $appendNextArg if ($appendNextArg);
+
+# Call the real Java compiler.
+my @fullCommandLine = ( $javaCompiler, '-C' );
+push @fullCommandLine, $warnings if ($warnings);
+push @fullCommandLine, @commandLine;
+exec @fullCommandLine or exit(1);
--- gcj-4.2-4.2.4.orig/debian/lib64objc2.symbols
+++ gcj-4.2-4.2.4/debian/lib64objc2.symbols
@@ -0,0 +1,6 @@
+libobjc.so.2 lib64objc2 #MINVER#
+#include "libobjc2.symbols.common"
+ __gnu_objc_personality_v0@Base 4.2.1
+libobjc_gc.so.2 lib64objc2 #MINVER#
+#include "libobjc2.symbols.common"
+ __gnu_objc_personality_v0@Base 4.2.1
--- gcj-4.2-4.2.4.orig/debian/gij-hppa
+++ gcj-4.2-4.2.4/debian/gij-hppa
@@ -0,0 +1,20 @@
+#! /bin/sh
+
+prctl=
+
+case "$(prctl --unaligned=)" in *signal)
+    echo >&2 "$(basename $0): ignore unaligned memory accesses"
+    prctl="prctl --unaligned=default"
+esac
+
+exec $prctl /usr/bin/gij-4.2.bin "$@"
+#! /bin/sh
+
+prctl=
+
+case "$(prctl --unaligned=)" in *signal)
+    echo >&2 "$(basename $0): ignore unaligned memory accesses"
+    prctl="prctl --unaligned=default"
+esac
+
+exec $prctl /usr/bin/gij-4.2.bin "$@"
--- gcj-4.2-4.2.4.orig/debian/README.libstdc++-baseline.in
+++ gcj-4.2-4.2.4/debian/README.libstdc++-baseline.in
@@ -0,0 +1,2 @@
+The libstdc++ baseline file is a list of symbols exported by the
+libstdc++ library.
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.powerpc
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.powerpc
@@ -0,0 +1,133 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3.4@GCC_3.3.4 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.1.0@GCC_4.1.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __adddf3@GCC_3.0 1:4.1.1
+ __addsf3@GCC_3.0 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __ashldi3@GCC_3.0 1:4.1.1
+ __ashrdi3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzsi2@GCC_3.4 1:4.1.1
+ __cmpdi2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzsi2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdf3@GCC_3.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divsf3@GCC_3.0 1:4.1.1
+ __divtc3@GCC_4.1.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __eqdf2@GCC_3.0 1:4.1.1
+ __eqsf2@GCC_3.0 1:4.1.1
+ __extendsfdf2@GCC_3.0 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixdfsi@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixsfsi@GCC_3.0 1:4.1.1
+ __fixtfdi@GCC_4.1.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __fixunstfdi@GCC_4.1.0 1:4.1.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatditf@GCC_4.1.0 1:4.1.1
+ __floatsidf@GCC_3.0 1:4.1.1
+ __floatsisf@GCC_3.0 1:4.1.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatunditf@GCC_4.2.0 1:4.2.1
+ __floatunsidf@GCC_4.2.0 1:4.2.1
+ __floatunsisf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __gcc_qadd@GCC_4.1.0 1:4.1.1
+ __gcc_qdiv@GCC_4.1.0 1:4.1.1
+ __gcc_qmul@GCC_4.1.0 1:4.1.1
+ __gcc_qsub@GCC_4.1.0 1:4.1.1
+ __gedf2@GCC_3.0 1:4.1.1
+ __gesf2@GCC_3.0 1:4.1.1
+ __gtdf2@GCC_3.0 1:4.1.1
+ __gtsf2@GCC_3.0 1:4.1.1
+ __ledf2@GCC_3.0 1:4.1.1
+ __lesf2@GCC_3.0 1:4.1.1
+ __lshrdi3@GCC_3.0 1:4.1.1
+ __ltdf2@GCC_3.0 1:4.1.1
+ __ltsf2@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldf3@GCC_3.0 1:4.1.1
+ __muldi3@GCC_3.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __mulsf3@GCC_3.0 1:4.1.1
+ __multc3@GCC_4.1.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __nedf2@GCC_3.0 1:4.1.1
+ __negdf2@GCC_3.0 1:4.1.1
+ __negdi2@GCC_3.0 1:4.1.1
+ __negsf2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __nesf2@GCC_3.0 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __paritysi2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountsi2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_4.1.0 1:4.1.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subdf3@GCC_3.0 1:4.1.1
+ __subsf3@GCC_3.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __trampoline_setup@GCC_3.4.2 1:4.1.1
+ __truncdfsf2@GCC_3.0 1:4.1.1
+ __ucmpdi2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmoddi4@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
+ __unorddf2@GCC_3.3.4 1:4.1.1
+ __unordsf2@GCC_3.3.4 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/protoize.1
+++ gcj-4.2-4.2.4/debian/protoize.1
@@ -0,0 +1,42 @@
+.TH PROTOIZE 1
+.\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection
+.\" other parms are allowed: see man(7), man(1)
+.SH NAME
+protoize, unprotoize \- create/remove ANSI prototypes from C code
+.SH SYNOPSIS
+.B protoize
+.I "[options] files ...." 
+.br
+.B unprotoize
+.I "[options] files ...." 
+.SH "DESCRIPTION"
+This manual page documents briefly the
+.BR protoize ,
+and
+.B unprotoize
+commands.
+This manual page was written for the Debian GNU/Linux distribution
+(but may be used by others), because the original program does not
+have a manual page.
+Instead, it has documentation in the GNU Info format; see below.
+.PP
+.B protoize
+is an optional part of GNU C.  You can use it to add prototypes to a
+program, thus converting the program to ANSI C in one respect.  The companion
+program `unprotoize' does the reverse: it removes argument types from
+any prototypes that are found.
+.PP
+When you run these programs, you must specify a set of source files
+as command line arguments.
+.SH OPTIONS
+These programs are non-trivial to operate, and it is neither possible nor
+desirable to properly summarize options in this man page.  Read the info
+documentation for more information.
+.SH "SEE ALSO"
+The programs are documented fully by
+.IR "Gcc: The use and the internals of the GNU compiler",
+available via the Info system.  The documentation for protoize/unprotoize
+can be found in the subsection "Invoking GCC", under "Running Protoize."
+.SH AUTHOR
+This manual page was written by Galen Hazelwood,
+for the Debian GNU/Linux system.
--- gcj-4.2-4.2.4.orig/debian/gcjh-wrapper-BV
+++ gcj-4.2-4.2.4/debian/gcjh-wrapper-BV
@@ -0,0 +1,86 @@
+#!/usr/bin/perl -w
+#
+# Starts the GNU Java header generator.
+#
+# Command-line arguments should be in the style of Sun's javah command;
+# these will be converted to gcjh arguments before being passed to the
+# gcjh itself.
+#
+# Copyright (C) 2003 by Peter Hawkins <peterh@debian.org>
+# Haphazardly hacked up based on the gcj-wrapper perl script.
+# Copyright (C) 2002-2003 by Ben Burton <bab@debian.org>
+# Based on the original gcj-wrapper-3.2 shell script.
+
+use strict;
+
+# The real Java header generator:
+my $javaHeaderGen = '/usr/bin/gcjh-@BV@';
+
+# The command-line arguments to pass to the real Java compiler:
+my @commandLine;
+
+# Build the command-line from the arguments given.
+my $parsingOptions = 1;
+my $copyNextArg = 0;
+my $ignoreNextArg = 0;
+my $appendNextArg = '';
+foreach my $arg (@ARGV) {
+    # See if we already know what to do with this argument.
+    if ($ignoreNextArg) {
+        # Throw it away.
+        $ignoreNextArg = 0;
+        next;
+    } elsif ($copyNextArg or not $parsingOptions) {
+        # Copy it directly.
+        push @commandLine, $arg;
+        $copyNextArg = 0;
+        next;
+    } elsif ($appendNextArg) {
+        # Append it to $appendNextArg and then copy directly.
+        push @commandLine, ($appendNextArg . $arg);
+        $appendNextArg = '';
+        next;
+    }
+
+    # Try to interpret Sun-style options.
+    if ($arg eq '-version') {
+        push @commandLine, '--version';
+    } elsif ($arg eq '-h' or $arg eq '-help') {
+        push @commandLine, '--help';
+    } elsif ($arg eq '-verbose') {
+        push @commandLine, '--verbose';
+    } elsif ($arg eq '-classpath' or $arg eq '--classpath' or $arg eq '--cp') {
+        $appendNextArg = '--classpath=';
+    } elsif ($arg eq '-encoding' or $arg eq '-bootclasspath' or
+             $arg eq '-extdirs') {
+        $appendNextArg = "-".$arg . '=';
+    } elsif ($arg eq '-d') {
+        push @commandLine, '-d';
+        $copyNextArg = 1;
+    } elsif ($arg eq '-o') {
+        push @commandLine, '-o';
+        $copyNextArg = 1;
+    } elsif ($arg eq '-stubs') {
+        push @commandLine, '-stubs';
+    } elsif ($arg eq '-jni') {
+        push @commandLine, '-jni';
+    } elsif ($arg =~ /^-old/) {
+        # An extended Sun option (which we don't support).
+        push @commandLine, '--help' if ($arg eq '-old');
+    } elsif ($arg =~ /^-/) {
+        # An unsupported standalone option.
+    } else {
+        # Some non-option argument has been given.
+        # Stop parsing options at this point.
+        push @commandLine, $arg;
+        $parsingOptions = 0;
+    }
+}
+
+# Was there a partial argument that was never completed?
+push @commandLine, $appendNextArg if ($appendNextArg);
+
+# Call the real Java header generator.
+my @fullCommandLine = ( $javaHeaderGen );
+push @fullCommandLine, @commandLine;
+exec @fullCommandLine or exit(1);
--- gcj-4.2-4.2.4.orig/debian/README.treelang
+++ gcj-4.2-4.2.4/debian/README.treelang
@@ -0,0 +1,11 @@
+Treelang documentation
+======================
+
+The treelang compiler is called via the `gcc-3.4' command (or via
+`gcc', when `gcc-3.4' is the default gcc compiler).
+
+Documentation for treelang is provided in info format only. You
+can read docs in the info format with emacs, xemacs or the info
+command:
+
+	info treelang-3.4
--- gcj-4.2-4.2.4.orig/debian/rules.defs
+++ gcj-4.2-4.2.4/debian/rules.defs
@@ -0,0 +1,1266 @@
+# -*- makefile -*-
+# definitions used in more than one Makefile / rules file
+
+SHELL		= /bin/bash -e	# brace expansion used in rules file
+PWD		:= $(shell pwd)
+srcdir		= $(PWD)/src
+builddir	= $(PWD)/build
+builddir_hppa64	= $(PWD)/build-hppa64
+builddir_ia6432	= $(PWD)/build-ia6432
+stampdir	= stamps
+distribution	:= $(shell lsb_release -is)
+
+# architecture dependent variables
+vafilt = $(subst $(2)=,,$(filter $(2)=%,$(1)))
+
+DPKG_VARS		:= $(shell dpkg-architecture)
+DEB_BUILD_GNU_TYPE	?= $(call vafilt,$(DPKG_VARS),DEB_BUILD_GNU_TYPE)
+DEB_HOST_ARCH		?= $(call vafilt,$(DPKG_VARS),DEB_HOST_ARCH)
+DEB_HOST_GNU_CPU	?= $(call vafilt,$(DPKG_VARS),DEB_HOST_GNU_CPU)
+DEB_HOST_GNU_SYSTEM	?= $(call vafilt,$(DPKG_VARS),DEB_HOST_GNU_SYSTEM)
+DEB_HOST_GNU_TYPE	?= $(call vafilt,$(DPKG_VARS),DEB_HOST_GNU_TYPE)
+
+ifdef DEB_TARGET_GNU_TYPE
+  TARGET_VARS := $(shell dpkg-architecture -f \
+			-t$(DEB_TARGET_GNU_TYPE) 2>/dev/null)
+  DEB_TARGET_ARCH	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH)
+  DEB_TARGET_ARCH_OS	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_OS)
+  DEB_TARGET_ARCH_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_CPU)
+  DEB_TARGET_GNU_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_CPU)
+  DEB_TARGET_GNU_TYPE	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_TYPE)
+  DEB_TARGET_GNU_SYSTEM	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_SYSTEM)
+else
+
+  # allow debian/target to be used instead of GCC_TARGET - this was requested
+  # by toolchain-source maintainer
+  DEBIAN_TARGET_FILE := $(strip $(if $(wildcard debian/target), \
+				  $(shell cat debian/target 2>/dev/null)))
+
+  ifdef DEB_TARGET_ARCH
+    # empty
+  else ifdef GCC_TARGET
+    DEB_TARGET_ARCH = $(GCC_TARGET)
+  else ifneq ($(DEBIAN_TARGET_FILE),)
+    DEB_TARGET_ARCH := $(DEBIAN_TARGET_FILE)
+  else
+    DEB_TARGET_ARCH = $(DEB_HOST_ARCH)
+  endif
+
+  TARGET_VARS := $(shell dpkg-architecture -f \
+			-a$(DEB_TARGET_ARCH) 2>/dev/null)
+  DEB_TARGET_ARCH	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH)
+  DEB_TARGET_ARCH_OS	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_OS)
+  DEB_TARGET_ARCH_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_ARCH_CPU)
+  DEB_TARGET_GNU_CPU	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_CPU)
+  DEB_TARGET_GNU_TYPE	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_TYPE)
+  DEB_TARGET_GNU_SYSTEM	?= $(call vafilt,$(TARGET_VARS),DEB_HOST_GNU_SYSTEM)
+endif
+
+# ---------------------------------------------------------------------------
+# full canadian
+# typical cross-compiler
+# reverse cross (built to run on the target)
+# native
+#
+# build != host && host == target : reverse cross (REVERSE_CROSS == yes)
+# build == host && host != target : typical cross (DEB_CROSS == yes)
+# build != host && host != target : canadian (DEB_CROSS == yes)
+# build == host && host == target : native
+ifneq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
+ ifneq ($(DEB_HOST_GNU_TYPE), $(DEB_TARGET_GNU_TYPE))
+	DEB_CROSS = yes
+ else
+	REVERSE_CROSS = yes
+ endif
+ else
+ ifneq ($(DEB_HOST_GNU_TYPE), $(DEB_TARGET_GNU_TYPE))
+	DEB_CROSS = yes
+ endif  
+endif
+
+# ---------------------------------------------------------------------------
+# which binary packages are built?
+
+# cross compiler support. If GCC_TARGET is set, then it's the architecture
+# we build for.
+
+ifeq ($(DEB_TARGET_ARCH),)
+$(error GCC_TARGET value "$(GCC_TARGET)" is not a valid Debian architecture)
+endif
+
+ifdef DEB_CROSS
+  # TP: Target Prefix. Used primarily as a prefix for cross tool
+  #     names (e.g. powerpc-linux-gcc).
+  # TS: Target Suffix. Used primarily at the end of cross compiler
+  #     package names (e.g. gcc-powerpc).
+  # LS: Library Suffix. Used primarily at the end of cross compiler
+  #     library package names (e.g. libgcc-powerpc-cross).
+  DEB_TARGET_ALIAS ?= $(DEB_TARGET_GNU_TYPE)
+  TP =  $(subst _,-,$(DEB_TARGET_GNU_TYPE))-
+  TS = -$(subst _,-,$(DEB_TARGET_ALIAS))
+  LS = -$(subst _,-,$(DEB_TARGET_ARCH))-cross
+endif
+
+ifeq ($(DEB_CROSS),yes)
+  TARGET_ALIAS := $(DEB_TARGET_ALIAS)
+else
+  TARGET_ALIAS := $(DEB_TARGET_GNU_TYPE)
+
+  ifeq ($(TARGET_ALIAS),i386-gnu)
+    TARGET_ALIAS := i586-gnu
+  endif
+
+  #ifeq ($(TARGET_ALIAS),i486-linux-gnu)
+  #  TARGET_ALIAS := i686-linux-gnu
+  #endif
+
+  TARGET_ALIAS := $(subst i386,i486,$(TARGET_ALIAS))
+
+  # configure as linux-gnu, not linux
+  #ifeq ($(findstring linux,$(TARGET_ALIAS))/$(findstring linux-gnu,$(TARGET_ALIAS)),linux/)
+  #  TARGET_ALIAS := $(TARGET_ALIAS)-gnu
+  #endif
+
+  # configure as linux, not linux-gnu
+  #TARGET_ALIAS := $(subst linux-gnu,linux,$(TARGET_ALIAS))
+endif
+
+printarch:
+	@echo DEB_TARGET_ARCH: $(DEB_TARGET_ARCH)
+	@echo DEB_TARGET_ARCH_OS: $(DEB_TARGET_ARCH_OS)
+	@echo DEB_TARGET_ARCH_CPU: $(DEB_TARGET_ARCH_CPU)
+	@echo DEB_TARGET_ARCH_CPU: $(DEB_TARGET_ARCH_CPU)
+	@echo DEB_TARGET_GNU_SYSTEM: $(DEB_TARGET_GNU_SYSTEM)
+	@echo TARGET_ALIAS: $(TARGET_ALIAS)
+	@echo TP: $(TP)
+	@echo TS: $(TS)
+
+# The name of the source package
+CHANGELOG_VARS := $(shell dpkg-parsechangelog | sed -n 's/ /_/g;/^[^_]/s/^\([^:]*\):_\(.*\)/\1=\2/p')
+PKGSOURCE := $(call vafilt,$(CHANGELOG_VARS),Source)
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  versioned_packages := yes
+endif
+
+ifdef DEB_CROSS
+  cross_bin_arch := -$(subst _,-,$(TARGET_ALIAS))
+  cross_lib_arch := -$(subst _,-,$(DEB_TARGET_ARCH))-cross
+endif
+
+ifndef DEB_CROSS
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    with_common_gcclibdir := yes
+  endif
+endif
+
+# Don't include docs with GFDL invariant sections --------------------
+GFDL_INVARIANT_FREE := yes
+ifeq ($(distribution),Ubuntu)
+  GFDL_INVARIANT_FREE=no
+endif
+
+# --------------------
+# Configuration of components
+
+COMMA = ,
+SPACE = $(EMPTY) $(EMPTY)
+
+# lang= overwrites all of nolang=, overwrites all of WITHOUT_LANG
+
+DEB_LANG_OPT	:= $(filter lang=%,$(DEB_BUILD_OPTIONS))
+DEB_LANG	:= $(strip $(subst $(COMMA), ,$(patsubst lang=%,%,$(DEB_LANG_OPT))))
+DEB_NOLANG_OPT	:= $(filter nolang=%,$(DEB_BUILD_OPTIONS))
+DEB_NOLANG	:= $(strip $(subst $(COMMA), ,$(patsubst nolang=%,%,$(DEB_NOLANG_OPT))))
+lfilt	= $(strip $(if $(DEB_LANG), \
+		$(if $(filter $(1) $(2),$(DEB_LANG)),yes),$(3)))
+nlfilt	= $(strip $(if $(DEB_NOLANG), \
+		$(if $(filter $(1) $(2),$(DEB_NOLANG)),disabled by $(DEB_NOLANG_OPT),$(3))))
+wlfilt	= $(strip $(if $(filter $(1) $(2), $(subst $(COMMA), ,$(WITHOUT_LANG))), \
+		disabled by WITHOUT_LANG=$(WITHOUT_LANG),$(3)))
+envfilt	= $(strip $(or $(call lfilt,$(1),$(2)),$(call nlfilt,$(1),$(3)),$(call wlfilt,$(1),$(3)),$(4)))
+
+# common things --------------------
+# build common packages, where package names don't differ in different
+# gcc versions (fixincludes, libgcj-common) ...
+with_common_pkgs := no
+
+# ... and some libraries, which do not change (libgcc1, libffi4,
+# libmudflap0, libssp0, libstdc++6).
+with_common_libs := no
+
+#ifeq ($(distribution),Debian)
+#  next_gcc_not_built := alpha m68k mips mipsel hurd-i386 kfreebsd-i386 kfreebsd-amd64
+#  ifneq (,$(filter $(DEB_TARGET_ARCH),$(next_gcc_not_built)))
+#    with_common_pkgs := yes
+#    with_common_libs := yes
+#  endif
+#endif
+
+with_gccbase := yes
+with_dev := yes
+
+with_source := no
+ifneq (,$(findstring gcc-4,$(PKGSOURCE)))
+  with_source := yes
+endif
+with_source := $(call envfilt, source, , , $(with_source))
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  with_nls := no
+else
+  with_nls := yes
+endif
+with_nls := $(call envfilt, nls, , , $(with_nls))
+
+ifneq ($(WITH_BOOTSTRAP),)
+  # "yes" is the default and causes a 3-stage bootstrap.
+  # "no" means to just build the first stage, and not create the stage1
+  # directory.
+  # "lean" means a lean 3-stage bootstrap, i.e. delete each stage when no
+  # longer needed.
+  with_bootstrap=$(WITH_BOOTSTRAP)
+endif
+
+# separate -base package for the cross compiler.
+ifeq ($(DEB_CROSS),yes)
+  with_gccxbase := yes
+endif
+
+#no_dummy_cpus := ia64 i386 hppa s390 sparc
+#with_base_only := yes
+#ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(no_dummy_cpus)))
+#  with_base_only := no
+#  with_common_libs := yes
+#  with_common_pkgs := yes
+#else
+#  with_common_libs := no
+#  with_common_pkgs := no
+#  with_dev := no
+#endif
+
+# C --------------------
+enabled_languages := c
+# Build all packages needed for C development
+ifeq ($(with_base_only),yes)
+  with_cdev := no
+else
+  ifeq ($(with_dev),yes)
+    with_cdev := yes
+  else
+    with_cdev := no
+  endif
+endif
+
+# C++ --------------------
+ifeq ($(with_base_only),yes)
+  with_cxx := no
+else
+  with_cxx := yes
+endif
+no_cxx_cpus := avr
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(no_cxx_cpus)))
+  with_cxx := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+with_cxx := $(call envfilt, c++, obj-c++ java, , $(with_cxx))
+
+# Build all packages needed for C++ development
+ifeq ($(with_cxx)-$(with_dev),yes-yes)
+  with_cxxdev := yes
+  with_libcxxdbg := yes
+else
+  with_cxxdev := no
+  with_libcxxdbg := no
+endif
+
+ifeq ($(with_cxx),yes)
+  enabled_languages += c++
+endif
+
+ifeq ($(with_common_pkgs)-$(with_cxx),yes-yes)
+  with_libcxx := yes
+#  ifeq ($(DEB_TARGET_ARCH_CPU),arm)
+#    with_libcxx := no
+#  endif
+else
+  with_libcxx := no
+endif
+
+# debugging versions of libstdc++
+ifeq ($(with_cxxdev),yes)
+  with_debug := yes
+else
+  with_debug := no
+endif
+debug_no_cpus :=
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(debug_no_cpus)))
+    with_debug := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+with_debug := $(call envfilt, debug, , , $(with_debug))
+
+# Java --------------------
+# - To build a standalone gcj package (with no corresponding gcc
+#   package): with_separate_libgcj=yes, with_standalone_gcj=yes
+# - To build the java packages from the gcc source package:
+#   with_separate_libgcj=no, with_standalone_gcj=no
+# - To build gcc and java from separate sources:
+#   with_separate_libgcj=yes, with_standalone_gcj=no
+
+with_separate_libgcj := yes
+with_standalone_gcj := no
+
+# java converted for V3 C++ ABI for some archs
+ifeq ($(with_base_only),yes)
+  with_java := no
+else
+  with_java := yes
+endif
+
+ifneq (,$(findstring gcj-4, $(PKGSOURCE)))
+  ifneq (,$(filter $(DEB_TARGET_ARCH), alpha arm hppa))
+    with_gcj_base_only := yes
+  endif
+endif
+
+java_no_cpus := #mips mipsel
+java_no_arches :=
+java_no_systems :=
+gcj_native_archs = alpha amd64 i386 ia64 m68k mips mipsel powerpc s390 sparc
+
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(java_no_cpus)))
+  with_java := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(java_no_systems)))
+  with_java := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+ifneq (, $(filter $(DEB_TARGET_ARCH),$(java_no_arches)))
+  with_java := disabled for $(DEB_TARGET_ARCH)
+endif
+ifdef DEB_CROSS
+  with_java := disabled for cross compiler package
+endif
+with_java := $(call envfilt, java, , c++, $(with_java))
+
+#ifneq (,$(filter $(DEB_TARGET_ARCH),hppa))
+#  with_native_ecj := yes
+#endif
+
+with_java_maintainer_mode := yes
+with_java_maintainer_mode := no
+
+ifeq ($(distribution),Ubuntu)
+  java_plugin_backend = xulrunner-1.9
+else
+  java_plugin_backend = xulrunner
+endif
+
+browser_plugin_dirs = xulrunner-addons firefox iceape iceweasel mozilla midbrowser xulrunner
+
+# used as well in debian/rules.conf to determine the build deps
+java_awt_peers = gtk # qt # xlib
+
+with_libgcjbc := no
+with_libgcj_doc := yes
+ifneq ($(with_common_libs),yes)
+  with_libgcj_doc := no
+endif
+
+# Build all packages needed for Java development (gcj, libgcj-dev)
+ifeq ($(with_java)-$(with_dev),yes-yes)
+  with_javadev := yes
+  with_gcj := yes
+else
+  with_javadev := no
+endif
+
+ifeq ($(with_java),yes)
+  java_plugin_no_cpus := none
+  with_java_plugin := yes
+  ifneq (, $(filter $(DEB_TARGET_ARCH),$(java_plugin_no_cpus)))
+    with_java_plugin := disabled for $(DEB_TARGET_ARCH)
+  endif
+  ifeq ($(distribution),Ubuntu)
+    with_pkg_plugin := yes
+  endif
+endif
+
+ifeq ($(with_java),yes)
+  with_java_alsa := yes
+  ifneq (,$(filter $(DEB_TARGET_GNU_SYSTEM), kfreebsd-gnu gnu))
+    with_java_alsa := no
+  endif
+endif
+
+ifeq ($(with_java),yes)
+  enabled_languages += java
+  with_libgcj := yes
+else
+  with_libgcj := no
+endif
+
+# libmudflap -------------------
+with_mudflap := yes
+with_mudflap := $(call envfilt, mudflap, , , $(with_mudflap))
+ifeq ($(with_mudflap),yes)
+  with_libmudflap := yes
+endif
+ifneq ($(with_common_libs),yes)
+  with_libmudflap := no
+endif
+
+# libssp -------------------
+with_ssp := yes
+ssp_no_archs = arm armel alpha hppa ia64 m68k mips mipsel
+ifneq (, $(filter $(DEB_TARGET_ARCH),$(ssp_no_archs)))
+  with_ssp := not available on $(DEB_TARGET_ARCH)
+endif
+with_ssp := $(call envfilt, ssp, , , $(with_ssp))
+
+ifeq ($(with_ssp),yes)
+  ifneq ($(distribution),Debian)
+    ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+      with_ssp_default := yes
+    endif
+  endif
+endif
+
+# do it here, the information is only available after gcc is configured
+ifeq ($(with_common_libs),yes)
+  ifeq ($(with_ssp),yes)
+    with_libssp := $(if $(wildcard $(builddir)/gcc/auto-host.h), \
+	             $(shell if grep -qs '^\#define TARGET_LIBC_PROVIDES_SSP 1' $(builddir)/gcc/auto-host.h; then echo 'libc provides ssp'; else echo 'yes'; fi))
+  endif
+endif
+
+# libffi -------------------
+ifeq ($(with_common_libs),yes)
+  with_libffi := yes
+  no_ffi_cpus :=
+  no_ffi_arches :=
+  no_ffi_systems := netbsdelf-gnu
+  ifneq ($(with_java),yes)
+    ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(no_ffi_cpus)))
+      with_libffi := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+    endif
+    ifneq (, $(filter $(DEB_TARGET_ARCH),$(no_ffi_arches)))
+      with_libffi := disabled for architecure $(DEB_TARGET_ARCH)
+    endif
+    ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(no_ffi_systems)))
+      with_libffi := disabled for $(DEB_TARGET_GNU_SYSTEM)
+    endif
+    with_libffi := $(call envfilt, ffi, , , $(with_libffi))
+  endif
+  ifdef DEB_CROSS
+    with_libffi := disabled for cross compiler package
+  endif
+endif
+
+# Fortran 95 --------------------
+ifeq ($(with_base_only),yes)
+  with_fortran := no
+else
+  with_fortran := yes
+endif
+
+f95_no_cpus :=
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(f95_no_cpus)))
+    with_fortran := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifdef DEB_CROSS
+  with_fortran := disabled for cross compiler package
+endif
+ifeq (f95, $(findstring f95,$(WITHOUT_LANG)))
+  with_fortran := disabled by environment
+endif
+with_fortran := $(call envfilt, fortran, , , $(with_fortran))
+
+# Build all packages needed for Fortran development
+ifeq ($(with_fortran)-$(with_dev),yes-yes)
+  with_fdev := yes
+else
+  with_fdev := no
+endif
+
+ifeq ($(with_fortran),yes)
+  with_libfortran := yes
+  enabled_languages += fortran
+endif
+
+# protoize --------------------
+ifeq ($(with_common_pkgs),yes)
+  with_proto := yes
+  ifdef DEB_CROSS
+    with_proto := disabled for cross compiler package
+  endif
+else
+  with_proto := no
+endif
+#ifeq ($(with_proto),yes)
+#  enabled_languages += proto
+#endif
+
+ifeq ($(with_common_pkgs),yes)
+  with_fixincl := yes
+  ifdef DEB_CROSS
+    with_fixincl := disabled for cross compiler package
+  endif
+else
+  with_fixincl := no
+endif
+
+# Pascal --------------------
+
+with_separate_gpc := yes
+
+with_pascal := yes
+ifneq ($(with_dev),yes)
+  with_pascal := no
+endif
+
+pascal_no_systems :=
+#ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(pascal_no_systems)))
+#  with_pascal := disabled for $(DEB_TARGET_GNU_SYSTEM)
+#endif
+ifneq ($(DEB_TARGET_ARCH),i386)
+  with_pascal := disabled for $(DEB_TARGET_ARCH)
+endif
+ifeq (,$(findstring gpc, $(PKGSOURCE)))
+  with_pascal := disabled, built by separate source
+endif
+
+with_gpidump := yes
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),mips mipsel))
+  with_gpidump := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+pascal_version := 20030830
+ifeq (pascal, $(findstring pascal,$(WITHOUT_LANG)))
+  with_pascal := disabled by environment
+endif
+with_pascal := disabled for 4.2
+ifdef DEB_CROSS
+  with_pascal := disabled for cross compiler package
+endif
+ifeq ($(with_pascal),yes)
+  enabled_languages += pascal
+endif
+
+# ObjC --------------------
+ifeq ($(with_base_only),yes)
+  with_objc := no
+else
+  with_objc := yes
+endif
+# the ObjC runtime with garbage collection enabled needs the Boehm GC
+with_objc_gc := yes
+
+# disable ObjC garbage collection library (needs libgc)
+libgc_no_cpus := avr #alpha amd64 arm armel hppa i386 ia64 m68k mips mipsel powerpc s390 sparc
+libgc_no_systems :=
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libgc_no_cpus)))
+  with_objc_gc := disabled for architecture $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(libgc_no_systems)))
+  with_objc_gc := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+ifdef DEB_CROSS
+  ifneq (objc, $(findstring objc,$(WITH_LANG)))
+    with_objc := disabled for cross compiler package
+  endif
+endif
+with_objc := $(call envfilt, objc, obj-c++, , $(with_objc))
+ifeq ($(DEB_TARGET_ARCH),armel)
+  with_objc := disabled for armel
+endif
+
+ifneq ($(with_objc),yes)
+  with_objc_gc := $(with_objc)
+endif
+
+# Build all packages needed for Objective-C development
+ifeq ($(with_objc)-$(with_dev),yes-yes)
+  with_objcdev := yes
+else
+  with_objcdev := no
+endif
+ifeq ($(with_common_libs)-$(with_objc),yes-yes)
+  with_libobjc := yes
+else
+  with_libobjc := no
+endif
+
+ifeq ($(with_objc),yes)
+  enabled_languages += objc
+endif
+
+# ObjC++ --------------------
+with_objcxx := yes
+with_objcxx := $(call envfilt, obj-c++, , c++ objc, $(with_objcxx))
+ifeq ($(DEB_TARGET_ARCH),armel)
+  with_objcxx := disabled for armel
+endif
+
+ifeq ($(with_objcxx),yes)
+  enabled_languages += obj-c++
+endif
+
+# Ada --------------------
+with_separate_gnat := yes
+with_ada := yes
+ifneq ($(with_dev),yes)
+  with_ada := no
+endif
+
+ada_no_cpus := alpha arm armel m32r m68k sh3 sh3eb sh4 sh4eb
+ada_no_systems := hurd-i386
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(ada_no_cpus)))
+  with_ada := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(ada_no_systems)))
+  with_ada := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+ifeq ($(DEB_TARGET_ARCH),hurd-i386)
+  with_ada := disabled for architecure $(DEB_TARGET_ARCH)
+endif
+with_ada := $(call envfilt, ada, , , $(with_ada))
+ifdef DEB_CROSS
+  with_ada := disabled for cross compiler package
+endif
+#ifeq ($(PKGSOURCE),gcc-snapshot)
+#  with_ada := disabled for snapshot builds
+#endif
+ifneq (,$(findstring 4.2,$(PKGSOURCE)))
+  with_ada := disabled for gcc-4.2
+endif
+
+with_libgnat := $(with_ada)
+ifeq ($(with_ada),yes)
+  enabled_languages += ada
+  libada_shared_dual_cpus := hppa
+  ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libada_shared_dual_cpus)))
+    with_libgnat_shared_dual := yes
+  endif
+else
+  with_libgnat_shared_dual := no
+endif
+
+# D -------------------------
+
+with_separate_gdc := yes
+
+# no suffix for D 1.0
+libphobos_version :=
+
+# still experimental
+# libphobos_version := 2
+
+ifeq ($(with_base_only),yes)
+  with_d := no
+else
+  with_d := yes
+endif
+
+with_libphobos := $(with_d)
+
+libphobos_no_cpus := sparc
+libphobos_no_systems := gnu
+ifneq (, $(filter $(DEB_TARGET_ARCH_CPU),$(libphobos_no_cpus)))
+  with_libphobos := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(libphobos_no_systems)))
+  with_libphobos := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+
+ifneq ($(with_cxx),yes)
+  with_d := disabled because C++ disabled
+endif
+
+ifneq ($(with_d),yes)
+  with_libphobos := disabled because D disabled
+endif
+
+ifeq ($(with_d),yes)
+  enabled_languages += d
+endif
+
+# Shared libgcc --------------------
+with_shared_libgcc := yes
+
+ifeq ($(with_common_libs),yes)
+  with_libgcc := yes
+else
+  with_libgcc := no
+  with_shared_libgcc := no
+endif
+
+# libgcc-math --------------------
+with_libgmath := no
+with_lib32gmath := no
+ifneq (,$(findstring i486,$(DEB_TARGET_ARCH)))
+  #with_gccmath := yes
+  #with_libgmath := yes
+  #with_libgmathdev := yes
+endif
+ifeq ($(DEB_TARGET_ARCH),amd64)
+  #with_gccmath := yes
+  #with_lib32gmath := yes
+  #with_libgmathdev := yes
+endif
+
+# libgomp --------------------
+with_gomp := yes
+with_gomp := $(call envfilt, gomp, , , $(with_gomp))
+ifeq ($(with_common_libs),yes)
+  with_libgomp := yes
+else
+  with_libgomp := no
+endif
+
+# hppa64 build --------------------
+with_hppa64 := no
+ifeq ($(DEB_TARGET_ARCH),hppa)
+  ifneq ($(DEB_CROSS),yes)
+    with_hppa64 := yes
+  endif
+  #ifeq ($(PKGSOURCE),gcc-snapshot)
+  #  with_hppa64 := disabled for snapshot build
+  #endif
+endif
+with_hppa64 := $(call envfilt, hppa64, , , $(with_hppa64))
+
+# run testsuite --------------------
+with_check := yes
+# If you don't want to run the gcc testsuite, set `with_check' to `no'
+#with_check := disabled by hand
+ifeq ($(with_base_only),yes)
+  with_check := no
+endif
+ifdef DEB_CROSS
+  with_check := disabled for cross compiler package
+endif
+ifdef REVERSE_CROSS
+  with_check := disabled for reverse cross build
+endif
+check_no_systems := hurd-i386
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(check_no_systems)))
+  with_check := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+check_no_cpus :=
+ifeq ($(DEB_TARGET_ARCH_CPU), $(findstring $(DEB_TARGET_ARCH_CPU),$(check_no_cpus)))
+  with_check := disabled for architecure $(DEB_TARGET_ARCH_CPU)
+endif
+ifeq ($(DEB_TARGET_ARCH),hurd-i386)
+  with_check := disabled for architecure $(DEB_TARGET_ARCH)
+endif
+ifeq ($(distribution)-$(DEB_HOST_ARCH),Ubuntu-hppa)
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    with_check := disabled, testsuite timeouts with expect
+  endif
+endif
+with_check := $(call envfilt, check, , , $(with_check))
+ifneq ($(WITHOUT_CHECK),)
+  with_check := disabled by environment
+endif
+ifneq ($(findstring nocheck, $(DEB_BUILD_OPTIONS)),)
+  with_check := disabled by DEB_BUILD_OPTIONS
+endif
+ifneq (,$(findstring gdc,$(PKGSOURCE)))
+  with_check := disabled for gdc
+endif
+
+# not a dependency on all archs, but if available, use it for the testsuite
+ifneq (,$(wildcard /usr/bin/localedef))
+  locale_data = generate
+endif
+
+# powerpc nof libraries --------------------
+with_libnof := no
+
+# multiarch --------------------
+#with_multiarch_inc := yes
+#with_multiarch_lib := no
+
+all_enabled_languages := $(enabled_languages)
+languages_without_lang_opt := c++ objc obj-c++ proto
+
+ifeq ($(with_separate_libgcj),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out java, $(all_enabled_languages))
+    debian_extra_langs = java
+    with_java := built from separate source
+    with_gcj := built from separate source
+    with_libgcj := built from separate source
+  endif
+  ifneq (,$(findstring gcj, $(PKGSOURCE)))
+    enabled_languages = c c++ java
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    ifneq ($(with_standalone_gcj),yes)
+      with_libgcc := no
+    endif
+    with_libgccmath := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_pascal := no
+    with_mudflap := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_libgomp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_ada := no
+    with_d := no
+    with_libphobos := no
+    with_libgnat := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    ifeq ($(with_standalone_gcj),yes)
+      ifeq ($(DEB_TARGET_ARCH),hppa)
+        with_libgcc := yes
+      endif
+    endif
+  endif
+endif
+
+ifeq ($(with_separate_gnat),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out ada, $(enabled_languages))
+    debian_extra_langs += ada
+    with_ada := built from separate source
+    with_libgnat := built from separate source
+  endif
+  ifneq (,$(findstring gnat, $(PKGSOURCE)))
+    enabled_languages = c ada
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_ada := yes
+    with_libgnat := yes
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_libfortran := no
+    with_proto := no
+    with_fixincl := no
+    with_pascal := no
+    with_mudflap := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_libgomp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_d := no
+    with_libphobos := no
+    with_java := no
+    with_gcj := no
+    with_libgcj := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_check := no
+  endif
+endif
+
+ifeq ($(with_separate_gdc),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out d, $(enabled_languages))
+    #debian_extra_langs += d
+    with_d := built from separate source
+    with_libphobos := built from separate source
+  endif
+  ifneq (,$(findstring gdc, $(PKGSOURCE)))
+    enabled_languages = c c++ d
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_pascal := no
+    # gdc doesn't support mudflap
+    with_mudflap := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_libgomp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_ada := no
+    with_libgnat := no
+    with_java := no
+    with_gcj := no
+    with_libgcj := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_fastjar := no
+  endif
+endif
+
+ifeq ($(with_separate_gpc),yes)
+  ifneq (,$(findstring gcc-4, $(PKGSOURCE)))
+    enabled_languages := $(filter-out pascal, $(enabled_languages))
+    #debian_extra_langs += pascal
+    with_pascal := built from separate source
+  endif
+  ifneq (,$(findstring gpc, $(PKGSOURCE)))
+    enabled_languages = c pascal
+    debian_extra_langs := $(filter-out $(enabled_languages) $(languages_without_lang_opt), $(all_enabled_languages))
+    with_libgcc := no
+    with_cxx := no
+    with_cdev := no
+    with_cxxdev := no
+    with_fortran := no
+    with_proto := no
+    with_fixincl := no
+    with_d := no
+    with_libphobos := no
+    # gpc doesn't support mudflap
+    with_mudflap := no
+    with_libmudflap := no
+    with_libffi := no
+    with_libssp := no
+    with_objc := no
+    with_libobjc := no
+    with_objcxx := no
+    with_ada := no
+    with_libgnat := no
+    with_java := no
+    with_gcj := no
+    with_libgcj := no
+    with_hppa64 := no
+    with_libnof := no
+    with_debug := no
+    with_gccbase := no
+    with_fastjar := no
+  endif
+endif
+
+debian_extra_langs := $(subst obj-c++,objcp,$(debian_extra_langs))
+export debian_extra_langs
+
+biarch := no
+
+with_lib64gcc		:= no
+with_lib64cxx		:= no
+with_lib64objc		:= no
+with_lib64ffi		:= no
+with_lib64gcj		:= no
+with_lib64fortran	:= no
+with_lib64mudflap	:= no
+with_lib64ssp		:= no
+
+biarch_map := i486=x86_64 powerpc=powerpc64 sparc=sparc64 s390=s390x \
+		x86_64=i486 powerpc64=powerpc
+biarch_cpu := $(patsubst $(DEB_TARGET_GNU_CPU)=%,%, \
+			 $(filter $(DEB_TARGET_GNU_CPU)=%,$(biarch_map)))
+
+biarch_archs := /i386/powerpc/sparc/s390/
+
+ifneq (yes,$(call envfilt, biarch, , ,yes))
+  biarch_archs :=
+endif
+
+biarch_buildd := yes
+# the Ubuntu i386 buildds are i386 only
+ifeq ($(PKGSOURCE)-$(distribution),gcc-snapshot-Ubuntu)
+  ifneq (,$(wildcard /CurrentlyBuilding))
+    biarch_buildd := no
+  endif
+endif
+
+ifneq ($(biarch_buildd),no)
+ifneq (,$(findstring /$(DEB_TARGET_ARCH)/,$(biarch_archs)))
+  biarch := yes
+  biarchsubdir = $(biarch_cpu)-$(DEB_TARGET_GNU_SYSTEM)
+  biarchsubdir = 64
+  ifeq ($(with_libgcc),yes)
+    with_lib64gcc := yes
+  endif
+  ifeq ($(with_libcxx),yes)
+    with_lib64cxx := yes
+  endif
+  ifeq ($(with_libcxxdbg),yes)
+    with_lib64cxxdbg := yes
+  endif
+  ifeq ($(with_libobjc),yes)
+    with_lib64objc := yes
+  endif
+  ifeq ($(with_libfortran),yes)
+    with_lib64fortran := yes
+  endif
+  ifeq ($(with_libffi),yes)
+    with_lib64ffi := yes
+  endif
+  ifeq ($(with_libmudflap),yes)
+    with_lib64mudflap := yes
+  endif
+  ifeq ($(with_libssp),yes)
+    with_lib64ssp := yes
+  endif
+  ifeq ($(with_libgomp),yes)
+    with_lib64gomp:= yes
+  endif
+
+  biarch_multidir_names = libiberty
+  ifeq ($(PKGSOURCE),gcc-snapshot)
+    biarch_multidir_names += libgcc
+  endif
+  ifneq (,$(findstring gcc-, $(PKGSOURCE)))
+    biarch_multidir_names += libstdc++-v3 libgfortran libmudflap libssp \
+				libffi libobjc libgomp zlib
+    ifeq ($(with_objc_gc),yes)
+      biarch_multidir_names += boehm-gc
+    endif
+  endif
+  export biarch_multidir_names
+
+  TARGET32_MACHINE := $(TARGET_ALIAS)
+  TARGET64_MACHINE := $(strip $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu), \
+					$(TARGET_ALIAS)))
+  export TARGET32_MACHINE
+  export TARGET64_MACHINE
+endif
+endif
+
+biarch32_archs := /amd64/ppc64/kfreebsd-amd64/
+ifneq (yes,$(call envfilt, biarch, , ,yes))
+  biarch32_archs :=
+endif
+ifneq (,$(findstring /$(DEB_TARGET_ARCH)/,$(biarch32_archs)))
+  biarch32 := yes
+  biarchsubdir = $(biarch_cpu)-$(DEB_TARGET_GNU_SYSTEM)
+  biarchsubdir = 32
+  ifeq ($(with_libgcc),yes)
+    with_lib32gcc := yes
+  endif
+  ifeq ($(with_libcxx),yes)
+    with_lib32cxx := yes
+  endif
+  ifeq ($(with_libcxxdbg),yes)
+    with_lib32cxxdbg := yes
+  endif
+  ifeq ($(with_libobjc),yes)
+    with_lib32objc := yes
+  endif
+  ifeq ($(with_libfortran),yes)
+    with_lib32fortran := yes
+  endif
+  ifeq ($(with_libffi),yes)
+    with_lib32ffi := yes
+  endif
+  ifeq ($(with_libmudflap),yes)
+    with_lib32mudflap := yes
+  endif
+  ifeq ($(with_libssp),yes)
+    with_lib32ssp := yes
+  endif
+  ifeq ($(with_libgomp),yes)
+    with_lib32gomp:= yes
+  endif
+
+  biarch_multidir_names = libiberty
+  ifeq ($(PKGSOURCE),gcc-snapshot)
+    biarch_multidir_names += libgcc
+  endif
+  ifneq (,$(findstring gcc-, $(PKGSOURCE)))
+    biarch_multidir_names += libstdc++-v3 libgfortran libmudflap libssp \
+				libffi libobjc libgomp zlib
+    ifeq ($(with_objc_gc),yes)
+      biarch_multidir_names += boehm-gc
+    endif
+  endif
+  export biarch_multidir_names
+
+  TARGET32_MACHINE := $(strip $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu), \
+					$(TARGET_ALIAS)))
+  TARGET64_MACHINE := $(TARGET_ALIAS)
+  export TARGET32_MACHINE
+  export TARGET64_MACHINE
+endif
+
+multilib_archs = $(sort $(subst /, , $(biarch_archs) $(biarch32_archs)))
+
+#ifeq ($(DEB_TARGET_ARCH),ia64)
+#  biarch32 := yes
+#endif
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  #ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),sparc))
+    with_lib64gcc	:= no
+    with_lib64cxx	:= no
+    with_lib64objc	:= no
+    with_lib64ffi	:= no
+    with_lib64gcj	:= no
+    with_lib64fortran	:= no
+    with_lib64mudflap	:= no
+    with_lib64ssp	:= no
+
+    with_lib32gcc	:= no
+    with_lib32cxx	:= no
+    with_lib32objc	:= no
+    with_lib32ffi	:= no
+    with_lib32gcj	:= no
+    with_lib32fortran	:= no
+    with_lib32mudflap	:= no
+    with_lib32ssp	:= no
+
+    #biarch   	:= disabled for snapshot build
+    #biarch32 	:= disabled for snapshot build
+  #endif
+  with_java_plugin := no
+endif
+
+ifdef DEB_CROSS_NO_BIARCH
+  with_lib64gcc		:= no
+  with_lib64cxx		:= no
+  with_lib64objc	:= no
+  with_lib64ffi		:= no
+  with_lib64gcj		:= no
+  with_lib64fortran	:= no
+  with_lib64mudflap	:= no
+  with_lib64ssp		:= no
+
+  with_lib32gcc		:= no
+  with_lib32cxx		:= no
+  with_lib32objc	:= no
+  with_lib32ffi		:= no
+  with_lib32gcj		:= no
+  with_lib32fortran	:= no
+  with_lib32mudflap	:= no
+  with_lib32ssp		:= no
+
+  biarch   	:= disabled for cross build
+  biarch32 	:= disabled for cross build
+endif
+
+ifeq ($(biarch32),yes)
+  with_32bit_check := $(strip $(if $(wildcard build/runcheck.out), \
+				$(shell cat build/runcheck.out), \
+				$(shell CC="gcc -m32" bash debian/runcheck.sh)))
+endif
+
+ifeq ($(biarch),yes)
+  with_64bit_check := $(strip $(if $(wildcard build/runcheck.out), \
+			$(shell cat build/runcheck.out), \
+			$(shell CC="gcc -m64" bash debian/runcheck.sh)))
+endif
+
+# GNU locales
+force_gnu_locales := yes
+locale_no_systems := gnu
+ifneq (, $(filter $(DEB_TARGET_GNU_SYSTEM),$(locale_no_systems)))
+  force_gnu_locales := disabled for $(DEB_TARGET_GNU_SYSTEM)
+endif
+
+gcc_tarpath		:= $(firstword $(wildcard gcc-*.tar.* /usr/src/gcc-4.2/gcc-*.tar.*))
+gcc_tarball		:= $(notdir $(gcc_tarpath))
+#gcc_srcdir		:= $(shell echo $(gcc_tarball) | sed 's/\.tar.*//;s/-dfsg//')
+gcc_srcdir		:= $(subst -dfsg,,$(patsubst %.tar.lzma,%,$(patsubst %.tar.gz,%,$(gcc_tarball:.tar.bz2=))))
+
+ifeq ($(with_pascal),yes)
+  gpc_tarpath		:= $(firstword $(wildcard gpc-*.tar.* /usr/src/gcc-4.2/gpc-*.tar.*))
+  gpc_tarball		:= $(notdir $(gpc_tarpath)
+  gpc_srcdir		:= $(patsubst %.tar.gz,%,$(gpc_tarball:.tar.bz2=))
+endif
+
+ifeq ($(with_d),yes)
+  gdc_tarpath		:= $(firstword $(wildcard gdc-*.tar.* /usr/src/gcc-4.1/gdc-*.tar.*))
+  gdc_tarball		:= $(notdir $(gdc_tarpath))
+  gdc_srcdir		:= $(patsubst %.tar.lzma,%,$(patsubst %.tar.gz,%,$(gdc_tarball:.tar.bz2=)))
+endif
+
+unpack_stamp		:= $(stampdir)/01-unpack-stamp
+patch_stamp		:= $(stampdir)/02-patch-stamp
+control_stamp		:= $(stampdir)/03-control-stamp
+configure_stamp		:= $(stampdir)/04-configure-stamp
+build_stamp		:= $(stampdir)/05-build-stamp
+build_html_stamp	:= $(stampdir)/05-build-html-stamp
+build_locale_stamp	:= $(stampdir)/05-build-locale-stamp
+build_doxygen_stamp	:= $(stampdir)/05-build-doxygen-stamp
+build_javadoc_stamp	:= $(stampdir)/05-build-javadoc-stamp
+check_stamp		:= $(stampdir)/06-check-stamp
+check_inst_stamp	:= $(stampdir)/06-check-inst-stamp
+install_stamp		:= $(stampdir)/07-install-stamp
+install_snap_stamp	:= $(stampdir)/07-install-snap-stamp
+binary_stamp		:= $(stampdir)/08-binary-stamp
+
+configure_dummy_stamp	:= $(stampdir)/04-configure-dummy-stamp
+build_dummy_stamp	:= $(stampdir)/05-build-dummy-stamp
+install_dummy_stamp	:= $(stampdir)/07-install-dummy-stamp
+
+configure_hppa64_stamp	:= $(stampdir)/04-configure-hppa64-stamp
+build_hppa64_stamp	:= $(stampdir)/05-build-hppa64-stamp
+install_hppa64_stamp	:= $(stampdir)/07-install-hppa64-stamp
+
+configure_ia6432_stamp	:= $(stampdir)/04-configure-ia6432-stamp
+build_ia6432_stamp	:= $(stampdir)/05-build-ia6432-stamp
+install_ia6432_stamp	:= $(stampdir)/07-install-ia6432-stamp
+
+configure_ia6432_stamp	:= $(stampdir)/04-configure-ia6432-stamp
+build_ia6432_stamp	:= $(stampdir)/05-build-ia6432-stamp
+install_ia6432_stamp	:= $(stampdir)/07-install-ia6432-stamp
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+    control_dependencies = $(patch_stamp)
+    configure_dependencies = $(configure_stamp)
+    build_dependencies = $(build_stamp)
+    ifeq ($(with_check),yes)
+      build_dependencies += check
+    endif
+    install_dependencies = $(install_snap_stamp)
+else
+  ifeq ($(with_base_only),yes)
+    control_dependencies = $(patch_stamp)
+    configure_dependencies = $(configure_dummy_stamp)
+    build_dependencies = $(build_dummy_stamp)
+    install_dependencies = $(install_dummy_stamp)
+  else
+    control_dependencies = $(patch_stamp)
+    configure_dependencies = $(configure_stamp)
+    build_dependencies = $(build_stamp)
+    ifeq ($(with_check),yes)
+      build_dependencies += check
+    endif
+    install_dependencies = $(install_stamp)
+  endif
+endif
+
+ifneq (,$(findstring gcj-, $(PKGSOURCE)))
+  ifeq ($(with_gcj_base_only),yes)
+    configure_dependencies = $(configure_dummy_stamp)
+    build_dependencies = $(build_dummy_stamp)
+    install_dependencies = $(install_dummy_stamp)
+  endif
+endif
+
+ifeq ($(with_hppa64),yes)
+  build_dependencies += $(build_hppa64_stamp)
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    install_dependencies += $(install_hppa64_stamp)
+  endif
+endif
+
+ifeq ($(with_ia6432),yes)
+  build_dependencies += $(build_ia6432_stamp)
+endif
+
+ifeq ($(with_ia6432),yes)
+  build_dependencies += $(build_ia6432_stamp)
+endif
+
+stamp-dir:
+	mkdir -p $(stampdir)
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.hurd-i386
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.hurd-i386
@@ -0,0 +1,3 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
--- gcj-4.2-4.2.4.orig/debian/rename-pkgs.sh
+++ gcj-4.2-4.2.4/debian/rename-pkgs.sh
@@ -0,0 +1,32 @@
+#! /bin/bash
+
+rename_pkg()
+{
+  src=$1
+  dest=$2
+  for ext in preinst postinst prerm postrm doc-base; do
+    if [ -f $src.$ext ]; then
+      if [ -f $dest.ext ]; then
+	echo already exists: $dest.$ext
+      else
+	echo "$src.$ext --> $dest.$ext"
+	svn rename $src.$ext $dest.$ext
+	#mv $src.$ext $dest.$ext
+      fi
+    fi
+  done
+}
+
+v_new=3.4
+v_old=3.3
+
+for p in chill cpp gcc g++ g77 gpc gij gcj gobjc protoize treelang; do
+  rename_pkg $p-$v_old $p-$v_new
+done
+
+for p in cpp gcc g77 gnat; do
+  rename_pkg $p-$v_old-doc $p-$v_new-doc
+done
+
+rename_pkg gcc-$v_old-base gcc-$v_new-base
+rename_pkg gcc-$v_old-sparc64 gcc-$v_new-sparc64
--- gcj-4.2-4.2.4.orig/debian/libgcc2.symbols.m68k
+++ gcj-4.2-4.2.4/debian/libgcc2.symbols.m68k
@@ -0,0 +1,95 @@
+libgcc_s.so.2 libgcc2 #MINVER#
+ GCC_3.0@GCC_3.0 4.2.1
+ GCC_3.3.1@GCC_3.3.1 4.2.1
+ GCC_3.3@GCC_3.3 4.2.1
+ GCC_3.4.2@GCC_3.4.2 4.2.1
+ GCC_3.4@GCC_3.4 4.2.1
+ GCC_4.0.0@GCC_4.0.0 4.2.1
+ GCC_4.2.0@GCC_4.2.0 4.2.1
+ GLIBC_2.0@GLIBC_2.0 4.2.1
+ _Unwind_Backtrace@GCC_3.3 4.2.1
+ _Unwind_DeleteException@GCC_3.0 4.2.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 4.2.1
+ _Unwind_Find_FDE@GCC_3.0 4.2.1
+ _Unwind_ForcedUnwind@GCC_3.0 4.2.1
+ _Unwind_GetCFA@GCC_3.3 4.2.1
+ _Unwind_GetDataRelBase@GCC_3.0 4.2.1
+ _Unwind_GetGR@GCC_3.0 4.2.1
+ _Unwind_GetIP@GCC_3.0 4.2.1
+ _Unwind_GetIPInfo@GCC_4.2.0 4.2.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 4.2.1
+ _Unwind_GetRegionStart@GCC_3.0 4.2.1
+ _Unwind_GetTextRelBase@GCC_3.0 4.2.1
+ _Unwind_RaiseException@GCC_3.0 4.2.1
+ _Unwind_Resume@GCC_3.0 4.2.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 4.2.1
+ _Unwind_SetGR@GCC_3.0 4.2.1
+ _Unwind_SetIP@GCC_3.0 4.2.1
+ __absvdi2@GCC_3.0 4.2.1
+ __absvsi2@GCC_3.0 4.2.1
+ __addvdi3@GCC_3.0 4.2.1
+ __addvsi3@GCC_3.0 4.2.1
+ __ashldi3@GCC_3.0 4.2.1
+ __ashrdi3@GCC_3.0 4.2.1
+ __clear_cache@GCC_3.0 4.2.1
+ __clzdi2@GCC_3.4 4.2.1
+ __clzsi2@GCC_3.4 4.2.1
+ __cmpdi2@GCC_3.0 4.2.1
+ __ctzdi2@GCC_3.4 4.2.1
+ __ctzsi2@GCC_3.4 4.2.1
+ __deregister_frame@GLIBC_2.0 4.2.1
+ __deregister_frame_info@GLIBC_2.0 4.2.1
+ __deregister_frame_info_bases@GCC_3.0 4.2.1
+ __divdc3@GCC_4.0.0 4.2.1
+ __divdi3@GLIBC_2.0 4.2.1
+ __divsc3@GCC_4.0.0 4.2.1
+ __divxc3@GCC_4.0.0 4.2.1
+ __enable_execute_stack@GCC_3.4.2 4.2.1
+ __ffsdi2@GCC_3.0 4.2.1
+ __fixdfdi@GCC_3.0 4.2.1
+ __fixsfdi@GCC_3.0 4.2.1
+ __fixunsdfdi@GCC_3.0 4.2.1
+ __fixunsdfsi@GCC_3.0 4.2.1
+ __fixunssfdi@GCC_3.0 4.2.1
+ __fixunssfsi@GCC_3.0 4.2.1
+ __fixunsxfdi@GCC_3.0 4.2.1
+ __fixunsxfsi@GCC_3.0 4.2.1
+ __fixxfdi@GCC_3.0 4.2.1
+ __floatdidf@GCC_3.0 4.2.1
+ __floatdisf@GCC_3.0 4.2.1
+ __floatdixf@GCC_3.0 4.2.1
+ __floatundidf@GCC_4.2.0 4.2.1
+ __floatundisf@GCC_4.2.0 4.2.1
+ __floatundixf@GCC_4.2.0 4.2.1
+ __frame_state_for@GLIBC_2.0 4.2.1
+ __gcc_personality_v0@GCC_3.3.1 4.2.1
+ __lshrdi3@GCC_3.0 4.2.1
+ __moddi3@GLIBC_2.0 4.2.1
+ __muldc3@GCC_4.0.0 4.2.1
+ __muldi3@GCC_3.0 4.2.1
+ __mulsc3@GCC_4.0.0 4.2.1
+ __mulvdi3@GCC_3.0 4.2.1
+ __mulvsi3@GCC_3.0 4.2.1
+ __mulxc3@GCC_4.0.0 4.2.1
+ __negdi2@GCC_3.0 4.2.1
+ __negvdi2@GCC_3.0 4.2.1
+ __negvsi2@GCC_3.0 4.2.1
+ __paritydi2@GCC_3.4 4.2.1
+ __paritysi2@GCC_3.4 4.2.1
+ __popcountdi2@GCC_3.4 4.2.1
+ __popcountsi2@GCC_3.4 4.2.1
+ __powidf2@GCC_4.0.0 4.2.1
+ __powisf2@GCC_4.0.0 4.2.1
+ __powixf2@GCC_4.0.0 4.2.1
+ __register_frame@GLIBC_2.0 4.2.1
+ __register_frame_info@GLIBC_2.0 4.2.1
+ __register_frame_info_bases@GCC_3.0 4.2.1
+ __register_frame_info_table@GLIBC_2.0 4.2.1
+ __register_frame_info_table_bases@GCC_3.0 4.2.1
+ __register_frame_table@GLIBC_2.0 4.2.1
+ __subvdi3@GCC_3.0 4.2.1
+ __subvsi3@GCC_3.0 4.2.1
+ __ucmpdi2@GCC_3.0 4.2.1
+ __udivdi3@GLIBC_2.0 4.2.1
+ __udivmoddi4@GCC_3.0 4.2.1
+ __umoddi3@GLIBC_2.0 4.2.1
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.sparc
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.sparc
@@ -0,0 +1,5 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
+#include "libstdc++6.symbols.ldbl.32bit"
--- gcj-4.2-4.2.4.orig/debian/rules.source
+++ gcj-4.2-4.2.4/debian/rules.source
@@ -0,0 +1,21 @@
+SOURCE_DIR := $(dir $(lastword $(MAKEFILE_LIST)))
+patchdir = $(SOURCE_DIR)/patches
+
+include $(SOURCE_DIR)/debian/rules.defs
+include $(SOURCE_DIR)/debian/rules.patch
+include $(SOURCE_DIR)/debian/rules.unpack
+
+patch-source: $(patch_stamp)
+	( \
+	  echo '#define __$(subst -,_,$(DEB_TARGET_GNU_TYPE))__'; \
+	  echo ''; \
+	  echo '  { "",  "$(DEB_TARGET_GNU_TYPE)"},'; \
+	  cat $(SOURCE_DIR)/debian/multiarch.inc; \
+	) > $(srcdir)/gcc/multiarch.inc
+
+clean-source:
+	rm -rf $(stampdir)
+	rm -rf $(gcc_srcdir) $(gpc_srcdir) p $(gdc_srcdir) d
+	rm -rf bin
+	rm -rf $(srcdir)
+
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.mips
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.mips
@@ -0,0 +1,120 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3.4@GCC_3.3.4 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __adddf3@GCC_3.0 1:4.1.1
+ __addsf3@GCC_3.0 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __ashldi3@GCC_3.0 1:4.1.1
+ __ashrdi3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzsi2@GCC_3.4 1:4.1.1
+ __cmpdi2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzsi2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdf3@GCC_3.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divsf3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __eqdf2@GCC_3.0 1:4.1.1
+ __eqsf2@GCC_3.0 1:4.1.1
+ __extendsfdf2@GCC_3.0 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixdfsi@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixsfsi@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatsidf@GCC_3.0 1:4.1.1
+ __floatsisf@GCC_3.0 1:4.1.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatunsidf@GCC_4.2.0 1:4.2.1
+ __floatunsisf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __gedf2@GCC_3.0 1:4.1.1
+ __gesf2@GCC_3.0 1:4.1.1
+ __gtdf2@GCC_3.0 1:4.1.1
+ __gtsf2@GCC_3.0 1:4.1.1
+ __ledf2@GCC_3.0 1:4.1.1
+ __lesf2@GCC_3.0 1:4.1.1
+ __lshrdi3@GCC_3.0 1:4.1.1
+ __ltdf2@GCC_3.0 1:4.1.1
+ __ltsf2@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldf3@GCC_3.0 1:4.1.1
+ __muldi3@GCC_3.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __mulsf3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __nedf2@GCC_3.0 1:4.1.1
+ __negdf2@GCC_3.0 1:4.1.1
+ __negdi2@GCC_3.0 1:4.1.1
+ __negsf2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __nesf2@GCC_3.0 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __paritysi2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountsi2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subdf3@GCC_3.0 1:4.1.1
+ __subsf3@GCC_3.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __truncdfsf2@GCC_3.0 1:4.1.1
+ __ucmpdi2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmoddi4@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
+ __unorddf2@GCC_3.3.4 1:4.1.1
+ __unordsf2@GCC_3.3.4 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libstdc++CXX.postinst
+++ gcj-4.2-4.2.4/debian/libstdc++CXX.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libstdc++@CXX@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.common
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.common
@@ -0,0 +1,2688 @@
+ CXXABI_1.3.1@CXXABI_1.3.1 4.1.1
+ CXXABI_1.3@CXXABI_1.3 4.1.1
+ GLIBCXX_3.4.1@GLIBCXX_3.4.1 4.1.1
+ GLIBCXX_3.4.2@GLIBCXX_3.4.2 4.1.1
+ GLIBCXX_3.4.3@GLIBCXX_3.4.3 4.1.1
+ GLIBCXX_3.4.4@GLIBCXX_3.4.4 4.1.1
+ GLIBCXX_3.4.5@GLIBCXX_3.4.5 4.1.1
+ GLIBCXX_3.4.6@GLIBCXX_3.4.6 4.1.1
+ GLIBCXX_3.4.7@GLIBCXX_3.4.7 4.1.1
+ GLIBCXX_3.4.8@GLIBCXX_3.4.8 4.1.1
+ GLIBCXX_3.4.9@GLIBCXX_3.4.9 4.2.1
+ GLIBCXX_3.4@GLIBCXX_3.4 4.1.1
+ _ZGVNSt10moneypunctIcLb0EE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt10moneypunctIcLb1EE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt10moneypunctIwLb0EE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt10moneypunctIwLb1EE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt11__timepunctIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt11__timepunctIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt7collateIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt7collateIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8messagesIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8messagesIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8numpunctIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8numpunctIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZGVNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZN10__cxxabiv116__enum_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv116__enum_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv116__enum_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__array_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__array_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__array_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__class_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__class_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__class_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__pbase_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__pbase_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv117__pbase_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv119__pointer_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv119__pointer_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv119__pointer_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv120__function_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv120__function_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv120__function_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv120__si_class_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv120__si_class_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv120__si_class_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv121__vmi_class_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv121__vmi_class_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv121__vmi_class_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv123__fundamental_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv123__fundamental_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv123__fundamental_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv129__pointer_to_member_type_infoD0Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv129__pointer_to_member_type_infoD1Ev@CXXABI_1.3 4.1.1
+ _ZN10__cxxabiv129__pointer_to_member_type_infoD2Ev@CXXABI_1.3 4.1.1
+ _ZN10__gnu_norm15_List_node_base4hookEPS0_@GLIBCXX_3.4 4.1.1
+ _ZN10__gnu_norm15_List_node_base4swapERS0_S1_@GLIBCXX_3.4 4.1.1
+ _ZN10__gnu_norm15_List_node_base6unhookEv@GLIBCXX_3.4 4.1.1
+ _ZN10__gnu_norm15_List_node_base7reverseEv@GLIBCXX_3.4 4.1.1
+ _ZN10__gnu_norm15_List_node_base8transferEPS0_S1_@GLIBCXX_3.4 4.1.1
+ _ZN11__gnu_debug19_Safe_iterator_base12_M_get_mutexEv@GLIBCXX_3.4.9 4.2.1
+ _ZN11__gnu_debug19_Safe_iterator_base16_M_attach_singleEPNS_19_Safe_sequence_baseEb@GLIBCXX_3.4.9 4.2.1
+ _ZN11__gnu_debug19_Safe_iterator_base16_M_detach_singleEv@GLIBCXX_3.4.9 4.2.1
+ _ZN11__gnu_debug19_Safe_iterator_base9_M_attachEPNS_19_Safe_sequence_baseEb@GLIBCXX_3.4 4.1.1
+ _ZN11__gnu_debug19_Safe_iterator_base9_M_detachEv@GLIBCXX_3.4 4.1.1
+ _ZN11__gnu_debug19_Safe_sequence_base12_M_get_mutexEv@GLIBCXX_3.4.9 4.2.1
+ _ZN11__gnu_debug19_Safe_sequence_base13_M_detach_allEv@GLIBCXX_3.4 4.1.1
+ _ZN11__gnu_debug19_Safe_sequence_base18_M_detach_singularEv@GLIBCXX_3.4 4.1.1
+ _ZN11__gnu_debug19_Safe_sequence_base22_M_revalidate_singularEv@GLIBCXX_3.4 4.1.1
+ _ZN11__gnu_debug19_Safe_sequence_base7_M_swapERS0_@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx17__pool_alloc_base12_M_get_mutexEv@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEE4fileEv@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEE4fileEv@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx27__verbose_terminate_handlerEv@CXXABI_1.3 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE10_M_destroyEv@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE13_M_initializeEv@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE10_M_destroyEv@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEPFvPvE@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE13_M_initializeEv@GLIBCXX_3.4.6 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_get_thread_idEv@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE21_M_destroy_thread_keyEPv@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx9free_list8_M_clearEv@GLIBCXX_3.4.4 4.1.1
+ _ZNK10__cxxabiv117__class_type_info10__do_catchEPKSt9type_infoPPvj@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__class_type_info11__do_upcastEPKS0_PKvRNS0_15__upcast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__class_type_info11__do_upcastEPKS0_PPv@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__pbase_type_info10__do_catchEPKSt9type_infoPPvj@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv119__pointer_type_info14__is_pointer_pEv@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv119__pointer_type_info15__pointer_catchEPKNS_17__pbase_type_infoEPPvj@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__function_type_info15__is_function_pEv@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info11__do_upcastEPKNS_17__class_type_infoEPKvRNS1_15__upcast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info11__do_upcastEPKNS_17__class_type_infoEPKvRNS1_15__upcast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv129__pointer_to_member_type_info15__pointer_catchEPKNS_17__pbase_type_infoEPPvj@CXXABI_1.3 4.1.1
+ _ZNK11__gnu_debug16_Error_formatter10_M_messageENS_13_Debug_msg_idE@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug16_Error_formatter10_Parameter14_M_print_fieldEPKS0_PKc@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug16_Error_formatter10_Parameter20_M_print_descriptionEPKS0_@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug16_Error_formatter13_M_print_wordEPKc@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug16_Error_formatter15_M_print_stringEPKc@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug16_Error_formatter8_M_errorEv@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug19_Safe_iterator_base11_M_singularEv@GLIBCXX_3.4 4.1.1
+ _ZNK11__gnu_debug19_Safe_iterator_base14_M_can_compareERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw@GLIBCXX_3.4.5 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13get_allocatorEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE3endEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_leakedEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4_Rep12_M_is_sharedEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4dataEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4rendEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5beginEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5c_strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5emptyEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE6_M_repEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE6lengthEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE6rbeginEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7_M_dataEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7_M_iendEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8capacityEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8max_sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE9_M_ibeginEv@GLIBCXX_3.4 4.1.1
+ _ZNKSi6gcountEv@GLIBCXX_3.4 4.1.1
+ _ZNKSi6sentrycvbEv@GLIBCXX_3.4 4.1.1
+ _ZNKSo6sentrycvbEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs11_M_disjunctEPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs11_M_disjunctEPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSs13get_allocatorEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs3endEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs4_Rep12_M_is_leakedEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs4_Rep12_M_is_sharedEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs4dataEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs4rendEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs4sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs5beginEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs5c_strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs5emptyEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs6_M_repEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs6lengthEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs6rbeginEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs7_M_dataEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs7_M_iendEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareERKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSs8capacityEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs8max_sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNKSs9_M_ibeginEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10bad_typeid4whatEv@GLIBCXX_3.4.9 4.2.1
+ _ZNKSt10istrstream5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE10neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE10pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE11curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE11do_groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE11frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE13decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE13do_neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE13do_pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE13negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE13positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE13thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE14do_curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE14do_frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE16do_decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE16do_negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE16do_positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE16do_thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb0EE8groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE10neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE10pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE11curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE11do_groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE11frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE13decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE13do_neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE13do_pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE13negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE13positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE13thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE14do_curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE14do_frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE16do_decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE16do_negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE16do_positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE16do_thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIcLb1EE8groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE10neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE10pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE11curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE11do_groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE11frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE13decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE13do_neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE13do_pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE13negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE13positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE13thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE14do_curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE14do_frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE16do_decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE16do_negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE16do_positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE16do_thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb0EE8groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE10neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE10pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE11curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE11do_groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE11frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE13decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE13do_neg_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE13do_pos_formatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE13negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE13positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE13thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE14do_curr_symbolEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE14do_frac_digitsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE16do_decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE16do_negative_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE16do_positive_signEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE16do_thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10moneypunctIwLb1EE8groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10ostrstream5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt10ostrstream6pcountEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE15_M_am_pm_formatEPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE15_M_date_formatsEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE15_M_time_formatsEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE19_M_days_abbreviatedEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE20_M_date_time_formatsEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE21_M_months_abbreviatedEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE7_M_daysEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE8_M_am_pmEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE9_M_monthsEPPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE15_M_am_pm_formatEPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE15_M_date_formatsEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE15_M_time_formatsEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE19_M_days_abbreviatedEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE20_M_date_time_formatsEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE21_M_months_abbreviatedEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE7_M_daysEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE8_M_am_pmEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE9_M_monthsEPPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt11logic_error4whatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt12__basic_fileIcE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt12strstreambuf6pcountEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13bad_exception4whatEv@GLIBCXX_3.4.9 4.2.1
+ _ZNKSt13basic_filebufIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_filebufIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_fstreamIcSt11char_traitsIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4.5 4.1.1
+ _ZNKSt13basic_fstreamIwSt11char_traitsIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4.5 4.1.1
+ _ZNKSt13basic_istreamIwSt11char_traitsIwEE6gcountEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_istreamIwSt11char_traitsIwEE6sentrycvbEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13basic_ostreamIwSt11char_traitsIwEE6sentrycvbEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt13runtime_error4whatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4.5 4.1.1
+ _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4.5 4.1.1
+ _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4.5 4.1.1
+ _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4.5 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE4gptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE4pptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE5ebackEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE5egptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE5epptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE5pbaseEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIcSt11char_traitsIcEE6getlocEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE4gptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE4pptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE5ebackEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE5egptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE5epptrEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE5pbaseEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_streambufIwSt11char_traitsIwEE6getlocEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt18basic_stringstreamIcSt11char_traitsIcESaIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt18basic_stringstreamIwSt11char_traitsIwESaIwEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt18basic_stringstreamIwSt11char_traitsIwESaIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_istringstreamIcSt11char_traitsIcESaIcEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_istringstreamIcSt11char_traitsIcESaIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_istringstreamIwSt11char_traitsIwESaIwEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_istringstreamIwSt11char_traitsIwESaIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_ostringstreamIwSt11char_traitsIwESaIwEE3strEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt19basic_ostringstreamIwSt11char_traitsIwESaIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE10do_tolowerEPcPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE10do_tolowerEc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE10do_toupperEPcPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE10do_toupperEc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE8do_widenEPKcS2_Pc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE8do_widenEc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE9do_narrowEPKcS2_cPc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIcE9do_narrowEcc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE10do_scan_isEtPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE10do_tolowerEPwPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE10do_tolowerEw@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE10do_toupperEPwPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE10do_toupperEw@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE11do_scan_notEtPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE19_M_convert_to_wmaskEt@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE5do_isEPKwS2_Pt@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE5do_isEtw@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE8do_widenEPKcS2_Pw@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE8do_widenEc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE9do_narrowEPKwS2_cPc@GLIBCXX_3.4 4.1.1
+ _ZNKSt5ctypeIwE9do_narrowEwc@GLIBCXX_3.4 4.1.1
+ _ZNKSt6locale2id5_M_idEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt6locale4nameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt6localeeqERKS_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE10do_unshiftERS0_PcS3_RS3_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE11do_encodingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE13do_max_lengthEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE16do_always_noconvEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE5do_inERS0_PKcS4_RS4_PcS6_RS6_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE6do_outERS0_PKcS4_RS4_PcS6_RS6_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE10do_unshiftERS0_PcS3_RS3_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE11do_encodingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE13do_max_lengthEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE16do_always_noconvEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE5do_inERS0_PKcS4_RS4_PwS6_RS6_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE6do_outERS0_PKwS4_RS4_PcS6_RS6_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE10_M_compareEPKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE10do_compareEPKcS2_S2_S2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE12do_transformEPKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE4hashEPKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE7compareEPKcS2_S2_S2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE7do_hashEPKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE9transformEPKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE10_M_compareEPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE10do_compareEPKwS2_S2_S2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE12do_transformEPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE4hashEPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE7compareEPKwS2_S2_S2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE7do_hashEPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE9transformEPKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16_M_extract_floatES3_S3_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16_M_extract_floatES3_S3_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES3_S3_RSt8ios_basecT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES3_S3_RSt8ios_basecT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES3_S3_RSt8ios_basecT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES3_S3_RSt8ios_basecT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIeEES3_S3_RSt8ios_baseccT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecPKv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basece@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecPKv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basece@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES3_S3_RSt8ios_basewT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES3_S3_RSt8ios_basewT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES3_S3_RSt8ios_basewT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES3_S3_RSt8ios_basewT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES3_S3_RSt8ios_basewcT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIeEES3_S3_RSt8ios_basewcT_@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewPKv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewe@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewy@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewPKv@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewb@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewd@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewe@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewl@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewx@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewy@GLIBCXX_3.4 4.1.1
+ _ZNKSt8bad_cast4whatEv@GLIBCXX_3.4.9 4.2.1
+ _ZNKSt8ios_base7failure4whatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE18_M_convert_to_charERKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE20_M_convert_from_charEPc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE3getEiiiRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE4openERKSsRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE4openERKSsRKSt6localePKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE5closeEi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE6do_getEiiiRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE7do_openERKSsRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIcE8do_closeEi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE18_M_convert_to_charERKSbIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE20_M_convert_from_charEPc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE3getEiiiRKSbIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE4openERKSsRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE4openERKSsRKSt6localePKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE5closeEi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE6do_getEiiiRKSbIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE7do_openERKSsRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNKSt8messagesIwE8do_closeEi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE11do_groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE11do_truenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE12do_falsenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE13decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE13thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE16do_decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE16do_thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE8groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE8truenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIcE9falsenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE11do_groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE11do_truenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE12do_falsenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE13decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE13thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE16do_decimal_pointEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE16do_thousands_sepEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE8groupingEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE8truenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8numpunctIwE9falsenameEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10date_orderEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11do_get_dateES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11do_get_timeES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11do_get_yearES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE11get_weekdayES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE13do_date_orderEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE13get_monthnameES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14do_get_weekdayES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16do_get_monthnameES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE21_M_extract_via_formatES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8get_dateES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8get_timeES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8get_yearES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10date_orderEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11do_get_dateES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11do_get_timeES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11do_get_yearES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE11get_weekdayES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE13do_date_orderEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE13get_monthnameES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14do_get_weekdayES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16do_get_monthnameES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE21_M_extract_via_formatES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tmPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8get_dateES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8get_timeES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8get_yearES3_S3_RSt8ios_baseRSt12_Ios_IostateP2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecPK2tmPKcSB_@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_RSt8ios_basecPK2tmcc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_RSt8ios_basecPK2tmcc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewPK2tmPKwSB_@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_RSt8ios_basewPK2tmcc@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_RSt8ios_basewPK2tmcc@GLIBCXX_3.4 4.1.1
+ _ZNKSt9bad_alloc4whatEv@GLIBCXX_3.4.9 4.2.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE10exceptionsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE3badEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE3eofEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE3tieEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE4failEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE4fillEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE4goodEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE5widenEc@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE6narrowEcc@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEE7rdstateEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEEcvPvEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIcSt11char_traitsIcEEntEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE10exceptionsEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE3badEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE3eofEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE3tieEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE4failEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE4fillEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE4goodEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE5widenEc@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE6narrowEwc@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEE7rdstateEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEEcvPvEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9basic_iosIwSt11char_traitsIwEEntEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9exception4whatEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb0EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb1EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb0EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb1EEES3_S3_S3_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRSbIwS2_SaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRSbIwS2_SaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES3_S3_bRSt8ios_baseRSt12_Ios_IostateRe@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_bRSt8ios_basecRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES3_bRSt8ios_basece@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_bRSt8ios_basecRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES3_bRSt8ios_basece@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES3_S3_RSt8ios_basecRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES3_S3_RSt8ios_basecRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_bRSt8ios_basewRKSbIwS2_SaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES3_bRSt8ios_basewe@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_bRSt8ios_basewRKSbIwS2_SaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES3_bRSt8ios_basewe@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb0EEES3_S3_RSt8ios_basewRKSbIwS2_SaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb1EEES3_S3_RSt8ios_basewRKSbIwS2_SaIwEE@GLIBCXX_3.4 4.1.1
+ _ZNKSt9strstream5rdbufEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9strstream6pcountEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9type_info10__do_catchEPKS_PPvj@GLIBCXX_3.4 4.1.1
+ _ZNKSt9type_info11__do_upcastEPKN10__cxxabiv117__class_type_infoEPPv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9type_info14__is_pointer_pEv@GLIBCXX_3.4 4.1.1
+ _ZNKSt9type_info15__is_function_pEv@GLIBCXX_3.4 4.1.1
+ _ZNSaIcEC1ERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSaIcEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIcEC2ERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSaIcEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIwEC1ERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSaIwEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIwEC2ERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSaIwEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSaIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC1EPwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_Alloc_hiderC2EPwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_M_leak_hardEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_S_empty_repEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_charsEPwN9__gnu_cxx17__normal_iteratorIPKwS2_EES8_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_charsEPwN9__gnu_cxx17__normal_iteratorIS3_S2_EES6_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_charsEPwPKwS5_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE13_S_copy_charsEPwS3_S3_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE3endEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_destroyERKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_disposeERKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refcopyEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep10_M_refdataEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_max_sizeE@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep11_S_terminalE@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep12_S_empty_repEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep13_M_set_leakedEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep15_M_set_sharableEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep20_S_empty_rep_storageE@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep7_M_grabERKS1_S5_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4nposE@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4rendEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4swapERS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5beginEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5clearEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5eraseEN9__gnu_cxx17__normal_iteratorIPwS2_EE@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5eraseEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EEw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6rbeginEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_dataEPw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_leakEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_NS4_IPKwS2_EES9_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_PKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_PKwS8_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_RKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_S5_S5_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_S6_S6_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9push_backEw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EPKwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1IN9__gnu_cxx17__normal_iteratorIPwS2_EEEET_S8_RKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1IPKwEET_S6_RKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1IPwEET_S5_RKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EPKwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2IN9__gnu_cxx17__normal_iteratorIPwS2_EEEET_S8_RKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2IPKwEET_S6_RKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2IPwEET_S5_RKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEaSEPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEaSERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEaSEw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEpLEPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEpLERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEpLEw@GLIBCXX_3.4 4.1.1
+ _ZNSdC1EPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSdC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSdC2EPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSdC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSdD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSi10_M_extractIPvEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIbEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIdEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIeEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIfEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIjEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIlEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractImEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractItEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIxEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi10_M_extractIyEERSiRT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSi3getERSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSi3getERSt15basic_streambufIcSt11char_traitsIcEEc@GLIBCXX_3.4 4.1.1
+ _ZNSi3getERc@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEv@GLIBCXX_3.4 4.1.1
+ _ZNSi4peekEv@GLIBCXX_3.4 4.1.1
+ _ZNSi4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSi5seekgESt4fposI11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZNSi5tellgEv@GLIBCXX_3.4 4.1.1
+ _ZNSi5ungetEv@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEv@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEv@GLIBCXX_3.4.5 4.1.1
+ _ZNSi6sentryC1ERSib@GLIBCXX_3.4 4.1.1
+ _ZNSi6sentryC2ERSib@GLIBCXX_3.4 4.1.1
+ _ZNSi7putbackEc@GLIBCXX_3.4 4.1.1
+ _ZNSiC1EPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSiC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSiC2EPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSiC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSiD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSiD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSiD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSirsEPFRSiS_E@GLIBCXX_3.4 4.1.1
+ _ZNSirsEPFRSt8ios_baseS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSirsEPFRSt9basic_iosIcSt11char_traitsIcEES3_E@GLIBCXX_3.4 4.1.1
+ _ZNSirsEPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSirsERPv@GLIBCXX_3.4 4.1.1
+ _ZNSirsERb@GLIBCXX_3.4 4.1.1
+ _ZNSirsERd@GLIBCXX_3.4 4.1.1
+ _ZNSirsERe@GLIBCXX_3.4 4.1.1
+ _ZNSirsERf@GLIBCXX_3.4 4.1.1
+ _ZNSirsERi@GLIBCXX_3.4 4.1.1
+ _ZNSirsERj@GLIBCXX_3.4 4.1.1
+ _ZNSirsERl@GLIBCXX_3.4 4.1.1
+ _ZNSirsERm@GLIBCXX_3.4 4.1.1
+ _ZNSirsERs@GLIBCXX_3.4 4.1.1
+ _ZNSirsERt@GLIBCXX_3.4 4.1.1
+ _ZNSirsERx@GLIBCXX_3.4 4.1.1
+ _ZNSirsERy@GLIBCXX_3.4 4.1.1
+ _ZNSo3putEc@GLIBCXX_3.4 4.1.1
+ _ZNSo5flushEv@GLIBCXX_3.4 4.1.1
+ _ZNSo5seekpESt4fposI11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZNSo5tellpEv@GLIBCXX_3.4 4.1.1
+ _ZNSo6sentryC1ERSo@GLIBCXX_3.4 4.1.1
+ _ZNSo6sentryC2ERSo@GLIBCXX_3.4 4.1.1
+ _ZNSo6sentryD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSo6sentryD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSo9_M_insertIPKvEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertIbEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertIdEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertIeEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertIlEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertImEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertIxEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSo9_M_insertIyEERSoT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSoC1EPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSoC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSoC2EPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSoC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSoD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSoD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSoD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSolsEPFRSoS_E@GLIBCXX_3.4 4.1.1
+ _ZNSolsEPFRSt8ios_baseS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSolsEPFRSt9basic_iosIcSt11char_traitsIcEES3_E@GLIBCXX_3.4 4.1.1
+ _ZNSolsEPKv@GLIBCXX_3.4 4.1.1
+ _ZNSolsEPSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZNSolsEb@GLIBCXX_3.4 4.1.1
+ _ZNSolsEd@GLIBCXX_3.4 4.1.1
+ _ZNSolsEe@GLIBCXX_3.4 4.1.1
+ _ZNSolsEf@GLIBCXX_3.4 4.1.1
+ _ZNSolsEi@GLIBCXX_3.4 4.1.1
+ _ZNSolsEj@GLIBCXX_3.4 4.1.1
+ _ZNSolsEl@GLIBCXX_3.4 4.1.1
+ _ZNSolsEm@GLIBCXX_3.4 4.1.1
+ _ZNSolsEs@GLIBCXX_3.4 4.1.1
+ _ZNSolsEt@GLIBCXX_3.4 4.1.1
+ _ZNSolsEx@GLIBCXX_3.4 4.1.1
+ _ZNSolsEy@GLIBCXX_3.4 4.1.1
+ _ZNSs12_Alloc_hiderC1EPcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs12_Alloc_hiderC2EPcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs12_M_leak_hardEv@GLIBCXX_3.4 4.1.1
+ _ZNSs12_S_empty_repEv@GLIBCXX_3.4 4.1.1
+ _ZNSs13_S_copy_charsEPcN9__gnu_cxx17__normal_iteratorIPKcSsEES4_@GLIBCXX_3.4 4.1.1
+ _ZNSs13_S_copy_charsEPcN9__gnu_cxx17__normal_iteratorIS_SsEES2_@GLIBCXX_3.4 4.1.1
+ _ZNSs13_S_copy_charsEPcPKcS1_@GLIBCXX_3.4 4.1.1
+ _ZNSs13_S_copy_charsEPcS_S_@GLIBCXX_3.4 4.1.1
+ _ZNSs3endEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep10_M_destroyERKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep10_M_disposeERKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep10_M_refcopyEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep10_M_refdataEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep11_S_max_sizeE@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep11_S_terminalE@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep12_S_empty_repEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep13_M_set_leakedEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep15_M_set_sharableEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep20_S_empty_rep_storageE@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep7_M_grabERKSaIcES2_@GLIBCXX_3.4 4.1.1
+ _ZNSs4nposE@GLIBCXX_3.4 4.1.1
+ _ZNSs4rendEv@GLIBCXX_3.4 4.1.1
+ _ZNSs4swapERSs@GLIBCXX_3.4 4.1.1
+ _ZNSs5beginEv@GLIBCXX_3.4 4.1.1
+ _ZNSs5clearEv@GLIBCXX_3.4 4.1.1
+ _ZNSs5eraseEN9__gnu_cxx17__normal_iteratorIPcSsEE@GLIBCXX_3.4 4.1.1
+ _ZNSs5eraseEN9__gnu_cxx17__normal_iteratorIPcSsEES2_@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEEc@GLIBCXX_3.4 4.1.1
+ _ZNSs6rbeginEv@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_dataEPc@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_leakEv@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_NS0_IPKcSsEES5_@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_PKc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_PKcS4_@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_RKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_S1_S1_@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_S2_S2_@GLIBCXX_3.4 4.1.1
+ _ZNSs9push_backEc@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EPKcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSsC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSsC1IN9__gnu_cxx17__normal_iteratorIPcSsEEEET_S4_RKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1IPKcEET_S2_RKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1IPcEET_S1_RKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EPKcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSsC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSsC2IN9__gnu_cxx17__normal_iteratorIPcSsEEEET_S4_RKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2IPKcEET_S2_RKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2IPcEET_S1_RKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSsD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSsaSEPKc@GLIBCXX_3.4 4.1.1
+ _ZNSsaSERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSsaSEc@GLIBCXX_3.4 4.1.1
+ _ZNSspLEPKc@GLIBCXX_3.4 4.1.1
+ _ZNSspLERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSspLEc@GLIBCXX_3.4 4.1.1
+ _ZNSt10__num_base11_S_atoms_inE@GLIBCXX_3.4 4.1.1
+ _ZNSt10__num_base12_S_atoms_outE@GLIBCXX_3.4 4.1.1
+ _ZNSt10__num_base15_S_format_floatERKSt8ios_basePcc@GLIBCXX_3.4 4.1.1
+ _ZNSt10bad_typeidD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10bad_typeidD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10bad_typeidD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5alnumE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5alphaE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5cntrlE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5digitE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5graphE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5lowerE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5printE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5punctE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5spaceE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base5upperE@GLIBCXX_3.4 4.1.1
+ _ZNSt10ctype_base6xdigitE@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstream3strEv@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPc@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPc@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10money_base18_S_default_patternE@GLIBCXX_3.4 4.1.1
+ _ZNSt10money_base20_S_construct_patternEccc@GLIBCXX_3.4 4.1.1
+ _ZNSt10money_base8_S_atomsE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EE24_M_initialize_moneypunctEP15__locale_structPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EE24_M_initialize_moneypunctEP15__locale_structPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EE24_M_initialize_moneypunctEP15__locale_structPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EE24_M_initialize_moneypunctEP15__locale_structPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstream3strEv@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstream6freezeEb@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamC1EPciSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamC2EPciSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt10ostrstreamD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcE23_M_initialize_timepunctEP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwE23_M_initialize_timepunctEP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11char_traitsIcE2eqERKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt11char_traitsIcE2eqERKcS2_@GLIBCXX_3.4.5 4.1.1
+ _ZNSt11char_traitsIwE2eqERKwS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt11char_traitsIwE2eqERKwS2_@GLIBCXX_3.4.5 4.1.1
+ _ZNSt11logic_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt11logic_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt11logic_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11logic_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11logic_errorD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11range_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt11range_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt11range_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt11range_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE2fdEv@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE4fileEv@GLIBCXX_3.4.1 4.1.1
+ _ZNSt12__basic_fileIcE4openEPKcSt13_Ios_Openmodei@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE8sys_openEP8_IO_FILESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE8sys_openEiSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE9showmanycEv@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcEC1EP15pthread_mutex_t@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcEC2EP15pthread_mutex_t@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12domain_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt12domain_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt12domain_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12domain_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12length_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt12length_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt12length_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12length_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12out_of_rangeC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt12out_of_rangeC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt12out_of_rangeD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12out_of_rangeD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf3strEv@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf6freezeEb@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf7_M_freeEPc@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8overflowEi@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf9pbackfailEi@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13bad_exceptionD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13bad_exceptionD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13bad_exceptionD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE15_M_create_pbackEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE16_M_destroy_pbackEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE19_M_terminate_outputEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE26_M_destroy_internal_bufferEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE27_M_allocate_internal_bufferEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE8overflowEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE9pbackfailEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE9showmanycEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE15_M_create_pbackEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE16_M_destroy_pbackEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE19_M_terminate_outputEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE26_M_destroy_internal_bufferEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE27_M_allocate_internal_bufferEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE8overflowEj@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE9pbackfailEj@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE9showmanycEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEEC2EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIcSt11char_traitsIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEEC1EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEEC2EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_fstreamIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIPvEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIbEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIdEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIeEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIfEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIjEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIlEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractImEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractItEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIxEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIyEERS2_RT_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getERSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getERSt15basic_streambufIwS1_Ew@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getERw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE4peekEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE5seekgESt4fposI11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE5tellgEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE5ungetEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEv@GLIBCXX_3.4.5 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6sentryC1ERS2_b@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6sentryC2ERS2_b@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7putbackEw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEEC1EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEEC2EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsEPFRS2_S3_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsEPFRSt8ios_baseS4_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsEPFRSt9basic_iosIwS1_ES5_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsEPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERPv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERb@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERd@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERe@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERf@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERj@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERm@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERs@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERt@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERx@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERy@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE3putEw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5flushEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpESt4fposI11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5tellpEv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentryC1ERS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentryC2ERS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentryD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE6sentryD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIPKvEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIbEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIdEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIeEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIlEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertImEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIxEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIyEERS2_T_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEEC1EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEEC2EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEPFRS2_S3_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEPFRSt8ios_baseS4_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEPFRSt9basic_iosIwS1_ES5_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEPKv@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEb@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEd@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEe@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEf@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEj@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEm@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEs@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEt@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEx@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEy@GLIBCXX_3.4 4.1.1
+ _ZNSt13runtime_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt13runtime_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt13runtime_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13runtime_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt13runtime_errorD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEEC2EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIcSt11char_traitsIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEEC1EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEEC2EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ifstreamIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEEC1EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEEC2EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_iostreamIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEEC2EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIcSt11char_traitsIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEE4openEPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEE5closeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEE7is_openEv@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEEC1EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEEC2EPKcSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14basic_ofstreamIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIaE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIbE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIcE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIdE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIeE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIfE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIhE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIiE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIjE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIlE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsImE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIsE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsItE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIwE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIxE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt14numeric_limitsIyE9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt14overflow_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt14overflow_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt14overflow_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt14overflow_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15_List_node_base4hookEPS_@GLIBCXX_3.4 4.1.1
+ _ZNSt15_List_node_base4swapERS_S0_@GLIBCXX_3.4 4.1.1
+ _ZNSt15_List_node_base6unhookEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15_List_node_base7reverseEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15_List_node_base8transferEPS_S0_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE10pubseekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE4setgEPcS3_S3_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE4setpEPcS3_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5gbumpEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5pbumpEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sgetcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sputcEc@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5uflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6sbumpcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6snextcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE7pubsyncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE7sungetcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE8in_availEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE8overflowEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE8pubimbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9pbackfailEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9showmanycEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9sputbackcEc@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEEC1ERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEEC2ERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEEaSERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE10pubseekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE4setgEPwS3_S3_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE4setpEPwS3_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE4syncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5gbumpEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5pbumpEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sgetcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sputcEw@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5uflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6sbumpcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6snextcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE7pubsyncEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE7sungetcEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE8in_availEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE8overflowEj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE8pubimbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9pbackfailEj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9showmanycEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9sputbackcEw@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEEC1ERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEEC2ERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEEaSERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE15_M_update_egptrEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE17_M_stringbuf_initESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE3strERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE8overflowEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE9pbackfailEi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE9showmanycEv@GLIBCXX_3.4.6 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC2ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE15_M_update_egptrEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE17_M_stringbuf_initESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7seekposESt4fposI11__mbstate_tESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE8overflowEj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE9pbackfailEj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE9showmanycEv@GLIBCXX_3.4.6 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE9underflowEv@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEEC1ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEEC2ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15underflow_errorC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt15underflow_errorC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt15underflow_errorD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt15underflow_errorD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcE8_M_cacheERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwE8_M_cacheERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16invalid_argumentC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt16invalid_argumentC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt16invalid_argumentD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt16invalid_argumentD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcE12_S_timezonesE@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwE12_S_timezonesE@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EE4intlE@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EE8_M_cacheERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EE8_M_cacheERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EE8_M_cacheERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EE8_M_cacheERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEE3strERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC2ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIcSt11char_traitsIcESaIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEEC1ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEEC2ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt18basic_stringstreamIwSt11char_traitsIwESaIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEE3strERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEEC2ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIcSt11char_traitsIcESaIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEEC1ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEEC2ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_istringstreamIwSt11char_traitsIwESaIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE3strERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC2ERKSsSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEE3strERKSbIwS1_S2_E@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEEC1ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEEC1ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEEC2ERKSbIwS1_S2_ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEEC2ESt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv@GLIBCXX_3.4 4.1.1
+ _ZNSt19istreambuf_iteratorIcSt11char_traitsIcEEppEv@GLIBCXX_3.4.5 4.1.1
+ _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv@GLIBCXX_3.4 4.1.1
+ _ZNSt19istreambuf_iteratorIwSt11char_traitsIwEEppEv@GLIBCXX_3.4.5 4.1.1
+ _ZNSt21__numeric_limits_base10has_denormE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base10is_boundedE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base10is_integerE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base11round_styleE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base12has_infinityE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base12max_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base12min_exponentE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base13has_quiet_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base14is_specializedE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base14max_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base14min_exponent10E@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base15has_denorm_lossE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base15tinyness_beforeE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base17has_signaling_NaNE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base5radixE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base5trapsE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base6digitsE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base8digits10E@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base8is_exactE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base9is_iec559E@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base9is_moduloE@GLIBCXX_3.4 4.1.1
+ _ZNSt21__numeric_limits_base9is_signedE@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcE10table_sizeE@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcE13classic_tableEv@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwE19_M_initialize_ctypeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6__norm15_List_node_base4hookEPS0_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt6__norm15_List_node_base4swapERS0_S1_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt6__norm15_List_node_base6unhookEv@GLIBCXX_3.4.9 4.2.1
+ _ZNSt6__norm15_List_node_base7reverseEv@GLIBCXX_3.4.9 4.2.1
+ _ZNSt6__norm15_List_node_base8transferEPS0_S1_@GLIBCXX_3.4.9 4.2.1
+ _ZNSt6locale11_M_coalesceERKS_S1_i@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale21_S_normalize_categoryEi@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale3allE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale4noneE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale4timeE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl16_M_install_facetEPKNS_2idEPKNS_5facetE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl16_M_replace_facetEPKS0_PKNS_2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl19_M_replace_categoryEPKS0_PKPKNS_2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl21_M_replace_categoriesEPKS0_i@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5ctypeE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facet13_S_get_c_nameEv@GLIBCXX_3.4.6 4.1.1
+ _ZNSt6locale5facet15_S_get_c_localeEv@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facet17_S_clone_c_localeERP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facet18_S_create_c_localeERP15__locale_structPKcS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facet19_S_destroy_c_localeERP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facetD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facetD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5facetD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale6globalERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale7classicEv@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale7collateE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale7numericE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale8messagesE@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale8monetaryE@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC1EPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC1EPNS_5_ImplE@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC1ERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC1ERKS_PKci@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC1ERKS_S1_i@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC2EPKc@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC2EPNS_5_ImplE@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC2ERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC2ERKS_PKci@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC2ERKS_S1_i@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt6localeaSERKS_@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8bad_castD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8bad_castD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8bad_castD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base10floatfieldE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base10scientificE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base11adjustfieldE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base13_M_grow_wordsEib@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base15sync_with_stdioEb@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base17_M_call_callbacksENS_5eventE@GLIBCXX_3.4.6 4.1.1
+ _ZNSt8ios_base17register_callbackEPFvNS_5eventERS_iEi@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base20_M_dispose_callbacksEv@GLIBCXX_3.4.6 4.1.1
+ _ZNSt8ios_base2inE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3appE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3ateE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3begE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3curE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3decE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3endE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3hexE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3octE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base3outE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base4InitC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base4InitC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base4InitD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base4InitD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base4leftE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base5fixedE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base5rightE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base5truncE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base6badbitE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base6binaryE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base6eofbitE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base6skipwsE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base6xallocEv@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7_M_initEv@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7failbitE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7failureC1ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7failureC2ERKSs@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7failureD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7failureD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7failureD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7goodbitE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7showposE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base7unitbufE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base8internalE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base8showbaseE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base9basefieldE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base9boolalphaE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base9showpointE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_base9uppercaseE@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_baseC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_baseC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_baseD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_baseD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8ios_baseD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcE22_M_initialize_numpunctEP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwE22_M_initialize_numpunctEP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9bad_allocD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9bad_allocD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9bad_allocD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE10exceptionsESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE11_M_setstateESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE15_M_cache_localeERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE3tieEPSo@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE4fillEc@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE4initEPSt15basic_streambufIcS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE5clearESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE5rdbufEPSt15basic_streambufIcS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE7copyfmtERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEE8setstateESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEEC1EPSt15basic_streambufIcS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEEC2EPSt15basic_streambufIcS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIcSt11char_traitsIcEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE10exceptionsESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE11_M_setstateESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE15_M_cache_localeERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE3tieEPSt13basic_ostreamIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE4fillEw@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE4initEPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE5clearESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE5imbueERKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE5rdbufEPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE7copyfmtERKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEE8setstateESt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEEC1EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEEC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEEC2EPSt15basic_streambufIwS1_E@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEEC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9basic_iosIwSt11char_traitsIwEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9exceptionD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9exceptionD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9exceptionD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstream3strEv@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstream6freezeEb@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamC1EPciSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamC1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamC2EPciSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamC2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9strstreamD2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9type_infoD0Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9type_infoD1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt9type_infoD2Ev@GLIBCXX_3.4 4.1.1
+ _ZSt10unexpectedv@GLIBCXX_3.4 4.1.1
+ _ZSt13set_terminatePFvvE@GLIBCXX_3.4 4.1.1
+ _ZSt14__convert_to_vIdEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZSt14__convert_to_vIeEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZSt14__convert_to_vIfEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@GLIBCXX_3.4 4.1.1
+ _ZSt14set_unexpectedPFvvE@GLIBCXX_3.4 4.1.1
+ _ZSt15set_new_handlerPFvvE@GLIBCXX_3.4 4.1.1
+ _ZSt16__throw_bad_castv@GLIBCXX_3.4 4.1.1
+ _ZSt17__throw_bad_allocv@GLIBCXX_3.4 4.1.1
+ _ZSt18_Rb_tree_decrementPKSt18_Rb_tree_node_base@GLIBCXX_3.4 4.1.1
+ _ZSt18_Rb_tree_decrementPSt18_Rb_tree_node_base@GLIBCXX_3.4 4.1.1
+ _ZSt18_Rb_tree_incrementPKSt18_Rb_tree_node_base@GLIBCXX_3.4 4.1.1
+ _ZSt18_Rb_tree_incrementPSt18_Rb_tree_node_base@GLIBCXX_3.4 4.1.1
+ _ZSt18__throw_bad_typeidv@GLIBCXX_3.4 4.1.1
+ _ZSt18uncaught_exceptionv@GLIBCXX_3.4 4.1.1
+ _ZSt19__throw_ios_failurePKc@GLIBCXX_3.4 4.1.1
+ _ZSt19__throw_logic_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt19__throw_range_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt20_Rb_tree_black_countPKSt18_Rb_tree_node_baseS1_@GLIBCXX_3.4 4.1.1
+ _ZSt20_Rb_tree_rotate_leftPSt18_Rb_tree_node_baseRS0_@GLIBCXX_3.4 4.1.1
+ _ZSt20__throw_domain_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt20__throw_length_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt20__throw_out_of_rangePKc@GLIBCXX_3.4 4.1.1
+ _ZSt21_Rb_tree_rotate_rightPSt18_Rb_tree_node_baseRS0_@GLIBCXX_3.4 4.1.1
+ _ZSt21__throw_bad_exceptionv@GLIBCXX_3.4 4.1.1
+ _ZSt21__throw_runtime_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt22__throw_overflow_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt23__throw_underflow_errorPKc@GLIBCXX_3.4 4.1.1
+ _ZSt24__throw_invalid_argumentPKc@GLIBCXX_3.4 4.1.1
+ _ZSt28_Rb_tree_rebalance_for_erasePSt18_Rb_tree_node_baseRS_@GLIBCXX_3.4 4.1.1
+ _ZSt29_Rb_tree_insert_and_rebalancebPSt18_Rb_tree_node_baseS0_RS_@GLIBCXX_3.4 4.1.1
+ _ZSt2wsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt2wsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt3cin@GLIBCXX_3.4 4.1.1
+ _ZSt4cerr@GLIBCXX_3.4 4.1.1
+ _ZSt4clog@GLIBCXX_3.4 4.1.1
+ _ZSt4cout@GLIBCXX_3.4 4.1.1
+ _ZSt4endlIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt4endlIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt4endsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt4endsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt4wcin@GLIBCXX_3.4 4.1.1
+ _ZSt5flushIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt5flushIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_@GLIBCXX_3.4 4.1.1
+ _ZSt5wcerr@GLIBCXX_3.4 4.1.1
+ _ZSt5wclog@GLIBCXX_3.4 4.1.1
+ _ZSt5wcout@GLIBCXX_3.4 4.1.1
+ _ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_E@GLIBCXX_3.4 4.1.1
+ _ZSt7getlineIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_ES4_@GLIBCXX_3.4 4.1.1
+ _ZSt7getlineIwSt11char_traitsIwESaIwEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_E@GLIBCXX_3.4 4.1.1
+ _ZSt7getlineIwSt11char_traitsIwESaIwEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_ES4_@GLIBCXX_3.4 4.1.1
+ _ZSt7nothrow@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt10moneypunctIcLb0EEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt10moneypunctIwLb0EEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt11__timepunctIcEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt11__timepunctIwEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt5ctypeIcEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt5ctypeIwEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7codecvtIcc11__mbstate_tEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7codecvtIwc11__mbstate_tEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7collateIcEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7collateIwEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8messagesIcEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8messagesIwEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8numpunctIcEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8numpunctIwEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9has_facetISt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEbRKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9terminatev@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt10moneypunctIcLb0EEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt10moneypunctIcLb1EEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt10moneypunctIwLb0EEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt10moneypunctIwLb1EEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt11__timepunctIcEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt11__timepunctIwEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt5ctypeIcEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt5ctypeIwEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7codecvtIcc11__mbstate_tEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7codecvtIwc11__mbstate_tEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7collateIcEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7collateIwEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8messagesIcEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8messagesIwEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8numpunctIcEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8numpunctIwEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZSt9use_facetISt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEERKT_RKSt6locale@GLIBCXX_3.4 4.1.1
+ _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKa@GLIBCXX_3.4 4.1.1
+ _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKc@GLIBCXX_3.4 4.1.1
+ _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_PKh@GLIBCXX_3.4 4.1.1
+ _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_a@GLIBCXX_3.4 4.1.1
+ _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_c@GLIBCXX_3.4 4.1.1
+ _ZStlsISt11char_traitsIcEERSt13basic_ostreamIcT_ES5_h@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St12_Setiosflags@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St13_Setprecision@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St14_Resetiosflags@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St5_Setw@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St8_Setbase@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_St8_SetfillIS3_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIcSt11char_traitsIcESaIcEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIdcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIdwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIecSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIewSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIfcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIfwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKS3_@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKc@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_S3_@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_St12_Setiosflags@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_St13_Setprecision@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_St14_Resetiosflags@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_St5_Setw@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_St8_Setbase@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_St8_SetfillIS3_E@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_c@GLIBCXX_3.4 4.1.1
+ _ZStlsIwSt11char_traitsIwESaIwEERSt13basic_ostreamIT_T0_ES7_RKSbIS4_S5_T1_E@GLIBCXX_3.4 4.1.1
+ _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_EPKS3_RKS6_@GLIBCXX_3.4 4.1.1
+ _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ERKS6_S8_@GLIBCXX_3.4 4.1.1
+ _ZStplIcSt11char_traitsIcESaIcEESbIT_T0_T1_ES3_RKS6_@GLIBCXX_3.4 4.1.1
+ _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_EPKS3_RKS6_@GLIBCXX_3.4 4.1.1
+ _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_ERKS6_S8_@GLIBCXX_3.4 4.1.1
+ _ZStplIwSt11char_traitsIwESaIwEESbIT_T0_T1_ES3_RKS6_@GLIBCXX_3.4 4.1.1
+ _ZStrsISt11char_traitsIcEERSt13basic_istreamIcT_ES5_Pa@GLIBCXX_3.4 4.1.1
+ _ZStrsISt11char_traitsIcEERSt13basic_istreamIcT_ES5_Ph@GLIBCXX_3.4 4.1.1
+ _ZStrsISt11char_traitsIcEERSt13basic_istreamIcT_ES5_Ra@GLIBCXX_3.4 4.1.1
+ _ZStrsISt11char_traitsIcEERSt13basic_istreamIcT_ES5_Rh@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_PS3_@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_RS3_@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_St12_Setiosflags@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_St13_Setprecision@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_St14_Resetiosflags@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_St5_Setw@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_St8_Setbase@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcEERSt13basic_istreamIT_T0_ES6_St8_SetfillIS3_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIcSt11char_traitsIcESaIcEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIdcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIdwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIecSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIewSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIfcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIfwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_PS3_@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_RS3_@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St12_Setiosflags@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St13_Setprecision@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St14_Resetiosflags@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St5_Setw@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St8_Setbase@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwEERSt13basic_istreamIT_T0_ES6_St8_SetfillIS3_E@GLIBCXX_3.4 4.1.1
+ _ZStrsIwSt11char_traitsIwESaIwEERSt13basic_istreamIT_T0_ES7_RSbIS4_S5_T1_E@GLIBCXX_3.4 4.1.1
+ _ZTIN10__cxxabiv116__enum_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv117__array_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv117__class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv117__pbase_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv119__pointer_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv120__function_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv120__si_class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv121__vmi_class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv123__fundamental_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN10__cxxabiv129__pointer_to_member_type_infoE@CXXABI_1.3 4.1.1
+ _ZTIN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTIN9__gnu_cxx13stdio_filebufIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTIN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTIN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTINSt6locale5facetE@GLIBCXX_3.4 4.1.1
+ _ZTINSt8ios_base7failureE@GLIBCXX_3.4 4.1.1
+ _ZTIPKa@CXXABI_1.3 4.1.1
+ _ZTIPKb@CXXABI_1.3 4.1.1
+ _ZTIPKc@CXXABI_1.3 4.1.1
+ _ZTIPKd@CXXABI_1.3 4.1.1
+ _ZTIPKe@CXXABI_1.3 4.1.1
+ _ZTIPKf@CXXABI_1.3 4.1.1
+ _ZTIPKh@CXXABI_1.3 4.1.1
+ _ZTIPKi@CXXABI_1.3 4.1.1
+ _ZTIPKj@CXXABI_1.3 4.1.1
+ _ZTIPKl@CXXABI_1.3 4.1.1
+ _ZTIPKm@CXXABI_1.3 4.1.1
+ _ZTIPKs@CXXABI_1.3 4.1.1
+ _ZTIPKt@CXXABI_1.3 4.1.1
+ _ZTIPKv@CXXABI_1.3 4.1.1
+ _ZTIPKw@CXXABI_1.3 4.1.1
+ _ZTIPKx@CXXABI_1.3 4.1.1
+ _ZTIPKy@CXXABI_1.3 4.1.1
+ _ZTIPa@CXXABI_1.3 4.1.1
+ _ZTIPb@CXXABI_1.3 4.1.1
+ _ZTIPc@CXXABI_1.3 4.1.1
+ _ZTIPd@CXXABI_1.3 4.1.1
+ _ZTIPe@CXXABI_1.3 4.1.1
+ _ZTIPf@CXXABI_1.3 4.1.1
+ _ZTIPh@CXXABI_1.3 4.1.1
+ _ZTIPi@CXXABI_1.3 4.1.1
+ _ZTIPj@CXXABI_1.3 4.1.1
+ _ZTIPl@CXXABI_1.3 4.1.1
+ _ZTIPm@CXXABI_1.3 4.1.1
+ _ZTIPs@CXXABI_1.3 4.1.1
+ _ZTIPt@CXXABI_1.3 4.1.1
+ _ZTIPv@CXXABI_1.3 4.1.1
+ _ZTIPw@CXXABI_1.3 4.1.1
+ _ZTIPx@CXXABI_1.3 4.1.1
+ _ZTIPy@CXXABI_1.3 4.1.1
+ _ZTISd@GLIBCXX_3.4 4.1.1
+ _ZTISi@GLIBCXX_3.4 4.1.1
+ _ZTISo@GLIBCXX_3.4 4.1.1
+ _ZTISt10bad_typeid@GLIBCXX_3.4 4.1.1
+ _ZTISt10ctype_base@GLIBCXX_3.4 4.1.1
+ _ZTISt10istrstream@GLIBCXX_3.4 4.1.1
+ _ZTISt10money_base@GLIBCXX_3.4 4.1.1
+ _ZTISt10moneypunctIcLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTISt10moneypunctIcLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTISt10moneypunctIwLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTISt10moneypunctIwLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTISt10ostrstream@GLIBCXX_3.4 4.1.1
+ _ZTISt11__timepunctIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt11__timepunctIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt11logic_error@GLIBCXX_3.4 4.1.1
+ _ZTISt11range_error@GLIBCXX_3.4 4.1.1
+ _ZTISt12codecvt_base@GLIBCXX_3.4 4.1.1
+ _ZTISt12ctype_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt12ctype_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt12domain_error@GLIBCXX_3.4 4.1.1
+ _ZTISt12length_error@GLIBCXX_3.4 4.1.1
+ _ZTISt12out_of_range@GLIBCXX_3.4 4.1.1
+ _ZTISt12strstreambuf@GLIBCXX_3.4 4.1.1
+ _ZTISt13bad_exception@GLIBCXX_3.4 4.1.1
+ _ZTISt13basic_filebufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt13basic_filebufIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt13basic_fstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt13basic_fstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt13basic_istreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt13basic_ostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt13messages_base@GLIBCXX_3.4 4.1.1
+ _ZTISt13runtime_error@GLIBCXX_3.4 4.1.1
+ _ZTISt14basic_ifstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt14basic_ifstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt14basic_iostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt14basic_ofstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt14basic_ofstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt14codecvt_bynameIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTISt14codecvt_bynameIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTISt14collate_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt14collate_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt14overflow_error@GLIBCXX_3.4 4.1.1
+ _ZTISt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15basic_streambufIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15basic_stringbufIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15basic_stringbufIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15messages_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt15messages_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt15numpunct_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt15numpunct_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt15underflow_error@GLIBCXX_3.4 4.1.1
+ _ZTISt16invalid_argument@GLIBCXX_3.4 4.1.1
+ _ZTISt17moneypunct_bynameIcLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTISt17moneypunct_bynameIcLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTISt17moneypunct_bynameIwLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTISt17moneypunct_bynameIwLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTISt18basic_stringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt18basic_stringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt19basic_istringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt19basic_istringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt19basic_ostringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt19basic_ostringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt21__ctype_abstract_baseIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt21__ctype_abstract_baseIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt23__codecvt_abstract_baseIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTISt23__codecvt_abstract_baseIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTISt5ctypeIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt5ctypeIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt7codecvtIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTISt7codecvtIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTISt7collateIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt7collateIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt8bad_cast@GLIBCXX_3.4 4.1.1
+ _ZTISt8ios_base@GLIBCXX_3.4 4.1.1
+ _ZTISt8messagesIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt8messagesIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt8numpunctIcE@GLIBCXX_3.4 4.1.1
+ _ZTISt8numpunctIwE@GLIBCXX_3.4 4.1.1
+ _ZTISt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9bad_alloc@GLIBCXX_3.4 4.1.1
+ _ZTISt9basic_iosIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9basic_iosIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9exception@GLIBCXX_3.4 4.1.1
+ _ZTISt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTISt9strstream@GLIBCXX_3.4 4.1.1
+ _ZTISt9time_base@GLIBCXX_3.4 4.1.1
+ _ZTISt9type_info@GLIBCXX_3.4 4.1.1
+ _ZTIa@CXXABI_1.3 4.1.1
+ _ZTIb@CXXABI_1.3 4.1.1
+ _ZTIc@CXXABI_1.3 4.1.1
+ _ZTId@CXXABI_1.3 4.1.1
+ _ZTIe@CXXABI_1.3 4.1.1
+ _ZTIf@CXXABI_1.3 4.1.1
+ _ZTIh@CXXABI_1.3 4.1.1
+ _ZTIi@CXXABI_1.3 4.1.1
+ _ZTIj@CXXABI_1.3 4.1.1
+ _ZTIl@CXXABI_1.3 4.1.1
+ _ZTIm@CXXABI_1.3 4.1.1
+ _ZTIs@CXXABI_1.3 4.1.1
+ _ZTIt@CXXABI_1.3 4.1.1
+ _ZTIv@CXXABI_1.3 4.1.1
+ _ZTIw@CXXABI_1.3 4.1.1
+ _ZTIx@CXXABI_1.3 4.1.1
+ _ZTIy@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv116__enum_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv117__array_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv117__class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv117__pbase_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv119__pointer_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv120__function_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv120__si_class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv121__vmi_class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv123__fundamental_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN10__cxxabiv129__pointer_to_member_type_infoE@CXXABI_1.3 4.1.1
+ _ZTSN9__gnu_cxx13stdio_filebufIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSN9__gnu_cxx13stdio_filebufIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSNSt6locale5facetE@GLIBCXX_3.4 4.1.1
+ _ZTSNSt8ios_base7failureE@GLIBCXX_3.4 4.1.1
+ _ZTSPKa@CXXABI_1.3 4.1.1
+ _ZTSPKb@CXXABI_1.3 4.1.1
+ _ZTSPKc@CXXABI_1.3 4.1.1
+ _ZTSPKd@CXXABI_1.3 4.1.1
+ _ZTSPKe@CXXABI_1.3 4.1.1
+ _ZTSPKf@CXXABI_1.3 4.1.1
+ _ZTSPKh@CXXABI_1.3 4.1.1
+ _ZTSPKi@CXXABI_1.3 4.1.1
+ _ZTSPKj@CXXABI_1.3 4.1.1
+ _ZTSPKl@CXXABI_1.3 4.1.1
+ _ZTSPKm@CXXABI_1.3 4.1.1
+ _ZTSPKs@CXXABI_1.3 4.1.1
+ _ZTSPKt@CXXABI_1.3 4.1.1
+ _ZTSPKv@CXXABI_1.3 4.1.1
+ _ZTSPKw@CXXABI_1.3 4.1.1
+ _ZTSPKx@CXXABI_1.3 4.1.1
+ _ZTSPKy@CXXABI_1.3 4.1.1
+ _ZTSPa@CXXABI_1.3 4.1.1
+ _ZTSPb@CXXABI_1.3 4.1.1
+ _ZTSPc@CXXABI_1.3 4.1.1
+ _ZTSPd@CXXABI_1.3 4.1.1
+ _ZTSPe@CXXABI_1.3 4.1.1
+ _ZTSPf@CXXABI_1.3 4.1.1
+ _ZTSPh@CXXABI_1.3 4.1.1
+ _ZTSPi@CXXABI_1.3 4.1.1
+ _ZTSPj@CXXABI_1.3 4.1.1
+ _ZTSPl@CXXABI_1.3 4.1.1
+ _ZTSPm@CXXABI_1.3 4.1.1
+ _ZTSPs@CXXABI_1.3 4.1.1
+ _ZTSPt@CXXABI_1.3 4.1.1
+ _ZTSPv@CXXABI_1.3 4.1.1
+ _ZTSPw@CXXABI_1.3 4.1.1
+ _ZTSPx@CXXABI_1.3 4.1.1
+ _ZTSPy@CXXABI_1.3 4.1.1
+ _ZTSSd@GLIBCXX_3.4 4.1.1
+ _ZTSSi@GLIBCXX_3.4 4.1.1
+ _ZTSSo@GLIBCXX_3.4 4.1.1
+ _ZTSSt10bad_typeid@GLIBCXX_3.4 4.1.1
+ _ZTSSt10ctype_base@GLIBCXX_3.4 4.1.1
+ _ZTSSt10istrstream@GLIBCXX_3.4 4.1.1
+ _ZTSSt10money_base@GLIBCXX_3.4 4.1.1
+ _ZTSSt10moneypunctIcLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt10moneypunctIcLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt10moneypunctIwLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt10moneypunctIwLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt10ostrstream@GLIBCXX_3.4 4.1.1
+ _ZTSSt11__timepunctIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt11__timepunctIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt11logic_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt11range_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt12codecvt_base@GLIBCXX_3.4 4.1.1
+ _ZTSSt12ctype_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt12ctype_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt12domain_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt12length_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt12out_of_range@GLIBCXX_3.4 4.1.1
+ _ZTSSt12strstreambuf@GLIBCXX_3.4 4.1.1
+ _ZTSSt13bad_exception@GLIBCXX_3.4 4.1.1
+ _ZTSSt13basic_filebufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt13basic_filebufIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt13basic_fstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt13basic_fstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt13basic_istreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt13basic_ostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt13messages_base@GLIBCXX_3.4 4.1.1
+ _ZTSSt13runtime_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt14basic_ifstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14basic_ifstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14basic_iostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14basic_ofstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14basic_ofstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14codecvt_bynameIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14codecvt_bynameIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14collate_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14collate_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt14overflow_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15basic_streambufIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15basic_stringbufIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15basic_stringbufIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15messages_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15messages_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15numpunct_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15numpunct_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt15underflow_error@GLIBCXX_3.4 4.1.1
+ _ZTSSt16invalid_argument@GLIBCXX_3.4 4.1.1
+ _ZTSSt17moneypunct_bynameIcLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt17moneypunct_bynameIcLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt17moneypunct_bynameIwLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt17moneypunct_bynameIwLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTSSt18basic_stringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt18basic_stringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt19basic_istringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt19basic_istringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt19basic_ostringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt21__ctype_abstract_baseIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt21__ctype_abstract_baseIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt23__codecvt_abstract_baseIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTSSt23__codecvt_abstract_baseIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTSSt5ctypeIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt5ctypeIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7codecvtIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7codecvtIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7collateIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7collateIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8bad_cast@GLIBCXX_3.4 4.1.1
+ _ZTSSt8ios_base@GLIBCXX_3.4 4.1.1
+ _ZTSSt8messagesIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8messagesIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8numpunctIcE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8numpunctIwE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9bad_alloc@GLIBCXX_3.4 4.1.1
+ _ZTSSt9basic_iosIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9basic_iosIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9exception@GLIBCXX_3.4 4.1.1
+ _ZTSSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTSSt9strstream@GLIBCXX_3.4 4.1.1
+ _ZTSSt9time_base@GLIBCXX_3.4 4.1.1
+ _ZTSSt9type_info@GLIBCXX_3.4 4.1.1
+ _ZTSa@CXXABI_1.3 4.1.1
+ _ZTSb@CXXABI_1.3 4.1.1
+ _ZTSc@CXXABI_1.3 4.1.1
+ _ZTSd@CXXABI_1.3 4.1.1
+ _ZTSe@CXXABI_1.3 4.1.1
+ _ZTSf@CXXABI_1.3 4.1.1
+ _ZTSh@CXXABI_1.3 4.1.1
+ _ZTSi@CXXABI_1.3 4.1.1
+ _ZTSj@CXXABI_1.3 4.1.1
+ _ZTSl@CXXABI_1.3 4.1.1
+ _ZTSm@CXXABI_1.3 4.1.1
+ _ZTSs@CXXABI_1.3 4.1.1
+ _ZTSt@CXXABI_1.3 4.1.1
+ _ZTSv@CXXABI_1.3 4.1.1
+ _ZTSw@CXXABI_1.3 4.1.1
+ _ZTSx@CXXABI_1.3 4.1.1
+ _ZTSy@CXXABI_1.3 4.1.1
+ _ZTTSd@GLIBCXX_3.4 4.1.1
+ _ZTTSi@GLIBCXX_3.4 4.1.1
+ _ZTTSo@GLIBCXX_3.4 4.1.1
+ _ZTTSt10istrstream@GLIBCXX_3.4 4.1.1
+ _ZTTSt10ostrstream@GLIBCXX_3.4 4.1.1
+ _ZTTSt13basic_fstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt13basic_fstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt13basic_istreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt13basic_ostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt14basic_ifstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt14basic_ifstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt14basic_iostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt14basic_ofstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt14basic_ofstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt18basic_stringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt18basic_stringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt19basic_istringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt19basic_istringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt19basic_ostringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTTSt9strstream@GLIBCXX_3.4 4.1.1
+ _ZTVN10__cxxabiv116__enum_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv117__array_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv117__class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv117__pbase_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv119__pointer_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv120__function_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv120__si_class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv121__vmi_class_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv123__fundamental_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN10__cxxabiv129__pointer_to_member_type_infoE@CXXABI_1.3 4.1.1
+ _ZTVN9__gnu_cxx18stdio_sync_filebufIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVN9__gnu_cxx18stdio_sync_filebufIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVNSt6locale5facetE@GLIBCXX_3.4 4.1.1
+ _ZTVNSt8ios_base7failureE@GLIBCXX_3.4 4.1.1
+ _ZTVSd@GLIBCXX_3.4 4.1.1
+ _ZTVSi@GLIBCXX_3.4 4.1.1
+ _ZTVSo@GLIBCXX_3.4 4.1.1
+ _ZTVSt10bad_typeid@GLIBCXX_3.4 4.1.1
+ _ZTVSt10istrstream@GLIBCXX_3.4 4.1.1
+ _ZTVSt10moneypunctIcLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt10moneypunctIcLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt10moneypunctIwLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt10moneypunctIwLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt10ostrstream@GLIBCXX_3.4 4.1.1
+ _ZTVSt11__timepunctIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt11__timepunctIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt11logic_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt11range_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt12ctype_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt12ctype_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt12domain_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt12length_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt12out_of_range@GLIBCXX_3.4 4.1.1
+ _ZTVSt12strstreambuf@GLIBCXX_3.4 4.1.1
+ _ZTVSt13bad_exception@GLIBCXX_3.4 4.1.1
+ _ZTVSt13basic_filebufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt13basic_filebufIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt13basic_fstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt13basic_fstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt13basic_istreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt13basic_ostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt13runtime_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt14basic_ifstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14basic_ifstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14basic_iostreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14basic_ofstreamIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14basic_ofstreamIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14codecvt_bynameIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14codecvt_bynameIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14collate_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14collate_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt14overflow_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt15basic_streambufIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15basic_streambufIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15basic_stringbufIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15basic_stringbufIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15messages_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15messages_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15numpunct_bynameIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15numpunct_bynameIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt15underflow_error@GLIBCXX_3.4 4.1.1
+ _ZTVSt16invalid_argument@GLIBCXX_3.4 4.1.1
+ _ZTVSt17moneypunct_bynameIcLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt17moneypunct_bynameIcLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt17moneypunct_bynameIwLb0EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt17moneypunct_bynameIwLb1EE@GLIBCXX_3.4 4.1.1
+ _ZTVSt18basic_stringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt18basic_stringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt19basic_istringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt19basic_istringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt19basic_ostringstreamIcSt11char_traitsIcESaIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt19basic_ostringstreamIwSt11char_traitsIwESaIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt21__ctype_abstract_baseIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt21__ctype_abstract_baseIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt23__codecvt_abstract_baseIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTVSt23__codecvt_abstract_baseIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTVSt5ctypeIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt5ctypeIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7codecvtIcc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7codecvtIwc11__mbstate_tE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7collateIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7collateIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8bad_cast@GLIBCXX_3.4 4.1.1
+ _ZTVSt8ios_base@GLIBCXX_3.4 4.1.1
+ _ZTVSt8messagesIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8messagesIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8numpunctIcE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8numpunctIwE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9bad_alloc@GLIBCXX_3.4 4.1.1
+ _ZTVSt9basic_iosIcSt11char_traitsIcEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9basic_iosIwSt11char_traitsIwEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9exception@GLIBCXX_3.4 4.1.1
+ _ZTVSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE@GLIBCXX_3.4 4.1.1
+ _ZTVSt9strstream@GLIBCXX_3.4 4.1.1
+ _ZTVSt9type_info@GLIBCXX_3.4 4.1.1
+ _ZdaPv@GLIBCXX_3.4 4.1.1
+ _ZdaPvRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ _ZdlPv@GLIBCXX_3.4 4.1.1
+ _ZdlPvRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ __cxa_allocate_exception@CXXABI_1.3 4.1.1
+ __cxa_bad_cast@CXXABI_1.3 4.1.1
+ __cxa_bad_typeid@CXXABI_1.3 4.1.1
+ __cxa_begin_catch@CXXABI_1.3 4.1.1
+ __cxa_call_unexpected@CXXABI_1.3 4.1.1
+ __cxa_current_exception_type@CXXABI_1.3 4.1.1
+ __cxa_demangle@CXXABI_1.3 4.1.1
+ __cxa_end_catch@CXXABI_1.3 4.1.1
+ __cxa_free_exception@CXXABI_1.3 4.1.1
+ __cxa_get_exception_ptr@CXXABI_1.3.1 4.1.1
+ __cxa_get_globals@CXXABI_1.3 4.1.1
+ __cxa_get_globals_fast@CXXABI_1.3 4.1.1
+ __cxa_guard_abort@CXXABI_1.3 4.1.1
+ __cxa_guard_acquire@CXXABI_1.3 4.1.1
+ __cxa_guard_release@CXXABI_1.3 4.1.1
+ __cxa_pure_virtual@CXXABI_1.3 4.1.1
+ __cxa_rethrow@CXXABI_1.3 4.1.1
+ __cxa_throw@CXXABI_1.3 4.1.1
+ __cxa_vec_cctor@CXXABI_1.3 4.1.1
+ __cxa_vec_cleanup@CXXABI_1.3 4.1.1
+ __cxa_vec_ctor@CXXABI_1.3 4.1.1
+ __cxa_vec_delete2@CXXABI_1.3 4.1.1
+ __cxa_vec_delete3@CXXABI_1.3 4.1.1
+ __cxa_vec_delete@CXXABI_1.3 4.1.1
+ __cxa_vec_dtor@CXXABI_1.3 4.1.1
+ __cxa_vec_new2@CXXABI_1.3 4.1.1
+ __cxa_vec_new3@CXXABI_1.3 4.1.1
+ __cxa_vec_new@CXXABI_1.3 4.1.1
+ __dynamic_cast@CXXABI_1.3 4.1.1
--- gcj-4.2-4.2.4.orig/debian/fastjar.postinst
+++ gcj-4.2-4.2.4/debian/fastjar.postinst
@@ -0,0 +1,14 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/fastjar.info.gz ]; then
+  install-info --quiet --section "Development" "Development" \
+	/usr/share/info/fastjar.info.gz
+else
+  # GFDL invariant free
+  true
+fi
+
+update-alternatives --quiet --install /usr/bin/jar jar /usr/bin/fastjar 40 \
+  --slave /usr/share/man/man1/jar.1.gz jar.1.gz /usr/share/man/man1/fastjar.1.gz
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gpc-BV-doc.prerm
+++ gcj-4.2-4.2.4/debian/gpc-BV-doc.prerm
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/gpc-@BV@.info.gz ]; then
+  install-info --quiet --remove gpc-@BV@
+else
+  # GFDL invariant free
+  true
+fi
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/lib64gcc1.symbols.powerpc
+++ gcj-4.2-4.2.4/debian/lib64gcc1.symbols.powerpc
@@ -0,0 +1,154 @@
+libgcc_s.so.1 lib64gcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3.4@GCC_3.3.4 1:4.2.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __adddf3@GCC_3.0 1:4.2.1
+ __addsf3@GCC_3.0 1:4.2.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdf3@GCC_3.0 1:4.2.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divsf3@GCC_3.0 1:4.2.1
+ __divtc3@GCC_4.0.0 1:4.1.1
+ __divti3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __eqdf2@GCC_3.0 1:4.2.1
+ __eqsf2@GCC_3.0 1:4.2.1
+ __extendsfdf2@GCC_3.0 1:4.2.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixdfsi@GCC_3.0 1:4.2.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixsfsi@GCC_3.0 1:4.2.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixtfdi@GCC_3.0 1:4.1.1
+ __fixtfti@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunstfdi@GCC_3.0 1:4.1.1
+ __fixunstfti@GCC_3.0 1:4.1.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatditf@GCC_3.0 1:4.1.1
+ __floatsidf@GCC_3.0 1:4.2.1
+ __floatsisf@GCC_3.0 1:4.2.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattitf@GCC_3.0 1:4.1.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatunditf@GCC_4.2.0 1:4.2.1
+ __floatunsidf@GCC_4.2.0 1:4.2.1
+ __floatunsisf@GCC_4.2.0 1:4.2.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntitf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __gcc_qadd@GCC_3.4.4 1:4.1.1
+ __gcc_qdiv@GCC_3.4.4 1:4.1.1
+ __gcc_qmul@GCC_3.4.4 1:4.1.1
+ __gcc_qsub@GCC_3.4.4 1:4.1.1
+ __gedf2@GCC_3.0 1:4.2.1
+ __gesf2@GCC_3.0 1:4.2.1
+ __gtdf2@GCC_3.0 1:4.2.1
+ __gtsf2@GCC_3.0 1:4.2.1
+ __ledf2@GCC_3.0 1:4.2.1
+ __lesf2@GCC_3.0 1:4.2.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __ltdf2@GCC_3.0 1:4.2.1
+ __ltsf2@GCC_3.0 1:4.2.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldf3@GCC_3.0 1:4.2.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __mulsf3@GCC_3.0 1:4.2.1
+ __multc3@GCC_4.0.0 1:4.1.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __nedf2@GCC_3.0 1:4.2.1
+ __negdf2@GCC_3.0 1:4.2.1
+ __negsf2@GCC_3.0 1:4.2.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __nesf2@GCC_3.0 1:4.2.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subdf3@GCC_3.0 1:4.2.1
+ __subsf3@GCC_3.0 1:4.2.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __truncdfsf2@GCC_3.0 1:4.2.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
+ __unorddf2@GCC_3.3.4 1:4.2.1
+ __unordsf2@GCC_3.3.4 1:4.2.1
+ _xlqadd@GCC_3.4 1:4.1.1
+ _xlqdiv@GCC_3.4 1:4.1.1
+ _xlqmul@GCC_3.4 1:4.1.1
+ _xlqsub@GCC_3.4 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.glibcxxmath
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.glibcxxmath
@@ -0,0 +1,22 @@
+ acosl@GLIBCXX_3.4.3 4.1.1
+ asinl@GLIBCXX_3.4.3 4.1.1
+ atan2l@GLIBCXX_3.4 4.1.1
+ atanl@GLIBCXX_3.4.3 4.1.1
+ ceill@GLIBCXX_3.4.3 4.1.1
+ coshl@GLIBCXX_3.4 4.1.1
+ cosl@GLIBCXX_3.4 4.1.1
+ expl@GLIBCXX_3.4 4.1.1
+ floorl@GLIBCXX_3.4.3 4.1.1
+ fmodl@GLIBCXX_3.4.3 4.1.1
+ frexpl@GLIBCXX_3.4.3 4.1.1
+ hypotl@GLIBCXX_3.4 4.1.1
+ ldexpl@GLIBCXX_3.4.3 4.1.1
+ log10l@GLIBCXX_3.4 4.1.1
+ logl@GLIBCXX_3.4 4.1.1
+ modfl@GLIBCXX_3.4.3 4.1.1
+ powl@GLIBCXX_3.4 4.1.1
+ sinhl@GLIBCXX_3.4 4.1.1
+ sinl@GLIBCXX_3.4 4.1.1
+ sqrtl@GLIBCXX_3.4 4.1.1
+ tanhl@GLIBCXX_3.4 4.1.1
+ tanl@GLIBCXX_3.4 4.1.1
--- gcj-4.2-4.2.4.orig/debian/libobjc2.symbols
+++ gcj-4.2-4.2.4/debian/libobjc2.symbols
@@ -0,0 +1,4 @@
+libobjc.so.2 libobjc2 #MINVER#
+#include "libobjc2.symbols.common"
+libobjc_gc.so.2 libobjc2 #MINVER#
+#include "libobjc2.symbols.common"
--- gcj-4.2-4.2.4.orig/debian/cpp-BV-doc.doc-base.cpp
+++ gcj-4.2-4.2.4/debian/cpp-BV-doc.doc-base.cpp
@@ -0,0 +1,16 @@
+Document: cpp-@BV@
+Title: The GNU C preprocessor
+Author: Various
+Abstract: The C preprocessor is a "macro processor" that is used automatically
+ by the C compiler to transform your program before actual compilation.
+ It is called a macro processor because it allows you to define "macros",
+ which are brief abbreviations for longer constructs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/cpp.html
+Files: /usr/share/doc/gcc-@BV@-base/cpp.html
+
+Format: info
+Index: /usr/share/info/cpp-@BV@.info.gz
+Files: /usr/share/info/cpp-@BV@*
--- gcj-4.2-4.2.4.orig/debian/libstdc++CXX-BV-doc.doc-base
+++ gcj-4.2-4.2.4/debian/libstdc++CXX-BV-doc.doc-base
@@ -0,0 +1,13 @@
+Document: libstdc++@CXX@-@BV@-doc
+Title: The GNU Standard C++ Library v3 (gcc-@BV@)
+Author: Various
+Abstract: This package contains documentation files for the GNU stdc++ library.
+ One set is the distribution documentation, the other set is the
+ source documentation including a namespace list, class hierarchy,
+ alphabetical list, compound list, file list, namespace members,
+ compound members and file members.
+Section: Programming/C++
+
+Format: html
+Index: /usr/share/doc/libstdc++@CXX@-@BV@-doc/libstdc++/html_user/index.html
+Files: /usr/share/doc/libstdc++@CXX@-@BV@-doc/libstdc++/html*/*
--- gcj-4.2-4.2.4.orig/debian/TODO
+++ gcj-4.2-4.2.4/debian/TODO
@@ -0,0 +1,44 @@
+(It is recommended to edit this file with emacs' todoo mode)
+Last updated: 2007-09-22
+
+* General
+
+- Clean up the sprawl of debian/rules.  I'm sure there are neater
+  ways to do some of it; perhaps split it up into some more files?
+  Partly done.
+
+- Make debian/rules control build the control file without unpacking
+  the sources or applying patches.  Currently, it unpacks the sources,
+  patches them, creates the control file, and a subsequent
+  dpkg-buildpackage deletes the sources, re-unpacks them, and
+  re-patches them.
+
+- Reorganise debian/rules.defs to decide which packages to build in a
+  more straightforward and less error-prone fashion: (1) start with
+  all languages; override the list of languages depending on the name
+  of the source package (gcc-4.2, gnat-4.2, gdc-4.2, gcj-4.2).  (2)
+  filter the list of languages depending on the target platform; (3)
+  depending on the languages to build, decide on which libraries to
+  build.
+
+o [Ludovic Brenta] Ada
+
+- Done: Link the gnat tools with libgnat.so, instead of statically.
+
+- Done: Build libgnatvsn containing parts of the compiler (version
+  string, etc.) under GNAT-Modified GPL.  Link the gnat tools with it.
+
+- Done: Build libgnatprj containing parts of the compiler (the project
+  manager) under pure GPL.  Link the gnat tools with it.
+
+- Done: Build both the zero-cost and setjump/longjump exceptions
+  versions of libgnat.  In particular, gnat-glade (distributed systems)
+  works best with SJLJ.
+
+- Add support for building cross-compilers.
+
+- Add support for multilib (not yet supported upstream).
+
+* Fortran
+
+- gfortran man page generation
--- gcj-4.2-4.2.4.orig/debian/dummy.texi
+++ gcj-4.2-4.2.4/debian/dummy.texi
@@ -0,0 +1 @@
+@c This file is empty because the original one has a non DFSG free license (GFDL)
--- gcj-4.2-4.2.4.orig/debian/gpc-BV-doc.postinst
+++ gcj-4.2-4.2.4/debian/gpc-BV-doc.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/gpc-@BV@.info.gz ]; then
+  install-info --quiet --section "Development" "Development" \
+	--description="The GNU Pascal compiler." \
+	/usr/share/info/gpc-@BV@.info
+else
+  # GFDL invariant free
+  true
+fi
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/libgomp1.symbols
+++ gcj-4.2-4.2.4/debian/libgomp1.symbols
@@ -0,0 +1,2 @@
+libgomp.so.1 libgomp1 #MINVER#
+#include "libgomp1.symbols.common"
--- gcj-4.2-4.2.4.orig/debian/gcj-BV.doc-base
+++ gcj-4.2-4.2.4/debian/gcj-BV.doc-base
@@ -0,0 +1,15 @@
+Document: gcj-@BV@
+Title: The GNU Ahead-of-time Compiler for the Java Language
+Author: Various
+Abstract: This manual describes how to use gcj, the GNU compiler for
+ the Java programming language.  gcj can generate both .class files and
+ object files, and it can read both Java source code and .class files.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/java/gcj.html
+Files: /usr/share/doc/gcc-@BV@-base/java/gcj.html
+
+Format: info
+Index: /usr/share/info/gcj-@BV@.info.gz
+Files: /usr/share/info/gcj-@BV@*
--- gcj-4.2-4.2.4.orig/debian/gcc-cross.prerm
+++ gcj-4.2-4.2.4/debian/gcc-cross.prerm
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+update-alternatives --quiet --remove cross-gcc /usr/bin/cross-gcc-ver
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/FAQ.gcj
+++ gcj-4.2-4.2.4/debian/FAQ.gcj
@@ -0,0 +1,494 @@
+The GCJ FAQ
+===========
+
+      The latest version of this document is always available at
+      http://gcc.gnu.org/java/faq.html.
+
+        General Questions
+
+            What license is used for libgcj?
+            How can I report a bug in libgcj?
+            How can I contribute to libgcj
+            Is libgcj part of GCC?
+            Will gcj and libgcj work on my machine?
+            How can I debug my Java program?
+            Can I interface byte-compiled and native java code?
+
+
+        Java Feature Support
+
+            What Java API's are supported? How complete is
+              the support?
+            Does GCJ support using straight C native methods
+              ala JNI?
+            Why does GCJ use CNI?
+            What is the state of AWT support?
+            How about support for Swing ?
+            What support is there for RMI ?
+            Can I use any code from other OpenSource projects
+              to supplement libgcj's current features ?
+            What features of the Java language are/arn't supported
+
+
+        Build Issues
+
+            I need something more recent than the last release; how
+                  should I build it?
+            Linker bug on Solaris
+            Can I configure/build in the source tree?
+            My libgcj build fails with "invalid use of undefined type
+                  struct sigcontext_struct"
+
+
+        Gcj Compile/Link Questions
+
+            Why do I get undefined reference to `main' errors?
+            Can GCJ only handle source code?
+            "gcj -C" Doesn't seem to work like javac/jikes. Whats going on?
+            Where does GCJ look for files?
+            How does gcj resolve wether to compile .class or .java files?
+            I'm getting link errors!
+            I'm getting 'undefined symbol: __dso_handle'
+
+
+        Runtime Questions
+
+            My program is dumping core! What's going on?
+            When I run the debugger I get a SEGV in the GC! What's going on?
+            I have just compiled and benchmarked my Java application
+            and it seems to be running slower than than XXX JIT JVM. Is there
+            anything I can do to make it go faster?
+            Can I profile Garbage Collection?
+            How do I increase the runtime's initial and maximum heap sizes?
+            How can I profile my application?
+            My program seems to hang and doesn't produce any output
+
+
+        Programming Issues
+
+            Are there any examples of how to use CNI?
+            Is it possible to invoke GCJ compiled Java code from a
+            C++ application?
+
+General Questions
+=================
+
+      1.1 What license is used for libgcj?
+
+          libgcj is distributed under the GPL, with the 'libgcc exception'.
+          This means that linking with libgcj does not by itself cause
+          your program to fall under the GPL.  See LIBGCJ_LICENSE in
+          the source tree for more details.
+
+      1.2 How can I report a bug in libgcj?
+
+          libgcj has a corresponding Gnats bug database which you can
+          browse. You can also submit new bug reports from the Gnats
+          page.
+
+      1.3 How can I contribute to libgcj?
+
+          You can send simple bug fixes in as patches. Please follow
+          the GCC guidelines for submitting patches. For more complex
+          changes, you must sign copyright over to the Free Software
+          Foundation. See the contribution page for details.
+
+      1.4 Is libgcj part of GCC?
+
+          Yes, libgcj is now part of GCC. It can be downloaded,
+          configured and built as one single tree.
+
+      1.5 Will gcj and libgcj work on my machine?
+
+          Gcj and libgcj are known to work more or less with IA-32 and
+          Sparc Solaris, Tru64 Unix, as well as IA-32, IA-64, Alpha,
+          and PowerPC Linux. They might work on other
+          systems. Generally speaking, porting to a new system should
+          not be hard. This would be a good way to volunteer.
+
+      1.6 How can I debug my Java program?
+
+          gdb 5.0 includes support for debugging gcj-compiled Java
+          programs. For more information please read Java Debugging
+          with gdb.
+
+      1.7 Can I interface byte-compiled and native java code
+
+          libgcj has a bytecode interpreter that allows you to mix
+          .class files with compiled code. It works pretty
+          transparently: if a compiled version of a class is not found
+          in the application binary or linked shared libraries, the
+          class loader will search for a bytecode version in your
+          classpath, much like a VM would. Be sure to build libgcj
+          with the --enable-interpreter option to enable this
+          functionality.
+
+          The program "gij" provides a front end to the interpreter
+          that behaves much like a traditional virtual machine. You
+          can even use "gij" to run a shared library which is compiled
+          from java code and contains a main method:
+
+          $ gcj -shared -o lib-HelloWorld.so HelloWorld.java
+          $ gij HelloWorld
+
+          This works because gij uses Class.forName, which knows how
+          to load shared objects.
+
+Java Feature Support
+====================
+
+      2.1 What Java API's are supported? How complete is
+        the support?
+
+          Matt Welsh writes:
+
+            Just look in the 'libjava' directory of libgcj and see
+            what classes are there. Most GUI stuff isn't there yet,
+            that's true, but many of the other classes are easy to add
+            if they don't yet exist.
+
+            I think it's important to stress that there is a big
+            difference between Java and the many libraries which Java
+            supports. Unfortunately, Sun's promise of "write once, run
+            everywhere" assumes much more than a JVM: you also need
+            the full set of JDK libraries. Considering that new Java
+            APIs come out every week, it's going to be impossible to
+            track everything.
+
+            To make things worse, you can't simply run Sun's JDK
+            classes on any old JVM -- they assume that a bunch of
+            native methods are also defined. Since this native method
+            requirement isn't defined by the JDK specs, you're
+            effectively constrained to using Sun's JVMs if you want to
+            use Sun's JDK libraries. Oh yes -- you could also
+            reimplement all of those native methods yourself, and make
+            sure they behave exactly as Sun's do. Note that they're
+            undocumented!
+
+      2.2 Does GCJ support using straight C native methods
+         ala JNI?
+
+          Yes. libgcj now has experimental support for JNI, in
+          addition to its native Compiled Native Interface (CNI). gcjh
+          will generate JNI stubs and headers using the "-jni"
+          option. However, we do prefer CNI: it is more efficient,
+          easier to write, and (at least potentially) easier to debug.
+
+      2.3 Why does GCJ use CNI?
+
+          Per Bothner explains:
+
+            We use CNI because we think it is a better solution,
+            especially for a Java implementation that is based on the
+            idea that Java is just another programming language that
+            can be implemented using standard compilation
+            techniques. Given that, and the idea that languages
+            implemented using Gcc should be compatible where it makes
+            sense, it follows that the Java calling convention should
+            be as similar as practical to that used for other
+            languages, especially C++, since we can think of Java as a
+            subset of C++. CNI is just a set of helper functions and
+            conventions built on the idea that C++ and Java have the
+            *same* calling convention and object layout; they are
+            binary compatible. (This is a simplification, but close
+            enough.)
+
+      2.4 What is the state of AWT support?
+
+          Work is in progress to implement AWT and Java2D. We intend
+          to support both GTK and xlib peers written using CNI. Some
+          components are already working atop the xlib peers.
+
+      2.5 How about support for Swing?
+
+          Once AWT support is working then Swing support can be
+          considered. There is at least one free-software partial
+          implementations of Swing that may be usable.
+
+      2.6 What support is there for RMI?
+
+         RMI code exists on the CVS trunk (aka gcc 3.1), but it has
+         not been heavily tested.  This code was donated by
+         Transvirtual Technologies.
+
+      2.7 Can I use any code from other OpenSource
+          projects to supplement libgcj's current features?
+
+           Certainly. However, in many cases, if you wanted to
+           contribute the code back into the official libgcj
+           distribution, we would require that the original author(s)
+           assign copyright to the Free Software Foundation.  As of
+           March 6, 2000, libgcj has been relicenced, and copyright
+           has been assigned to the FSF. This allows us to share and
+           merge much of the libgcj codebase with the Classpath
+           project.  Our eventual goal is for Classpath to be an
+           upstream source provider for libgcj, however it will be
+           some time before this becomes reality: libgcj and Classpath
+           have different implementations of many core java
+           classes. In order to merge them, we need to select the best
+           (most efficient, cleanest) implementation of each
+           method/class/package, resolve any conflicts created by the
+           merge, and test the final result.  Needless to say, this is
+           a lot of work. If you can help out, please let us know!
+
+      2.8 What features of the Java language are/aren't supported.
+
+          GCJ supports all Java language constructs as per the Java
+          language Specification.  Recent GCJ snapshots have added
+          support for most JDK1.1 (and beyond) language features,
+          including inner classes.
+
+Build Issues
+============
+
+      3.1 I need something more recent than the last release.
+          How should I build it?
+
+          Please read here: http://gcc.gnu.org/java/build-snapshot.html
+
+      3.2 Linker bug on Solaris
+
+          There is a known problem with the native Solaris linker when
+          using gcc/gcj. A good indication you've run into this
+          problem is if you get an error that looks like the following
+          when building libgcj:
+
+ld: warning: option -o appears more than once, first setting taken
+ld: fatal: file libfoo.so: cannot open file: No such file or directory
+ld: fatal: File processing errors. No output written to .libs/libfoo.so
+collect2: ld returned 1 exit status
+
+          A known workaround for this and other reported link problems
+          on the various releases of Solaris is to build gcc/gcj with
+          the latest GNU binutils instead of the native Solaris
+          ld. The most straightforward way to do this is to build and
+          install binutils, and then reference it in the configure for
+          gcc via --with-ld=/path_to_binutils_install/bin/ld
+          (--with-as may also be similarly specified but is not
+          believed to be required).
+
+          Please note, gcc/gcj must be built using GNU ld prior to
+          doing a clean build of libgcj!
+
+      3.3 Can I configure/build in the source tree?
+
+          No.  You cannot configure/build in the source tree.  If you
+          try, you'll see something like:
+
+              $ ./configure [...]
+              Configuring for a i686-pc-linux-gnu host.
+              *** Cannot currently configure in source tree.
+
+          Instead, you must build in another directory.  E.g.:
+
+              $ mkdir build
+              $ cd build
+              $ ../configure [...]
+
+      3.4 My libgcj build fails with "invalid use of undefined type
+          struct sigcontext_struct"
+
+          If you're using Linux, this probably means you need to
+          upgrade to a newwer, glibc (libc6) based Linux
+          distribution. libgcj does not support the older linux libc5.
+          It might be possible to get a working libgcj by changing
+          occurances of "sigcontext_struct" to "sigcontext", however
+          this has not been tested.  Even if it works, it is likely
+          that there are other issues with older libc versions that
+          would prevent libgcj from working correctly (threads bugs,
+          for example).
+
+Gcj Compile/Link Questions
+==========================
+
+      4.1 Why do I get undefined reference to `main' errors?
+
+          When using gcj to link a Java program, you must use the --main=
+          option to indicate the class that has the desired main method.
+          This is because every Java class can have a main method, thus
+          you have to tell gcj which one to use.
+
+      4.2 Can GCJ only handle source code?
+
+          GCJ will compile both source (.java) and bytecode (.class)
+          files. However, in many cases the native code produced by
+          compiling from source is better optimized than that compiled
+          from .class files.
+
+          Per Bothner explains:
+
+            The reason is that when you compile to bytecode you lose a
+            lot of information about program structure etc. That
+            information helps in generating better code. We can in
+            theory recover the information we need by analysing the
+            structure of the bytecodes, but it is sometimes difficult
+            - or sometimes it just that no-one has gotten around to
+            it.  Specific examples include loop structure (gcc
+            generates better code with explicit loops rather than with
+            the equivalent spaghetti code), array initializers, and
+            the JDK 1.1 `CLASS.class' syntax, all of which are
+            represented using more low-level constructs in bytecode.
+
+      4.3 "gcj -C" Doesn't seem to work like javac/jikes.  Whats going on?
+
+          The behavior of "gcj -C" is not at all like javac or jikes,
+          which will compile (not just scan) all .java's which are out
+          of date with regard to their .class's.
+
+      4.4 Where does GCJ look for files?
+
+          GCJ looks for classes to compile based on the CLASSPATH
+          environment variable. libgcj.jar and other files are found
+          relative to the path of the compiler itself, so it is safe
+          to move the entire compiler tree to a different path, and
+          there is no need to include libgcj.jar in your CLASSPATH.
+
+      4.5 How does gcj resolve whether to compile .class or .java files?
+
+          GCJ compiles only the files presented to it on the command
+          line. However, it also needs to scan other files in order to
+          determine the layout of other classes and check for errors
+          in your code.  For these dependencies, GCJ will favour
+          .class files if they are available because it is faster to
+          parse a class file than source code.
+
+      4.6 I'm getting link errors
+
+          If you get errors at link time that refer to 'undefined
+          reference to `java::lang::Object type_info function', verify
+          that you have compiled any CNI C++ files with the -fno-rtti
+          option. This is only required for versions of GCJ earlier
+          than 3.0.
+
+      4.7 I'm getting 'undefined symbol: __dso_handle'
+
+          Some versions of the GNU linker have broken support for the
+          '.hidden' directive, which results in problems with shared
+          libraries built with recent versions of gcc.
+
+          There are three solutions:
+
+            - downgrade to binutils that don't support .hidden at all,
+            - upgrade to a recent binutils, or
+            - undef the HAVE_GAS_HIDDEN definition in gcc's auto-host.h
+              (and rebuild gcc).
+
+Runtime Questions
+=================
+
+      5.1 My program is dumping core! What's going on?
+
+          It could be any number of things. One common mistake is
+          having your CLASSPATH environment variable pointing at a
+          third party's java.lang and friends. Either unset CLASSPATH,
+          or make sure it does not refer to core libraries other than
+          those found in libgcj.jar.Note that newwer versions of GCJ
+          will reject the core class library if it wasn't generated by
+          GCJ itself.
+
+      5.2 When I run the debugger I get a SEGV in the GC! What's going on?
+
+          This is "normal"; the Garbage Collector (GC) uses it to
+          determine stack boundaries. It is ordinarily caught and
+          handled by the GC -- you can see this in the debugger by
+          using cont to continue to the "real" segv.
+
+      5.3 I have just compiled and benchmarked my Java application
+          and it seems to be running slower than than XXX JIT JVM. Is there
+          anything I can do to make it go faster?
+
+        A few things:
+
+          - If your programs allocate many small, short lived objects,
+            the heap could be filling and triggering GC too
+            regularly. Try increasing the initial and maximum heap sizes
+            as per 5.5 How do I increase the runtime's initial and
+            maximum heap size?
+          - RE - array accesses. We have sub-optimal runtime checking
+            code, and the compiler is still not so smart about
+            automatically removing array checks. If your code is ready,
+            and it doesn't rely on them, try compiling with
+            --no-bounds-check.
+          - Try static linking.  On many platforms, dynamic (PIC)
+            function calls are more expensive than static ones. In
+            particular, the interaction with boehm-gc seems to incur
+            extra overhead when shared libraries are used.
+          - If your Java application doesn't need threads, try
+            building libgcj using --enable-threads=none. Portions of the
+            libgcj runtime are still more efficient when
+            single-threaded.
+
+       5.4 Can I profile Garbage Collection?
+
+          It is possible to turn on verbose GC output by supressing
+          the -DSILENT flag during build. One way to do this is to
+          comment out the line with #define SILENT 1 from
+          boehm-gc/configure before configuring libgcj.  The GC will
+          print collection statistics to stdout. (Rebuilding boehm-gc
+          alone without this flag doesn't seem to work.)
+
+      5.5 How do I increase the runtime's initial and maximum heap sizes?
+
+          Some programs that allocate many small, short-lived objects
+          can cause the default-sized heap to fill quickly and GC
+          often. With the 2.95.1 release there is no means to adjust
+          the heap at runtime. Recent snapshots provide the -ms and
+          -mx arguments to gij to specify the initial and maximum heap
+          sizes, respectively.
+
+      5.6 How can I profile my application?
+
+          Currently, only single threaded Java code may be used by the
+          profiler (gprof). POSIX threads seem to be incompatible with
+          the gmon stuff.  A couple of other tools that have been
+          mentioned on the GCJ mailing list are sprof and cprof.  The
+          former is part of GNU libc.
+
+      5.7 My program seems to hang and doesn't produce any output
+
+          Some versions had a bug in the iconv support. You can work
+          around it by setting LANG=en_US.UTF-8 at runtime, or give
+          the following option during compile time
+          -Dfile.encoding=UTF-8.  This problem should no longer occur
+          as of November 1, 2000.
+
+Programming Issues
+==================
+
+      6.1 Are there any examples of how to use CNI?
+
+          Glenn Chambers has created a couple of trivial examples for
+          version 2.95 and version 3.0.  As a comparison, here is the
+          same example as a JNI application using Kaffe.  The same
+          code will work with GCJ, as shown here.
+
+          Note that for version 2.95, you must compile the C++ files
+          used for CNI with the -fno-rtti option.  This constraint
+          does not apply in version 3.0 and later.
+
+          The primary source of documentation for CNI is at
+          http://gcc.gnu.org/java/papers/cni/t1.html
+
+      6.2 Is it possible to invoke GCJ compiled Java code from a
+          C++ application?
+
+          Yes, GCJ 3.1 supports a CNI-based invocation interface as
+          well as the traditional JNI invocation API.  See the GCJ
+          Manual for more details on how to use the CNI interface.
+
+Please send FSF & GNU inquiries & questions tognu@gnu.org.There are
+also other waysto contact the FSF.
+
+These pages are maintained by The GCC team.
+
+Please send comments on these web pages and GCC to our publicmailing
+list at gcc@gnu.org orgcc@gcc.gnu.org, send other questions to
+gnu@gnu.org.
+
+Copyright (C) Free Software Foundation, Inc.,
+59 Temple Place - Suite 330, Boston, MA  02111,  USA.
+
+Verbatim copying and distribution of this entire article is permitted
+in any medium, provided this notice is preserved.
+
+Last modified 2003-04-30
--- gcj-4.2-4.2.4.orig/debian/README.cross
+++ gcj-4.2-4.2.4/debian/README.cross
@@ -0,0 +1,144 @@
+Building cross-compiler Debian packages
+---------------------------------------
+
+It is possible to build C and C++ cross compilers and support libraries
+from gcc-4.0 source package. This document describes how to do so.
+Cross-compiler build support is not perfect yet, please send fixes
+and improvements to debian-gcc@lists.debian.org and 
+debian-embedded@lists.debian.org
+
+Before you start, you should probably check available pre-built
+cross-toolchain debs. Available at http://www.emdebian.org
+
+Old patches could be reached at
+  http://zigzag.lvk.cs.msu.su/~nikita/debian/
+  
+If they are no longer there, you may check EmDebian web site at
+  http://www.emdebian.org/
+or ask debian-embedded@lists.debian.org for newer location.
+
+Please check http://bugs.debian.org/391445 if you are about building
+gcc-4.2 or above.
+
+Most of them has been merged with gcc debian sources.
+
+0. What's wrong with toolchain-source approach
+
+Package toolchain-source contains sources for binutils and gcc, as well as
+some support scripts to build cross-compiler packages. They seem to work.
+
+However, there is one fundamental problem with this approach.
+Gcc package is actively maintained and frequently updated. These updates
+do contain bug fixes and improvements, especially for non-x86 architectures.
+Cross-compilers built using toolchain-source will not get those fixes unless
+toolchain-source package is updated after each binutils and gcc update.
+The later is not hapenning in real life. For example, toolchain-source
+was upgraded from gcc-3.2 to gcc-3.3 half a year later than gcc-3.3 became
+Debian default compiler.
+
+Keeping toolchain-source package up-to-date requires lots of work, and seems
+to be a waste of time. It is much better to build cross-compilers directly
+from gcc source package.
+
+
+1. What is needed to build a cross-compiler from gcc-4.2 source
+
+1.1. dpkg-cross package
+
+Dpkg-cross package contains several tools to manage cross-compile environment.
+
+It can convert native debian library and lib-dev packages for the target
+architecture to binary-all packages that keep libraries and headers under
+/usr/$(TARGET)/.
+
+Also it contains helper tools for cross-compiling debian packages. Some of
+these tools are used while building libgcc1 and libstdc++ library packages.
+The resulting library packages follow the same convensions as library packages
+converted by dpkg-cross.
+
+Currently, at least version 1.18 of dpkg-cross is needed for cross-gcc
+package build. Version 1.32 of dpkg-cross is needed in order to build gcc-4.2.
+
+1.2. cross-binutils for the target
+
+You need cross-binutils for your target to build cross-compiler.
+Binutils-multiarch package will not work because it does not provide cross-
+assemblers.
+
+If you don't want to use pre-built cross-binutils packages, you may build
+your own from binutils debian source package, using patches posted to
+bug #231707. Please use the latest of patch versions available there.
+
+Alternatively, you may use toolchain-source package to build cross-binutils
+(but in this case you will probably also want to use toolchain-source
+to build cross-compiler itself). However, multilib'ed cross-compilers may
+not build or work with these binutils.
+
+1.3. libc for target
+
+You also need libc library and development packages for the target
+architecture installed.
+
+To get those, download linux-kernel-headers, libc6, and libc6-dev binary
+debs for your target, convert those using dpkg-cross -b, and install
+resulting -arch-cross debs. Consult dpkg-cross manual page for more
+information.
+
+Building with/for alternative libc's is not supported yet (but this is in
+TODO).
+
+Note that if you plan to use your cross-toolchain to develop kernel drivers
+or similar low-level things, you will probably also need kernel headers
+for the exact kernel version that your target hardware uses.
+
+
+2. Building cross-compiler packages
+
+Get gcc-4.2 source package.
+
+Unpack it using dpkg-source -x, and cd to the package directory.
+
+Set GCC_TARGET environment variable to the target architectire name. Note
+that currently you should use debian architecture name (i.e 'powerpc' or 'arm'),
+not GNU system type (i.e. 'powerpc-linux' or 'arm-linux'). Setting GCC_TARGET
+to GNU system type will cause cross-compiler build to fail.
+
+Instead of setting GCC_TARGET, target architecture name may be put into
+debian/target file. If both GCC_TARGET is defined and debian/target file
+exists, GCC_TARGET is used.
+
+Run debian/rules control. This will change debian/control file,
+adjusting build-depends.  By default, the packages will not depend on the
+system -base package. A variable DEB_CROSS_INDEPENDENT has been merged with DEB_CROSS variable.
+
+You can then build with either
+
+$ GCC_TARGET=[arch] dpkg-buildpackage -rfakeroot
+
+3. Using crosshurd
+
+Jeff Bailey <jbailey@raspberryginger.com> suggests alternate way to setup
+environment to build cross-compiler, using 'crosshurd' package. 
+Crosshurd is like debootstrap but cross-arch, and works on the Hurd,
+Linux and FreeBSD.  (The name is historical).
+
+If you setup your environment with crosshurd, you will need to fix symlinks
+in lib and usr/lib to be relative instead of absolute. For example:
+
+lrwxrwxrwx    1 root     root           20 2004-05-06 23:02 libcom_err.so -> /lib/libcom_err.so.2
+
+Needs to be changed to:
+
+lrwxrwxrwx    1 root     root           20 2004-05-06 23:02 libcom_err.so -> ../../lib/libcom_err.so.2
+
+Also, if you choose this method, set the environment variable 'with_sysroot'
+to point to the ABSOLUTE PATH where the crosshurd was done.
+
+Note however that build-depends of cross-gcc and dependencies in generated
+libgcc1 and libstdc++ packages assume that you use dpkg-cross to set up
+your environment, and may be wrong or incomplete if you use alternate methods.
+But probably you don't care.
+
+--
+Nikita V. Youshchenko <yoush@debian.org> - Jun 2004
+Hector Oron Martinez  <hector.oron@gmail.com> - Oct 2006
--- gcj-4.2-4.2.4.orig/debian/gfortran-BV-doc.doc-base
+++ gcj-4.2-4.2.4/debian/gfortran-BV-doc.doc-base
@@ -0,0 +1,14 @@
+Document: gfortran-@BV@
+Title: The GNU Fortran Compiler 
+Author: Various
+Abstract: This manual documents how to run, install and port `gfortran',
+ as well as its new features and incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/fortran/gfortran.html
+Files: /usr/share/doc/gcc-@BV@-base/fortran/gfortran.html
+
+Format: info
+Index: /usr/share/info/gfortran-@BV@.info.gz
+Files: /usr/share/info/gfortran-@BV@*
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.amd64
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.amd64
@@ -0,0 +1,4 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
--- gcj-4.2-4.2.4.orig/debian/gpc-BV-doc.doc-base.gpcs
+++ gcj-4.2-4.2.4/debian/gpc-BV-doc.doc-base.gpcs
@@ -0,0 +1,23 @@
+Document: gpcs-@BV@-doc
+Title: The GNU Pascal Coding Standards
+Author: Various
+Abstract: The GNU Pascal Coding Standards were designed by a group of
+ GNU Pascal project volunteers. The aim of this document is extending
+ the GNU Coding Standards with specific information relating Pascal
+ programming.  As a matter of fact, the information contained in the
+ GNU Coding Standards mainly pertains to programs written in the C
+ language. On the other hand, they also explain many of the rules and
+ principles that are useful for writing portable, robust and reliable
+ programs. Most of those general topics could be shared with this
+ document with just a few specific notes, thus cross references are
+ provided which will lead you to the more extensive information
+ contained in the GNU Coding Standards.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/pascal/gpcs.html
+Files: /usr/share/doc/gcc-@BV@-base/pascal/gpcs.html
+
+Format: info
+Index: /usr/share/info/gpcs-@BV@.info.gz
+Files: /usr/share/info/gpcs-@BV@*
--- gcj-4.2-4.2.4.orig/debian/cpp-BV-doc.doc-base.cppint
+++ gcj-4.2-4.2.4/debian/cpp-BV-doc.doc-base.cppint
@@ -0,0 +1,17 @@
+Document: cppinternals-@BV@
+Title: The GNU C preprocessor (internals)
+Author: Various
+Abstract: This brief manual documents the internals of cpplib, and
+ explains some of the tricky issues.  It is intended that, along with
+ the comments in the source code, a reasonably competent C programmer
+ should be able to figure out what the code is doing, and why things
+ have been implemented the way they have.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/cppinternals.html
+Files: /usr/share/doc/gcc-@BV@-base/cppinternals.html
+
+Format: info
+Index: /usr/share/info/cppinternals-@BV@.info.gz
+Files: /usr/share/info/cppinternals-@BV@*
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.mipsel
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.mipsel
@@ -0,0 +1,120 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3.4@GCC_3.3.4 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __adddf3@GCC_3.0 1:4.1.1
+ __addsf3@GCC_3.0 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __ashldi3@GCC_3.0 1:4.1.1
+ __ashrdi3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzsi2@GCC_3.4 1:4.1.1
+ __cmpdi2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzsi2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdf3@GCC_3.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divsf3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __eqdf2@GCC_3.0 1:4.1.1
+ __eqsf2@GCC_3.0 1:4.1.1
+ __extendsfdf2@GCC_3.0 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixdfsi@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixsfsi@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatsidf@GCC_3.0 1:4.1.1
+ __floatsisf@GCC_3.0 1:4.1.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatunsidf@GCC_4.2.0 1:4.2.1
+ __floatunsisf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __gedf2@GCC_3.0 1:4.1.1
+ __gesf2@GCC_3.0 1:4.1.1
+ __gtdf2@GCC_3.0 1:4.1.1
+ __gtsf2@GCC_3.0 1:4.1.1
+ __ledf2@GCC_3.0 1:4.1.1
+ __lesf2@GCC_3.0 1:4.1.1
+ __lshrdi3@GCC_3.0 1:4.1.1
+ __ltdf2@GCC_3.0 1:4.1.1
+ __ltsf2@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldf3@GCC_3.0 1:4.1.1
+ __muldi3@GCC_3.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __mulsf3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __nedf2@GCC_3.0 1:4.1.1
+ __negdf2@GCC_3.0 1:4.1.1
+ __negdi2@GCC_3.0 1:4.1.1
+ __negsf2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __nesf2@GCC_3.0 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __paritysi2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountsi2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subdf3@GCC_3.0 1:4.1.1
+ __subsf3@GCC_3.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __truncdfsf2@GCC_3.0 1:4.1.1
+ __ucmpdi2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmoddi4@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
+ __unorddf2@GCC_3.3.4 1:4.1.1
+ __unordsf2@GCC_3.3.4 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libmudflap.copyright
+++ gcj-4.2-4.2.4/debian/libmudflap.copyright
@@ -0,0 +1,30 @@
+This package was debianized by Matthias Klose <doko@debian.org> on
+Mon,  5 Jul 2004 21:29:57 +0200
+
+Mudflap is part of GCC.
+
+Authors: Frank Ch. Eigler <fche@redhat.com>, Graydon Hoare <graydon@redhat.com>
+
+Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
+
+GCC is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 2, or (at your option) any later
+version.
+
+In addition to the permissions in the GNU General Public License, the
+Free Software Foundation gives you unlimited permission to link the
+compiled version of this file into combinations with other programs,
+and to distribute those combinations without any restriction coming
+from the use of this file.  (The General Public License restrictions
+do apply in other respects; for example, they cover modification of
+the file, and distribution when not linked into a combine
+executable.)
+
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
--- gcj-4.2-4.2.4.orig/debian/rules
+++ gcj-4.2-4.2.4/debian/rules
@@ -0,0 +1,87 @@
+#! /usr/bin/make -f
+# -*- makefile -*-
+# Build rules for gcc (>= 2.95) and gcc-snapshot
+# Targets found in this makefile:
+#	- unpack tarballs
+#	- patch sources
+#	- (re)create the control file
+#	- create a debian/rules.parameters file, which is included
+#	  by debian/rules2
+# All other targets are passed to the debian/rules2 file
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+unexport LANG LC_ALL LC_CTYPE LC_COLLATE LC_TIME LC_NUMERIC LC_MESSAGES
+
+default: build
+
+include debian/rules.defs
+include debian/rules.unpack
+include debian/rules.patch
+
+control: $(control_dependencies)
+	-mkdir -p $(stampdir)
+	$(MAKE) -f debian/rules.conf $@
+
+configure: $(configure_dependencies)
+$(configure_stamp): control $(unpack_stamp) $(patch_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(configure_dummy_stamp): control
+	$(MAKE) -f debian/rules2 $@
+$(configure_hppa64_stamp): $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+build: $(build_dependencies)
+$(build_stamp): $(unpack_stamp) $(patch_stamp) $(configure_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(build_dummy_stamp): $(configure_dummy_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(build_javadoc_stamp): $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(build_hppa64_stamp): $(configure_hppa64_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+check: $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+clean:
+	rm -rf $(stampdir)
+# remove temporary dirs used for unpacking
+	rm -rf $(gcc_srcdir) $(gpc_srcdir) p $(gdc_srcdir) d
+	-$(MAKE) -f debian/rules2 $@
+	rm -rf $(srcdir) $(builddir)* debian/tmp* html
+	rm -f bootstrap-* first-move-stamp
+	rm -f debian/*.tmp
+	rm -f debian/soname-cache
+	find debian -name '.#*' | xargs -r rm -f
+	find debian/patches -name '*.dpatch' -type f ! -perm 644 | xargs -r chmod 644
+	dh_clean
+
+install: $(install_dependencies)
+$(install_stamp): $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(install_snap_stamp): $(build_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(install_dummy_stamp): $(build_dummy_stamp)
+	$(MAKE) -f debian/rules2 $@
+$(install_hppa64_stamp): $(build_hppa64_stamp)
+	$(MAKE) -f debian/rules2 $@
+
+html-docs doxygen-docs update-doxygen-docs update-ada-files xxx:
+	$(MAKE) -f debian/rules2 $@
+
+binary-indep binary-arch binary: install
+	$(MAKE) -f debian/rules2 $@
+
+source diff:
+	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
+
+release:
+	foo=$(shell basename $(CURDIR)); \
+		if [ "$$foo" != "gcc-3.4" ]; then \
+			find -name CVS -o -name .cvsignore -o -name '.#*' | \
+				xargs rm -rf; \
+		fi
+
+.PHONY: build clean binary-indep binary-arch binary release
--- gcj-4.2-4.2.4.orig/debian/README.Debian
+++ gcj-4.2-4.2.4/debian/README.Debian
@@ -0,0 +1,295 @@
+		The Debian GNU Compiler Collection setup
+		========================================
+
+Please see the README.Debian in /usr/share/doc/gcc, contained in the
+gcc package for a description of the setup of the different compiler
+versions.
+
+For general discussion about the Debian toolchain (GCC, glibc, binutils)
+please use the mailing list debian-toolchain@lists.debian.org; for GCC
+specific things, please use debian-gcc@lists.debian.org.  When in doubt
+use the debian-toolchain ML.
+
+
+Maintainers of these packages
+-----------------------------
+
+Matthias Klose <doko@debian.org>
+Ray Dassen <jdassen@debian.org>
+Jeff Bailey <jbailey@nisa.net>			(hurd-i386)
+Joel Baker <fenton@debian.org>			(netbsd-i386)
+Philip Blundell <pb@debian.org>			(arm-linux)
+Ben Collins <bcollins@debian.org>		(sparc-linux)
+Randolph Chung <tausq@debian.org>		(ia64-linux)
+Falk Hueffner <falk@debian.org>			(alpha-linux)
+Dan Jacobowitz <dan@debian.org>			(powerpc-linux)
+Thiemo Seufer <ths@networkno.de>		(mips*-linux)
+Matt Taggart <taggart@carmen.fc.hp.com>		(hppa-linux)
+Gerhard Tonn <GerhardTonn@swol.de>		(s390-linux)
+Roman Zippel <zippel@linux-m68k.org>		(m68k-linux)
+Ludovic Brenta <ludovic@ludovic-brenta.org>	(gnat)
+Arthur Loiret <arthur.loiret@gmail.com>		(gdc)
+
+===============================================================================
+
+Patches that Debian applied in this version:
+
+svn-updates:
+  updates from the 4.2 branch upto 20081007.
+
+gcc-version:
+  Add package identification to the gcc version string
+
+gcc-textdomain:
+  Set gettext's domain and textdomain to the versioned package name.
+
+gcc-driver-extra-langs:
+  Add options and specs for languages that are not built from a source
+  (but built from separate sources).
+
+gcc-hash-style-both:
+  Link using --hash-style=both (alpha, amd64, ia64, i386, powerpc, ppc64, s390, sparc)
+
+libstdc++-pic:
+  Build and install libstdc++_pic.a library.
+
+libstdc++-doclink:
+  adjust hrefs to point to the local documentation
+
+libstdc++-doxygen:
+  libstdc++ doxygen docs: Set SHORT_NAMES to YES
+
+libjava-stacktrace:
+  libgcj: Lookup source file name and line number in separated
+  debug files found in /usr/lib/debug
+
+libjava-subdir:
+  - Set the libjava sublibdir to /usr/lib/gcj-4.2
+  - Set the default libgcj database dir to /var/lib/gcj-4.2
+
+libjava-jnipath:
+  - Add /usr/lib/jni to java.library.path.
+  - When running the i386 binaries on amd64, look in
+  - /usr/lib32/gcj-x.y and /usr/lib32/jni instead.
+
+libjava-sjlj:
+  Don't try to use _Unwind_Backtrace on SJLJ targets.
+  See bug #387875, #388505, GCC PR 29206.
+
+libjava-rpath:
+  - Link ecjx and gij with -rpath $(dbexecdir)
+
+libjava-jar:
+  gjar: support @ arguments.
+
+libjava-nojavac:
+  libjava/classpath: Don't require javac without java maintainer mode.
+
+libjava-armel-ldflags:
+  Adjust libjava extra_ldflags for armel.
+
+libjava-xulrunner1.9:
+  Add configure check for xulrunner-1.9.
+
+libjava-extra-cflags:
+  libjava/classpath: Set and use EXTRA_CFLAGS.
+
+libgcj-bc:
+  libgcj_bc
+
+libffi-configure:
+  Add --enable-libffi option to toplevel configure script
+
+pr20218:
+  Backport from mainline for PR middle-end/17982, PR middle-end/20218.
+
+pr20218-mips:
+  Backport from mainline for PR middle-end/20218, mips part.
+
+pr28102:
+  Apply proposed fix for PR target/28102.
+
+pr22244:
+  Improve debug info for packed arrays with constant bounds (PR fortran/22244)
+
+pr30961:
+  <your description>
+
+libgcc-tramp-ppc32:
+  Fix libgcc.a(tramp.o) on ppc32
+
+gcc-directives-only:
+  Backport from trunk: -fdirectives-only (when preprocessing,
+  handle directives, but do not expand macros).
+
+sparc-niagara2:
+  Add niagara2 optimization support
+
+alpha-no-ev4-directive:
+
+boehm-gc-nocheck:
+  Disable running the boehm-gc testsuite. Hangs the buildd at least on hppa.
+
+boehm-gc-getnprocs:
+  boehm-gc/pthread_support.c (GC_get_nprocs): Use sysconf as fallback.
+
+note-gnu-stack:
+  Add .note.GNU-stack sections for gcc's crt files, libffi and boehm-gc
+  Taken from FC.
+
+arm-pr28516:
+  Fix PR28516 on ARM
+
+arm-pr30486:
+  Fix 30486 on ARM
+
+arm-unbreak-eabi-armv4t:
+  Fix armv4t build on ARM
+
+hurd-profiling:
+  Fix profiling on hurd-i386.
+
+hurd-fast-math:
+  Support -ffast-math on hurd-i386.
+
+m68k-fjump:
+  gcc/config/m68k/m68k.md:
+  always use as fjcc pseudo op, we rely heavily on as 
+  to generate the right size for the jump instructions
+  fixes #359281
+
+m68k-save_pic:
+  gcc/config/m68k/m68k.c:
+  correctly save the pic register, when not done by reload()
+  (fixes _Unwind_RaiseException and thus exception handling)
+  fixes 345574
+
+m68k-dwarf:
+  correct the dwarf frame information, but preserve compatibility
+
+m68k-split_shift:
+  use correct predicates for long long shifts and use more splits
+  fixes 381572
+
+m68k-limit_reload:
+  correctly limit reload class
+  fixes 375522
+
+m68k-prevent-qipush:
+  prevent combine from creating a byte push on the stack (invalid on m68k)
+
+m68k-return:
+  don't use single return if fp register have to be restored
+  fixes 386864
+
+m68k-jumptable:
+  Don't force byte offset when accessing the jumptable, gas can
+  generate the correct offset size instead.
+
+m68k-sig-unwind:
+  add support for unwinding over signal frames
+
+m68k-peephole:
+  Convert some text peepholes to rtl peepholes, so the correct
+  DWARF2 information can be generated for stack manipulations.
+  (Keep a few peepholes temporarily disabled.)
+
+m68k-align-code:
+  use "move.l %a4,%a4" to advance within code.
+
+m68k-align-stack:
+  try to keep the stack word aligned
+
+m68k-secondary-addr-reload:
+  add secondary reloads to allow reload to get byte values into addr regs
+
+m68k-notice-move:
+  don't set cc_status for fp move without fp register
+
+m68k-fpcompare:
+  bring fp compare early to its desired form to relieve reload,
+  allow any fp constant during and after reload (even special constants)
+  in case reload can't find a free register for them.
+
+m68k-symbolic-operand:
+  better recognize symbolic operands in addresses
+
+m68k-bitfield-offset:
+  only use constant offset for register bitfields
+  (combine expects shifts, but does a rotate)
+
+mips-libspec:
+  mips*-linux: Always imply -lpthread for -pthread
+
+pr24170:
+  Fix PR libgcj/24170.
+
+pr32889:
+  Proposed patch to fix root cause for PR middle-end/32889.
+
+pr28322:
+  Fix PR other/28322, GCC new warnings and compatibility.
+
+libobjc-gc-link:
+  Link libobjc_gc with libgcjgc_convenience.la.
+
+pr35020:
+  Fix PR libjava/35020, taken from the trunk.
+
+m68k-allow-gnu99:
+  patch to allow gnu99 mode on m68k
+
+pr28482:
+  Apply fix to allow libgomp.so to build as a shared library
+
+pr35437:
+  Fix PR c/35437 (ice-on-invalid), taken from the gcc-4.3 branch.
+
+libssp-gnu:
+  GNU/k*BSD support
+
+gcc-d-lang:
+  Add D options and specs for the gcc driver.
+
+cpu-default-i486:
+  set default 32bit ix86 architecture to i486
+
+reporting:
+  Add Debian URL for bug reporting instructions.
+
+multiarch-include:
+  biarch-include.dpatch
+  
+  Adds biarch include directories
+  /usr/local/include/<arch>-linux-gnu
+  /usr/include/<arch>-linux-gnu
+  to the system include paths, depending on 32/64 bit mode.
+
+gcc-ice-hack:
+  2004-01-23  Jakub Jelinek  <jakub@redhat.com>
+  
+  	* system.h (ICE_EXIT_CODE): Define.
+  	* gcc.c (execute): Don't free first string early, but at the end
+  	of the function.  Call retry_ice if compiler exited with
+  	ICE_EXIT_CODE.
+  	(retry_ice): New function.
+  	* diagnostic.c (diagnostic_count_diagnostic,
+  	diagnostic_action_after_output, error_recursion): Exit with
+  	ICE_EXIT_CODE instead of FATAL_EXIT_CODE.
+
+libjava-disable-static:
+  Disable building the static libjava.
+
+gcc-ice-apport:
+  Report an ICE to apport (if apport is available
+  and the environment variable GCC_NOAPPORT is not set)
+
+libjava-nobiarch-check:
+  For biarch builds, disable the testsuite for the non-default architecture
+  for runtime libraries, which are not built by default (libjava).
+
+config-ml:
+  disable some biarch libraries for biarch builds
+
+i386-biarch:
+  biarch patches for i386/x86_64
--- gcj-4.2-4.2.4.orig/debian/gcjwebplugin-BV.postinst
+++ gcj-4.2-4.2.4/debian/gcjwebplugin-BV.postinst
@@ -0,0 +1,24 @@
+#!/bin/sh -e
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+
+priority=$(echo @BV@ | sed 's/\.//g')
+browser_dirs="@browser_dirs@"
+PLUGINPTH=/usr/lib/gcj-@BV@-@GCJSO@/libgcjwebplugin.so
+
+for browser_dir in $browser_dirs; do
+    if [ $browser_dir = xulrunner-addons ]; then
+        browser=xulrunner-1.9
+    else
+        browser=$browser_dir
+    fi
+    update-alternatives --quiet --install \
+	/usr/lib/$browser_dir/plugins/libjavaplugin.so \
+	$browser-javaplugin.so \
+	$PLUGINPTH \
+	$priority
+done
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/README.gnat
+++ gcj-4.2-4.2.4/debian/README.gnat
@@ -0,0 +1,22 @@
+If you want to develop Ada programs and libraries on Debian, please
+read the Debian Policy for Ada:
+
+http://www.ada-france.org/debian/debian-ada-policy.html
+
+The default Ada compiler is and always will be the package `gnat'.
+Debian contains many programs and libraries compiled with it, which
+are all ABI-compatible.
+
+Starting with gnat-4.2, Debian provides both zero-cost and
+setjump/longjump versions of the run-time library.  The zero-cost
+exception handling mechanism is the default as it provides the best
+performance.  The setjump/longjump exception handling mechanism is new
+and only provided as a static library.  It is necessary to use this
+exception handling mechanism in distributed (annex E) programs.  If
+you wish to use the new sjlj library:
+
+1) call gnatmake with --RTS=sjlj
+2) call gnatbind with -static
+
+Do NOT link your programs with libgnat-4.2.so, because it uses the ZCX
+mechanism.
--- gcj-4.2-4.2.4.orig/debian/relink
+++ gcj-4.2-4.2.4/debian/relink
@@ -0,0 +1,74 @@
+#! /bin/sh
+#
+# Relink GNAT utilities using the shared library
+#
+
+set -e
+
+pwd=`pwd`
+
+# why?
+chmod a-w build/gcc/ada/rts/*.ali
+
+rm -rf tmp
+ln -s $pwd/build/gcc/ada/rts/libgnat.so.1 tmp/libgnat.so
+
+LD_LIBRARY_PATH=$pwd/tmp
+export LD_LIBRARY_PATH
+
+PATH=$pwd/debian:$pwd/tmp:$PATH
+export PATH
+
+echo "#! /bin/sh" > tmp/dgcc
+echo "$pwd/build/gcc/xgcc -B$pwd/build/gcc/ "'"$@"' >> tmp/dgcc
+chmod 755 tmp/dgcc
+
+echo "#! /bin/sh" > tmp/dgnatlink
+echo "$pwd/build/gcc/gnatlink --GCC=dgcc "'"$@"' >> tmp/dgnatlink
+chmod 755 tmp/dgnatlink
+
+GMCMD="$pwd/build/gcc/gnatmake -I- -Irts -I. -a -m --GNATBIND=$pwd/build/gcc/gnatbind --GNATLINK=dgnatlink --GCC=dgcc"
+
+#cd $pwd/build/gcc/ada
+#make CFLAGS="-O2" CC="../xgcc -B../" STAGE_PREFIX=../ a-link.o a-gmem.o
+#cd $pwd
+
+[ -f build/gcc/gnatmake.old ] || cp -p build/gcc/gnatmake build/gcc/gnatmake.old
+[ -f build/gcc/gnatlink.old ] || cp -p build/gcc/gnatlink build/gcc/gnatlink.old
+
+make -C build/gcc/ada \
+	CFLAGS='-gnatp -gnata -O2 ' \
+	ADA_INCLUDES="-I." \
+	CC="../xgcc -B../" \
+	STAGE_PREFIX=../ \
+    ../gnatmake ../gnatlink
+
+mv gnatmake bgnatmake
+mv gnatlink bgnatlink
+exit 0
+
+cd build/gcc/ada
+for i in ../gnatchop ../gnatcmd \
+    ../gnatkr ../gnatlbr \
+    ../gnatls ../gnatmake \
+    ../gnatprep ../gnatpsys \
+    ../gnatxref ../gnatfind
+do
+  rm -f $i
+  $GMCMD -O2 -gnatp -o $i `basename $i`.adb -largs -L..
+done
+
+rm -f ../gnatmem
+$GMCMD -O2 -gnatp -o ../gnatmem gnatmem.adb -largs -L.. a-gmem.o
+$GMCMD -O2 -gnatp -o ../gnatlink gnatlink -largs -L.. a-link.o
+rm -f ../gnatpsta
+
+make CFLAGS="-O2" CC="../xgcc -B../" a-gettty.o a-deftar.o
+$GMCMD -O2 -gnatp -o ../gnatpsta gnatpsta -largs -L.. a-gettty.o a-deftar.o
+rm -f ../gnatbl
+
+make CFLAGS="-O2" CC="../xgcc -B../" gnatbl.o
+../xgcc -B../ -o ../gnatbl gnatbl.o -L.. -lgnat
+rm -f ../bgnatmake ../bgnatlink ../debian/dgcc ../debian/dgnatlink
+
+chmod +w rts/*.ali
--- gcj-4.2-4.2.4.orig/debian/libstdc++CXX-BV-doc.overrides
+++ gcj-4.2-4.2.4/debian/libstdc++CXX-BV-doc.overrides
@@ -0,0 +1,3 @@
+libstdc++@CXX@-@BV@-doc: extra-license-file
+libstdc++@CXX@-@BV@-doc: manpage-has-bad-whatis-entry
+libstdc++@CXX@-@BV@-doc: hyphen-used-as-minus-sign
--- gcj-4.2-4.2.4.orig/debian/gnat-BV-doc.doc-base.style
+++ gcj-4.2-4.2.4/debian/gnat-BV-doc.doc-base.style
@@ -0,0 +1,16 @@
+Document: gnat-style-@BV@
+Title: GNAT Coding Style
+Author: Various
+Abstract: Most of GNAT is written in Ada using a consistent style to
+ ensure readability of the code.  This document has been written to
+ help maintain this consistent style, while having a large group of
+ developers work on the compiler.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gnat-@BV@-doc/gnat-style.html
+Files: /usr/share/doc/gnat-@BV@-doc/gnat-style.html
+
+Format: info
+Index: /usr/share/info/gnat-style-@BV@.info.gz
+Files: /usr/share/info/gnat-style-@BV@*
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-hppa64.postinst
+++ gcj-4.2-4.2.4/debian/gcc-BV-hppa64.postinst
@@ -0,0 +1,13 @@
+#! /bin/sh -e
+
+prio=$(echo @BV@ | sed 's/\.//g')
+
+update-alternatives --quiet \
+	--install /usr/bin/hppa64-linux-gnu-gcc \
+		hppa64-linux-gnu-gcc \
+		/usr/bin/hppa64-linux-gnu-gcc-@BV@ \
+		$prio
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/lib64gcc1.symbols.i386
+++ gcj-4.2-4.2.4/debian/lib64gcc1.symbols.i386
@@ -0,0 +1,100 @@
+libgcc_s.so.1 lib64gcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __deregister_frame@GCC_3.0 1:4.1.1
+ __deregister_frame_info@GCC_3.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divti3@GCC_3.0 1:4.1.1
+ __divxc3@GCC_4.0.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunsxfdi@GCC_3.0 1:4.1.1
+ __fixunsxfti@GCC_3.0 1:4.1.1
+ __fixxfti@GCC_3.0 1:4.1.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattixf@GCC_3.0 1:4.1.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntixf@GCC_4.2.0 1:4.2.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __mulxc3@GCC_4.0.0 1:4.1.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powixf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GCC_3.0 1:4.1.1
+ __register_frame_info@GCC_3.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GCC_3.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GCC_3.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/multiarch.inc
+++ gcj-4.2-4.2.4/debian/multiarch.inc
@@ -0,0 +1,38 @@
+
+#if defined(__i486_linux_gnu__)
+  { "64",  "x86_64-linux-gnu"},
+#endif
+
+#if defined(__powerpc64_linux_gnu__)
+  { "32",  "powerpc-linux-gnu"},
+#endif
+
+#if defined(__x86_64_linux_gnu__)
+  { "32",  "i486-linux-gnu"},
+#endif
+
+#if defined(__powerpc_linux_gnu__)
+  { "64",  "powerpc64-linux-gnu"},
+#endif
+
+#if defined(__sparc_linux_gnu__)
+  { "64",  "sparc64-linux-gnu"},
+#endif
+
+#if defined(__s390_linux_gnu__)
+  { "64",  "s390x-linux-gnu"},
+#endif
+
+#if defined(__mips_linux_gnu__)
+  { "n32",  "mips64-linux-gnuabin32"},
+  { "64",  "mips64-linux-gnuabi64"},
+#endif
+
+#if defined(__mipsel_linux_gnu__)
+  { "n32",  "mips64el-linux-gnuabin32"},
+  { "64",  "mips64el-linux-gnuabi64"},
+#endif
+
+#if defined(__x86_64_kfreebsd_gnu__)
+  { "32",  "i486-kfreebsd-gnu"},
+#endif
--- gcj-4.2-4.2.4.orig/debian/libgnat-BV.overrides
+++ gcj-4.2-4.2.4/debian/libgnat-BV.overrides
@@ -0,0 +1 @@
+libgnat-@BV@: package-name-doesnt-match-sonames
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.m68k
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.m68k
@@ -0,0 +1,3 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-doc.postinst
+++ gcj-4.2-4.2.4/debian/gcc-BV-doc.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+install-info --quiet --section "Development" "Development" \
+	/usr/share/info/gcc-@BV@.info.gz
+
+install-info --quiet --section "Development" "Development" \
+	/usr/share/info/gccint-@BV@.info.gz
+
+install-info --quiet --section "Development" "Development" \
+	/usr/share/info/libgomp-@BV@.info.gz
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gfortran-BV-doc.prerm
+++ gcj-4.2-4.2.4/debian/gfortran-BV-doc.prerm
@@ -0,0 +1,5 @@
+#! /bin/sh -e
+
+install-info --quiet --remove gfortran-@BV@
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/README.C++
+++ gcj-4.2-4.2.4/debian/README.C++
@@ -0,0 +1,43 @@
+libstdc++ is an implementation of the Standard C++ Library, including the
+Standard Template Library (i.e. as specified by ANSI and ISO).
+
+Some notes on porting applications from libstdc++-2.90 (or earlier versions)    
+to libstdc++-v3 can be found in the libstdc++6-4.2-doc package. After the
+installation of the package, look at:
+
+  file:///usr/share/doc/gcc-4.2-base/libstdc++/html/17_intro/porting-howto.html
+
+On Debian GNU/Linux you find additional documentation in the
+libstdc++6-4.2-doc package. After installing these packages,
+point your browser to
+
+  file:///usr/share/doc/libstdc++6-4.2-doc/libstdc++/html/index.html
+
+Other documentation can be found:
+
+    http://www.cs.rpi.edu/~musser/stl.html
+    http://www.sgi.com/tech/stl/
+    http://www.dinkumware.com/htm_cpl/
+
+with a good, recent, book on C++.
+
+A great deal of useful C++ documentation can be found in the C++ FAQ-Lite,
+maintained by Marshall Cline <cline@parashift.com>.  It can be found at the
+following locations (this list was last updated on 2000/11/19):
+
+USA: http://www.cerfnet.com/~mpcline/c++-faq-lite/
+
+Canada: http://new-brunswick.net/workshop/c++/faq
+
+Finland: http://www.utu.fi/~sisasa/oasis/cppfaq/
+
+France: http://caor.ensmp.fr/FAQ/c++-faq-lite/
+
+Spain: http://geneura.ugr.es/~jmerelo/c++-faq/
+
+Taiwan: http://www.cis.nctu.edu.tw/c++/C++FAQ-English/
+
+U.K.: http://www.cs.bham.ac.uk/~jdm/CPP/index.html
+
+
+Please send updates to this list as bug report for the g++ package.
--- gcj-4.2-4.2.4.orig/debian/acats-killer.sh
+++ gcj-4.2-4.2.4/debian/acats-killer.sh
@@ -0,0 +1,62 @@
+#! /bin/sh
+
+# on ia64 systems, the acats hangs in unaligned memory accesses.
+# kill these testcases.
+
+pidfile=acats-killer.pid
+
+usage()
+{
+    echo >&2 "usage: `basename $0` [-p <pidfile>] <ada logfile> <next logfile>"
+    exit 1
+}
+
+while [ $# -gt 0 ]; do
+    case $1 in
+    -p)
+	pidfile=$2
+	shift
+	shift
+	;;
+    -*)
+	usage
+	;;
+    *)
+	break
+    esac
+done
+
+[ $# -eq 2 ] || usage
+
+logfile=$1
+stopfile=$2
+interval=30
+
+echo $$ > $pidfile
+
+while true; do
+    if [ -f "$stopfile" ]; then
+	echo "`basename $0`: finished."
+	rm -f $pidfile
+	exit 0
+    fi
+    sleep $interval
+    if [ ! -f "$logfile" ]; then
+	continue
+    fi
+    pids=$(ps aux | awk '/testsuite\/ada\/acats\/tests/ { print $2 }')
+    if [ -n "$pids" ]; then
+	sleep $interval
+        pids2=$(ps aux | awk '/testsuite\/ada\/acats\/tests/ { print $2 }')
+	if [ "$pids" = "$pids2" ]; then
+	    #echo kill: $pids
+	    kill $pids
+	    sleep 1
+            pids2=$(ps aux | awk '/testsuite\/ada\/acats\/tests/ { print $2 }')
+	    if [ "$pids" = "$pids2" ]; then
+	        #echo kill -9: $pids
+	        kill -9 $pids
+	    fi
+	fi
+    fi
+done
--- gcj-4.2-4.2.4.orig/debian/README.snapshot
+++ gcj-4.2-4.2.4/debian/README.snapshot
@@ -0,0 +1,36 @@
+Debian gcc-snapshot package
+===========================
+
+This package contains  a recent development SNAPSHOT of all files
+contained in the GNU Compiler Collection (GCC).
+
+DO NOT USE THIS SNAPSHOT FOR BUILDING DEBIAN PACKAGES!
+
+This package will NEVER hit the testing distribution. It's used for
+tracking gcc bugs submitted to the Debian BTS in recent development
+versions of gcc.
+
+To use this snapshot, you should set the following environment variables:
+
+	LD_LIBRARY_PATH=/usr/lib/gcc-snapshot/lib:$LD_LIBRARY_PATH
+	PATH=/usr/lib/gcc-snapshot/bin:$PATH
+
+You might also like to use a shell script to wrap up this 
+funcationality, e.g. 
+ 
+place in /usr/local/bin/gcc-snapshot and chmod +x it 
+ 
+----------- snip ----------
+#! /bin/sh
+LD_LIBRARY_PATH=/usr/lib/gcc-snapshot/lib:$LD_LIBRARY_PATH
+PATH=/usr/lib/gcc-snapshot/bin:$PATH
+gcc "$@"
+----------- snip ----------
+
+Make the same for g++, g77, gij, gcj, cpp, ...
+ 
+Don't forget the quotes around the $@ or gcc will not parse it's 
+command line correctly! 
+
+Unset these variables before building Debian packages destined for an
+upload to ftp-master.debian.org.
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-hppa64.prerm
+++ gcj-4.2-4.2.4/debian/gcc-BV-hppa64.prerm
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+if [ "$1" != "upgrade" ]; then
+  update-alternatives --quiet \
+    --remove hppa64-linux-gcc /usr/bin/hppa64-linux-gnu-gcc-@BV@
+fi
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.mipsel
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.mipsel
@@ -0,0 +1,4 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
--- gcj-4.2-4.2.4.orig/debian/lib64stdc++6.symbols.s390
+++ gcj-4.2-4.2.4/debian/lib64stdc++6.symbols.s390
@@ -0,0 +1,8 @@
+libstdc++.so.6 lib64stdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# ldexpf@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# powf@GLIBCXX_3.4 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
+#include "libstdc++6.symbols.ldbl.64bit"
--- gcj-4.2-4.2.4.orig/debian/gcj-wrapper-BV.1
+++ gcj-4.2-4.2.4/debian/gcj-wrapper-BV.1
@@ -0,0 +1,20 @@
+.TH GCJ-WRAPPER 1 "June 6, 2002" gcj-wrapper "Java User's Manual"
+.SH NAME
+gcj-wrapper \- a wrapper around gcj
+
+.SH SYNOPSIS
+gcj-wrapper [\fB\s-1OPTION\s0\fR] ... [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fBgcj-wrapper\fR is a wrapper around gcj(1) to be called as the java
+compiler. Options different for javac(1) and gcj(1) are translated,
+options unknown to gcj(1) are silently ignored.
+
+.SH OPTIONS
+See gcj-@BV@(1) for a list of options that gcj understands.
+
+.SH "SEE ALSO"
+.BR gcj-@BV@(1)
+,
+.BR javac(1)
--- gcj-4.2-4.2.4.orig/debian/lib32gomp1.symbols
+++ gcj-4.2-4.2.4/debian/lib32gomp1.symbols
@@ -0,0 +1,2 @@
+libgomp.so.1 lib32gomp1 #MINVER#
+#include "libgomp1.symbols.common"
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.arm
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.arm
@@ -0,0 +1,4 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_sj0@CXXABI_1.3 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
--- gcj-4.2-4.2.4.orig/debian/lib32gccLC.preinst
+++ gcj-4.2-4.2.4/debian/lib32gccLC.preinst
@@ -0,0 +1,8 @@
+#! /bin/sh -e
+
+if [ ! -h /usr/lib32 -a -d /usr/lib32 -a -d /emul/ia32-linux/usr/lib ]; then
+  rm -rf /usr/lib32
+  ln -s /emul/ia32-linux/usr/lib /usr/lib32
+fi
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/lib64stdc++6.symbols.i386
+++ gcj-4.2-4.2.4/debian/lib64stdc++6.symbols.i386
@@ -0,0 +1,28 @@
+libstdc++.so.6 lib64stdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# acosl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# asinl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# atan2l@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# atanl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# ceill@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# coshl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# cosl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# expl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# floorl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# fmodl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# frexpl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# hypotl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# ldexpf@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# ldexpl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# log10l@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# logl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# modfl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# powf@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# powl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# sinhl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# sinl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# sqrtl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# tanhl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# tanl@GLIBCXX_3.4 4.1.1
--- gcj-4.2-4.2.4.orig/debian/gij-wrapper-BV
+++ gcj-4.2-4.2.4/debian/gij-wrapper-BV
@@ -0,0 +1,98 @@
+#!/usr/bin/perl -w
+#
+# Starts the GNU Java interpreter.
+#
+# Command-line arguments should be in the style of Sun's Java runtime;
+# these will be converted to gij arguments before being passed to the
+# gij itself.
+#
+# The Debian JNI module directory and any other specified JNI
+# directories will be included on the JNI search path.
+#
+# Copyright (C) 2002-2003 by Ben Burton <bab@debian.org>
+# Based on the original gij-wrapper-3.2 shell script.
+
+use strict;
+
+# The real Java runtime:
+my $javaRuntime = '/usr/bin/gij-@BV@';
+
+# The debian JNI module directory:
+my $debianJNIDir = '/usr/lib/jni';
+
+# The command-line arguments to pass to the real Java runtime:
+my @commandLine;
+
+# The full JNI search path to use:
+my $JNIPath = '';
+
+# Build the command-line from the arguments given.
+my $parsingOptions = 1;
+
+# Flag used to copy argument to -classpath or -cp.
+my $copyNext = 0;
+foreach my $arg (@ARGV) {
+  if (not $parsingOptions) {
+    # We're done parsing options; just copy all remaining arguments directly.
+    push @commandLine, $arg;
+    next;
+  }
+  if ($copyNext) {
+    push @commandLine, $arg;
+    $copyNext = 0;
+    next;
+  }
+
+  # Try to interpret Sun-style options.
+  if ($arg eq '-version') {
+    push @commandLine, '--version';
+  } elsif ($arg eq '-h' or $arg eq '-help') {
+    push @commandLine, '--help';
+  } elsif ($arg eq '-cp' or $arg eq '--cp') {
+    push @commandLine, '-cp';
+    $copyNext = 1;
+  } elsif ($arg eq '-classpath' or $arg eq '--classpath') {
+    push @commandLine, '-classpath';
+    $copyNext = 1;
+  } elsif ($arg =~ /^-Djava.library.path=(.+)$/) {
+    # A component of the JNI search path has been given.
+    if ($JNIPath) {
+      $JNIPath = $JNIPath . ':' . $1;
+    } else {
+      $JNIPath = $1;
+    }
+  } elsif ($arg eq '-jar' or $arg =~ /^-D/) {
+    # Copy the argument directly.
+    push @commandLine, $arg;
+  } elsif ($arg =~ /^-/) {
+    # An unrecognised option has been passed - just drop it.
+  } else {
+    # Some non-option argument has been given.
+    # Stop parsing options at this point.
+    push @commandLine, $arg;
+    $parsingOptions = 0;
+  }
+}
+
+# Add the debian JNI module directory to the JNI search path if it's not
+# already there.
+if ($JNIPath !~ /(^|:)$debianJNIDir($|:)/) {
+  if ($JNIPath) {
+    $JNIPath = $JNIPath . ':' . $debianJNIDir;
+  } else {
+    $JNIPath = $debianJNIDir;
+  }
+}
+
+# Use environment variable $LTDL_LIBRARY_PATH to store the JNI path,
+# since gij uses libltdl to dlopen JNI modules.
+if ($ENV{LTDL_LIBRARY_PATH}) {
+    $ENV{LTDL_LIBRARY_PATH} = $ENV{LTDL_LIBRARY_PATH} . ':' . $JNIPath;
+} else {
+    $ENV{LTDL_LIBRARY_PATH} = $JNIPath;
+}
+
+# Call the real Java runtime.
+my @fullCommandLine = ( $javaRuntime );
+push @fullCommandLine, @commandLine;
+exec @fullCommandLine or exit(1);
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.sparc
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.sparc
@@ -0,0 +1,96 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GCC_LDBL_3.0@GCC_LDBL_3.0 1:4.2.1
+ GCC_LDBL_4.0.0@GCC_LDBL_4.0.0 1:4.2.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __ashldi3@GCC_3.0 1:4.1.1
+ __ashrdi3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzsi2@GCC_3.4 1:4.1.1
+ __cmpdi2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzsi2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divtc3@GCC_LDBL_4.0.0 1:4.2.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixtfdi@GCC_LDBL_3.0 1:4.2.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __fixunstfdi@GCC_LDBL_3.0 1:4.2.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatditf@GCC_LDBL_3.0 1:4.2.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatunditf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrdi3@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldi3@GCC_3.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multc3@GCC_LDBL_4.0.0 1:4.2.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __negdi2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __paritysi2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountsi2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_LDBL_4.0.0 1:4.2.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __ucmpdi2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmoddi4@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/gcj-BV.prerm
+++ gcj-4.2-4.2.4/debian/gcj-BV.prerm
@@ -0,0 +1,20 @@
+#! /bin/sh -e
+
+if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ]; then
+    update-alternatives --quiet --remove javac /usr/bin/gcj-wrapper-@BV@
+    update-alternatives --quiet --remove jar /usr/bin/gjar-@BV@
+    update-alternatives --quiet --remove jarsigner /usr/bin/gjarsigner-@BV@
+    update-alternatives --quiet --remove javah /usr/bin/gjavah-@BV@
+    update-alternatives --quiet --remove native2ascii /usr/bin/gnative2ascii-@BV@
+    update-alternatives --quiet --remove rmic /usr/bin/grmic-@BV@
+    update-alternatives --quiet --remove tnameserv /usr/bin/gtnameserv-@BV@
+fi
+
+if [ -f /usr/share/info/gcj-@BV@.info.gz ]; then
+  install-info --quiet --remove gcj-@BV@
+else
+  # GFDL invariant free
+  true
+fi
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.64bit
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.64bit
@@ -0,0 +1,526 @@
+#include "libstdc++6.symbols.common"
+ _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listEm@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx17__pool_alloc_base9_M_refillEm@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE16_M_reclaim_blockEPcm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE16_M_reserve_blockEmm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_reclaim_blockEPcm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_reserve_blockEmm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx9free_list6_M_getEm@GLIBCXX_3.4.4 4.1.1
+ _ZNK10__cxxabiv117__class_type_info12__do_dyncastElNS0_10__sub_kindEPKS0_PKvS3_S5_RNS0_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__class_type_info20__do_find_public_srcElPKvPKS0_S2_@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info12__do_dyncastElNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info20__do_find_public_srcElPKvPKNS_17__class_type_infoES2_@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info12__do_dyncastElNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info20__do_find_public_srcElPKvPKNS_17__class_type_infoES2_@CXXABI_1.3 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE2atEm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4copyEPwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE6substrEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmRKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8_M_checkEmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limitEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEEixEm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs15_M_check_lengthEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs15_M_check_lengthEmmPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSs16find_last_not_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs2atEm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4copyEPcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs6substrEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmRKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs8_M_checkEmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs8_M_limitEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSsixEm@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE6_M_putEPcmPKcPK2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE6_M_putEPwmPKwPK2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE9do_lengthERS0_PKcS4_m@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE9do_lengthERS0_PKcS4_m@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE12_M_transformEPcPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE12_M_transformEPwPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcmcRSt8ios_basePcS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcmcS6_PcS7_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEclRSt8ios_basePcPKcRi@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcmwRSt8ios_basePwS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcmwPKwPwS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwlRSt8ios_basePwPKwRi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_numES3_S3_RiiimRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE15_M_extract_nameES3_S3_RiPPKcmRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_numES3_S3_RiiimRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE15_M_extract_nameES3_S3_RiPPKwmRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8valarrayImE4sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructEmwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE14_M_replace_auxEmmmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeEmmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE2atEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_cloneERKS1_m@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createEmmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5eraseEmm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmRKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6resizeEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6resizeEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwm@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwm@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_PKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_mw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmRKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7reserveEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwmw@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEmmm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EPKwmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_mmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EmwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EPKwmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_mmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EmwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEixEm@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEPclc@GLIBCXX_3.4 4.1.1
+ _ZNSi4readEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSi5seekgElSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEl@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEl@GLIBCXX_3.4.5 4.1.1
+ _ZNSi6ignoreEli@GLIBCXX_3.4 4.1.1
+ _ZNSi7getlineEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSi7getlineEPclc@GLIBCXX_3.4 4.1.1
+ _ZNSi8readsomeEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSo5seekpElSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSo5writeEPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSo8_M_writeEPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSs12_S_constructEmcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs14_M_replace_auxEmmmc@GLIBCXX_3.4 4.1.1
+ _ZNSs15_M_replace_safeEmmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs2atEm@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4.5 4.1.1
+ _ZNSs4_Rep8_M_cloneERKSaIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep9_S_createEmmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs5eraseEmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmRKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmRKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6resizeEm@GLIBCXX_3.4 4.1.1
+ _ZNSs6resizeEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_copyEPcPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_copyEPcPKcm@GLIBCXX_3.4.5 4.1.1
+ _ZNSs7_M_moveEPcPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_moveEPcPKcm@GLIBCXX_3.4.5 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_PKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_mc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmRKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmRKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmmc@GLIBCXX_3.4 4.1.1
+ _ZNSs7reserveEm@GLIBCXX_3.4 4.1.1
+ _ZNSs9_M_assignEPcmc@GLIBCXX_3.4 4.1.1
+ _ZNSs9_M_assignEPcmc@GLIBCXX_3.4.5 4.1.1
+ _ZNSs9_M_mutateEmmm@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EPKcmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSsmmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EmcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EPKcmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSsmmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EmcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsixEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1EPSt18__moneypunct_cacheIcLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2EPSt18__moneypunct_cacheIcLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1EPSt18__moneypunct_cacheIcLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2EPSt18__moneypunct_cacheIcLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1EPSt18__moneypunct_cacheIwLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2EPSt18__moneypunct_cacheIwLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1EPSt18__moneypunct_cacheIwLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2EPSt18__moneypunct_cacheIwLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1EPSt17__timepunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2EPSt17__timepunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1EPSt17__timepunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2EPSt17__timepunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE6xsgetnEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE6xsputnEPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE7seekoffElSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE8xsputn_2EPKclS2_l@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf6setbufEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8_M_allocEm@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8_M_setupEPcS0_l@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPFPvmEPFvS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKal@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKhl@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPalS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPclS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPhlS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1El@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPFPvmEPFvS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKal@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKhl@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPalS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPclS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPhlS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2El@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE13_M_set_bufferEl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE22_M_convert_to_externalEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6setbufEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6xsgetnEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6xsputnEPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7_M_seekElSt12_Ios_Seekdir11__mbstate_t@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE13_M_set_bufferEl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE22_M_convert_to_externalEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6setbufEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6xsgetnEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6xsputnEPKwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7_M_seekElSt12_Ios_Seekdir11__mbstate_t@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwlw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE4readEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE5seekgElSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEl@GLIBCXX_3.4.5 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreElj@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7getlineEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7getlineEPwlw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE8readsomeEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpElSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKwl@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKwl@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE10pubseekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sgetnEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sputnEPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6xsgetnEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6xsputnEPKcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9pubsetbufEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE10pubseekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sgetnEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sputnEPKwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6setbufEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6xsgetnEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6xsputnEPKwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9pubsetbufEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE6setbufEPcl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7_M_syncEPcmm@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE6setbufEPwl@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7_M_syncEPwmm@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7seekoffElSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC1EP15__locale_structPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC1EPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC2EP15__locale_structPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC2EPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt6gslice8_IndexerC1EmRKSt8valarrayImES4_@GLIBCXX_3.4 4.1.1
+ _ZNSt6gslice8_IndexerC2EmRKSt8valarrayImES4_@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetEm@GLIBCXX_3.4.7 4.1.1
+ _ZNSt6locale5_ImplC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC1ERKS0_m@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2ERKS0_m@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1EPSt16__numpunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2EPSt16__numpunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1EPSt16__numpunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2EPSt16__numpunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC1ERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC2ERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEixEm@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_l@GLIBCXX_3.4.9 4.2.1
+ _ZSt16__ostream_insertIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKS3_l@GLIBCXX_3.4.9 4.2.1
+ _ZSt17__copy_streambufsIcSt11char_traitsIcEElPSt15basic_streambufIT_T0_ES6_@GLIBCXX_3.4.8 4.1.1
+ _ZSt17__copy_streambufsIwSt11char_traitsIwEElPSt15basic_streambufIT_T0_ES6_@GLIBCXX_3.4.8 4.1.1
+ _ZSt21__copy_streambufs_eofIcSt11char_traitsIcEElPSt15basic_streambufIT_T0_ES6_Rb@GLIBCXX_3.4.9 4.2.1
+ _ZSt21__copy_streambufs_eofIwSt11char_traitsIwEElPSt15basic_streambufIT_T0_ES6_Rb@GLIBCXX_3.4.9 4.2.1
+ _ZThn16_NSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn16_NSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSiD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSiD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSoD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSoD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt10istrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt10istrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt10ostrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt10ostrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_istreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_istreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_ostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt13basic_ostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ifstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ifstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ifstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ifstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ofstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ofstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ofstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt14basic_ofstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_istringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_istringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_istringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_istringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n24_NSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _Znam@GLIBCXX_3.4 4.1.1
+ _ZnamRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ _Znwm@GLIBCXX_3.4 4.1.1
+ _ZnwmRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
--- gcj-4.2-4.2.4.orig/debian/rules2
+++ gcj-4.2-4.2.4/debian/rules2
@@ -0,0 +1,1642 @@
+#! /usr/bin/make -f
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+.SUFFIXES:
+
+include debian/rules.defs
+include debian/rules.parameters
+
+# some tools
+SHELL	= /bin/bash -e		# brace expansion in rules file
+IR	= install -m 644	# Install regular file
+IP	= install -m 755	# Install program
+IS	= install -m 755	# Install script
+
+#number of jobs to run for build
+ifeq ($(USE_NJOBS),no)
+  NJOBS :=
+  USE_CPUS := 1
+else
+  ifeq ($(with_java),yes)
+    MEM_PER_CPU = 192
+  else
+    MEM_PER_CPU = 128
+  endif
+  NUM_CPUS := $(shell if echo $(USE_NJOBS) | grep -q -E '^[0-9]+$$'; \
+			then echo $(USE_NJOBS); \
+			else getconf _NPROCESSORS_ONLN 2>/dev/null || echo 1; fi)
+  USE_CPUS := $(shell mt=`awk '/^MemTotal/ { print $$2 }' /proc/meminfo`; \
+			awk -vn=$(NUM_CPUS) -vmt=$$mt -vm=$(MEM_PER_CPU) \
+				'END { mt/=1024; n2 = int(mt/m); print n==1 ? 1 : n2<n+1 ? n2 : n+1}' < /dev/null)
+  ifneq (,$(strip $(USE_CPUS)))
+    NJOBS := -j $(USE_CPUS)
+  endif
+endif
+
+# Support parallel=<n> in DEB_BUILD_OPTIONS (see #209008)
+ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+  NJOBS := -j $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+endif
+
+ifeq ($(with_pascal),yes)
+  NJOBS :=
+endif
+
+ifeq ($(with_d),yes)
+  NJOBS :=
+endif
+
+# kernel-specific ulimit hack
+ifeq ($(findstring linux,$(DEB_HOST_GNU_SYSTEM)),linux)
+  ULIMIT_M =  if [ -e /proc/meminfo ]; then \
+	    m=`awk '/^((Mem|Swap)Free|Cached)/{m+=$$2}END{print int(m*.9)}' \
+		/proc/meminfo`; \
+	  else \
+	    m=`vmstat --free --swap-free --kilobytes|awk '{m+=$$2}END{print int(m*.9)}'`; \
+	  fi; \
+	  ulimit -m $$m; \
+	  echo "Limited memory for test runs to `ulimit -m`kB"
+else
+  ULIMIT_M = true
+endif
+
+ifeq ($(locale_data),generate)
+  SET_LOCPATH = LOCPATH=$(PWD)/locales
+endif
+
+# the recipient for the test summaries. Send with: debian/rules mail-summary
+S_EMAIL = gcc@packages.debian.org gcc-testresults@gcc.gnu.org
+
+# build not yet prepared to take variables from the environment
+define unsetenv
+  unexport $(1)
+  $(1) =
+endef
+$(foreach v, CPPFLAGS CFLAGS CXXFLAGS FFLAGS LDFLAGS, $(if $(filter environment,$(origin $(v))),$(eval $(call unsetenv, $(v)))))
+
+CC	= $(if $(filter yes,$(with_ada)),gcc-4.1,gcc)
+
+STAGE1_CFLAGS = -g -O
+
+ifeq ($(with_d),yes)
+  CFLAGS  += -std=gnu99
+  LDFLAGS += -lm
+endif
+
+ifeq ($(with_ssp_default),yes)
+  # FIXME: only use -fno-stack-protector when known to the stage1 compiler
+  STAGE1_CFLAGS	= -g -O -fno-stack-protector
+  BOOT_CFLAGS	= -g -O2 -fno-stack-protector
+endif
+
+ifeq ($(DEB_CROSS),yes)
+  CFLAGS	= -g -O2
+endif
+
+CFLAGS_TO_PASS = \
+	$(if $(CFLAGS),CFLAGS="$(CFLAGS)") \
+	$(if $(BOOT_CFLAGS),BOOT_CFLAGS="$(BOOT_CFLAGS)")
+LDFLAGS_TO_PASS = \
+	$(if $(LDFLAGS),LDFLAGS="$(LDFLAGS)")
+STAGE1_CFLAGS_TO_PASS = \
+	$(if $(STAGE1_CFLAGS),STAGE1_CFLAGS="$(STAGE1_CFLAGS)")
+
+docdir		= usr/share/doc
+
+# PF is the installation prefix for the package without the leading slash.
+# It's "usr" for gcc releases
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  PF		= usr/lib/gcc-snapshot
+else
+  PF		= usr
+endif
+
+ifeq ($(with_multiarch_lib),yes)
+  libdir	= lib/$(DEB_TARGET_GNU_TYPE)
+else
+  libdir	= lib
+endif
+# /usr/libexec doesn't follow the FHS
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  libexecdir	= $(PF)/libexec
+else
+  libexecdir	= $(PF)/$(libdir)
+endif
+buildlibdir	= $(builddir)/$(TARGET_ALIAS)
+
+ifeq ($(with_common_gcclibdir),yes)
+  gcc_lib_dir	= $(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+  gcc_lexec_dir	= $(libexecdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+else
+  gcc_lib_dir	= $(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(GCC_VERSION)
+  gcc_lexec_dir	= $(libexecdir)/gcc/$(TARGET_ALIAS)/$(GCC_VERSION)
+endif
+
+lib32		= $(PF)/lib32
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  ifeq ($(distribution)-$(DEB_TARGET_ARCH),Debian-amd64)
+    lib32		= emul/ia32-linux/usr/lib
+  endif
+endif
+lib64		= lib64
+
+checkdir = $(builddir)
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    ifneq ($(with_standalone_gcj),yes)
+      checkdir = $(buildlibdir)/libjava
+    endif
+  endif
+endif
+ifeq ($(with_separate_gnat),yes)
+  ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+    checkdir = $(builddir)/gcc
+  endif
+endif
+
+ifneq ($(DEB_CROSS),yes)
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    cxx_inc_dir	= $(PF)/include/c++/$(BASE_VERSION)
+  endif
+else
+  cxx_inc_dir	= $(PF)/$(TARGET_ALIAS)/include/c++/$(GCC_VERSION)
+endif
+
+CONFARGS = -v \
+	--enable-languages=$(subst $(SPACE),$(COMMA),$(enabled_languages)) \
+	--prefix=/$(PF) \
+	--enable-shared \
+	--with-system-zlib \
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  CONFARGS += \
+	--libexecdir=/$(libexecdir) \
+	--without-included-gettext \
+	--enable-threads=posix
+endif
+
+CONFARGS += $(if $(filter yes,$(with_nls)),--enable-nls,--disable-nls)
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+  CONFARGS += --with-gxx-include-dir=/$(cxx_inc_dir)
+endif
+
+ifeq ($(versioned_packages),yes)
+  CONFARGS += --program-suffix=-$(BASE_VERSION)
+endif
+
+ifneq ($(with_sysroot),)
+  CONFARGS += --with-sysroot=$(with_sysroot)
+endif
+
+ifneq ($(with_bootstrap),)
+  CONFARGS += --enable-bootstrap=$(with_bootstrap)
+endif
+
+ifeq ($(force_gnu_locales),yes)
+  CONFARGS += --enable-clocale=gnu
+endif
+
+ifeq ($(with_cxx)-$(with_debug),yes-yes)
+  CONFARGS += --enable-libstdcxx-debug
+endif
+
+ifeq ($(with_java),yes)
+  ifeq ($(with_java_maintainer_mode),yes)
+    CONFARGS += --enable-java-maintainer-mode
+  endif
+  ifeq ($(with_java_biarch_awt),yes)
+    CONFARGS += --enable-java-awt=$(subst $(SPACE),$(COMMA),$(foreach p,$(java_awt_peers),$(p)-default))
+  else
+    CONFARGS += --enable-java-awt=$(subst $(SPACE),$(COMMA),$(foreach p,$(java_awt_peers),$(p)))
+  endif
+  ifneq (,$(findstring gtk,$(java_awt_peers)))
+    CONFARGS += --enable-gtk-cairo
+  endif
+  CONFARGS += $(if $(filter yes,$(with_java_plugin)),--enable-plugin,--disable-plugin)
+  ifeq ($(PKGSOURCE),gcc-snapshot)
+    CONFARGS += --with-java-home=/$(PF)/jre
+  else
+    CONFARGS += --with-java-home=/$(PF)/lib/jvm/java-1.5.0-gcj-$(BASE_VERSION)-1.5.0.0/jre
+  endif
+  CONFARGS += --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
+endif
+
+ifeq ($(with_objc)-$(with_objc_gc),yes-yes)
+  CONFARGS += --enable-objc-gc
+endif
+
+ifeq ($(with_fortran),yes)
+  CONFARGS += --enable-mpfr
+endif
+
+ifneq ($(with_mudflap),yes)
+  CONFARGS += --disable-libmudflap
+endif
+
+ifeq ($(findstring i486-linux,$(DEB_TARGET_GNU_TYPE)),i486-linux)
+    ifeq ($(biarch),yes)
+      CONFARGS += --enable-targets=all
+    endif
+endif
+
+ifeq ($(findstring x86_64-linux,$(DEB_TARGET_GNU_TYPE)),x86_64-linux)
+    ifneq ($(biarch32),yes)
+      CONFARGS += --disable-multilib
+    endif
+endif
+
+ifneq ($(with_ssp),yes)
+  CONFARGS += --disable-libssp
+endif
+
+ifeq ($(with_gcj),yes)
+    ifeq ($(DEB_HOST_GNU_CPU),m32r)
+	CONFARGS += --enable-libgcj
+    endif
+endif
+
+ifeq ($(findstring powerpc-linux,$(DEB_TARGET_GNU_TYPE)),powerpc-linux)
+    ifeq ($(biarch),yes)
+      CONFARGS += --disable-softfloat --enable-secureplt \
+	--enable-targets=powerpc-linux,powerpc64-linux --with-cpu=default32
+    else
+      CONFARGS += --disable-multilib
+    endif
+endif
+
+ifneq (,$(findstring softfloat,$(DEB_TARGET_GNU_CPU)))
+  CONFARGS += --with-float=soft
+endif
+
+ifneq (,$(findstring arm-vfp,$(DEB_TARGET_GNU_CPU)))
+  CONFARGS += --with-fpu=vfp
+endif
+
+ifneq (,$(findstring arm-linux-gnueabi,$(DEB_TARGET_GNU_TYPE)))
+  CONFARGS += --disable-sjlj-exceptions
+endif
+
+ifeq ($(DEB_TARGET_GNU_CPU),$(findstring $(DEB_TARGET_GNU_CPU),m68k))
+  CONFARGS += --disable-werror
+endif
+
+ifeq ($(findstring sparc-linux,$(DEB_TARGET_GNU_TYPE)),sparc-linux)
+  ifeq ($(biarch),yes)
+    CONFARGS += --with-cpu=v8
+  endif
+endif
+
+ifeq ($(findstring sh4-linux,$(DEB_TARGET_GNU_TYPE)),sh4-linux)
+  CONFARGS += --with-multilib-list=m4,m4-nofpu --with-cpu=sh4
+endif
+
+# lpia
+ifeq ($(DEB_TARGET_ARCH),lpia)
+  CONFARGS += --with-arch=i686 --with-tune=i586
+endif
+
+ifeq ($(DEB_TARGET_ARCH_OS),linux)
+  ifneq (,$(findstring $(DEB_TARGET_ARCH), alpha powerpc ppc64 s390 s390x sparc sparc64))
+    ifeq ($(DEB_TARGET_ARCH),alpha)
+      glibc_version := $(shell dpkg -s libc6.1 | awk '/^Version:/ {print $$2}')
+    else
+      glibc_version := $(shell dpkg -s libc6 | awk '/^Version:/ {print $$2}')
+    endif
+    with_ldbl128 := $(shell dpkg --compare-versions $(glibc_version) gt 2.3.99 && echo yes)
+    ifeq ($(with_ldbl128),yes)
+      CONFARGS += --with-long-double-128
+    endif
+  endif
+endif
+
+ifeq ($(findstring ia64-linux,$(DEB_TARGET_GNU_TYPE)),ia64-linux)
+  CONFARGS += --with-system-libunwind
+endif
+
+ifeq ($(findstring i486,$(DEB_TARGET_GNU_TYPE)),i486)
+  # conflicts with biarch builds, see cpu-default-i486 patch
+  #CONFARGS += --with-arch=i486
+endif
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  ifeq ($(findstring --disable-werror, $(CONFARGS)),)
+    CONFARGS += --disable-werror
+  endif
+else
+  CONFARGS += --enable-checking=release
+endif
+
+ifneq ($(DEB_CROSS),yes)
+  CONFARGS += \
+	--build=$(DEB_BUILD_GNU_TYPE) \
+	--host=$(DEB_HOST_GNU_TYPE) \
+	--target=$(TARGET_ALIAS)
+else
+  CONFARGS += \
+	--program-prefix=$(TARGET_ALIAS)- \
+	--includedir=/$(PF)/$(DEB_TARGET_GNU_TYPE)/include \
+	--build=$(DEB_BUILD_GNU_TYPE) \
+	--host=$(DEB_HOST_GNU_TYPE) \
+	--target=$(TARGET_ALIAS)
+endif
+
+ifeq ($(with_bootstrap),)
+  # no profiledbootstrap on the following architectures
+  # - m68k: we're happy that it builds at all
+  # - ia64: doesn't work, see PR16108
+  # - hppa: when using gcc-3.3.4 as stage1 compiler, nearly all of the
+  #   tests in the libstdc++-v3 testsuite fail
+  no_profiled_bs_archs := hppa ia64 m68k
+  ifneq (,$(findstring $(DEB_TARGET_GNU_CPU),$(no_profiled_bs_archs)))
+    bootstrap_target = bootstrap-lean
+  else
+    bootstrap_target = profiledbootstrap
+  endif
+endif
+bootstrap_target = bootstrap-lean
+
+# Increase the timeout for one testrun on slow architectures
+ifeq ($(DEB_TARGET_GNU_CPU), $(findstring $(DEB_TARGET_GNU_CPU),arm armel hppa m68k sparc))
+  DEJAGNU_TIMEOUT=600
+else
+  DEJAGNU_TIMEOUT=450
+endif
+ifeq ($(DEB_TARGET_GNU_SYSTEM),gnu)
+  DEJAGNU_TIMEOUT=900
+endif
+
+DEJAGNU_RUNS =
+ifeq ($(with_ssp),yes)
+  ifeq ($(with_ssp_default),yes)
+    DEJAGNU_RUNS += -fno-stack-protector
+  else
+    DEJAGNU_RUNS += -fstack-protector
+  endif
+endif
+ifeq ($(with_32bit_check),yes)
+  DEJAGNU_RUNS += -m32
+endif
+ifeq ($(with_64bit_check),yes)
+  DEJAGNU_RUNS += -m64
+endif
+# the builds already take that long
+ifneq (,$(findstring $(DEB_TARGET_GNU_CPU),arm armel m68k))
+  DEJAGNU_RUNS =
+endif
+
+# gdc is not multilib'd
+ifneq (,$(findstring gdc, $(PKGSOURCE)))
+  DEJAGNU_RUNS =
+endif
+
+ifneq (,$(DEJAGNU_RUNS))
+  RUNTESTFLAGS = RUNTESTFLAGS="--target_board=unix\{,$(subst $(SPACE),$(COMMA),$(strip $(DEJAGNU_RUNS)))\}"
+endif
+
+default: build
+
+configure: $(configure_dependencies)
+
+$(configure_dummy_stamp):
+	touch $(configure_dummy_stamp)
+
+$(configure_stamp):
+	dh_testdir
+	: # give information about the build process
+	@echo "------------------------ Build process variables ------------------------"
+	@echo "Number of parallel processes used for the build: $(USE_CPUS)"
+	@echo "Package source: $(PKGSOURCE)"
+	@echo "GCC version: $(GCC_VERSION)"
+	@echo "Base Debian version: $(BASE_VERSION)"
+	@echo -e "Configured with: $(foreach i,$(CONFARGS),$(i)\n\t)"
+ifeq ($(DEB_CROSS),yes)
+	@echo "Building cross compiler for $(DEB_TARGET_ARCH)"
+endif
+	@echo "Using shell $(SHELL)"
+	@echo "Architecture: $(DEB_TARGET_ARCH) (GNU: $(TARGET_ALIAS))"
+	@echo "CPPFLAGS: $(CPPFLAGS)"
+	@echo "CFLAGS: $(CFLAGS)"
+	@echo "LDFLAGS: $(LDFLAGS)"
+	@echo "BOOT_CFLAGS: $(BOOT_CFLAGS)"
+	@echo "DEBIAN_BUILDARCH: $(DEBIAN_BUILDARCH)"
+	@echo "Install prefix: /$(PF)"
+ifeq ($(biarch),yes)
+	@echo "Will build the biarch compilers (32/64, defaulting to 32bit)"
+else
+  ifeq ($(biarch32),yes)
+	@echo "Will build the biarch compilers (64/32, defaulting to 64bit)"
+  else
+	@echo "Will not build the biarch compilers"
+  endif
+endif
+
+ifeq ($(with_cxx),yes)
+	@echo "Will build the C++ compiler"
+else
+	@echo "Will not build the C++ compiler: $(with_cxx)"
+endif
+ifeq ($(with_objc),yes)
+	@echo "Will build the ObjC compiler."
+    ifeq ($(with_objc_gc),yes)
+	@echo "Will build the extra ObjC runtime for garbage collection."
+    else
+	@echo "Will not build the extra ObjC runtime for garbage collection."
+    endif
+else
+	@echo "Will not build the ObjC compiler: $(with_objc)"
+endif
+ifeq ($(with_objcxx),yes)
+	@echo "Will build the Obj-C++ compiler"
+else
+	@echo "Will not build the Obj-C++ compiler: $(with_objcxx)"
+endif
+ifeq ($(with_fortran),yes)
+	@echo "Will build the Fortran 95 compiler."
+else
+	@echo "Will not build the Fortran 95 compiler: $(with_fortran)"
+endif
+ifeq ($(with_java),yes)
+	@echo "Will build the Java compiler."
+else
+	@echo "Will not build the Java compiler: $(with_java)"
+endif
+ifeq ($(with_pascal),yes)
+	@echo "Will build the Pascal compiler."
+else
+	@echo "Will not build the Pascal compiler: $(with_pascal)"
+endif
+ifeq ($(with_ada),yes)
+	@echo "Will build the Ada compiler."
+  ifeq ($(with_libgnat),yes)
+	@echo "Will build the shared Ada libraries."
+  else
+	@echo "Will not build the shared Ada libraries."
+  endif
+else
+	@echo "Will not build the Ada compiler: $(with_ada)"
+endif
+ifeq ($(with_d),yes)
+	@echo "Will build the D compiler."
+  ifeq ($(with_libphobos),yes)
+	@echo "Will build the phobos D runtime library."
+  else
+	@echo "Will not build the phobos D runtime library: $(with_libphobos)"
+  endif
+else
+	@echo "Will not build the D compiler: $(with_d)"
+endif
+ifeq ($(with_libffi),yes)
+	@echo "Will build the FFI library."
+else
+	@echo "Will not build the FFI library: $(with_libffi)"
+endif
+ifeq ($(with_ssp),yes)
+	@echo "Will build with SSP support."
+else
+	@echo "Will build without SSP support: $(with_ssp)"
+endif
+ifeq ($(with_check),yes)
+	@echo "Will run the testsuite."
+  ifeq ($(biarch),yes)
+	@echo 'Will run the testsuite with -m64: $(with_64bit_check)'
+  endif
+  ifeq ($(biarch32),yes)
+	@echo 'Will run the testsuite with -m32: $(with_32bit_check)'
+  endif
+else
+	@echo "Will not run the testsuite: $(with_check)"
+endif
+ifeq ($(with_nls),yes)
+	@echo "Will enable national language support."
+else
+	@echo "Will disable national language support: $(with_nls)"
+endif
+	@echo "-----------------------------------------------------------------------------"
+	@echo ""
+ifeq ($(with_check),yes)
+	@if echo "spawn true" | /usr/bin/expect -f - >/dev/null; then \
+	  : ; \
+	else \
+	  echo "expect is failing on your system with the above error, which means the GCC"; \
+	  echo "testsuite will fail.  Please resolve the above issues and retry the build."; \
+	  echo "-----------------------------------------------------------------------------"; \
+	  exit 1; \
+	fi
+endif
+	rm -f $(configure_stamp) $(build_stamp)
+	: # generate debian/README.Debian
+	cat debian/README $(patch_stamp) > debian/README.Debian
+
+	rm -rf $(builddir)
+	mkdir $(builddir)
+
+	: # configure
+	cd $(builddir) \
+	  && PATH=$(PWD)/bin:$$PATH \
+		CC="$(CC)" \
+		$(SET_SHELL) \
+	LD_LIBRARY_PATH=$${LD_LIBRARY_PATH:+$$LD_LIBRARY_PATH:}$(builddir)/gcc/ada/rts \
+		../src/configure $(CONFARGS)
+
+	mkdir -p $(builddir)/gcc
+	( \
+	  echo '#define __$(subst -,_,$(DEB_TARGET_GNU_TYPE))__'; \
+	  echo ''; \
+	  echo '  { "",  "$(DEB_TARGET_GNU_TYPE)"},'; \
+	  cat debian/multiarch.inc; \
+	) > $(builddir)/gcc/multiarch.inc
+	cp -p $(builddir)/gcc/multiarch.inc $(srcdir)/gcc/
+
+	touch $(configure_stamp)
+
+build: $(build_dependencies)
+
+$(build_dummy_stamp):
+	touch $(build_dummy_stamp)
+
+$(build_locale_stamp):
+ifeq ($(locale_data),generate)
+	: # build locales needed by libstdc++ testsuite
+	rm -rf locales
+	mkdir locales
+	- sh debian/locale-gen
+endif
+	touch $(build_locale_stamp)
+
+
+$(build_stamp): $(configure_stamp) $(build_locale_stamp)
+	dh_testdir
+	rm -f bootstrap-protocol
+# DEB_CROSS is never set if REVERSE_CROSS is set and vice-versa.
+# DEB_CROSS build
+ifeq ($(DEB_CROSS),yes)
+	: # build cross compiler for $(TARGET_ALIAS)
+	( \
+	  set +e; \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_LOCPATH) \
+	    $(MAKE) -C $(builddir) $(NJOBS) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		; \
+	  echo $$? > status; \
+	) 2>&1 | tee bootstrap-protocol
+	s=`cat status`; rm -f status; test $$s -eq 0
+else
+  # REVERSE_CROSS build
+  ifeq ($(REVERSE_CROSS),yes)
+	: # build cross compiler for $(TARGET_ALIAS)
+	( \
+	  set +e; \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_LOCPATH) \
+	    $(MAKE) -C $(builddir) $(NJOBS) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		; \
+	  echo $$? > status; \
+	) 2>&1 | tee bootstrap-protocol
+	s=`cat status`; rm -f status; test $$s -eq 0
+else
+  # Native build
+  ifeq ($(with_java),yes)
+	mkdir -p bin
+	ln -sf /usr/bin/fastjar bin/jar
+    ifeq ($(with_native_ecj),yes)
+	: # prepare the standalone ecj jar
+	cp /usr/share/java/ecj.jar $(srcdir)/ecj-standalone.jar
+	zip -d $(srcdir)/ecj-standalone.jar 'org/eclipse/jdt/core/JDTCompilerAdapter*'
+    endif
+	( \
+	  echo '#!/bin/sh'; \
+	  echo 'exec gij-4.2 -cp /usr/share/java/ecj.jar org.eclipse.jdt.internal.compiler.batch.GCCMain "$$@"'; \
+	) > bin/ecj1
+	chmod +x bin/ecj1
+    ifeq ($(with_java_maintainer_mode),yes)
+	: # If we don't have gjavah in PATH, try to build it with the old gij
+	mkdir -p bin
+	if [ -x /usr/bin/gjavah-4.2 ]; then \
+	  ln -sf /usr/bin/gjavah-4.2 bin/gjavah; \
+	elif [ -x bin/gjavah ]; then \
+	  : ; \
+	else \
+	  mkdir -p $(builddir)/java_hacks; \
+	  cd $(builddir)/java_hacks; \
+	  cp -a $(srcdir)/libjava/classpath/tools/external external; \
+	  mkdir -p gnu/classpath/tools; \
+	  cp -a $(srcdir)/libjava/classpath/tools/gnu/classpath/tools/{common,javah,getopt} \
+	    gnu/classpath/tools/; \
+	  cp -a $(srcdir)/libjava/classpath/resource/gnu/classpath/tools/common/Messages.properties \
+	    gnu/classpath/tools/common; \
+	  cd external/asm; \
+	  for i in `find . -name \*.java`; do gcj-4.2 --encoding ISO-8859-1 -C $$i -I.; done; \
+	  cd ../..; \
+	  for i in `find gnu -name \*.java`; do gcj-4.2 -C $$i -I. -Iexternal/asm/; done; \
+	  gcj-4.2 -findirect-dispatch -O2 -fmain=gnu.classpath.tools.javah.Main \
+	    -I. -Iexternal/asm/ `find . -name \*.class` -o $(PWD)/bin/gjavah.real; \
+	  ( \
+	    echo '#!/bin/sh'; \
+	    echo 'export CLASSPATH='`pwd`'$${CLASSPATH:+:$$CLASSPATH}'; \
+	    echo 'exec $(PWD)/bin/gjavah.real "$$@"'; \
+	  ) > $(PWD)/bin/gjavah; \
+	  chmod +x $(PWD)/bin/gjavah; \
+	fi
+    endif
+  endif
+	: # build native compiler
+	( \
+	  set +e; \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	  $(SET_LOCPATH) \
+	    $(MAKE) -C $(builddir) $(NJOBS) $(bootstrap_target) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(STAGE1_CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		; \
+	  echo $$? > status; \
+	) 2>&1 | tee bootstrap-protocol
+	s=`cat status`; rm -f status; test $$s -eq 0
+endif
+endif
+	-chmod 755 $(srcdir)/contrib/warn_summary
+	if [ -x $(srcdir)/contrib/warn_summary ]; then \
+	  rm -f bootstrap-summary; \
+	  $(srcdir)/contrib/warn_summary bootstrap-protocol \
+	    > bootstrap-summary; \
+	fi
+
+	touch $(build_stamp)
+
+ifeq ($(versioned_packages),yes)
+  hppa64_configure_flags += --program-suffix=-$(BASE_VERSION)
+endif
+
+$(configure_hppa64_stamp): $(build_stamp)
+	dh_testdir
+	rm -f $(configure_hppa64_stamp) $(build_hppa64_stamp)
+	rm -rf $(builddir_hppa64)
+	mkdir $(builddir_hppa64)
+	: # configure
+	cd $(builddir_hppa64) && \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	  CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+	     ../src/configure \
+		--enable-languages=c \
+		--prefix=/$(PF) \
+		--libexecdir=/$(libexecdir) \
+		--disable-shared \
+		--disable-nls \
+		--disable-threads \
+		--disable-libffi \
+		--disable-libgomp \
+		--disable-libmudflap \
+		--disable-libssp \
+		--with-as=/usr/bin/hppa64-linux-gnu-as \
+		--with-ld=/usr/bin/hppa64-linux-gnu-ld \
+		--includedir=/usr/hppa64-linux-gnu/include \
+		--host=hppa-linux-gnu \
+		--build=hppa-linux-gnu \
+		--target=hppa64-linux-gnu
+
+	mkdir -p $(builddir_hppa64)/gcc
+	( \
+	  echo '#define __$(subst -,_,hppa64-linux-gnu)__'; \
+	  echo ''; \
+	  echo '  { "",  "hppa64-linux-gnu"},'; \
+	) > $(builddir_hppa64)/gcc/multiarch.inc
+	cp -p $(builddir_hppa64)/gcc/multiarch.inc $(srcdir)/gcc/
+
+	touch $(configure_hppa64_stamp)
+
+$(build_hppa64_stamp): $(configure_hppa64_stamp)
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	  $(SET_LOCPATH) \
+	    $(MAKE) -C $(builddir_hppa64) $(NJOBS) \
+		CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS)
+	touch $(build_hppa64_stamp)
+
+$(configure_ia6432_stamp): $(build_stamp)
+	dh_testdir
+	rm -f $(configure_ia6432_stamp) $(build_ia6432_stamp)
+	rm -rf $(builddir_ia6432)
+	mkdir $(builddir_ia6432)
+	: # configure
+	cd $(builddir_ia6432) && \
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	  CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+	     ../src/configure \
+		--enable-languages=c \
+		--prefix=/$(PF) \
+		--libexecdir=/$(libexecdir) \
+		--disable-nls \
+		--disable-libmudflap \
+		--program-suffix=-$(BASE_VERSION) \
+		--host=ia64-linux-gnu \
+		--build=ia64-linux-gnu \
+		--target=i486-linux-gnu
+	touch $(configure_ia6432_stamp)
+
+$(build_ia6432_stamp): $(configure_ia6432_stamp)
+	  PATH=$(PWD)/bin:$$PATH \
+	  $(SET_SHELL) \
+	    $(MAKE) -C $(builddir_ia6432) $(NJOBS) \
+		CC="$(builddir)/gcc/xgcc -B$(builddir)/gcc/" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS)
+	touch $(build_ia6432_stamp)
+
+
+MANUALS = \
+	$(srcdir)/gcc/doc/cpp.texi \
+	$(srcdir)/gcc/doc/cppinternals.texi \
+	$(srcdir)/gcc/doc/gcc.texi \
+	$(srcdir)/gcc/doc/gccint.texi
+ifeq ($(with_fortran),yes)
+  MANUALS += $(srcdir)/gcc/fortran/gfortran.texi
+endif
+ifeq ($(with_java),yes)
+  MANUALS += $(srcdir)/gcc/java/gcj.texi
+endif
+ifeq ($(with_ada),yes)
+  MANUALS += \
+	$(builddir)/gcc/doc/gnat_ugn_unw.texi \
+	$(srcdir)/gcc/ada/gnat_rm.texi \
+	$(srcdir)/gcc/ada/gnat-style.texi
+endif
+ifeq ($(with_pascal),yes)
+  MANUALS += \
+	$(srcdir)/gcc/p/doc/en/gpc.texi \
+	$(srcdir)/gcc/p/doc/en/gpcs.texi
+endif
+ifeq ($(with_gomp),yes)
+  MANUALS += $(srcdir)/libgomp/libgomp.texi
+endif
+
+html-docs: $(build_html_stamp)
+#$(build_html_stamp): html-texi2html
+#$(build_html_stamp): html-makeinfo
+$(build_html_stamp): html-makeinfo-nosplit
+
+html-texi2html:
+	rm -rf html $(builddir)/gcc/html
+	mkdir $(builddir)/gcc/html
+	ln -s $(builddir)/gcc/html html
+	cd $(builddir)/gcc; \
+	for manual in $(MANUALS); do \
+	  outname=`basename $${manual} .texi`; \
+	  echo "generating $$outname ..."; \
+	  texi2html -number -split chapter \
+		-I $(srcdir)/gcc/doc/include \
+		-I $(srcdir)/gcc/p/doc \
+		-I $(srcdir)/gcc/p/doc/generated \
+		-I `dirname $${manual}` \
+		-I $(builddir)/gcc \
+		-subdir html \
+		$${manual}; \
+	done
+
+html-makeinfo:
+	rm -rf html
+	mkdir html
+	cd $(builddir)/gcc; \
+	for manual in $(MANUALS); do \
+	  manual=`find $(srcdir) -name $${file}.texi`; \
+	  outname=`basename $${manual} .texi`; \
+	  echo "generating $$outname ..."; \
+	  if [ "$${manual}" ]; then \
+	    makeinfo --html --number-sections \
+		-I $(srcdir)/gcc/doc/include -I `dirname $${manual}` \
+		-I $(srcdir)/gcc/p/doc \
+		-I $(srcdir)/gcc/p/doc/generated \
+		-I $(builddir)/gcc \
+		-o $${outname} \
+		$${manual}; \
+	  fi; \
+	done
+
+html-makeinfo-nosplit:
+	rm -rf html
+	mkdir html
+	cd $(builddir)/gcc; \
+	for manual in $(MANUALS); do \
+	  outname=`basename $${manual} .texi`.html; \
+	  echo "generating $$outname ..."; \
+	  makeinfo --html --number-sections --no-split \
+		-I $(srcdir)/gcc/doc/include -I `dirname $${manual}` \
+		-I $(srcdir)/gcc/p/doc \
+		-I $(srcdir)/gcc/p/doc/generated \
+		-I $(builddir)/gcc \
+		-o $(PWD)/html/$${outname} \
+		$${manual}; \
+	done
+
+# start the script only on architectures known to have slow autobilders ...
+logwatch_archs := arm armel m68k mips mipsel sparc
+ifeq ($(DEB_HOST_GNU_CPU), $(findstring $(DEB_HOST_GNU_CPU),$(logwatch_archs)))
+  start_logwatch = yes
+endif
+ifeq ($(DEB_HOST_GNU_SYSTEM),gnu)
+  start_logwatch = yes
+endif
+
+check: $(check_stamp) #$(check_inst_stamp)
+$(check_stamp): $(build_stamp) $(build_locale_stamp)
+	rm -f test-protocol
+
+ifeq ($(start_logwatch),yes)
+	: # start logwatch script for regular output during test runs
+	chmod +x debian/logwatch.sh
+	-debian/logwatch.sh -t 900 -p $(builddir)/logwatch.pid \
+		-m '\ntestsuite still running ...\n' \
+		test-protocol \
+		$(builddir)/gcc/testsuite/gcc/gcc.log \
+		$(builddir)/gcc/testsuite/g++/g++.log \
+		$(builddir)/gcc/testsuite/gfortran/gfortran.log \
+		$(builddir)/gcc/testsuite/objc/objc.log \
+		$(builddir)/gcc/testsuite/obj-c++/obj-c++.log \
+		$(builddir)/gcc/testsuite/gnat/gnat.log \
+		$(builddir)/gcc/testsuite/ada/acats/acats.log \
+		$(builddir)/gcc/testsuite/gfortran/gfortran.log \
+		$(builddir)/gcc/p/test/test_log \
+		$(buildlibdir)/libstdc++-v3/testsuite/libstdc++-v3.log \
+		$(buildlibdir)/libjava/testsuite/libjava.log \
+		$(buildlibdir)/libmudflap/testsuite/libmudflap.log \
+		$(buildlibdir)/libgomp/testsuite/libgomp.log \
+		$(buildlibdir)/libffi/testsuite/libffi.log \
+		&
+endif
+
+ifeq ($(with_ada),yes)
+	chmod +x debian/acats-killer.sh
+	-debian/acats-killer.sh -p $(builddir)/acats-killer.pid \
+		$(builddir)/gcc/testsuite/ada/acats/acats.log \
+		$(builddir)/gcc/testsuite/g++.log \
+		&
+endif
+
+ifeq ($(with_ada),yes)
+ifneq ($(PKGSOURCE),gcc-snapshot)
+# seems to be necessary for all archs
+# see above, hppa & gnatlib-shared-dual target
+#  ifeq ($(with_libgnat_shared_dual),yes)
+	if [ ! -f $(builddir)/gcc/ada/rts/libgnat-$(GNAT_SONAME).so ]; then \
+	  ln -sf libgnat-$(GNAT_SONAME).so.1 \
+	    $(builddir)/gcc/ada/rts/libgnat-$(GNAT_SONAME).so; \
+	fi
+	if [ ! -f $(builddir)/gcc/ada/rts/libgnarl-$(GNAT_SONAME).so ]; then \
+	  ln -sf libgnarl-$(GNAT_SONAME).so.1 \
+	    $(builddir)/gcc/ada/rts/libgnarl-$(GNAT_SONAME).so; \
+	fi
+#  endif
+endif
+endif
+
+	echo "Running testsuite ..."
+	-$(ULIMIT_M); \
+	    $(SET_SHELL) \
+	    $(SET_LOCPATH) \
+	    PATH=$(PWD)/bin:$$PATH \
+	    EXTRA_TEST_PFLAGS=-g0 \
+	    DEJAGNU_TIMEOUT=$(DEJAGNU_TIMEOUT) \
+		$(MAKE) -C $(checkdir) -k $(NJOBS) \
+		    check $(RUNTESTFLAGS) 2>&1 | tee test-protocol
+
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+	-if [ -f $(builddir)/logwatch.pid ]; then \
+	  kill -1 `cat $(builddir)/logwatch.pid`; \
+	  sleep 1; \
+	  kill -9 `cat $(builddir)/logwatch.pid`; \
+	  rm -f $(builddir)/logwatch.pid; \
+	fi
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+
+ifeq ($(with_ada),yes)
+	-if [ -f $(builddir)/acats-killer.pid ]; then \
+	  kill -1 `cat $(builddir)/acats-killer.pid`; \
+	  sleep 1; \
+	  kill -9 `cat $(builddir)/acats-killer.pid`; \
+	  rm -f $(builddir)/acats-killer.pid; \
+	fi
+endif
+
+	: # running the libjava testsuite alone is missing this information
+	$(builddir)/gcc/xgcc -B$(builddir)/gcc/ -v > $(builddir)/compiler_version.sum 2>&1
+
+	-chmod 755 $(srcdir)/contrib/test_summary
+	if [ -x $(srcdir)/contrib/test_summary ]; then \
+	  rm -f test-summary; \
+	  ( \
+	    cd $(builddir); \
+	    echo '' > ts-include; \
+	    echo '' >> ts-include; \
+	    if [ -f $(builddir)/gcc/.bad_compare ]; then \
+	      echo 'Bootstrap comparison failure:' >> ts-include; \
+	      cat $(builddir)/gcc/.bad_compare >> ts-include; \
+	      echo '' >> ts-include; \
+	      echo '' >> ts-include; \
+	    fi; \
+	    echo "Build Dependencies:" >> ts-include; \
+	    dpkg -l binutils `echo '$(LIBC_DEP)' | awk '{print $$1}'` \
+	        >> ts-include; \
+	    echo '' >> ts-include; \
+	    cat ../$(patch_stamp) >> ts-include; \
+	    BOOT_CFLAGS="$(BOOT_CFLAGS)" \
+	      $(srcdir)/contrib/test_summary \
+		-i ts-include -m "$(S_EMAIL)" \
+	  ) > raw-test-summary; \
+	  if [ -n "$(testsuite_tarball)" ]; then \
+	    echo "Test suite used: $(testsuite_srcdir)" > test-summary; \
+	    echo "  Do not interpret the results on its own" >> test-summary; \
+	    echo "  but compare them with the results from" >> test-summary; \
+	    echo "  the gcc-snapshot package." >> test-summary; \
+	  fi; \
+	  sed -n '/^Mail/s/.*"\([^"][^"]*\)".*/\1/p' raw-test-summary \
+		>> test-summary; \
+	  awk '/^cat/, /^EOF/' raw-test-summary | grep -v EOF >> test-summary; \
+	  if [ -f bootstrap-summary -a "$(bootstrap_target)" != profiledbootstrap ]; then \
+	    echo '' >> test-summary; \
+	    cat bootstrap-summary >> test-summary; \
+	  fi; \
+	  echo 'BEGIN test-summary'; \
+	  cat test-summary; \
+	  echo 'END test-summary'; \
+	fi
+
+	touch $(check_stamp)
+
+$(check_inst_stamp): $(check_stamp)
+	rm -f test-inst-protocol
+
+ifeq ($(start_logwatch),yes)
+	: # start logwatch script for regular output during test runs
+	chmod +x debian/logwatch.sh
+	-debian/logwatch.sh -t 900 -p $(builddir)/logwatch-inst.pid \
+		-m '\ntestsuite (3.3) still running ...\n' \
+		test-inst-protocol \
+		check-inst/{gcc,g++,g77,objc}.log \
+		&
+endif
+
+	rm -rf check-inst
+	mkdir check-inst
+
+	echo "Running testsuite ..."
+	-$(ULIMIT_M) ; \
+	    $(SET_SHELL) \
+	    $(SET_LOCPATH) \
+	    EXTRA_TEST_PFLAGS=-g0 \
+	    DEJAGNU_TIMEOUT=$(DEJAGNU_TIMEOUT) \
+	  cd check-inst && $(srcdir)/contrib/test_installed \
+	    --with-gcc=gcc-3.3 --with-g++=g++-3.3 --with-g77=g77-3.3 \
+		2>&1 | tee test-inst-protocol
+
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+	if [ -f $(builddir)/logwatch-inst.pid ]; then \
+	  kill -1 `cat $(builddir)/logwatch-inst.pid`; \
+	else \
+	  true; \
+	fi
+	-ps aux | fgrep logwatch | fgrep -v fgrep
+
+	-chmod 755 $(srcdir)/contrib/test_summary
+	if [ -x $(srcdir)/contrib/test_summary ]; then \
+	  rm -f test-inst-summary; \
+	  ( \
+	    cd check-inst; \
+	    echo '' > ts-include; \
+	    echo '' >> ts-include; \
+	    echo "Build Dependencies:" >> ts-include; \
+	    dpkg -l g++-3.3 binutils `echo '$(LIBC_DEP)' | awk '{print $$1}'` \
+	        >> ts-include; \
+	    echo '' >> ts-include; \
+	    echo 'Results for the installed GCC-3.3 compilers' >> ts-include; \
+	    $(srcdir)/contrib/test_summary \
+		-i ts-include -m "$(S_EMAIL)" \
+	  ) > raw-test-inst-summary; \
+	  sed -n '/^Mail/s/.*"\([^"][^"]*\)".*/\1/p' raw-test-inst-summary \
+		>> test-inst-summary; \
+	  awk '/^cat/, /^EOF/' raw-test-inst-summary \
+		| grep -v EOF >> test-inst-summary; \
+	  echo 'BEGIN test-installed-summary'; \
+	  cat test-inst-summary; \
+	  echo 'END test-installed-summary'; \
+	fi
+
+	chmod 755 debian/reduce-test-diff.awk
+	if diff -u test-inst-summary test-summary \
+		| debian/reduce-test-diff.awk > diff-summary; \
+	then \
+	  mv -f diff-summary testsuite-comparision; \
+	else \
+	  ( \
+	    echo "WARNING: New failures in gcc-3.4 compared to gcc-3.3"; \
+	    echo ''; \
+	    cat diff-summary; \
+	  ) > testsuite-comparision; \
+	  rm -f diff-summary; \
+	fi
+	touch $(check_inst_stamp)
+
+clean: debian/control
+	dh_testdir
+	rm -f pxxx status
+	rm -f *-summary *-protocol testsuite-comparision summary-diff
+ifeq ($(with_pascal),yes)
+	-rm -f $(srcdir)/gcc/p/doc/*info
+	rm -f $(srcdir)/gcc/p/test/{fjf51,fjf141aa,fjf199aa,magic,?,knownbugs/a.out}
+endif
+	if [ -f $(srcdir)/gcc/p/config-lang.in.debian ]; then \
+	  mv -f $(srcdir)/gcc/p/config-lang.in.debian $(srcdir)/gcc/p/config-lang.in; \
+	else true; fi
+	rm -f $(srcdir)/gcc/po/*.gmo
+	rm -f debian/lib{ffi,g2c,gcc,gcj,objc,stdc++}{-v3,[0-9]}*.{{pre,post}{inst,rm},shlibs}
+	fs=`echo debian/*-BV* debian/*GCJ* debian/*CXX* debian/*LC* debian/*MF* | sort -u`; \
+	for f in $$fs; do \
+	  [ -f $$f ] || continue; \
+	  f2=$$(echo $$f \
+		| sed 's/BV/$(BASE_VERSION)/;s/PV/$(GPC_BASE_VERSION)/;s/CXX/$(CXX_SONAME)/;s/LGCJ/$(PKG_LIBGCJ_EXT)/;s/GCJ/$(PKG_GCJ_EXT)/;s/LC/$(GCC_SONAME)/;s/MF/$(MUDFLAP_SONAME)/'); \
+	  rm -f $$f2; \
+	done
+	rm -f debian/shlibs.local debian/substvars.local
+	rm -f debian/*.debhelper
+	-[ -d debian/bugs ] && $(MAKE) -C debian/bugs clean
+	rm -f debian/README.libstdc++-baseline
+	rm -f debian/lib*gcj-bc.shlibs
+	rm -rf bin locales
+	rm -rf check-inst
+	dh_clean
+
+# -----------------------------------------------------------------------------
+# some abbrevations for the package names and directories;
+# p_XXX is the package name, d_XXX is the package directory
+# these macros are only used in the binary-* targets.
+
+ifeq ($(versioned_packages),yes)
+  pkg_ver := -$(BASE_VERSION)
+endif
+
+ifneq ($(DEB_CROSS),yes)
+  p_base = gcc$(pkg_ver)-base
+  p_gcc  = gcc$(pkg_ver)
+  p_cpp  = cpp$(pkg_ver)
+  p_cppd = cpp$(pkg_ver)-doc
+  p_cxx  = g++$(pkg_ver)
+  p_doc  = gcc$(pkg_ver)-doc
+  p_lgcc = libgcc$(GCC_SONAME)
+else
+  # only triggered if DEB_CROSS set
+  p_base = gcc$(pkg_ver)$(cross_bin_arch)-base
+  p_cpp  = cpp$(pkg_ver)$(cross_bin_arch)
+  p_gcc  = gcc$(pkg_ver)$(cross_bin_arch)
+  p_cxx  = g++$(pkg_ver)$(cross_bin_arch)
+endif
+p_hppa64 = gcc$(pkg_ver)-hppa64
+
+d	= debian/tmp
+d_base	= debian/$(p_base)
+d_gcc	= debian/$(p_gcc)
+d_cpp	= debian/$(p_cpp)
+d_cppd	= debian/$(p_cppd)
+d_cxx	= debian/$(p_cxx)
+d_doc	= debian/$(p_doc)
+d_lgcc	= debian/$(p_lgcc)
+d_hppa64= debian/$(p_hppa64)
+
+common_substvars = \
+	$(shell awk "{printf \"'-V%s' \", \$$0}" debian/substvars.local)
+
+# ---------------------------------------------------------------------------
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  include debian/rules.d/binary-snapshot.mk
+else
+
+ifneq ($(DEB_CROSS),yes)
+# ----------------------------------------
+# native target
+
+ifeq ($(with_gccbase),yes)
+  include debian/rules.d/binary-base.mk
+endif
+ifeq ($(with_libgcc),yes)
+  include debian/rules.d/binary-libgcc.mk
+endif
+
+ifeq ($(with_gccmath),yes)
+  include debian/rules.d/binary-libgccmath.mk
+endif
+
+ifeq ($(with_libgomp),yes)
+  include debian/rules.d/binary-libgomp.mk
+endif
+
+ifeq ($(with_source),yes)
+  include debian/rules.d/binary-source.mk
+endif
+
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-cpp.mk
+endif
+
+ifeq ($(with_proto),yes)
+  include debian/rules.d/binary-proto.mk
+endif
+
+ifeq ($(with_fixincl),yes)
+  include debian/rules.d/binary-fixincl.mk
+endif
+
+ifeq ($(with_mudflap),yes)
+  include debian/rules.d/binary-libmudflap.mk
+endif
+
+ifeq ($(with_libssp),yes)
+  include debian/rules.d/binary-libssp.mk
+endif
+
+ifeq ($(with_objcxx),yes)
+  include debian/rules.d/binary-objcxx.mk
+endif
+
+ifeq ($(with_objc),yes)
+  include debian/rules.d/binary-objc.mk
+endif
+ifeq ($(with_libobjc),yes)
+  include debian/rules.d/binary-libobjc.mk
+endif
+
+# include before cxx
+include debian/rules.d/binary-java.mk
+
+ifeq ($(with_libffi),yes)
+  include debian/rules.d/binary-libffi.mk
+endif
+
+ifeq ($(with_cxxdev),yes)
+  include debian/rules.d/binary-cxx.mk
+endif
+ifeq ($(with_cxx),yes)
+  include debian/rules.d/binary-libstdcxx.mk
+endif
+
+ifeq ($(with_f77),yes)
+  include debian/rules.d/binary-f77.mk
+endif
+
+ifeq ($(with_fortran),yes)
+  include debian/rules.d/binary-fortran.mk
+endif
+
+ifeq ($(with_ada),yes)
+  include debian/rules.d/binary-ada.mk
+endif
+
+ifeq ($(with_pascal),yes)
+  include debian/rules.d/binary-pascal.mk
+endif
+
+ifeq ($(with_d),yes)
+  include debian/rules.d/binary-d.mk
+endif
+
+ifeq ($(with_libnof),yes)
+  ifeq ($(DEB_TARGET_GNU_CPU),powerpc)
+    include debian/rules.d/binary-nof.mk
+  endif
+endif
+
+# gcc must be moved/built after g77 and g++
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-gcc.mk
+endif
+
+ifeq ($(with_hppa64),yes)
+  include debian/rules.d/binary-hppa64.mk
+endif
+
+else
+# ----------------------------------------
+# cross target
+
+ifeq ($(with_gccxbase),yes)
+  include debian/rules.d/binary-base.mk
+endif
+
+ifeq ($(with_libgcc),yes)
+  include debian/rules.d/binary-libgcc-cross.mk
+endif
+
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-cpp-cross.mk
+endif
+
+ifeq ($(with_objcxx),yes)
+  include debian/rules.d/binary-objcxx-cross.mk
+endif
+
+ifeq ($(with_objc),yes)
+  include debian/rules.d/binary-objc-cross.mk
+endif
+ifeq ($(with_libobjc),yes)
+  include debian/rules.d/binary-libobjc-cross.mk
+endif
+
+ifeq ($(with_cxxdev),yes)
+  include debian/rules.d/binary-cxx-cross.mk
+endif
+ifeq ($(with_cxx),yes)
+  include debian/rules.d/binary-libstdcxx-cross.mk
+endif
+
+ifeq ($(with_libnof),yes)
+  ifeq ($(DEB_TARGET_GNU_CPU),powerpc)
+    include debian/rules.d/binary-nof-cross.mk
+  endif
+endif
+
+ifeq ($(with_cdev),yes)
+  include debian/rules.d/binary-gcc-cross.mk
+endif
+
+endif
+endif # ($(PKGSOURCE),gcc-snapshot)
+
+# ----------------------------------------------------------------------
+install: $(install_dependencies)
+
+$(install_dummy_stamp): $(build_dummy_stamp)
+	touch $(install_dummy_stamp)
+
+$(install_snap_stamp): $(build_dependencies)
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+
+	: # Install directories
+	rm -rf $(d)
+	mkdir -p $(d)/$(PF)
+
+ifeq ($(with_hppa64),yes)
+	: # Install hppa64
+	PATH=$(PWD)/bin:$$PATH \
+	    $(MAKE) -C $(builddir_hppa64) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		DESTDIR=$(PWD)/$(d) \
+		    install
+
+	ls -l $(d)/$(PF)/bin
+	if [ ! -x $(d)/$(PF)/bin/hppa64-linux-gnu-gcc ]; then \
+	  mv $(d)/$(PF)/bin/hppa64-linux-gnu-gcc-4* $(d)/$(PF)/bin/hppa64-linux-gnu-gcc; \
+	else \
+	  rm -f $(d)/$(PF)/bin/hppa64-linux-gnu-gcc-4*; \
+	fi
+
+	: # remove files not needed from the hppa64 build
+	rm -rf $(d)/$(PF)/info
+	rm -rf $(d)/$(PF)/man
+	rm -f $(d)/$(PF)/lib/libiberty.a
+	rm -f $(d)/$(PF)/bin/*{protoize,gcov,gccbug,gcc}
+
+	rm -rf $(d)/$(PF)/hppa64-linux-gnu/include
+	rm -rf $(d)/$(PF)/hppa64-linux-gnu/lib
+	set -e; \
+	  cd $(d)/$(PF)/$(libdir)/gcc/hppa64-linux-gnu/$(GCC_VERSION)/include-fixed; \
+	  for i in *; do \
+	    case "$$i" in \
+	      README|features.h|syslimits.h|limits.h) ;; \
+	      linux|$(TARGET_ALIAS)) ;; \
+	      $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu),$(TARGET_ALIAS))) ;; \
+	      *) echo "remove include-fixed/$$i"; rm -rf $$i; \
+	    esac; \
+	  done
+endif
+
+	: # Install everything
+	PATH=$(PWD)/bin:$$PATH \
+	$(SET_SHELL) \
+	  $(MAKE) -C $(builddir) \
+	    $(CFLAGS_TO_PASS) \
+	    $(LDFLAGS_TO_PASS) \
+	    DESTDIR=$(PWD)/$(d) \
+	    infodir=/$(PF)/share/info \
+	    mandir=/$(PF)/share/man \
+		install
+
+	ls -l $(d)/$(PF)/bin
+	if [ ! -x $(d)/$(PF)/bin/$(TARGET_ALIAS)-gcc ]; then \
+	  mv $(d)/$(PF)/bin/$(TARGET_ALIAS)-gcc-4* $(d)/$(PF)/bin/$(TARGET_ALIAS)-gcc; \
+	else \
+	  rm -f $(d)/$(PF)/bin/$(TARGET_ALIAS)-gcc-4*; \
+	fi
+	set -e; \
+	  cd $(d)/$(gcc_lib_dir)/include-fixed; \
+	  for i in *; do \
+	    case "$$i" in \
+	      README|features.h|syslimits.h|limits.h) ;; \
+	      linux|$(TARGET_ALIAS)) ;; \
+	      $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu),$(TARGET_ALIAS))) ;; \
+	      *) echo "remove include-fixed/$$i"; rm -rf $$i; \
+	    esac; \
+	  done
+
+	-ls -l $(d)/usr
+	if [ -d $(d)/usr/man/man1 ]; then \
+	  mv $(d)/usr/man/man1/* $(d)/usr/share/man/man1/; \
+	fi
+
+	chmod 755 debian/dh_*
+	touch $(install_snap_stamp)
+
+$(install_stamp): $(build_stamp)
+	dh_testdir
+	dh_testroot
+	dh_clean -k -N$(p_hppa64)
+	if [ -f $(binary_stamp)-hppa64 ]; then \
+	  mv $(binary_stamp)-hppa64 saved-stamp; \
+	  rm -f $(binary_stamp)*; \
+	  mv saved-stamp $(binary_stamp)-hppa64; \
+	else \
+	  rm -f $(binary_stamp)*; \
+	fi
+
+	: # Install directories
+	rm -rf $(d)
+	mkdir -p $(d)/$(libdir) $(d)/$(PF) $(d)/$(PF)/lib/debug
+ifeq ($(biarch32),yes)
+	mkdir -p $(d)/$(PF)/lib32/debug
+endif
+ifeq ($(biarch),yes)
+	mkdir -p $(d)/$(PF)/lib64/debug
+endif
+
+ifeq ($(DEB_TARGET_GNU_CPU),x86_64)
+	: # link lib to lib64 and $(PF)/lib to $(PF)/lib64
+	: # (this works when CONFARGS contains '--disable-multilib')
+	ln -s $(libdir) $(d)/lib64
+	mkdir -p $(d)/$(PF)/$(libdir)
+	ln -s $(libdir) $(d)/$(PF)/lib64
+endif
+
+	: # Install everything
+	PATH=$(PWD)/bin:$$PATH \
+	$(SET_SHELL) \
+	  $(MAKE) -C $(builddir) \
+	    $(CFLAGS_TO_PASS) \
+	    $(LDFLAGS_TO_PASS) \
+	    DESTDIR=$(PWD)/$(d) \
+	    infodir=/$(PF)/share/info \
+	    mandir=/$(PF)/share/man \
+		install
+
+ifeq ($(with_common_gcclibdir),yes)
+	mv $(d)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lib_dir)) \
+		$(d)/$(gcc_lib_dir)
+  ifneq ($(gcc_lib_dir),$(gcc_lexec_dir))
+	mv $(d)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lexec_dir)) \
+		$(d)/$(gcc_lexec_dir)
+  endif
+  ifeq ($(with_d)-$(with_libphobos),yes-yes)
+	mv $(d)/$(PF)/include/d$(libphobos_version)/$(GCC_VERSION) \
+		$(d)/$(PF)/include/d$(libphobos_version)/$(BASE_VERSION)
+  endif
+endif
+
+	: # remove rpath settings from binaries and shared libs
+	for i in $$(chrpath -k $(d)/$(PF)/bin/* $(d)/$(PF)/lib*/lib*.so.* \
+			$(d)/$(PF)/lib*/gcj$(pkg_ver)*/lib*.so.* \
+			2>/dev/null | awk -F: '/RPATH=/ {print $$1}'); \
+	do \
+	  case "$$i" in ecj1|*gij-*|*libjawt*|*libjvm*) continue; esac; \
+	  [ -h $$i ] && continue; \
+	  chrpath --delete $$i; \
+	  echo "removed RPATH: $$i"; \
+	done
+
+ifneq (,$(findstring emul/ia32-linux, $(lib32)))
+	mkdir -p $(d)/$(lib32)
+	mv $(d)/$(PF)/lib32/* $(d)/$(lib32)/.
+	rmdir $(d)/$(PF)/lib32
+endif
+
+ifeq ($(biarch),yes)
+  ifneq (,$(filter libstdc++-v3, $(biarch_multidir_names)))
+	: # fix biarch C++ header installation
+    ifeq ($(DEB_TARGET_ARCH),i386)
+	mv $(d)/$(cxx_inc_dir)/x86_64-linux-gnu/64 \
+	  $(d)/$(cxx_inc_dir)/i486-linux-gnu/
+	rmdir $(d)/$(cxx_inc_dir)/x86_64-linux-gnu
+    endif
+    ifeq ($(DEB_TARGET_ARCH),powerpc)
+	mv $(d)/$(cxx_inc_dir)/powerpc64-linux-gnu/64 \
+	  $(d)/$(cxx_inc_dir)/powerpc-linux-gnu/
+	rmdir $(d)/$(cxx_inc_dir)/powerpc64-linux-gnu
+    endif
+    ifeq ($(DEB_TARGET_ARCH),s390)
+	mv $(d)/$(cxx_inc_dir)/s390x-linux-gnu/64 \
+	  $(d)/$(cxx_inc_dir)/s390-linux-gnu/
+	rmdir $(d)/$(cxx_inc_dir)/s390x-linux-gnu
+    endif
+  endif
+endif
+
+	: # fix '*.la' and '*.lai' files
+	for i in $$(find $(d) -name '*.la' -o -name '*.lai'); do \
+	  libdir=$$(sed -n "s,^libdir='\(.*\)'.*,\1,p" $$i); \
+	  [ -z "$$libdir" ] && continue; \
+	  libdir=$$(realpath -s $$libdir); \
+	  sed -e "s,^libdir='\(.*\)'.*,libdir='$$libdir'," \
+	    -e 's, -L$(builddir)[^ ]*,,g' \
+	    $$i > $$i.new; \
+	  if diff -u $$i $$i.new; then \
+	    rm -f $$i.new; \
+	  else \
+	    echo "$$i: path normalized"; \
+	    touch -r $$i $$i.new; \
+	    mv -f $$i.new $$i; \
+	  fi; \
+	done
+
+ifeq ($(DEB_TARGET_ARCH),amd64)
+	: # fix '*.la' and '*.lai' files (don't resolve the /lib64 symlink)
+	for i in $$(find $(d) -name '*.la' -o -name '*.lai'); do \
+	  sed -e 's,/usr/lib64,/usr/lib,g' -e 's,/lib/\.\./lib64,/lib,g' \
+	    $$i > $$i.new; \
+	  if diff -u $$i $$i.new; then \
+	    rm -f $$i.new; \
+	  else \
+	    echo "$$i: references to lib64 fixed"; \
+	    touch -r $$i $$i.new; \
+	    mv -f $$i.new $$i; \
+	  fi; \
+	done
+endif
+
+ifneq ($(with_libgnat),yes)
+	rm -f $(d)/$(gcc_lib_dir)/adalib/lib*.so*
+endif
+
+ifeq ($(GFDL_INVARIANT_FREE),yes)
+	for i in gcc gcov; do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+
+  ifeq ($(with_fortran),yes)
+	for i in g77; do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+  endif
+  ifeq ($(with_java),yes)
+	for i in gcj gcjh gij jv-convert jv-scan jcf-dump grmic grmiregistry; \
+	do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+  endif
+endif
+
+ifeq ($(with_pascal),yes)
+	: # gpc is already versioned with the gcc version.
+	mv $(d)/$(PF)/bin/gpc$(pkg_ver) $(d)/$(PF)/bin/gpc
+	mv $(d)/$(PF)/share/man/man1/gpc$(pkg_ver).1 \
+		$(d)/$(PF)/share/man/man1/gpc.1
+endif
+ifeq ($(versioned_packages),yes)
+  ifeq ($(with_pascal),yes)
+    ifeq ($(GFDL_INVARIANT_FREE),yes)
+	for i in binobj gpc gpc-run gpidump; do \
+	  I=`echo $$i | tr a-z A-Z`; \
+	  sed -e "s/@NAME@/$$I$(pkg_ver)/g" \
+	      -e "s/@name@/$$i$(pkg_ver)/g" \
+	    debian/dummy-man.1 > $(d)/$(PF)/share/man/man1/$$i.1; \
+	done
+    endif
+    ifeq ($(with_gpidump),yes)
+	: # rename files (versioned gpc binaries)
+	for i in binobj gpc gpc-run gpidump; do \
+	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i$(pkg_ver); \
+	done
+	: # rename files (versioned gpc man pages)
+	for i in binobj gpc gpc-run gpidump; do \
+	  mv $(d)/$(PF)/share/man/man1/$$i.1 \
+		$(d)/$(PF)/share/man/man1/$$i$(pkg_ver).1; \
+	done
+    else
+	: # rename files (versioned gpc binaries)
+	for i in binobj gpc gpc-run; do \
+	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i$(pkg_ver); \
+	done
+	: # rename files (versioned gpc man pages)
+	for i in binobj gpc gpc-run; do \
+	  mv $(d)/$(PF)/share/man/man1/$$i.1 \
+		$(d)/$(PF)/share/man/man1/$$i$(pkg_ver).1; \
+	done
+    endif
+  endif
+endif
+
+#  ifeq ($(with_ada),yes)
+#	: # rename files (versioned ada binaries)
+#	for i in ; do \
+#	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i-$(GNAT_VERSION); \
+#	  mv $(d)/$(PF)/share/man/man1/$$i.1 \
+#		$(d)/$(PF)/share/man/man1/$$i-$(GNAT_VERSION).1; \
+#	done
+#	for i in $(GNAT_TOOLS); do \
+#	  mv $(d)/$(PF)/bin/$$i $(d)/$(PF)/bin/$$i-$(GNAT_VERSION); \
+#	done
+#  endif
+
+#ifneq ($(with_libgcc),yes)
+#	: # needed for dependency of other shared libs
+#	echo 'libgcc_s $(GCC_SONAME) libgcc$(GCC_SONAME) (>= $(DEB_LIBGCC_SOVERSION))' \
+#	    > debian/shlibs.local
+#endif
+
+ifeq ($(DEB_CROSS),yes)
+  ifeq ($(DEB_TARGET_ARCH),s390)
+	: # s390 64bit stuff happens to be in s390x-linux-gnu/lib64/
+	mkdir -p $(d)/$(PF)/s390-linux-gnu/lib64
+	cp -a $(d)/$(PF)/s390x-linux-gnu/lib64/* $(d)/$(PF)/s390-linux-gnu/lib64/
+  endif
+endif
+
+	chmod 755 debian/dh_*
+
+#	tar cf tmp.tar debian/tmp
+
+	touch $(install_stamp)
+
+$(install_hppa64_stamp): $(build_hppa64_stamp)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_hppa64)
+	mkdir -p $(d_hppa64)/$(PF)
+
+	PATH=$(PWD)/bin:$$PATH \
+	    $(MAKE) -C $(builddir_hppa64) \
+		CC="$(CC)" \
+		$(CFLAGS_TO_PASS) \
+		$(LDFLAGS_TO_PASS) \
+		DESTDIR=$(PWD)/$(d_hppa64) \
+		    install
+
+ifeq ($(versioned_packages),yes)
+	mv $(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-gcc-$(GCC_VERSION) \
+		$(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-gcc$(pkg_ver)
+	mv $(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-cpp \
+		$(d_hppa64)/$(PF)/bin/hppa64-linux-gnu-cpp$(pkg_ver)
+endif
+
+ifneq ($(PKGSOURCE),gcc-snapshot)
+	: # remove files not needed
+	rm -rf $(d_hppa64)/$(PF)/info
+	rm -rf $(d_hppa64)/$(PF)/man
+	rm -f $(d_hppa64)/$(PF)/lib/libiberty.a
+	rm -f $(d_hppa64)/$(PF)/bin/*{protoize,gcov,gccbug,gcc}
+
+	rm -rf $(d_hppa64)/$(PF)/hppa64-linux-gnu/include
+	rm -rf $(d_hppa64)/$(PF)/hppa64-linux-gnu/lib
+endif
+
+	touch $(install_hppa64_stamp)
+
+# ----------------------------------------------------------------------
+# Build architecture-dependent files here.
+#binary-arch: build install $(foreach i,$(arch_binaries),$(binary_stamp)-$(i))
+binary-arch: $(foreach i,$(arch_binaries),$(binary_stamp)-$(i))
+ifeq ($(with_check),yes)
+	@echo Done
+#	: # Send Email about sucessfull build.
+#	# cat raw-test-summary | sh; echo "Sent mail to $(S_EMAIL)"
+endif
+
+# ----------------------------------------------------------------------
+# Build architecture-independent files here.
+#binary-indep: build install $(foreach i,$(indep_binaries),$(binary_stamp)-$(i))
+binary-indep: $(foreach i,$(indep_binaries),$(binary_stamp)-$(i))
+
+source diff:
+	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary
--- gcj-4.2-4.2.4.orig/debian/NEWS.html
+++ gcj-4.2-4.2.4/debian/NEWS.html
@@ -0,0 +1,494 @@
+  <?xml version="1.0" encoding="ISO-8859-1"?>
+  <!DOCTYPE html
+            PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+            "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+ 
+
+
+ 
+
+
+
+
+
+
+
+
+
+
+
+
+
+     <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+  
+  
+   <head>
+ 
+    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+    <link rev="made" href="mailto:gcc@gcc.gnu.org" />
+    <link rel="shortcut icon" href="http://gcc.gnu.org/favicon.ico" />
+    <link rel="stylesheet" type="text/css" href="/gnu.css" />
+    <link rel="stylesheet" type="text/css" href="http://gcc.gnu.org/gcc.css" />
+  
+ <title>
+GCC 4.2 Release Series &mdash; Changes, New Features, and Fixes
+- GNU Project - Free Software Foundation (FSF)</title>
+   </head>
+ 
+
+<!-- GCC maintainers, please do not hesitate to update/contribute entries
+     concerning those part of GCC you maintain!  2002-03-23, Gerald.
+-->
+
+<body bgcolor="#FFFFFF" text="#000000" link="#1F00FF" alink="#FF0000" vlink="#9900DD">
+
+
+
+<h1 align="center">
+GCC 4.2 Release Series<br />Changes, New Features, and Fixes
+</h1>
+
+<h2>Caveats</h2>
+
+<ul>
+  <li>GCC no longer accepts the <code>-fshared-data</code> option.
+      This option has had no effect in any GCC 4 release; the targets
+      to which the option used to apply had been removed before GCC 4.0.</li>
+</ul>
+
+<h2>General Optimizer Improvements</h2>
+
+<ul>
+  <li><p>New command-line options specify the possible relationships among
+    parameters and between parameters and global data.  For example,
+    <code>-fargument-noalias-anything</code> specifies that arguments
+    do not alias any other storage.</p>
+
+    <p>Each language will automatically use whatever option is required
+    by the language standard.  You should not need to use these options
+    yourself.</p></li>
+</ul>
+
+<h2>New Languages and Language specific improvements</h2>
+
+<ul>
+    <li><a href="../projects/gomp/">OpenMP</a> is now
+        supported for the C, C++ and Fortran compilers.</li>
+
+    <li>New command line options <code>-fstrict-overflow</code> and
+    <code>-Wstrict-overflow</code> have been added.
+    <code>-fstrict-overflow</code> tells the compiler that it may
+    assume that the program follows the strict signed overflow
+    semantics permitted for the language: for C and C++ this means
+    that the compiler may assume that signed overflow does not occur.
+    For example, a loop like
+    <pre>
+      for (i = 1; i > 0; i *= 2)
+    </pre>
+    is presumably intended to continue looping until <code>i</code>
+    overflows.  With <code>-fstrict-overflow</code>, the compiler may
+    assume that signed overflow will not occur, and transform this
+    into an infinite loop.  <code>-fstrict-overflow</code> is turned
+    on by default at <code>-O2</code>, and may be disabled via
+    <code>-fno-strict-overflow</code>.  The
+    <code>-Wstrict-overflow</code> option may be used to warn about
+    cases where the compiler assumes that signed overflow will not
+    occur.  It takes five different levels:
+    <code>-Wstrict-overflow=1</code> to <code>5</code>.  See the
+    <a href="http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html">
+    documentation</a> for details.  <code>-Wstrict-overflow=1</code>
+    is enabled by <code>-Wall</code>.</li>
+
+    <li>The new command line option <code>-fno-toplevel-reorder</code>
+    directs GCC to emit top-level functions, variables, and
+    <code>asm</code> statements in the same order that they appear in
+    the input file.  This is intended to support existing code which
+    relies on a particular ordering (for example, code which uses
+    top-level <code>asm</code> statements to switch sections).  For
+    new code, it is generally better to use function and variable
+    attributes.  The <code>-fno-toplevel-reorder</code> option may be
+    used for most cases which currently use
+    <code>-fno-unit-at-a-time</code>.  The
+    <code>-fno-unit-at-a-time</code> option will be removed in some
+    future version of GCC.  If you know of a case which requires
+    <code>-fno-unit-at-a-time</code> which is not fixed by
+    <code>-fno-toplevel-reorder</code>, please <a
+    href="http://gcc.gnu.org/bugs.html">open a bug report</a>.</li>
+
+</ul>
+
+<h3>C family</h3>
+
+  <ul>
+    <li>The pragma <code>redefine_extname</code> will now 
+        macro expand its tokens for compatibility with 
+        SunPRO.</li>
+
+    <li>In the next release of GCC, 4.3, <code>-std=c99</code> or
+        <code>-std=gnu99</code> will direct GCC to handle inline
+        functions as specified in the C99 standard.  In preparation
+        for this, GCC 4.2 will warn about any use of non-static inline
+        functions in gnu99 or c99 mode.  This new warning may be
+        disabled with the new <code>gnu_inline</code> function
+        attribute or the new <code>-fgnu89-inline</code> command line
+        option.  Also, GCC 4.2 and later will define one of the
+        preprocessor macros <code>__GNUC_GNU_INLINE__</code> or
+        <code>__GNUC_STDC_INLINE__</code> to indicate the semantics of
+        inline functions in the current compilation.</li>
+
+    <li>A new command line option <code>-Waddress</code> has been
+        added to warn about suspicious uses of memory addresses as,
+        for example, using the address of a function in a conditional
+        expression, and comparisons against the memory address of a
+        string literal.  This warning is enabled by
+        <code>-Wall</code>.</li>
+
+  </ul>
+
+<h3>C++</h3>
+
+  <ul>
+    <li>
+      <p>C++ visibility handling has been overhauled.</p>
+
+      <p>Restricted visiblity is propagated from classes to members, from
+      functions to local statics, and from templates and template arguments
+      to instantiations, unless the latter has explicitly declared visibility.
+      </p>
+
+      <p>The visibility attribute for a class must come between the class-key
+      and the name, not after the closing brace.</p>
+
+      <p>Attributes are now allowed for enums and elaborated-type-specifiers
+      that only declare a type.</p>
+
+      <p>Members of the anonymous namespace are now local to a particular
+      translation unit, along with any other declarations which use them,
+      though they are still treated as having external linkage for language
+      semantics.</p>
+    </li>
+
+    <li>
+     The (undocumented) extension which permitted templates with
+     default arguments to be bound to template template parameters with
+     fewer parameters has been removed.  For example:
+
+      <pre>
+	template &lt;template &lt;typename&gt; class C&gt;
+	void f(C&lt;double&gt;) {}
+
+	template &lt;typename T, typename U = int&gt;
+	struct S {};
+
+	template void f(S&lt;double&gt;);
+      </pre>      
+
+     is no longer accepted by G++.  The reason this code is not
+     accepted is that <code>S</code> is a template with two parameters;
+     therefore, it cannot be bound to <code>C</code> which has only
+     one parameter.
+    </li>
+
+    <li>
+     The <code>&lt;?</code>, <code>&gt;?</code>, <code>&lt;?=</code>,
+     and <code>&gt;?=</code> operators,
+     deprecated in previous GCC releases, have been removed.
+    </li>
+
+    <li>
+     The command line option <code>-fconst-strings</code>, deprecated in
+     previous GCC releases, has been removed.
+    </li>
+
+    <li>
+     The configure variable <code>enable-__cxa_atexit</code> is now enabled by
+     default for more targets.  Enabling this variable is necessary in order for
+     static destructors to be executed in the correct order, but it depends upon
+     the presence of a non-standard C library in the target library in order to
+     work.  The variable is now enabled for more targets which are known to have
+     suitable C libraries.
+     </li>
+     <li>
+     <code>-Wextra</code> will produce warnings for <code>if</code> statements
+     with a semicolon as the only body, to catch code like:
+
+     <pre>
+         if (a);
+            return 1;
+         return 0;
+     </pre>
+
+     To suppress the warning in valid cases, use <code>{ }</code> instead.
+    </li>
+    <li>
+     The C++ frontend now also produces strict aliasing warnings when
+     <code>-fstrict-aliasing -Wstrict-aliasing</code> is in effect.
+    </li>
+  </ul> 
+
+  <h4>Runtime Library (libstdc++)</h4>
+  <ul>
+    <li>Added support for TR1 &lt;random&gt;, &lt;complex&gt;, and C
+    compatibility headers. In addition, a lock-free version of
+    <code>shared_ptr</code> was contributed as part of Phillip
+    Jordan's Google Summer of Code project on lock-free
+    containers. The implementation status for TR1 can be tracked in <a
+    href="http://gcc.gnu.org/onlinedocs/libstdc++/ext/tr1.html">tr1.html</a> 
+   </li>
+   <li>In association with the Summer of Code work on lock-free
+   containers, the interface for atomic builtins was adjusted,
+   creating simpler alternatives for non-threaded code paths. Also,
+   usage was consolidated and all elements were moved from
+   <code>namespace std</code> to
+   <code>namespace__gnu_cxx</code>. Affected interfaces are the
+   functions <code>__exchange_and_add</code>,
+   <code>__atomic_add</code>, and the objects <code>__mutex</code>,
+   <code>__recursive_mutex</code>, and
+   <code>__scoped_lock</code>. </li>
+   <li>Support for versioning weak symbol names via namespace
+   association was added. However, as this changes the names of
+   exported symbols, this is turned off by default in the current
+   ABI. Intrepid users can enable this feature by using 
+   <code>--enable-symvers=gnu-versioned-namespace</code> during configuration.
+   </li>
+   <li>Revised, simplified, and expanded policy-based associative
+   containers, including data types for tree and trie forms
+   (<code>basic_tree</code>, <code>tree</code>, <code>trie</code>),
+   lists (<code>list_update</code>), and both collision-chaining and
+   probing hash-based containers (<code>basic_hash_table</code>,
+   <code>cc_hash_table</code>, <code>gp_hash_table</code>). More details
+   per the <a href="http://gcc.gnu.org/onlinedocs/libstdc++/ext/pb_ds/index.html">documentation.</a>
+   </li>
+   <li>The implementation of the debug mode was modified, whereby the
+   debug namespaces were nested inside of <code>namespace std</code>
+   and <code>namespace __gnu_cxx</code> in order to resolve some long
+   standing corner cases involving name lookup. Debug
+   functionality from the policy-based data structures was
+   consolidated and enabled with the single macro,
+   <code>_GLIBCXX_DEBUG</code>. See PR 26142 for more
+   information.</li>
+   <li> Added extensions for type traits:
+   <code>__conditional_type</code>, <code>__numeric_traits</code>,
+   <code>__add_unsigned</code>, <code>__removed_unsigned</code>,
+   <code>__enable_if</code>. </li>
+   <li> Added a typelist implementation for compile-time
+   meta-programming. Elements for typelist construction and operation can be 
+   found within <code>namespace __gnu_cxx::typelist</code>.</li>
+   <li> Added a new allocator, <code>__gnu_cxx::throw_allocator</code>, for
+testing exception-safety.</li>
+   <li> Enabled library-wide visibility control, allowing
+   <code>-fvisibility</code> to be used.</li>
+   <li> Consolidated all nested namespaces and the
+   conversion of <code>__gnu_internal</code> implementation-private
+   details to anonymous namespaces whenever possible.</li>
+   <li>Implemented LWG resolutions DR 431 and DR 538.</li>
+  </ul>
+
+<h3>Fortran</h3>
+  <ul>
+    <li>Support for allocatable components has been added (TR 15581 and
+        Fortran 2003).</li>
+    <li>Support for the Fortran 2003 streaming IO extension has been
+        added.</li>
+    <li>The GNU Fortran compiler now uses 4-byte record markers by default
+    for unformatted files to be compatible with g77 and most other compilers.
+    The implementation allows for records greater than 2 GB and  is compatible
+    with several other compilers. Older versions of gfortran used 8-byte
+    record markers by default (on most systems). In order to change the length
+    of the record markers, e.g. to read unformatted files created by older
+    gfortran versions, the <code>
+    <a href="http://gcc.gnu.org/onlinedocs/gfortran/Runtime-Options.html"
+    >-frecord-marker=8</a></code> option can be used.</li>
+  </ul>
+
+
+<h3>Java (GCJ)</h3>
+
+  <ul>
+    <li>
+     A new command line option <code>-static-libgcj</code> has been
+     added for targets that use a linker compatible with GNU Binutils.
+     As its name implies, this causes libgcj to be linked statically.
+     In some cases this causes the resulting executable to start
+     faster and use less memory than if the shared version of libgcj
+     were used.  However caution should be used as it can also cause
+     essential parts of the library to be omitted.  Some of these issues are
+     discussed in:
+      <a href="http://gcc.gnu.org/wiki/Statically%20linking%20libgcj">
+	   http://gcc.gnu.org/wiki/Statically%20linking%20libgcj
+      </a>
+    </li>
+
+    <li><code>fastjar</code> is no longer bundled with GCC.  To build
+        libgcj, you will need either InfoZIP (both <code>zip</code>
+        and <code>unzip</code>) or an external <code>jar</code> program.
+        In the former case, the GCC build will install a <code>jar</code>
+        shell script that is based on InfoZIP and provides the same
+	functionality as <code>fastjar</code>.</li>
+  </ul>
+
+
+<h2>New Targets and Target Specific Improvements</h2>
+
+<h3>IA-32/x86-64</h3>
+  <ul>
+    <li><code>-mtune=generic</code> can now be used to generate code running
+        well on common x86 chips. This includes AMD Athlon,
+	AMD Opteron, Intel Pentium-M, Intel Pentium 4 and Intel Core 2.</li>
+    <li><code>-mtune=native</code> and <code>-march=native</code> will produce
+        code optimized for the host architecture as detected using the
+	<code>cpuid</code> instruction.</li>
+    <li>Added a new command line option <code>-fstackrealign</code> and
+        and <code>__attribute__ ((force_align_arg_pointer))</code>
+        to realign the stack at runtime.  This allows functions compiled
+        with a vector-aligned stack to be invoked from legacy objects
+        that keep only word-alignment.</li>
+  </ul>
+
+<h3>SPARC</h3>
+  <ul>
+    <li>The default CPU setting has been changed from V7 to V9 in 32-bit
+	mode on Solaris 7 and above.  This is already the case in 64-bit
+	mode.  It can be overridden by specifying <code>--with-cpu</code>
+	at configure time.</li>
+    <li>Back-end support of built-in functions for atomic memory access
+	has been implemented.</li>
+    <li>Support for the Sun UltraSPARC T1 (Niagara) processor has been
+	added.</li>
+  </ul>
+
+<h3>M32C</h3>
+  <ul>
+    <li>Various bug fixes have made some functions (notably, functions
+        returning structures) incompatible with previous releases.
+        Recompiling all libraries is recommended.  Note that code
+        quality has considerably improved since 4.1, making a
+        recompile even more beneficial.</li>
+  </ul>
+
+<h3>MIPS</h3>
+  <ul>
+    <li>Added support for the Broadcom SB-1A core.</li>
+  </ul>
+
+<h3>IA-64</h3>
+  <ul>
+    <li>Added support for IA-64 data and control speculation.  By default
+        speculation is enabled only during second scheduler pass.  A number of
+        machine flags was introduced to control the usage of speculation for both
+        scheduler passes.</li>
+  </ul>
+
+<h3>HPPA</h3>
+  <ul>
+    <li> Added Java language support (libffi and libjava) for 32-bit
+         HP-UX 11 target.</li>
+  </ul>
+
+
+<h2><a name="obsolete_systems">Obsolete Systems</a></h2>
+
+<h2>Documentation improvements</h2>
+
+<h3>PDF Documentation</h3>
+  <ul>
+    <li><p>A <code>make pdf</code> target has been added to the 
+        top-level makefile, enabling automated production of PDF
+        documentation files.  (Front-ends external to GCC should modify
+        their <code>Make-lang.in</code> file to add a <code>lang.pdf:</code>
+        target.)</p></li>
+  </ul>
+
+<h2>Other significant improvements</h2>
+
+<h3>Build system improvements</h3>
+  <ul>
+    <li><p>All the components of the compiler are now bootstrapped by
+        default.  This improves the resilience to bugs in the system
+        compiler or binary compatibility problems, as well as providing
+        better testing of GCC 4.2 itself.  In addition, if you build
+	the compiler from a combined tree, the assembler, linker, etc.
+	will also be bootstrapped (i.e. built with themselves).</p>
+
+        <p>You can disable this behavior, and go back to
+	the pre-GCC 4.2 set up, by configuring GCC with
+	<code>--disable-bootstrap</code>.</p></li>
+
+    <li><p>The rules that <code>configure</code> follows to find target tools
+        resemble more closely the locations that the built compiler
+        will search.  In addition, you can use the new configure option
+        <code>--with-target-tools</code> to specify where to find the
+        target tools used during the build, without affecting what the
+        built compiler will use.</p>
+
+        <p>This can be especially useful when building packages of
+        GCC.  For example, you may want to build GCC with
+        GNU <code>as</code> or <code>ld</code>, even if the resulting compiler
+        to work with the native assembler and linker.  To do so, you
+        can use <code>--with-target-tools</code> to point to the native
+        tools.</p></li>
+  </ul>
+
+<h3>Incompatible changes to the build system</h3>
+  <ul>
+    <li>Front-ends external to GCC should modify their
+	<code>Make-lang.in</code> file to replace double-colon rules (e.g.
+	<code>dvi::</code>) with normal rules (like <code>lang.dvi:</code>).
+	Front-end makefile hooks do not use double-colon rules anymore.</li>
+
+    <li>Up to GCC 4.1, a popular way to specify the target tools used
+        during the build was to create directories named <code>gas</code>,
+	<code>binutils</code>, etc. in the build tree, and create
+	links to the tools from there.	This does not work any more
+	when the compiler is bootstrapped.  The new configure option
+	<code>--with-target-tools</code> provides a better way to achieve
+	the same effect, and works for all native and cross settings.</li>
+  </ul>
+
+
+
+<!-- ==================================================================== -->
+
+<div class="copyright">
+
+<p>Please send FSF &amp; GNU inquiries &amp; questions to
+<a href="mailto:gnu@gnu.org">gnu@gnu.org</a>.
+There are also <a href="http://www.gnu.org/home.html#ContactInfo">other ways
+to contact</a> the FSF.</p>
+
+<p>These pages are maintained by
+<a href="http://gcc.gnu.org/about.html">the GCC team</a>.</p>
+
+<address>For questions related to the use of GCC, please consult these web
+pages and the <a href="http://gcc.gnu.org/onlinedocs/">GCC manuals</a>. If
+that fails, the <a href="mailto:gcc-help@gcc.gnu.org">gcc-help@gcc.gnu.org</a>
+mailing list might help.<br />
+Please send comments on these web pages and the development of GCC to our
+developer mailing list at <a href="mailto:gcc@gnu.org">gcc@gnu.org</a>
+or <a href="mailto:gcc@gcc.gnu.org">gcc@gcc.gnu.org</a>.  All of our lists
+have <a href="http://gcc.gnu.org/lists.html">public archives</a>.
+</address>
+
+<p>Copyright (C) Free Software Foundation, Inc.,
+51 Franklin St, Fifth Floor, Boston, MA 02110, USA.</p>
+<p>Verbatim copying and distribution of this entire article is
+permitted in any medium, provided this notice is preserved.</p>
+
+<table width="100%" border="0"><tr><td>
+  <!-- IGNORE DIFF -->Last modified 2007-05-12
+</td><td align="right" valign="bottom">
+  <a href="http://validator.w3.org/check/referer">
+      <img src="http://www.w3.org/Icons/valid-xhtml10"
+     alt="Valid XHTML 1.0" border="0" width="88" height="31" />
+   
+  </a>
+</td></tr></table>
+
+</div>
+
+<!-- ==================================================================== -->
+
+</body>
+     </html>
+  
+ 
--- gcj-4.2-4.2.4.orig/debian/gcj-BV.overrides
+++ gcj-4.2-4.2.4/debian/gcj-BV.overrides
@@ -0,0 +1 @@
+gcj-@BV@: wrong-name-for-upstream-changelog
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.i386
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.i386
@@ -0,0 +1,95 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __ashldi3@GCC_3.0 1:4.1.1
+ __ashrdi3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzsi2@GCC_3.4 1:4.1.1
+ __cmpdi2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzsi2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divdi3@GLIBC_2.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divxc3@GCC_4.0.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __fixdfdi@GCC_3.0 1:4.1.1
+ __fixsfdi@GCC_3.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfsi@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfsi@GCC_3.0 1:4.1.1
+ __fixunsxfdi@GCC_3.0 1:4.1.1
+ __fixunsxfsi@GCC_3.0 1:4.1.1
+ __fixxfdi@GCC_3.0 1:4.1.1
+ __floatdidf@GCC_3.0 1:4.1.1
+ __floatdisf@GCC_3.0 1:4.1.1
+ __floatdixf@GCC_3.0 1:4.1.1
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatundixf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrdi3@GCC_3.0 1:4.1.1
+ __moddi3@GLIBC_2.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __muldi3@GCC_3.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulxc3@GCC_4.0.0 1:4.1.1
+ __negdi2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __paritysi2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountsi2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powixf2@GCC_4.0.0 1:4.1.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __ucmpdi2@GCC_3.0 1:4.1.1
+ __udivdi3@GLIBC_2.0 1:4.1.1
+ __udivmoddi4@GCC_3.0 1:4.1.1
+ __umoddi3@GLIBC_2.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/lib64gccLC.postinst
+++ gcj-4.2-4.2.4/debian/lib64gccLC.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib64gcc@LC@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-doc.prerm
+++ gcj-4.2-4.2.4/debian/gcc-BV-doc.prerm
@@ -0,0 +1,7 @@
+#! /bin/sh -e
+
+install-info --quiet --remove gcc-@BV@
+install-info --quiet --remove gccint-@BV@
+install-info --quiet --remove libgomp-@BV@
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/lib32stdc++CXX.postinst
+++ gcj-4.2-4.2.4/debian/lib32stdc++CXX.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib32stdc++@CXX@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-base.postinst
+++ gcj-4.2-4.2.4/debian/gcc-BV-base.postinst
@@ -0,0 +1,15 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	# see #355439, packaging error in 4.0.2-9*
+	docdir=/usr/share/doc/gcc-@BV@-base
+	if [ ! -f $docdir/copyright ]; then
+	    ln $docdir/.copyright $docdir/copyright
+	fi
+	if [ ! -f $docdir/changelog.Debian.gz ]; then
+	    ln $docdir/.changelog.Debian.gz $docdir/changelog.Debian.gz
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gfortran-BV-doc.postinst
+++ gcj-4.2-4.2.4/debian/gfortran-BV-doc.postinst
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    --description="The GNU Fortran compiler (Version @BV@)." \
+	    /usr/share/info/gfortran-@BV@.info
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-doc.doc-base.gomp
+++ gcj-4.2-4.2.4/debian/gcc-BV-doc.doc-base.gomp
@@ -0,0 +1,15 @@
+Document: gcc-@BV@-gomp
+Title: The GNU OpenMP Implementation (for GCC @BV@)
+Author: Various
+Abstract: This manual documents the usage of libgomp, the GNU implementation
+ of the OpenMP Application Programming Interface (API) for multi-platform
+ shared-memory parallel programming in C/C++ and Fortran.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/libgomp.html
+Files: /usr/share/doc/gcc-@BV@-base/libgomp.html
+
+Format: info
+Index: /usr/share/info/libgomp-@BV@.info.gz
+Files: /usr/share/info/libgomp-@BV@*
--- gcj-4.2-4.2.4.orig/debian/gij-BV.postrm
+++ gcj-4.2-4.2.4/debian/gij-BV.postrm
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+case "$1" in
+    purge)
+	rm -f /var/lib/gcj-@BV@/classmap.db
+esac
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.ldbl.64bit
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.ldbl.64bit
@@ -0,0 +1,280 @@
+ CXXABI_LDBL_1.3@CXXABI_LDBL_1.3 4.2.1
+ GLIBCXX_LDBL_3.4.7@GLIBCXX_LDBL_3.4.7 4.2.1
+ GLIBCXX_LDBL_3.4@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcmcRSt8ios_basePcSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcmcS7_PcS8_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES4_S4_RSt8ios_baseccT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIgEES4_S4_RSt8ios_baseccT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEclRSt8ios_basePcPKcRi@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcmwRSt8ios_basePwSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcmwPKwPwSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES4_S4_RSt8ios_basewcT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIgEES4_S4_RSt8ios_basewcT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwlRSt8ios_basePwPKwRi@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_bRSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES4_S4_RSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES4_S4_RSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_bRSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_bRSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_bRSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb0EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb1EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSi10_M_extractIgEERSiRT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSirsERg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSo9_M_insertIgEERSoT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSolsEg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIgEERS2_RT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIgEERS2_T_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10has_denormE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10is_boundedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10is_integerE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE11round_styleE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12has_infinityE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12max_exponentE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12min_exponentE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE13has_quiet_NaNE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14is_specializedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14max_exponent10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14min_exponent10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE15has_denorm_lossE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE15tinyness_beforeE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE17has_signaling_NaNE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE5radixE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE5trapsE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE6digitsE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE8digits10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE8is_exactE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_iec559E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_moduloE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_signedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt14__convert_to_vIgEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStlsIgcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStlsIgwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStrsIgcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStrsIgwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTIPKg@CXXABI_LDBL_1.3 4.2.1
+ _ZTIPg@CXXABI_LDBL_1.3 4.2.1
+ _ZTIg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSPKg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSPg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSg@CXXABI_LDBL_1.3 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
--- gcj-4.2-4.2.4.orig/debian/README.ssp
+++ gcj-4.2-4.2.4/debian/README.ssp
@@ -0,0 +1,28 @@
+Stack smashing protection is a feature of GCC that enables a program to
+detect buffer overflows and immediately terminate execution, rather than
+continuing execution with corrupt internal data structures. It uses
+"canaries" and local variable reordering to reduce the likelihood of
+stack corruption through buffer overflows.
+
+Options that affect stack smashing protection:
+
+-fstack-protector
+    Enables protection for functions that are vulnerable to stack
+    smashing, such as those that call alloca() or use pointers.
+
+-fstack-protector-all
+    Enables protection for all functions.
+
+-Wstack-protector
+    Warns about functions that will not be protected. Only active when
+    -fstack-protector has been used.
+
+Applications built with stack smashing protection should link with the
+ssp library by using the option "-lssp" for systems with glibc-2.3.x or
+older; glibc-2.4 and newer versions provide this functionality in libc.
+
+The Debian architectures alpha, hppa, ia64, m68k, mips, mipsel do not
+have support for stack smashing protection.
+
+More documentation can be found at the project's website:
+http://researchweb.watson.ibm.com/trl/projects/security/ssp/
--- gcj-4.2-4.2.4.orig/debian/gnat-BV.overrides
+++ gcj-4.2-4.2.4/debian/gnat-BV.overrides
@@ -0,0 +1 @@
+gnat-@BV@: bad-permissions-for-ali-file
--- gcj-4.2-4.2.4.orig/debian/cpp-BV-doc.postinst
+++ gcj-4.2-4.2.4/debian/cpp-BV-doc.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    /usr/share/info/cpp-@BV@.info.gz
+
+	install-info --quiet --section "Development" "Development" \
+	    /usr/share/info/cppinternals-@BV@.info.gz
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/lib32gccLC.postinst
+++ gcj-4.2-4.2.4/debian/lib32gccLC.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/lib32gcc@LC@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/copyright
+++ gcj-4.2-4.2.4/debian/copyright
@@ -0,0 +1,276 @@
+This is the Debian GNU/Linux prepackaged version of the GNU compiler
+collection, containing Ada, C, C++, Fortran 95, Java, Objective-C,
+Objective-C++, and Treelang compilers, documentation, and support
+libraries.  In addition, Debian provides the GNU Pascal compiler in the
+same source package.  Packaging is done by the Debian GCC Maintainers
+<debian-gcc@lists.debian.org>, with sources obtained from:
+
+  ftp://gcc.gnu.org/pub/gcc/releases/  (for full releases)
+  svn://gcc.gnu.org/svn/gcc/           (for prereleases)
+  http://gnu-pascal.de/alpha/          (for GNU Pascal)
+  http://dgcc.sourceforge.net/         (for D)
+
+The current gcc-4.2 source package is taken from the ubuntu/gcc-4_2-branch;
+the branch is an unmodified gcc-4_2-branch, with the Java stuff (gcc/java,
+libjava, libffi, boehm-gc, zlib) updated from the trunk).
+
+Changes: See changelog.Debian.gz
+
+Debian splits the GNU Compiler Collection into packages for each language,
+library, and documentation as follows:
+
+Language       Compiler package  Library package    Documentation
+---------------------------------------------------------------------------
+Ada            gnat-4.2          libgnat-4.2        gnat-4.2-doc
+C              gcc-4.2                              gcc-4.2-doc
+C++            g++-4.2           libstdc++6         libstdc++6-4.2-doc
+Fortran 95     gfortran-4.2      libgfortran2       gfortran-4.2-doc
+Java           gcj-4.2           libgcj8-1          libgcj-doc
+Objective C    gobjc-4.2         libobjc2
+Objective C++  gobjc++-4.2
+Pascal         gpc-4.2
+D              gdc-4.2
+Treelang       treelang-4.2
+
+For some language run-time libraries, Debian provides source files,
+development files, debugging symbols and libraries containing position-
+independent code in separate packages:
+
+Language  Sources     Development  Debugging           Position-Independent
+---------------------------------------------------------------------------
+C++                                libstdc++6-4.2-dbg  libstdc++6-4.2-pic
+Java      libgcj8-src libgcj8-dev  libgcj8-dbg
+
+Additional packages include:
+
+All languages:
+libgcc1, libgcc2, libgcc4       GCC intrinsics (platform-dependent)
+libffi4-dev, libffi4            Foreign Function Interface library
+gcc-4.2-base                    Base files common to all compilers
+gcc-4.2-soft-float              Software floating point (ARM only)
+gcc-4.2-source                  The sources with patches
+
+Ada:
+libgnatvsn-dev, libgnatvsn4.2   GNAT version library
+libgnatprj-dev, libgnatprj4.2   GNAT Project Manager library
+
+C:
+cpp-4.2, cpp-4.2-doc            GNU C Preprocessor
+libmudflap0-dev, libmudflap0    Library for instrumenting pointers
+libssp0-dev, libssp0            GCC stack smashing protection library
+fixincludes                     Fix non-ANSI header files
+protoize                        Create/remove ANSI prototypes from C code
+
+Java:
+gij                             The Java bytecode interpreter and VM
+libgcj-common                   Common files for the Java run-time
+libgcj8-1-awt                   The Abstract Windowing Toolkit
+libgcj8-jar                     Java ARchive for the Java run-time
+
+C, C++ and Fortran 95:
+libgomp1-dev, libgomp1		GCC OpenMP (GOMP) support library
+
+Biarch support: On some 64-bit platforms which can also run 32-bit code,
+Debian provides additional packages containing 32-bit versions of some
+libraries.  These packages have names beginning with 'lib32' instead of
+'lib', for example lib32stdc++6.  Similarly, on some 32-bit platforms which
+can also run 64-bit code, Debian provides additional packages with names
+beginning with 'lib64' instead of 'lib'.  These packages contain 64-bit
+versions of the libraries.  (At this time, not all platforms and not all
+libraries support biarch.)  The license terms for these lib32 or lib64
+packages are identical to the ones for the lib packages.
+
+
+COPYRIGHT STATEMENTS AND LICENSING TERMS
+
+
+GCC is Copyright (C) 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994,
+1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+2008 Free Software Foundation, Inc.
+
+GCC is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 3, or (at your option) any later
+version.
+
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+Files that have exception clauses are licensed under the terms of the
+GNU General Public License; either version 2, or (at your option) any
+later version.
+
+On Debian GNU/Linux systems, the complete text of the GNU General
+Public License is in `/usr/share/common-licenses/GPL', version 2 of this
+license in `/usr/share/common-licenses/GPL-2'.
+
+The libstdc++-v3 library is licensed under the terms of the GNU General
+Public License, with this special exception:
+
+   As a special exception, you may use this file as part of a free software
+   library without restriction.  Specifically, if other files instantiate
+   templates or use macros or inline functions from this file, or you compile
+   this file and link it with other files to produce an executable, this
+   file does not by itself cause the resulting executable to be covered by
+   the GNU General Public License.  This exception does not however
+   invalidate any other reasons why the executable file might be covered by
+   the GNU General Public License.
+
+The libgnat-4.2 Ada support library and libgnatvsn are licensed under the
+terms of the GNU General Public License, with this special exception:
+
+   As a special exception, if other files instantiate generics from this
+   unit, or you link this unit with other files to produce an executable,
+   this unit does not by itself cause the resulting executable to be
+   covered by the GNU General Public License. This exception does not
+   however invalidate any other reasons why the executable file might be
+   covered by the GNU Public License.
+
+In contrast, libgnatprj is licensed under the terms of the pure GNU
+General Public License.
+
+gpc is copyright Free Software Foundation, and is licensed under the
+GNU General Public License which on Debian GNU/Linux systems can be
+found as `/usr/share/common-licenses/GPL'.
+
+The gpc runtime library is licensed under the terms of the GNU General
+Public License, with this special exception:
+
+  As a special exception, if you link this file with files compiled
+  with a GNU compiler to produce an executable, this does not cause
+  the resulting executable to be covered by the GNU General Public
+  License. This exception does not however invalidate any other
+  reasons why the executable file might be covered by the GNU
+  General Public License. }
+
+The libgcj library is licensed under the terms of the GNU General
+Public License, with a special exception:
+
+    Linking this library statically or dynamically with other modules
+    is making a combined work based on this library.  Thus, the terms
+    and conditions of the GNU General Public License cover the whole
+    combination.
+
+    As a special exception, the copyright holders of this library give
+    you permission to link this library with independent modules to
+    produce an executable, regardless of the license terms of these
+    independent modules, and to copy and distribute the resulting
+    executable under terms of your choice, provided that you also
+    meet, for each linked independent module, the terms and conditions
+    of the license of that module.  An independent module is a module
+    which is not derived from or based on this library.  If you modify
+    this library, you may extend this exception to your version of the
+    library, but you are not obligated to do so.  If you do not wish
+    to do so, delete this exception statement from your version.
+
+gcc/libgcc2.c (source for libgcc) has the following addition:
+
+    In addition to the permissions in the GNU General Public License,
+    the Free Software Foundation gives you unlimited permission to
+    link the compiled version of this file into combinations with
+    other programs, and to distribute those combinations without any
+    restriction coming from the use of this file.  (The General Public
+    License restrictions do apply in other respects; for example, they
+    cover modification of the file, and distribution when not linked
+    into a combine executable.)
+
+gcc/unwind-libunwind.c (source for libgcc) has the following addition:
+
+    As a special exception, if you link this library with other files,
+    some of which are compiled with GCC, to produce an executable,
+    this library does not by itself cause the resulting executable to
+    be covered by the GNU General Public License.  This exception does
+    not however invalidate any other reasons why the executable file
+    might be covered by the GNU General Public License.
+
+The mudflap library is licensed under the terms of the GNU General
+Public License, and has the following addition:
+
+    In addition to the permissions in the GNU General Public License,
+    the Free Software Foundation gives you unlimited permission to
+    link the compiled version of this file into combinations with
+    other programs, and to distribute those combinations without any
+    restriction coming from the use of this file.  (The General Public
+    License restrictions do apply in other respects; for example, they
+    cover modification of the file, and distribution when not linked
+    into a combine executable.)
+
+The ssp library is licensed under the terms of the GNU General
+Public License, with a special exception:
+
+    As a special exception, if you link this library with other files,
+    some of which are compiled with GCC, to produce an executable,
+    this library does not by itself cause the resulting executable to
+    be covered by the GNU General Public License.  This exception does
+    not however invalidate any other reasons why the executable file
+    might be covered by the GNU General Public License.
+
+The D frontend is licensend under the terms of the GNU General
+Public License, either version 2 of the License, or (at your option)
+any later version, which on Debian GNU/Linux systems can be found as
+`/usr/share/common-licenses/GPL'.
+
+The D runtime library (phobos) is licensed under the following terms:
+
+/*
+ *  Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com
+ *  Written by Walter Bright
+ *
+ *  This software is provided 'as-is', without any express or implied
+ *  warranty. In no event will the authors be held liable for any damages
+ *  arising from the use of this software.
+ *
+ *  Permission is granted to anyone to use this software for any purpose,
+ *  including commercial applications, and to alter it and redistribute it
+ *  freely, in both source and binary form, subject to the following
+ *  restrictions:
+ *
+ *  o  The origin of this software must not be misrepresented; you must not
+ *     claim that you wrote the original software. If you use this software
+ *     in a product, an acknowledgment in the product documentation would be
+ *     appreciated but is not required.
+ *  o  Altered source versions must be plainly marked as such, and must not
+ *     be misrepresented as being the original software.
+ *  o  This notice may not be removed or altered from any source
+ *     distribution.
+ */
+
+The Libgomp library is licensed under the terms of the GNU Lesser
+General Public License, with a special exception:
+
+    As a special exception, if you link this library with other files, some
+    of which are compiled with GCC, to produce an executable, this library
+    does not by itself cause the resulting executable to be covered by the
+    GNU General Public License.  This exception does not however invalidate
+    any other reasons why the executable file might be covered by the GNU
+    General Public License.
+
+The libffi library is licensed under the following terms:
+
+    libffi - Copyright (c) 1996-2003  Red Hat, Inc.
+
+    Permission is hereby granted, free of charge, to any person obtaining
+    a copy of this software and associated documentation files (the
+    ``Software''), to deal in the Software without restriction, including
+    without limitation the rights to use, copy, modify, merge, publish,
+    distribute, sublicense, and/or sell copies of the Software, and to
+    permit persons to whom the Software is furnished to do so, subject to
+    the following conditions:
+
+    The above copyright notice and this permission notice shall be included
+    in all copies or substantial portions of the Software.
+
+    THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
+    OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+    MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+    IN NO EVENT SHALL CYGNUS SOLUTIONS BE LIABLE FOR ANY CLAIM, DAMAGES OR
+    OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+    ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+    OTHER DEALINGS IN THE SOFTWARE.
+
+
+The documentation is licensed under the GNU Free Documentation License (v1.2).
+On Debian GNU/Linux systems, the complete text of this license is in
+`/usr/share/common-licenses/GFDL-1.2'.
--- gcj-4.2-4.2.4.orig/debian/rules.unpack
+++ gcj-4.2-4.2.4/debian/rules.unpack
@@ -0,0 +1,247 @@
+# -*- makefile -*-
+# rules to unpack the source tarballs in $(srcdir); if the source dir already
+# exists, the rule exits with an error to prevent deletion of modified
+# source files. It has to be deleted manually.
+
+tarballs = $(gcc_tarball) # $(gcj_tarball)
+ifeq ($(with_pascal),yes)
+  tarballs += $(gpc_tarball)
+endif
+ifeq ($(with_d),yes)
+  tarballs += $(gdc_tarball)
+endif
+
+unpack_stamps = $(foreach i,$(tarballs),$(unpack_stamp)-$(i))
+
+unpack: stamp-dir $(unpack_stamp) debian-chmod
+$(unpack_stamp): $(unpack_stamps)
+$(unpack_stamp): $(foreach p,$(debian_tarballs),unpacked-$(p))
+	echo -e "\nBuilt from Debian source package $(PKGSOURCE)-$(SOURCE_VERSION)" \
+		> pxxx
+	echo -e "Integrated upstream packages in this version:\n" >> pxxx
+	for i in $(tarballs); do echo "  $$i" >> pxxx; done
+	mv -f pxxx $@
+
+debian-chmod:
+	@chmod 755 debian/dh_*
+
+# ---------------------------------------------------------------------------
+
+gfdl_texinfo_files = \
+	gcc/doc/bugreport.texi \
+	gcc/doc/cfg.texi \
+	gcc/doc/collect2.texi \
+	gcc/doc/compat.texi \
+	gcc/doc/configfiles.texi \
+	gcc/doc/configterms.texi \
+	gcc/doc/contrib.texi \
+	gcc/doc/contribute.texi \
+	gcc/doc/cppenv.texi \
+	gcc/doc/cppinternals.texi \
+	gcc/doc/cppopts.texi \
+	gcc/doc/cpp.texi \
+	gcc/doc/c-tree.texi \
+	gcc/doc/extend.texi \
+	gcc/doc/fragments.texi \
+	gcc/doc/frontends.texi \
+	gcc/doc/gccint.texi \
+	gcc/doc/gcc.texi \
+	gcc/doc/gcov.texi \
+	gcc/doc/gnu.texi \
+	gcc/doc/gty.texi \
+	gcc/doc/headerdirs.texi \
+	gcc/doc/hostconfig.texi \
+	gcc/doc/implement-c.texi \
+	gcc/doc/install-old.texi \
+	gcc/doc/install.texi \
+	gcc/doc/interface.texi \
+	gcc/doc/invoke.texi \
+	gcc/doc/languages.texi \
+	gcc/doc/libgcc.texi \
+	gcc/doc/loop.texi \
+	gcc/doc/makefile.texi \
+	gcc/doc/md.texi \
+	gcc/doc/objc.texi \
+	gcc/doc/options.texi \
+	gcc/doc/passes.texi \
+	gcc/doc/portability.texi \
+	gcc/doc/rtl.texi \
+	gcc/doc/service.texi \
+	gcc/doc/sourcebuild.texi \
+	gcc/doc/standards.texi \
+	gcc/doc/tm.texi \
+	gcc/doc/tree-ssa.texi \
+	gcc/doc/trouble.texi \
+	gcc/doc/include/gcc-common.texi \
+	gcc/doc/include/funding.texi \
+	gcc/fortran/invoke.texi \
+	gcc/fortran/intrinsic.texi \
+	libstdc++-v3/docs/html/17_intro/porting.texi \
+
+gfdl_toplevel_texinfo_files = \
+	gcc/doc/gcc.texi \
+	gcc/java/gcj.texi \
+	gcc/ada/gnat-style.texi \
+	gcc/ada/gnat_rm.texi \
+	gcc/ada/gnat_ugn.texi \
+	gcc/fortran/gfortran.texi \
+	gcc/treelang/treelang.texi \
+	libgomp/libgomp.texi \
+
+gfdl_manpages = \
+	gcc/doc/cpp.1 \
+	gcc/doc/g++.1 \
+	gcc/doc/gc-analyze.1 \
+	gcc/doc/gcc.1 \
+	gcc/doc/gcj.1 \
+	gcc/doc/gcj-dbtool.1 \
+	gcc/doc/gcjh.1 \
+	gcc/doc/gcov.1 \
+	gcc/doc/gfortran.1 \
+	gcc/doc/gij.1 \
+	gcc/doc/grmic.1 \
+	gcc/doc/grmiregistry.1 \
+	gcc/doc/jcf-dump.1 \
+	gcc/doc/jv-convert.1 \
+
+# ---------------------------------------------------------------------------
+$(unpack_stamp)-$(gcc_tarball): $(gcc_tarpath)
+	: # unpack gcc tarball
+	-mkdir $(stampdir)
+	if [ -d $(srcdir) ]; then \
+	  echo >&2 "Source directory $(srcdir) exists. Delete by hand"; \
+	  false; \
+	fi
+	rm -rf $(gcc_srcdir)
+	case $(gcc_tarball) in \
+	  *.bz2)  tar -x --bzip2 -f $(gcc_tarpath);; \
+	  *.gz)   tar -x --gzip  -f $(gcc_tarpath);; \
+	  *.lzma) lzcat $(gcc_tarpath) | tar -x -f -;; \
+	  *)     false; \
+	esac
+	mv $(gcc_srcdir) $(srcdir)
+ifeq (0,1)
+	cd $(srcdir) && tar cfj ../gcc-4.1.1-doc.tar.bz2 \
+		$(gfdl_texinfo_files) \
+		$(gfdl_toplevel_texinfo_files) \
+		$(gfdl_manpages) \
+		libstdc++-v3/docs/html/17_intro/porting.html
+endif
+ifeq ($(GFDL_INVARIANT_FREE),yes)
+	rm -f $(srcdir)/gcc/doc/*.1
+	rm -f $(srcdir)/gcc/doc/*.info
+	rm -f $(srcdir)/gcc/fortran/*.info
+	rm -f $(srcdir)/libgomp/*.info
+	rm -f $(srcdir)/gcc/java/*.1
+	rm -f $(srcdir)/gcc/java/*.info
+	for i in $(gfdl_texinfo_files); do \
+	  if [ -f $(srcdir)/$$i ]; then \
+	    cp $(SOURCE_DIR)debian/dummy.texi $(srcdir)/$$i; \
+	  else \
+	    echo >&2 "$$i does not exist, fix debian/rules.unpack"; \
+	  fi; \
+	done
+	for i in $(gfdl_toplevel_texinfo_files); do \
+	  n=$$(basename $$i .texi); \
+	  if [ -f $(srcdir)/$$i ]; then \
+	    sed "s/@name@/$$n/g" $(SOURCE_DIR)debian/gcc-dummy.texi \
+	      > $(srcdir)/$$i; \
+	  else \
+	    echo >&2 "$$i does not exist, fix debian/rules.unpack"; \
+	  fi; \
+	done
+	cp $(SOURCE_DIR)debian/porting.* $(srcdir)/libstdc++-v3/docs/html/17_intro/
+	for i in $(gfdl_manpages); do \
+	  touch $(srcdir)/$$i; \
+	done
+endif
+	echo "$(gcc_tarball) unpacked." > $@
+
+# ---------------------------------------------------------------------------
+ifneq (,$(gcj_tarball))
+$(unpack_stamp)-$(gcj_tarball): $(gcj_tarpath) $(unpack_stamp)-$(gcc_tarball)
+	: # unpack gcj tarball
+	rm -rf $(srcdir)/gcc/java $(srcdir)/libjava
+	tar -x -C $(srcdir) -f $(gcj_tarpath)
+ifeq ($(GFDL_INVARIANT_FREE),yes)
+	rm -f $(srcdir)/gcc/java/*.1
+	rm -f $(srcdir)/gcc/java/*.info
+	for i in $(gfdl_texinfo_files); do \
+	  if [ -f $(srcdir)/$$i ]; then \
+	    cp $(SOURCE_DIR)debian/dummy.texi $(srcdir)/$$i; \
+	  else \
+	    echo >&2 "$$i does not exist, fix debian/rules.unpack"; \
+	  fi; \
+	done
+	for i in $(gfdl_toplevel_texinfo_files); do \
+	  n=$$(basename $$i .texi); \
+	  if [ -f $(srcdir)/$$i ]; then \
+	    sed "s/@name@/$$n/g" $(SOURCE_DIR)debian/gcc-dummy.texi \
+	      > $(srcdir)/$$i; \
+	  else \
+	    echo >&2 "$$i does not exist, fix debian/rules.unpack"; \
+	  fi; \
+	done
+endif
+	echo "$(gcj_tarball) unpacked." > $@
+endif
+
+# ---------------------------------------------------------------------------
+ifneq (,$(gpc_tarball))
+$(unpack_stamp)-$(gpc_tarball): $(gpc_tarpath)
+	: # unpack gpc tarball
+	-mkdir $(stampdir)
+	if [ -d $(srcdir)/gcc/p ]; then \
+	  echo >&2 "Source directory $(srcdir)/gcc/p exists. Delete by hand";\
+	  false; \
+	fi
+	#rm -rf $(gpc_srcdir)
+	rm -rf p
+	case $(gpc_tarball) in \
+	  *.bz2)  tar -x --bzip2 -f $(gpc_tarpath);; \
+	  *.gz)   tar -x --gzip  -f $(gpc_tarpath);; \
+	  *.lzma) lzcat $(gpc_tarpath) | tar -x -f -;; \
+	  *)     false; \
+	esac
+	if [ -d p ]; then \
+	  mv p $(srcdir)/gcc/. ; \
+	else \
+	  mv $(gpc_srcdir)/p $(srcdir)/gcc/. ; \
+	  rm -rf $(gpc_srcdir)/CVS; \
+	  rmdir $(gpc_srcdir); \
+	fi
+	echo "$(gpc_tarball) unpacked." > $@
+endif
+
+# ---------------------------------------------------------------------------
+ifneq (,$(gdc_tarball))
+$(unpack_stamp)-$(gdc_tarball): $(gdc_tarpath)
+	: # unpack gdc tarball
+	-mkdir $(stampdir)
+	if [ -d $(srcdir)/gcc/d ]; then \
+	  echo >&2 "Source directory $(srcdir)/gcc/d exists. Delete by hand";\
+	  false; \
+	fi
+	#rm -rf $(gdc_srcdir)
+	rm -rf d
+	case $(gdc_tarball) in \
+	  *.bz2)  tar -x --bzip2 -f $(gdc_tarpath);; \
+	  *.gz)   tar -x --gzip  -f $(gdc_tarpath);; \
+	  *.lzma) lzcat $(gdc_tarpath) | tar -x -f -;; \
+	 *)     false; \
+	esac
+	if [ -d d ]; then \
+	  mv d $(srcdir)/gcc/. ; \
+	else \
+	  mv $(gdc_srcdir)/d $(srcdir)/gcc/. ; \
+	  rm -rf $(gdc_srcdir)/CVS; \
+	  rmdir $(gdc_srcdir); \
+	fi
+	rm -f $(srcdir)/gcc/d/d-make-include
+ifeq ($(libphobos_version),2)
+	echo "D_LANGUAGE_VERSION=2" > $(srcdir)/gcc/d/d-make-include
+else
+	echo "D_LANGUAGE_VERSION=1" > $(srcdir)/gcc/d/d-make-include
+endif
+	echo "$(gdc_tarball) unpacked." > $@
+endif
--- gcj-4.2-4.2.4.orig/debian/lib32objc2.symbols
+++ gcj-4.2-4.2.4/debian/lib32objc2.symbols
@@ -0,0 +1,6 @@
+libobjc.so.2 lib32objc2 #MINVER#
+#include "libobjc2.symbols.common"
+ __gnu_objc_personality_v0@Base 4.2.1
+libobjc_gc.so.2 lib32objc2 #MINVER#
+#include "libobjc2.symbols.common"
+ __gnu_objc_personality_v0@Base 4.2.1
--- gcj-4.2-4.2.4.orig/debian/gnat.1
+++ gcj-4.2-4.2.4/debian/gnat.1
@@ -0,0 +1,39 @@
+.\" Hey, Emacs!  This is an -*- nroff -*- source file.
+.\"
+.\" Copyright (C) 1996 Erick Branderhorst <branderh@debian.org>
+.\"
+.\" This is free software; you can redistribute it and/or modify it under
+.\" the terms of the GNU General Public License as published by the Free
+.\" Software Foundation; either version 2, or (at your option) any later
+.\" version.
+.\"
+.\" This is distributed in the hope that it will be useful, but WITHOUT
+.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+.\" FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+.\" for more details.
+.\"
+.\" You should have received a copy of the GNU General Public License with
+.\" your Debian GNU/Linux system, in /usr/doc/copyright/GPL, or with the
+.\" dpkg source package as the file COPYING.  If not, write to the Free
+.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+.\"
+.\"
+.TH "GNAT TOOLBOX" 1 "Jun 2002" "Debian Project" "Debian Linux"
+.SH NAME
+gnat, gnatbind, gnatbl, gnatchop, gnatfind, gnatkr, gnatlink,
+gnatls, gnatmake, gnatprep, gnatpsta, gnatpsys, gnatxref \-
+GNAT toolbox
+.SH DESCRIPTION
+Those programs are part of GNU GNAT 4.1, a freely available Ada 95 compiler.
+.PP
+For accessing the full GNAT manuals, use
+.B info gnat-ug-4.1
+and
+.B info gnat-rm-4.1
+for the sections related to the reference manual.  If those sections cannot
+be found, you will have to install the gnat-3.4-doc package as well.
+.SH SEE ALSO
+.BR gcc-4.1 (1)
+.SH AUTHOR
+This manpage has been written by Samuel Tardieu <sam@debian.org>, for the
+Debian GNU/Linux project.
--- gcj-4.2-4.2.4.orig/debian/lib64gcc1.symbols.s390
+++ gcj-4.2-4.2.4/debian/lib64gcc1.symbols.s390
@@ -0,0 +1,102 @@
+libgcc_s.so.1 lib64gcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.1.0@GCC_4.1.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GLIBC_2.2@GLIBC_2.2 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.2 1:4.1.1
+ __deregister_frame_info@GLIBC_2.2 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divtc3@GCC_4.1.0 1:4.1.1
+ __divti3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixtfti@GCC_4.1.0 1:4.1.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunstfti@GCC_4.1.0 1:4.1.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattitf@GCC_4.1.0 1:4.1.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntitf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.2 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multc3@GCC_4.1.0 1:4.1.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_4.1.0 1:4.1.1
+ __register_frame@GLIBC_2.2 1:4.1.1
+ __register_frame_info@GLIBC_2.2 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.2 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.2 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libgcc4.symbols.hppa
+++ gcj-4.2-4.2.4/debian/libgcc4.symbols.hppa
@@ -0,0 +1,87 @@
+libgcc_s.so.4 libgcc4 #MINVER#
+ GCC_3.0@GCC_3.0 4.1.1
+ GCC_3.3.1@GCC_3.3.1 4.1.1
+ GCC_3.3@GCC_3.3 4.1.1
+ GCC_3.4.2@GCC_3.4.2 4.1.1
+ GCC_3.4@GCC_3.4 4.1.1
+ GCC_4.0.0@GCC_4.0.0 4.1.1
+ GCC_4.2.0@GCC_4.2.0 4.1.1
+ GLIBC_2.0@GLIBC_2.0 4.1.1
+ _Unwind_Backtrace@GCC_3.3 4.1.1
+ _Unwind_DeleteException@GCC_3.0 4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 4.1.1
+ _Unwind_Find_FDE@GCC_3.0 4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 4.1.1
+ _Unwind_GetCFA@GCC_3.3 4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 4.1.1
+ _Unwind_GetGR@GCC_3.0 4.1.1
+ _Unwind_GetIP@GCC_3.0 4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 4.1.1
+ _Unwind_RaiseException@GCC_3.0 4.1.1
+ _Unwind_Resume@GCC_3.0 4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 4.1.1
+ _Unwind_SetGR@GCC_3.0 4.1.1
+ _Unwind_SetIP@GCC_3.0 4.1.1
+ __absvdi2@GCC_3.0 4.1.1
+ __absvsi2@GCC_3.0 4.1.1
+ __addvdi3@GCC_3.0 4.1.1
+ __addvsi3@GCC_3.0 4.1.1
+ __ashldi3@GCC_3.0 4.1.1
+ __ashrdi3@GCC_3.0 4.1.1
+ __clear_cache@GCC_3.0 4.1.1
+ __clzdi2@GCC_3.4 4.1.1
+ __clzsi2@GCC_3.4 4.1.1
+ __cmpdi2@GCC_3.0 4.1.1
+ __ctzdi2@GCC_3.4 4.1.1
+ __ctzsi2@GCC_3.4 4.1.1
+ __deregister_frame@GLIBC_2.0 4.1.1
+ __deregister_frame_info@GLIBC_2.0 4.1.1
+ __deregister_frame_info_bases@GCC_3.0 4.1.1
+ __divdc3@GCC_4.0.0 4.1.1
+ __divdi3@GLIBC_2.0 4.1.1
+ __divsc3@GCC_4.0.0 4.1.1
+ __enable_execute_stack@GCC_3.4.2 4.1.1
+ __ffsdi2@GCC_3.0 4.1.1
+ __fixdfdi@GCC_3.0 4.1.1
+ __fixsfdi@GCC_3.0 4.1.1
+ __fixunsdfdi@GCC_3.0 4.1.1
+ __fixunsdfsi@GCC_3.0 4.1.1
+ __fixunssfdi@GCC_3.0 4.1.1
+ __fixunssfsi@GCC_3.0 4.1.1
+ __floatdidf@GCC_3.0 4.1.1
+ __floatdisf@GCC_3.0 4.1.1
+ __floatundidf@GCC_4.2.0 4.2.1
+ __floatundisf@GCC_4.2.0 4.2.1
+ __frame_state_for@GLIBC_2.0 4.1.1
+ __gcc_personality_v0@GCC_3.3.1 4.1.1
+ __lshrdi3@GCC_3.0 4.1.1
+ __moddi3@GLIBC_2.0 4.1.1
+ __muldc3@GCC_4.0.0 4.1.1
+ __muldi3@GCC_3.0 4.1.1
+ __mulsc3@GCC_4.0.0 4.1.1
+ __mulvdi3@GCC_3.0 4.1.1
+ __mulvsi3@GCC_3.0 4.1.1
+ __negdi2@GCC_3.0 4.1.1
+ __negvdi2@GCC_3.0 4.1.1
+ __negvsi2@GCC_3.0 4.1.1
+ __paritydi2@GCC_3.4 4.1.1
+ __paritysi2@GCC_3.4 4.1.1
+ __popcountdi2@GCC_3.4 4.1.1
+ __popcountsi2@GCC_3.4 4.1.1
+ __powidf2@GCC_4.0.0 4.1.1
+ __powisf2@GCC_4.0.0 4.1.1
+ __register_frame@GLIBC_2.0 4.1.1
+ __register_frame_info@GLIBC_2.0 4.1.1
+ __register_frame_info_bases@GCC_3.0 4.1.1
+ __register_frame_info_table@GLIBC_2.0 4.1.1
+ __register_frame_info_table_bases@GCC_3.0 4.1.1
+ __register_frame_table@GLIBC_2.0 4.1.1
+ __subvdi3@GCC_3.0 4.1.1
+ __subvsi3@GCC_3.0 4.1.1
+ __ucmpdi2@GCC_3.0 4.1.1
+ __udivdi3@GLIBC_2.0 4.1.1
+ __udivmoddi4@GCC_3.0 4.1.1
+ __umoddi3@GLIBC_2.0 4.1.1
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.ia64
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.ia64
@@ -0,0 +1,4 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
--- gcj-4.2-4.2.4.orig/debian/lib64stdc++6.symbols.sparc
+++ gcj-4.2-4.2.4/debian/lib64stdc++6.symbols.sparc
@@ -0,0 +1,6 @@
+libstdc++.so.6 lib64stdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVli@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVli@GLIBCXX_3.4 4.1.1
+# FIXME: Currently no ldbl symbols in the 64bit libstdc++ on sparc.
+# #include "libstdc++6.symbols.ldbl.64bit"
--- gcj-4.2-4.2.4.orig/debian/locale-gen
+++ gcj-4.2-4.2.4/debian/locale-gen
@@ -0,0 +1,43 @@
+#!/bin/sh
+
+LOCPATH=`pwd`/locales
+export LOCPATH
+
+[ -d $LOCPATH ] || mkdir -p $LOCPATH
+
+umask 022
+
+echo "Generating locales..."
+while read locale charset; do
+	case $locale in \#*) continue;; esac
+	[ -n "$locale" -a -n "$charset" ] || continue
+	echo -n "  `echo $locale | sed 's/\([^.\@]*\).*/\1/'`"
+	echo -n ".$charset"
+	echo -n `echo $locale | sed 's/\([^\@]*\)\(\@.*\)*/\2/'`
+	echo -n '...'
+        if [ -f $LOCPATH/$locale ]; then
+	    input=$locale
+	else
+            input=`echo $locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`
+	fi
+	localedef -i $input -c -f $charset $LOCPATH/$locale #-A /etc/locale.alias
+	echo ' done'; \
+done <<EOF
+# This file lists locales that the libstdc++ testsuite depends on
+de_DE			ISO-8859-1
+de_DE@euro		ISO-8859-15
+en_HK			ISO-8859-1
+en_PH			ISO-8859-1
+en_US			ISO-8859-1
+en_US.ISO-8859-1	ISO-8859-1
+en_US.ISO-8859-15	ISO-8859-15
+en_US.UTF-8		UTF-8
+es_MX			ISO-8859-1
+fr_FR			ISO-8859-1
+fr_FR@euro		ISO-8859-15
+it_IT			ISO-8859-1
+ja_JP.eucjp		EUC-JP
+se_NO.UTF-8		UTF-8
+EOF
+
+echo "Generation complete."
--- gcj-4.2-4.2.4.orig/debian/gcc-cross.postinst
+++ gcj-4.2-4.2.4/debian/gcc-cross.postinst
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+update-alternatives --quiet \
+	--install /usr/bin/cross-gcc cross-gcc /usr/bin/cross-gcc-ver 41 \
+	--slave /usr/share/man/man1/cross-gcc.1.gz cross-gcc.1.gz /usr/share/man/man1/cross-gcc-ver.1.gz
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/libgcjLGCJ.postrm
+++ gcj-4.2-4.2.4/debian/libgcjLGCJ.postrm
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    remove|purge)
+        # only purge if no other library is installed.
+        if [ -z "$(ls /usr/lib/libgcj.so.@GCJ@* 2>/dev/null)" ]; then
+	    rm -f /var/lib/gcj-@BV@/classmap.db
+	    rmdir --ignore-fail-on-non-empty /var/lib/gcj-@BV@ 2>&1 || true
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/compat
+++ gcj-4.2-4.2.4/debian/compat
@@ -0,0 +1 @@
+5
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.ldbl.32bit.s390
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.ldbl.32bit.s390
@@ -0,0 +1,280 @@
+ CXXABI_LDBL_1.3@CXXABI_LDBL_1.3 4.2.1
+ GLIBCXX_LDBL_3.4.7@GLIBCXX_LDBL_3.4.7 4.2.1
+ GLIBCXX_LDBL_3.4@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZGVNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIjEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIlEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intImEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intItEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIxEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_intIyEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE16_M_extract_floatES4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRPv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRf@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRj@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRt@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_RSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcmcRSt8ios_basePcSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIlEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intImEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIxEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE13_M_insert_intIyEES4_S4_RSt8ios_basecT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcmcS7_PcS8_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES4_S4_RSt8ios_baseccT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIgEES4_S4_RSt8ios_baseccT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_RSt8ios_basecy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEciRSt8ios_basePcPKcRi@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_RSt8ios_basecy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_RSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcmwRSt8ios_basePwSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIlEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intImEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIxEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE13_M_insert_intIyEES4_S4_RSt8ios_basewT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcmwPKwPwSA_Ri@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIdEES4_S4_RSt8ios_basewcT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE15_M_insert_floatIgEES4_S4_RSt8ios_basewcT_@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_RSt8ios_basewy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwiRSt8ios_basePwPKwRi@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewPKv@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewb@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewl@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewm@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewx@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_RSt8ios_basewy@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_RSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb0EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE10_M_extractILb1EEES4_S4_S4_RSt8ios_baseRSt12_Ios_IostateRSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE3getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE6do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE8__do_getES4_S4_bRSt8ios_baseRSt12_Ios_IostateRd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE3putES4_bRSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6do_putES4_bRSt8ios_basecg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE8__do_putES4_bRSt8ios_basecd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb0EEES4_S4_RSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE9_M_insertILb1EEES4_S4_RSt8ios_basecRKSs@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE3putES4_bRSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_bRSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6do_putES4_bRSt8ios_basewg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE8__do_putES4_bRSt8ios_basewd@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb0EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNKSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE9_M_insertILb1EEES4_S4_RSt8ios_basewRKSbIwS3_SaIwEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSi10_M_extractIgEERSiRT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSirsERg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSo9_M_insertIgEERSoT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSolsEg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE10_M_extractIgEERS2_RT_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEErsERg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE9_M_insertIgEERS2_T_@GLIBCXX_LDBL_3.4.7 4.2.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEElsEg@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10has_denormE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10is_boundedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE10is_integerE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE11round_styleE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12has_infinityE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12max_exponentE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE12min_exponentE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE13has_quiet_NaNE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14is_specializedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14max_exponent10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE14min_exponent10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE15has_denorm_lossE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE15tinyness_beforeE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE17has_signaling_NaNE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE5radixE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE5trapsE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE6digitsE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE8digits10E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE8is_exactE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_iec559E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_moduloE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt14numeric_limitsIgE9is_signedE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE2idE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED0Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED1Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEED2Ev@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt14__convert_to_vIgEvPKcRT_RSt12_Ios_IostateRKP15__locale_struct@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9has_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEEbRKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZSt9use_facetINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEEERKT_RKSt6locale@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStlsIgcSt11char_traitsIcEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStlsIgwSt11char_traitsIwEERSt13basic_ostreamIT0_T1_ES6_RKSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStrsIgcSt11char_traitsIcEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZStrsIgwSt11char_traitsIwEERSt13basic_istreamIT0_T1_ES6_RSt7complexIT_E@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTINSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTIPKg@CXXABI_LDBL_1.3 4.2.1
+ _ZTIPg@CXXABI_LDBL_1.3 4.2.1
+ _ZTIg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTSPKg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSPg@CXXABI_LDBL_1.3 4.2.1
+ _ZTSg@CXXABI_LDBL_1.3 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1287num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEE@GLIBCXX_LDBL_3.4 4.2.1
+ _ZTVNSt17__gnu_cxx_ldbl1289money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEE@GLIBCXX_LDBL_3.4 4.2.1
--- gcj-4.2-4.2.4.orig/debian/libgcjGCJ-dev.overrides
+++ gcj-4.2-4.2.4/debian/libgcjGCJ-dev.overrides
@@ -0,0 +1 @@
+libgcj@GCJ@-dev: library-not-linked-against-libc
--- gcj-4.2-4.2.4.orig/debian/libgcj-doc.doc-base
+++ gcj-4.2-4.2.4/debian/libgcj-doc.doc-base
@@ -0,0 +1,10 @@
+Document: libgcj-doc
+Title: The GNU LibGCJ Classpath library
+Author: Various
+Abstract: Autogenerated documentation describing the libgcj
+ library (GCC 4.2), based on the classpath library.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcj-4.2-base/html/index.html
+Files: /usr/share/doc/gcj-4.2-base/html/*.html
--- gcj-4.2-4.2.4.orig/debian/logwatch.sh
+++ gcj-4.2-4.2.4/debian/logwatch.sh
@@ -0,0 +1,104 @@
+#! /bin/sh
+
+# script to trick the build daemons and output something, if there is
+# still test/build activity
+
+# $1: primary file to watch. if there is activity on this file, we do nothing
+# $2+: files to watch to look for activity despite no output in $1
+#      if the files are modified or are newly created, then the message
+#      is printed on stdout.
+#      if nothing is modified, don't output anything (so the buildd timeout
+#      hits).
+
+pidfile=logwatch.pid
+timeout=3600
+message='\nlogwatch still running\n'
+
+usage()
+{
+    echo >&2 "usage: `basename $0` [-p <pidfile>] [-t <timeout>] [-m <message>]"
+    echo >&2 "           <logfile> [<logfile> ...]"
+    exit 1
+}
+
+while [ $# -gt 0 ]; do
+    case $1 in
+    -p)
+	pidfile=$2
+	shift
+	shift
+	;;
+    -t)
+	timeout=$2
+	shift
+	shift
+	;;
+    -m)
+	message="$2"
+	shift
+	shift
+	;;
+    -*)
+	usage
+	;;
+    *)
+	break
+    esac
+done
+
+[ $# -gt 0 ] || usage
+
+logfile="$1"
+shift
+otherlogs="$@"
+
+cleanup()
+{
+    rm -f $pidfile
+    exit 0
+}
+
+#trap cleanup 0 1 3 15
+
+echo $$ > $pidfile
+
+update()
+{
+    _logvar=$1
+    _othervar=$2
+
+    # logfile may not exist yet
+    if [ -r $logfile ]; then
+	_logtail="`tail -10 $logfile | md5sum` $f"
+    else
+	_logtail="does not exist: $logfile"
+    fi
+    eval $_logvar="'$_logtail'"
+
+    _othertails=''
+    for f in $otherlogs; do
+	if [ -r $f ]; then
+	    _othertails="$_othertails `tail -10 $f | md5sum` $f"
+	else
+	    _othertails="$_othertails does not exist: $f"
+	fi
+    done
+    eval $_othervar="'$_othertails'"
+}
+
+update logtail othertails
+while true; do
+    sleep $timeout
+    update newlogtail newothertails
+    if [ "$logtail" != "$newlogtail" ]; then
+	# there is still action in the primary logfile. do nothing.
+	logtail="$newlogtail"
+    elif [ "$othertails" != "$newothertails" ]; then
+	# there is still action in the other log files, so print the message
+	/bin/echo -e $message
+	othertails="$newothertails"
+    else
+	# nothing changed in the other log files. maybe a timeout ...
+	:
+    fi
+done
--- gcj-4.2-4.2.4.orig/debian/rules.parameters
+++ gcj-4.2-4.2.4/debian/rules.parameters
@@ -0,0 +1,34 @@
+# configuration parameters taken from upstream source files
+GCC_VERSION	:= 4.2.4
+NEXT_GCC_VERSION	:= 4.2.5
+BASE_VERSION	:= 4.2
+SOURCE_VERSION	:= 4.2.4-4
+DEB_VERSION	:= 4.2.4-4
+DEB_EVERSION	:= 1:4.2.4-4
+GPC_BASE_VERSION	:= 
+GDC_BASE_VERSION  := 
+DEB_GPC_VERSION	:= 
+DEB_GDC_VERSION	:= 
+DEB_SOVERSION	:= 4.2.1
+DEB_SOEVERSION	:= 1:4.2.1
+DEB_LIBGCC_SOVERSION	:= 1:4.2.1
+DEB_LIBGCC_VERSION	:= 1:4.2.4-4
+DEB_STDCXX_SOVERSION	:= 4.2.1
+DEB_GCJ_SOVERSION	:= 4.2.1
+PKG_GCJ_EXT	:= 8
+PKG_LIBGCJ_EXT	:= 8-1
+DEB_GOMP_SOVERSION	:= 4.2.1
+DEB_GCCMATH_SOVERSION	:= 4.2.1
+GCC_SONAME	:= 1
+CXX_SONAME	:= 6
+FORTRAN_SONAME	:= 2
+OBJC_SONAME	:= 2
+GCJ_SONAME	:= 81
+GNAT_VERSION	:= 4.2
+GNAT_SONAME	:= 4.2
+FFI_SONAME	:= 4
+MUDFLAP_SONAME	:= 0
+SSP_SONAME	:= 0
+GOMP_SONAME	:= 1
+GCCMATH_SONAME	:= 
+LIBC_DEP		:= libc6
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.32bit
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.32bit
@@ -0,0 +1,527 @@
+#include "libstdc++6.symbols.common"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listEj@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx17__pool_alloc_base9_M_refillEj@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE16_M_reclaim_blockEPcj@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE16_M_reserve_blockEjj@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_reclaim_blockEPcj@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_reserve_blockEjj@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx9free_list6_M_getEj@GLIBCXX_3.4.4 4.1.1
+ _ZNK10__cxxabiv117__class_type_info12__do_dyncastEiNS0_10__sub_kindEPKS0_PKvS3_S5_RNS0_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__class_type_info20__do_find_public_srcEiPKvPKS0_S2_@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info12__do_dyncastEiNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info20__do_find_public_srcEiPKvPKNS_17__class_type_infoES2_@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info12__do_dyncastEiNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info20__do_find_public_srcEiPKvPKNS_17__class_type_infoES2_@CXXABI_1.3 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEPKwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofERKS2_j@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEPKwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofERKS2_j@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEjjPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEjjPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEPKwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofERKS2_j@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEPKwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofERKS2_j@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE2atEj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4copyEPwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findERKS2_j@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEPKwjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindERKS2_j@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE6substrEjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEjjPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEjjPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEjjRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEjjRKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8_M_checkEjPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limitEjj@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEEixEj@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEPKcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofERKSsj@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEPKcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofERKSsj@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs15_M_check_lengthEjjPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs15_M_check_lengthEjjPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSs16find_last_not_ofEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofEPKcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofERKSsj@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofEcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEPKcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofERKSsj@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs2atEj@GLIBCXX_3.4 4.1.1
+ _ZNKSs4copyEPcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEPKcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findERKSsj@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEPKcjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindERKSsj@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs6substrEjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEjjPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEjjPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEjjRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEjjRKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNKSs8_M_checkEjPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs8_M_limitEjj@GLIBCXX_3.4 4.1.1
+ _ZNKSsixEj@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE6_M_putEPcjPKcPK2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE6_M_putEPwjPKwPK2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE9do_lengthERS0_PKcS4_j@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE9do_lengthERS0_PKcS4_j@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE12_M_transformEPcPKcj@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE12_M_transformEPwPKwj@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcjcRSt8ios_basePcS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcjcS6_PcS7_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEciRSt8ios_basePcPKcRi@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcjwRSt8ios_basePwS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcjwPKwPwS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwiRSt8ios_basePwPKwRi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_numES3_S3_RiiijRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE15_M_extract_nameES3_S3_RiPPKcjRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_numES3_S3_RiiijRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE15_M_extract_nameES3_S3_RiPPKwjRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8valarrayIjE4sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructEjwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE14_M_replace_auxEjjjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeEjjPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE2atEj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEj@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_cloneERKS1_j@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createEjjRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5eraseEjj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendERKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignERKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EEjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEjPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEjPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEjRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEjRKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEjjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6resizeEj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6resizeEjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwj@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwj@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_PKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_jw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEjjPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEjjPKwj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEjjRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEjjRKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEjjjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7reserveEj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwjw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwjw@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEjjj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EPKwjRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_jjRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EjwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EPKwjRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jj@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_jjRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EjwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEixEj@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEPci@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEPcic@GLIBCXX_3.4 4.1.1
+ _ZNSi4readEPci@GLIBCXX_3.4 4.1.1
+ _ZNSi5seekgExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEi@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEi@GLIBCXX_3.4.5 4.1.1
+ _ZNSi6ignoreEii@GLIBCXX_3.4 4.1.1
+ _ZNSi7getlineEPci@GLIBCXX_3.4 4.1.1
+ _ZNSi7getlineEPcic@GLIBCXX_3.4 4.1.1
+ _ZNSi8readsomeEPci@GLIBCXX_3.4 4.1.1
+ _ZNSo5seekpExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSo5writeEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSo8_M_writeEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSs12_S_constructEjcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs14_M_replace_auxEjjjc@GLIBCXX_3.4 4.1.1
+ _ZNSs15_M_replace_safeEjjPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs2atEj@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep26_M_set_length_and_sharableEj@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep26_M_set_length_and_sharableEj@GLIBCXX_3.4.5 4.1.1
+ _ZNSs4_Rep8_M_cloneERKSaIcEj@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep9_S_createEjjRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs5eraseEjj@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendERKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEjc@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignERKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEjc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEEjc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEjPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEjPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEjRKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEjRKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEjjc@GLIBCXX_3.4 4.1.1
+ _ZNSs6resizeEj@GLIBCXX_3.4 4.1.1
+ _ZNSs6resizeEjc@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_copyEPcPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_copyEPcPKcj@GLIBCXX_3.4.5 4.1.1
+ _ZNSs7_M_moveEPcPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_moveEPcPKcj@GLIBCXX_3.4.5 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_PKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_jc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEjjPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEjjPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEjjRKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEjjRKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEjjjc@GLIBCXX_3.4 4.1.1
+ _ZNSs7reserveEj@GLIBCXX_3.4 4.1.1
+ _ZNSs9_M_assignEPcjc@GLIBCXX_3.4 4.1.1
+ _ZNSs9_M_assignEPcjc@GLIBCXX_3.4.5 4.1.1
+ _ZNSs9_M_mutateEjjj@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EPKcjRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSsjjRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EjcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EPKcjRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSsjj@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSsjjRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EjcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsixEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPci@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPci@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1EPSt18__moneypunct_cacheIcLb0EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2EPSt18__moneypunct_cacheIcLb0EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1EPSt18__moneypunct_cacheIcLb1EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2EPSt18__moneypunct_cacheIcLb1EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1EPSt18__moneypunct_cacheIwLb0EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2EPSt18__moneypunct_cacheIwLb0EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1EPSt18__moneypunct_cacheIwLb1EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2EPSt18__moneypunct_cacheIwLb1EEj@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1EPSt17__timepunct_cacheIcEj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2EPSt17__timepunct_cacheIcEj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1EPSt17__timepunct_cacheIwEj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2EPSt17__timepunct_cacheIwEj@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE6xsgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE6xsputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE7seekoffExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE8xsputn_2EPKciS2_i@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8_M_allocEj@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8_M_setupEPcS0_i@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPFPvjEPFvS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKai@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKhi@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPaiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPciS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPhiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1Ei@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPFPvjEPFvS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKai@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKhi@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPaiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPciS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPhiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2Ei@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE13_M_set_bufferEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE22_M_convert_to_externalEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6xsgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6xsputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7_M_seekExSt12_Ios_Seekdir11__mbstate_t@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE13_M_set_bufferEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE22_M_convert_to_externalEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6setbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6xsgetnEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6xsputnEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7_M_seekExSt12_Ios_Seekdir11__mbstate_t@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwiw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE4readEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE5seekgExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi@GLIBCXX_3.4.5 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEij@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7getlineEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7getlineEPwiw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE8readsomeEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE10pubseekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6xsgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6xsputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9pubsetbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE10pubseekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sgetnEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sputnEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6setbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6xsgetnEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6xsputnEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9pubsetbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7_M_syncEPcjj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE6setbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7_M_syncEPwjj@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EEC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EEC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC1EP15__locale_structPKtbj@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC1EPKtbj@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC2EP15__locale_structPKtbj@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC2EPKtbj@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt6gslice8_IndexerC1EjRKSt8valarrayIjES4_@GLIBCXX_3.4 4.1.1
+ _ZNSt6gslice8_IndexerC2EjRKSt8valarrayIjES4_@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetEj@GLIBCXX_3.4.7 4.1.1
+ _ZNSt6locale5_ImplC1EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC1ERKS0_j@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2EPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2ERKS0_j@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC1EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC2EP15__locale_structPKcj@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1EPSt16__numpunct_cacheIcEj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2EPSt16__numpunct_cacheIcEj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1EPSt16__numpunct_cacheIwEj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2EP15__locale_structj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2EPSt16__numpunct_cacheIwEj@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjEC1ERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjEC2ERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayIjEixEj@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Ej@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Ej@GLIBCXX_3.4 4.1.1
+ _ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_i@GLIBCXX_3.4.9 4.2.1
+ _ZSt16__ostream_insertIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKS3_i@GLIBCXX_3.4.9 4.2.1
+ _ZSt17__copy_streambufsIcSt11char_traitsIcEEiPSt15basic_streambufIT_T0_ES6_@GLIBCXX_3.4.6 4.1.1
+ _ZSt17__copy_streambufsIwSt11char_traitsIwEEiPSt15basic_streambufIT_T0_ES6_@GLIBCXX_3.4.6 4.1.1
+ _ZSt21__copy_streambufs_eofIcSt11char_traitsIcEEiPSt15basic_streambufIT_T0_ES6_Rb@GLIBCXX_3.4.9 4.2.1
+ _ZSt21__copy_streambufs_eofIwSt11char_traitsIwEEiPSt15basic_streambufIT_T0_ES6_Rb@GLIBCXX_3.4.9 4.2.1
+ _ZThn8_NSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSiD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSiD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSoD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSoD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10istrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10istrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10ostrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10ostrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_istreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_istreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_ostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_ostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _Znaj@GLIBCXX_3.4 4.1.1
+ _ZnajRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ _Znwj@GLIBCXX_3.4 4.1.1
+ _ZnwjRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
--- gcj-4.2-4.2.4.orig/debian/libgcjLGCJ.postinst
+++ gcj-4.2-4.2.4/debian/libgcjLGCJ.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libgcj@GCJ@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	  rm -rf /usr/share/doc/libgcj@GCJ@
+	  ln -s gcj-@BV@-base /usr/share/doc/libgcj@GCJ@
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/porting.texi
+++ gcj-4.2-4.2.4/debian/porting.texi
@@ -0,0 +1,47 @@
+\input texinfo
+
+@setfilename porting.info
+@settitle Porting libstdc++-v3
+@setchapternewpage odd
+
+@ifinfo
+This file explains how to port libstdc++-v3 (the GNU C++ library) to 
+a new target.
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+@end ifinfo
+
+@c ---------------------------------------------------------------------
+@c Titlepage
+@c ---------------------------------------------------------------------
+
+@titlepage
+@title Porting libstdc++-v3
+@author Mark Mitchell
+@page
+@vskip 0pt plus 1filll
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+@end titlepage
+
+@c ---------------------------------------------------------------------
+@c Top
+@c ---------------------------------------------------------------------
+
+@node Top
+@top Porting libstdc++-v3
+
+This document explains how to port libstdc++-v3 (the GNU C++ library) to 
+a new target.
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+
+@c ---------------------------------------------------------------------
+@c Epilogue
+@c ---------------------------------------------------------------------
+
+@contents
+@bye
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.alpha
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.alpha
@@ -0,0 +1,102 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1
+ GCC_3.3@GCC_3.3 1:4.1.1
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1
+ GCC_3.4.4@GCC_3.4.4 1:4.1.1
+ GCC_3.4@GCC_3.4 1:4.1.1
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1
+ GCC_LDBL_4.0.0@GCC_LDBL_4.0.0 1:4.2.1
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1
+ _Unwind_GetGR@GCC_3.0 1:4.1.1
+ _Unwind_GetIP@GCC_3.0 1:4.1.1
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1
+ _Unwind_Resume@GCC_3.0 1:4.1.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1
+ _Unwind_SetGR@GCC_3.0 1:4.1.1
+ _Unwind_SetIP@GCC_3.0 1:4.1.1
+ __absvdi2@GCC_3.0 1:4.1.1
+ __absvsi2@GCC_3.0 1:4.1.1
+ __absvti2@GCC_3.4.4 1:4.1.1
+ __addvdi3@GCC_3.0 1:4.1.1
+ __addvsi3@GCC_3.0 1:4.1.1
+ __addvti3@GCC_3.4.4 1:4.1.1
+ __ashlti3@GCC_3.0 1:4.1.1
+ __ashrti3@GCC_3.0 1:4.1.1
+ __clear_cache@GCC_3.0 1:4.1.1
+ __clzdi2@GCC_3.4 1:4.1.1
+ __clzti2@GCC_3.4 1:4.1.1
+ __cmpti2@GCC_3.0 1:4.1.1
+ __ctzdi2@GCC_3.4 1:4.1.1
+ __ctzti2@GCC_3.4 1:4.1.1
+ __deregister_frame@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1
+ __divdc3@GCC_4.0.0 1:4.1.1
+ __divsc3@GCC_4.0.0 1:4.1.1
+ __divtc3@GCC_LDBL_4.0.0 1:4.2.1
+ __divti3@GCC_3.0 1:4.1.1
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1
+ __ffsdi2@GCC_3.0 1:4.1.1
+ __ffsti2@GCC_3.0 1:4.1.1
+ __fixdfti@GCC_3.0 1:4.1.1
+ __fixsfti@GCC_3.0 1:4.1.1
+ __fixtfti@GCC_3.0 1:4.2.1
+ __fixunsdfdi@GCC_3.0 1:4.1.1
+ __fixunsdfti@GCC_3.0 1:4.1.1
+ __fixunssfdi@GCC_3.0 1:4.1.1
+ __fixunssfti@GCC_3.0 1:4.1.1
+ __fixunstfti@GCC_3.0 1:4.2.1
+ __floattidf@GCC_3.0 1:4.1.1
+ __floattisf@GCC_3.0 1:4.1.1
+ __floattitf@GCC_3.0 1:4.2.1
+ __floatuntidf@GCC_4.2.0 1:4.2.1
+ __floatuntisf@GCC_4.2.0 1:4.2.1
+ __floatuntitf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1
+ __lshrti3@GCC_3.0 1:4.1.1
+ __modti3@GCC_3.0 1:4.1.1
+ __muldc3@GCC_4.0.0 1:4.1.1
+ __mulsc3@GCC_4.0.0 1:4.1.1
+ __multc3@GCC_LDBL_4.0.0 1:4.2.1
+ __multi3@GCC_3.0 1:4.1.1
+ __mulvdi3@GCC_3.0 1:4.1.1
+ __mulvsi3@GCC_3.0 1:4.1.1
+ __mulvti3@GCC_3.4.4 1:4.1.1
+ __negti2@GCC_3.0 1:4.1.1
+ __negvdi2@GCC_3.0 1:4.1.1
+ __negvsi2@GCC_3.0 1:4.1.1
+ __negvti2@GCC_3.4.4 1:4.1.1
+ __paritydi2@GCC_3.4 1:4.1.1
+ __parityti2@GCC_3.4 1:4.1.1
+ __popcountdi2@GCC_3.4 1:4.1.1
+ __popcountti2@GCC_3.4 1:4.1.1
+ __powidf2@GCC_4.0.0 1:4.1.1
+ __powisf2@GCC_4.0.0 1:4.1.1
+ __powitf2@GCC_LDBL_4.0.0 1:4.2.1
+ __register_frame@GLIBC_2.0 1:4.1.1
+ __register_frame_info@GLIBC_2.0 1:4.1.1
+ __register_frame_info_bases@GCC_3.0 1:4.1.1
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1
+ __register_frame_table@GLIBC_2.0 1:4.1.1
+ __subvdi3@GCC_3.0 1:4.1.1
+ __subvsi3@GCC_3.0 1:4.1.1
+ __subvti3@GCC_3.4.4 1:4.1.1
+ __ucmpti2@GCC_3.0 1:4.1.1
+ __udivmodti4@GCC_3.0 1:4.1.1
+ __udivti3@GCC_3.0 1:4.1.1
+ __umodti3@GCC_3.0 1:4.1.1
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.hppa
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.hppa
@@ -0,0 +1,26 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
+ __signbitl@GLIBCXX_3.4 4.2.1
+#DEPRECATED: 4.2.2-4# acosl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# asinl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# atan2l@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# atanl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# ceill@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# coshl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# cosl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# expl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# floorl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# fmodl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# frexpl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# hypotl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# ldexpl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# log10l@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# logl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# modfl@GLIBCXX_3.4.3 4.1.1
+#DEPRECATED: 4.2.2-4# powl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# sinhl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# sinl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# sqrtl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# tanhl@GLIBCXX_3.4 4.1.1
+#DEPRECATED: 4.2.2-4# tanl@GLIBCXX_3.4 4.1.1
--- gcj-4.2-4.2.4.orig/debian/watch
+++ gcj-4.2-4.2.4/debian/watch
@@ -0,0 +1,2 @@
+version=2
+ftp://gcc.gnu.org/pub/gcc/releases/gcc-(4\.2[\d\.]*)	debian	uupdate
--- gcj-4.2-4.2.4.orig/debian/gij-BV.prerm
+++ gcj-4.2-4.2.4/debian/gij-BV.prerm
@@ -0,0 +1,14 @@
+#! /bin/sh -e
+
+if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ]; then
+    update-alternatives --quiet --remove java /usr/bin/gij-@BV@
+    update-alternatives --quiet --remove rmiregistry /usr/bin/grmiregistry-@BV@
+    update-alternatives --quiet --remove keytool /usr/bin/gkeytool-@BV@
+    update-alternatives --quiet --remove orbd /usr/bin/gorbd-@BV@
+    update-alternatives --quiet --remove rmid /usr/bin/grmid-@BV@
+    update-alternatives --quiet --remove serialver /usr/bin/gserialver-@BV@
+fi
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/control.m4
+++ gcj-4.2-4.2.4/debian/control.m4
@@ -0,0 +1,1545 @@
+divert(-1)
+
+define(`checkdef',`ifdef($1, , `errprint(`error: undefined macro $1
+')m4exit(1)')')
+define(`errexit',`errprint(`error: undefined macro `$1'
+')m4exit(1)')
+
+dnl The following macros must be defined, when called:
+dnl ifdef(`SRCNAME',	, errexit(`SRCNAME'))
+dnl ifdef(`PV',		, errexit(`PV'))
+dnl ifdef(`ARCH',		, errexit(`ARCH'))
+
+dnl The architecture will also be defined (-D__i386__, -D__powerpc__, etc.)
+
+define(`PN', `$1')
+ifdef(`PRI', `', `
+    define(`PRI', `$1')
+')
+define(`MAINTAINER', `Debian GCC Maintainers <debian-gcc@lists.debian.org>')
+
+define(`ifenabled', `ifelse(index(enabled_languages, `$1'), -1, `dnl', `$2')')
+
+divert`'dnl
+dnl --------------------------------------------------------------------------
+Source: SRCNAME
+Section: devel
+Priority: PRI(optional)
+ifelse(DIST,`Ubuntu',`dnl
+ifelse(regexp(SRCNAME, `gnat\|gpc-|gdc-'),0,`dnl
+Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
+', `dnl
+Maintainer: Ubuntu Core developers <ubuntu-devel-discuss@lists.ubuntu.com>
+')dnl SRCNAME
+XSBC-Original-Maintainer: MAINTAINER
+', `dnl
+Maintainer: MAINTAINER
+')dnl DIST
+ifelse(regexp(SRCNAME, `gnat'),0,`dnl
+Uploaders: Ludovic Brenta <lbrenta@debian.org>
+', regexp(SRCNAME, `gdc'),0,`dnl
+Uploaders: Arthur Loiret <arthur.loiret@gmail.com>
+', regexp(SRCNAME, `gpc'),0,`dnl
+Uploaders: Matthias Klose <doko@debian.org>
+', `dnl
+Uploaders: Matthias Klose <doko@debian.org>
+')dnl SRCNAME
+Standards-Version: 3.7.3
+ifdef(`TARGET',`dnl cross
+Build-Depends: dpkg-dev (>= 1.13.9), dpkg-cross (>= 1.25.99), LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP LIBUNWIND_BUILD_DEP LIBATOMIC_OPS_BUILD_DEP m4, autoconf, autoconf2.13, automake1.9, libtool, autogen, gawk, lzma, BINUTILS_BUILD_DEP, debhelper (>= 5.0), bison (>= 1:2.3), flex, realpath (>= 1.9.12), lsb-release, make (>= 3.81)
+',`dnl native
+Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), gcc-multilib [amd64 i386 powerpc ppc64 s390 sparc kfreebsd-amd64], LIBC_BUILD_DEP, LIBC_BIARCH_BUILD_DEP libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, autoconf2.13, automake1.9, libtool, autogen, gawk, CHECK_BUILD_DEP, lzma, BINUTILS_BUILD_DEP, binutils-hppa64 (>= BINUTILSV) [hppa], gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), FORTRAN_BUILD_DEP locales [locale_no_archs], procps [linux_gnu_archs], sharutils, PASCAL_BUILD_DEP JAVA_BUILD_DEP GNAT_BUILD_DEP GDC_BUILD_DEP realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
+Build-Depends-Indep: LIBSTDCXX_BUILD_INDEP JAVA_BUILD_INDEP
+')dnl
+dnl Build-Conflicts: qt3-dev-tools
+
+ifelse(SRCNAME,gcc-snapshot,`dnl
+Package: gcc-snapshot
+Architecture: any
+Section: devel
+Priority: extra
+Depends: binutils`'TS (>= ${binutils:Version}), ${dep:libcdev}, ${dep:libunwinddev}, ${shlibs:Depends}
+Provides: c++abi2-dev
+Description: A SNAPSHOT of the GNU Compiler Collection
+ This package contains a recent development SNAPSHOT of all files
+ contained in the GNU Compiler Collection (GCC).
+ .
+ DO NOT USE THIS SNAPSHOT FOR BUILDING DEBIAN PACKAGES!
+ .
+ This package will NEVER hit the testing distribution. It is used for
+ tracking gcc bugs submitted to the Debian BTS in recent development
+ versions of gcc.
+',`dnl gcc-X.Y
+
+dnl default base package dependencies
+define(`BASETARGET', `')
+define(`BASEDEP', `gcc`'PV-base (= ${gcc:Version})')
+define(`SOFTBASEDEP', `gcc`'PV-base (>= ${gcc:SoftVersion})')
+
+dnl base, when building libgcc out of the gcj source; needed if new symbols
+dnl in libgcc are used in libgcj.
+ifelse(index(SRCNAME, `gcj'), 0, `
+define(`BASEDEP', `gcj`'PV-base (= ${gcj:Version})')
+define(`SOFTBASEDEP', `gcj`'PV-base (>= ${gcj:SoftVersion})')
+')
+
+ifdef(`TARGET', `', `
+ifenabled(`gccbase',`
+
+Package: gcc`'PV-base
+Architecture: any
+Section: libs
+Priority: PRI(required)
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+ifdef(`BASE_ONLY', `dnl
+ .
+ This version of GCC is not yet available for this architecture.
+ Please use the compilers from the gcc-snapshot package for testing.
+')`'dnl
+')`'dnl
+')`'dnl native
+
+ifenabled(`gccxbase',`
+dnl override default base package dependencies to cross version
+dnl This creates a toolchain that doesnt depend on the system -base packages
+define(`BASETARGET', `PV`'TS')
+define(`BASEDEP', `gcc`'BASETARGET-base (= ${gcc:Version})')
+define(`SOFTBASEDEP', `gcc`'BASETARGET-base (>= ${gcc:SoftVersion})')
+
+Package: gcc`'BASETARGET-base
+Architecture: any
+Section: devel
+Priority: PRI(required)
+Conflicts: gcc-3.5-base
+Replaces: gcc-3.5-base
+Description: The GNU Compiler Collection (base package)
+ This package contains files common to all languages and libraries
+ contained in the GNU Compiler Collection (GCC).
+')`'dnl
+
+ifenabled(`java',`
+Package: gcj`'PV-base
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Description: The GNU Compiler Collection (gcj base package)
+ This package contains files common to all java related packages
+ built from the GNU Compiler Collection (GCC).
+')`'dnl java
+
+ifenabled(`ada',`
+Package: gnat`'PV-base
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Description: The GNU Compiler Collection (gnat base package)
+ This package contains files common to all Ada related packages
+ built from the GNU Compiler Collection (GCC).
+')`'dnl ada
+
+ifenabled(`libgcc',`
+Package: libgcc1`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',required)
+Depends: BASEDEP, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libgcc1-TARGET-dcv1
+',`')`'dnl
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `')
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libgcc1-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, libgcc1 (= ${gcc:EpochVersion})
+Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `')
+ Debug symbols for the GCC support library.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libgcc2`'LS
+Architecture: ifdef(`TARGET',`all',`m68k')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',required)
+Depends: BASEDEP, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libgcc2-TARGET-dcv1
+',`')`'dnl
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `')
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libgcc2-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`m68k')
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, libgcc2 (= ${gcc:Version})
+Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `')
+ Debug symbols for the GCC support library.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl libgcc
+
+ifenabled(`lib4gcc',`
+Package: libgcc4`'LS
+Architecture: ifdef(`TARGET',`all',`hppa')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',required)
+Depends: ifdef(`STANDALONEJAVA',`gcj`'PV-base (>= ${gcj:Version})',`BASEDEP'), ${shlibs:Depends}
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `')
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libgcc4-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`hppa')
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, libgcc4 (= ${gcc:Version})
+Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `')
+ Debug symbols for the GCC support library.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib4gcc
+
+ifenabled(`lib64gcc',`
+Package: lib64gcc1`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, ${dep:libcbiarch}
+ifdef(`TARGET',`Provides: lib64gcc1-TARGET-dcv1
+',`')`'dnl
+Conflicts: libgcc`'GCC_SO`'LS (<= 1:3.3-0pre9)
+Description: GCC support library`'ifdef(`TARGET)',` (TARGET)', `') (64bit)
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: lib64gcc1-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, lib64gcc1 (= ${gcc:EpochVersion})
+Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `')
+ Debug symbols for the GCC support library.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib64gcc
+
+ifdef(`TARGET', `', `dnl
+ifenabled(`lib32gcc',`
+Package: lib32gcc1`'LS
+Architecture: ifdef(`TARGET',`all',`biarch32_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: optional
+Depends: BASEDEP, ${dep:libcbiarch}
+ifdef(`TARGET',`Provides: lib32gcc1-TARGET-dcv1
+',`')`'dnl
+ifelse(DIST,`Ubuntu', `Replaces: ia32-libs-openoffice.org (<< 1ubuntu3)', `dnl')
+Description: GCC support library (32 bit Version)
+ Shared version of the support library, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or
+ special needs for some languages.
+
+Package: lib32gcc1-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`biarch32_archs')
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, lib32gcc1 (= ${gcc:EpochVersion})
+Description: GCC support library (debug symbols)`'ifdef(`TARGET)',` (TARGET)', `')
+ Debug symbols for the GCC support library.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl
+')`'dnl
+
+ifdef(`TARGET', `', `
+ifenabled(`libgmath',`
+Package: libgccmath`'GCCMATH_SO
+Architecture: i386
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC math support library
+ Support library for GCC.
+
+Package: lib32gccmath`'GCCMATH_SO
+Architecture: amd64
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC math support library (32bit)
+ Support library for GCC.
+
+Package: lib64gccmath`'GCCMATH_SO
+Architecture: i386
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC math support library (64bit)
+ Support library for GCC.
+')`'dnl
+')`'dnl native
+
+ifenabled(`cdev',`
+Package: gcc`'PV`'TS
+Architecture: any
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, cpp`'PV`'TS (= ${gcc:Version}), binutils`'TS (>= ${binutils:Version}), ${dep:libgcc}, ${dep:libssp}, ${dep:libgomp}, ${dep:libunwinddev}, ${shlibs:Depends}
+Recommends: ${dep:libcdev}
+Suggests: ${gcc:multilib}, libmudflap`'MF_SO`'PV-dev`'LS (>= ${gcc:Version}), gcc`'PV-doc (>= ${gcc:SoftVersion}), gcc`'PV-locales (>= ${gcc:SoftVersion}), libgcc`'GCC_SO-dbg`'LS, libgomp`'GOMP_SO-dbg`'LS, libmudflap`'MF_SO-dbg`'LS
+Replaces: gcc`'PV`'TS-base (<< 4.2.1-5)
+Provides: c-compiler`'TS
+Description: The GNU C compiler`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ifdef(`TARGET', `dnl
+ .
+ This package contains C cross-compiler for TARGET architecture.
+')`'dnl
+
+ifenabled(`multilib',`
+Package: gcc`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}), ${dep:libcbiarchdev}, ${dep:libgccbiarch}, ${dep:libsspbiarch}, ${dep:libgompbiarch}, ${shlibs:Depends}
+Suggests: ${dep:libmudflapbiarch}
+Replaces: gcc-4.2 (<< 4.2-20061008)
+Description: The GNU C compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl cdev
+
+ifenabled(`cdev',`
+ifdef(`TARGET', `', `
+Package: gcc`'PV-hppa64
+Architecture: hppa
+Section: devel
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Conflicts: gcc-3.3-hppa64 (<= 1:3.3.4-5), gcc-3.4-hppa64 (<= 3.4.1-3)
+Description: The GNU C compiler (cross compiler for hppa64)
+ This is the GNU C compiler, a fairly portable optimizing compiler for C.
+')`'dnl native
+')`'dnl cdev
+
+ifenabled(`cdev',`
+Package: cpp`'PV`'TS
+Architecture: any
+Section: ifdef(`TARGET',`devel',`interpreters')
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, ${shlibs:Depends}
+Suggests: gcc`'PV-locales (>= ${gcc:SoftVersion})
+Conflicts: cpp-4.2 (<< 4.2-20070307), gcc-4.2 (<< 4.2-20070307), g++-4.2 (<< 4.2-20070307), gobjc-4.2 (<< 4.2-20070307), gobjc++-4.2 (<< 4.2-20070307), gfortran-4.2 (<< 4.2-20070307), treelang-4.2 (<< 4.2-20070307), gcj-4.2 (<< 4.2-20070307), gcj-4.2 (<< 4.2-20070307), gcc-4.2-multilib (<< 4.2-20070307), g++-4.2-multilib (<< 4.2-20070307), gobjc-4.2-multilib (<< 4.2-20070307), gobjc++-4.2-multilib (<< 4.2-20070307), gfortran-4.2-multilib (<< 4.2-20070307)
+Description: The GNU C preprocessor
+ A macro processor that is used automatically by the GNU C compiler
+ to transform programs before actual compilation.
+ .
+ This package has been separated from gcc for the benefit of those who
+ require the preprocessor but not the compiler.
+ifdef(`TARGET', `dnl
+ .
+ This package contains preprocessor configured for TARGET architecture.
+')`'dnl
+
+ifdef(`TARGET', `', `
+ifenabled(`gfdldoc',`
+Package: cpp`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Description: Documentation for the GNU C preprocessor (cpp)
+ Documentation for the GNU C preprocessor in info `format'.
+')`'dnl gfdldoc
+')`'dnl native
+
+ifdef(`TARGET', `', `
+Package: gcc`'PV-locales
+Architecture: all
+Section: devel
+Priority: PRI(optional)
+Depends: SOFTBASEDEP, cpp`'PV (>= ${gcc:SoftVersion})
+Recommends: gcc`'PV (>= ${gcc:SoftVersion})
+Description: The GNU C compiler (native language support files)
+ Native language support for GCC. Lets GCC speak your language,
+ if translations are available.
+ .
+ Please do NOT submit bug reports in other languages than "C".
+ Always reset your language settings to use the "C" locales.
+')`'dnl native
+')`'dnl cdev
+
+ifenabled(`c++',`
+ifenabled(`c++dev',`
+Package: g++`'PV`'TS
+Architecture: any
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version}), ${shlibs:Depends}
+Provides: c++-compiler`'TS, c++abi2-dev
+Suggests: ${gxx:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion}), libstdc++CXX_SO`'PV-dbg`'LS
+Description: The GNU C++ compiler`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+ifdef(`TARGET', `dnl
+ .
+ This package contains C++ cross-compiler for TARGET architecture.
+')`'dnl
+
+ifenabled(`multilib',`
+Package: g++`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, g++`'PV`'TS (= ${gcc:Version}), gcc`'PV-multilib`'TS (= ${gcc:Version}), ${dep:libcxxbiarch}, ${shlibs:Depends}
+Suggests: ${dep:libcxxbiarchdbg}
+Replaces: libstdc++6-4.2-dev (<< 4.2-20061008)
+Description: The GNU C++ compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU C++ compiler, a fairly portable optimizing compiler for C++.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl c++dev
+')`'dnl c++
+
+ifdef(`TARGET', `', `
+ifenabled(`mudflap',`
+ifenabled(`libmudf',`
+Package: libmudflap`'MF_SO
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC mudflap shared support libraries
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: libmudflap`'MF_SO-dbg
+Architecture: any
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, libmudflap`'MF_SO (= ${gcc:Version})
+Description: GCC mudflap shared support libraries (debug symbols)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: lib32mudflap`'MF_SO
+Architecture: biarch32_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libmudflap0 (<< 4.1)
+Description: GCC mudflap shared support libraries (32bit)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: lib32mudflap`'MF_SO-dbg
+Architecture: any
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, lib32mudflap`'MF_SO (= ${gcc:Version})
+Description: GCC mudflap shared support libraries (32 bit debug symbols)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: lib64mudflap`'MF_SO
+Architecture: biarch64_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libmudflap0 (<< 4.1)
+Description: GCC mudflap shared support libraries (64bit)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+
+Package: lib64mudflap`'MF_SO-dbg
+Architecture: any
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, lib64mudflap`'MF_SO (= ${gcc:Version})
+Description: GCC mudflap shared support libraries (64 bit debug symbols)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+')`'dnl
+
+Package: libmudflap`'MF_SO`'PV-dev
+Architecture: any
+Section: libdevel
+Priority: PRI(optional)
+Depends: BASEDEP, libmudflap`'MF_SO (>= ${gcc:Version}), ${dep:libcdev}, ${shlibs:Depends}
+Suggests: ${sug:libmudflapdev}
+Conflicts: libmudflap0-dev
+Description: GCC mudflap support libraries (development files)
+ The libmudflap libraries are used by GCC for instrumenting pointer and array
+ dereferencing operations.
+ .
+ This package contains the headers and the static libraries.
+')`'dnl
+')`'dnl native
+
+ifdef(`TARGET', `', `
+ifenabled(`ssp',`
+Package: libssp`'SSP_SO
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC stack smashing protection library
+ GCC can now emit code for protecting applications from stack-smashing attacks.
+ The protection is realized by buffer overflow detection and reordering of
+ stack variables to avoid pointer corruption.
+
+Package: lib32ssp`'SSP_SO
+Architecture: biarch32_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libssp0 (<< 4.1)
+Description: GCC stack smashing protection library (32bit)
+ GCC can now emit code for protecting applications from stack-smashing attacks.
+ The protection is realized by buffer overflow detection and reordering of
+ stack variables to avoid pointer corruption.
+
+Package: lib64ssp`'SSP_SO
+Architecture: biarch64_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libssp0 (<< 4.1)
+Description: GCC stack smashing protection library (64bit)
+ GCC can now emit code for protecting applications from stack-smashing attacks.
+ The protection is realized by buffer overflow detection and reordering of
+ stack variables to avoid pointer corruption.
+')`'dnl
+')`'dnl native
+
+ifdef(`TARGET', `', `
+ifenabled(`libgomp',`
+Package: libgomp`'GOMP_SO
+Architecture: any
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: GCC OpenMP (GOMP) support library
+ GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
+ in the GNU Compiler Collection.
+
+Package: libgomp`'GOMP_SO-dbg
+Architecture: any
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, libgomp`'GOMP_SO (= ${gcc:Version})
+Description: GCC OpenMP (GOMP) support library (debug symbols)
+ GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
+ in the GNU Compiler Collection.
+
+Package: lib32gomp`'GOMP_SO
+Architecture: biarch32_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: GCC OpenMP (GOMP) support library (32bit)
+ GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
+ in the GNU Compiler Collection.
+
+Package: lib32gomp`'GOMP_SO-dbg
+Architecture: any
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, lib32gomp`'GOMP_SO (= ${gcc:Version})
+Description: GCC OpenMP (GOMP) support library (32 bit debug symbols)
+ GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
+ in the GNU Compiler Collection.
+
+Package: lib64gomp`'GOMP_SO
+Architecture: biarch64_archs
+Section: libs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: GCC OpenMP (GOMP) support library (64bit)
+ GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
+ in the GNU Compiler Collection.
+
+Package: lib64gomp`'GOMP_SO-dbg
+Architecture: any
+Section: libdevel
+Priority: extra
+Depends: BASEDEP, lib64gomp`'GOMP_SO (= ${gcc:Version})
+Description: GCC OpenMP (GOMP) support library (64bit debug symbols)
+ GOMP is an implementation of OpenMP for the C, C++, and Fortran 95 compilers
+ in the GNU Compiler Collection.
+')`'dnl libgomp
+')`'dnl native
+
+ifenabled(`proto',`
+Package: protoize
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, gcc`'PV (>= ${gcc:Version}), ${shlibs:Depends}
+Description: Create/remove ANSI prototypes from C code
+ "protoize" can be used to add prototypes to a program, thus converting
+ the program to ANSI C in one respect.  The companion program "unprotoize"
+ does the reverse: it removes argument types from any prototypes
+ that are found.
+')`'dnl proto
+
+ifenabled(`objpp',`
+ifenabled(`objppdev',`
+Package: gobjc++`'PV`'TS
+Architecture: any
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gobjc`'PV`'TS (= ${gcc:Version}), g++`'PV`'TS (= ${gcc:Version}), ${shlibs:Depends}, libobjc`'OBJC_SO`'LS (>= ${gcc:Version})
+Suggests: ${gobjcxx:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion})
+Provides: objc++-compiler`'TS
+Description: The GNU Objective-C++ compiler
+ This is the GNU Objective-C++ compiler, which compiles
+ Objective-C++ on platforms supported by the gcc compiler. It uses the
+ gcc backend to generate optimized code.
+')`'dnl obcppdev
+
+ifenabled(`multilib',`
+Package: gobjc++`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gobjc++`'PV`'TS (= ${gcc:Version}), g++`'PV-multilib`'TS (= ${gcc:Version}), gobjc`'PV-multilib`'TS (= ${gcc:Version}), ${shlibs:Depends}
+Description: The GNU Objective-C++ compiler (multilib files)
+ This is the GNU Objective-C++ compiler, which compiles Objective-C++ on
+ platforms supported by the gcc compiler.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl obcpp
+
+ifenabled(`objc',`
+ifenabled(`objcdev',`
+Package: gobjc`'PV`'TS
+Architecture: any
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gcc`'PV`'TS (= ${gcc:Version}), ${dep:libcdev}, ${shlibs:Depends}, libobjc`'OBJC_SO`'LS (>= ${gcc:Version})
+Suggests: ${gobjc:multilib}, gcc`'PV-doc (>= ${gcc:SoftVersion}), libobjc`'OBJC_SO-dbg`'LS
+Provides: objc-compiler`'TS
+ifdef(`__sparc__',`Conflicts: gcc`'PV-sparc64', `dnl')
+Description: The GNU Objective-C compiler
+ This is the GNU Objective-C compiler, which compiles
+ Objective-C on platforms supported by the gcc compiler. It uses the
+ gcc backend to generate optimized code.
+
+ifenabled(`multilib',`
+Package: gobjc`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gobjc`'PV`'TS (= ${gcc:Version}), gcc`'PV-multilib`'TS (= ${gcc:Version}), ${dep:libobjcbiarch}, ${shlibs:Depends}
+Replaces: gobjc-4.2 (<< 4.2-20061008)
+Description: The GNU Objective-C compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU Objective-C compiler, which compiles Objective-C on platforms
+ supported by the gcc compiler.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+')`'dnl objcdev
+
+ifenabled(`libobjc',`
+Package: libobjc`'OBJC_SO`'LS
+Section: ifdef(`TARGET',`devel',`libs')
+Architecture: any
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, ${shlibs:Depends}
+Description: Runtime library for GNU Objective-C applications
+ Library needed for GNU ObjC applications linked against the shared library.
+
+Package: libobjc`'OBJC_SO-dbg`'LS
+Section: libdevel
+Architecture: ifdef(`TARGET',`all',`any')
+Priority: extra
+Depends: BASEDEP, libobjc`'OBJC_SO`'LS (= ${gcc:Version}), libgcc`'GCC_SO-dbg`'LS
+Description: Runtime library for GNU Objective-C applications (debug symbols)
+ Library needed for GNU ObjC applications linked against the shared library.
+')`'dnl libobjc
+
+ifenabled(`lib64objc',`
+Package: lib64objc`'OBJC_SO
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Objective-C applications (64bit)
+ Library needed for GNU ObjC applications linked against the shared library.
+
+Package: lib64objc`'OBJC_SO-dbg`'LS
+Section: libdevel
+Architecture: ifdef(`TARGET',`all',`any')
+Priority: extra
+Depends: BASEDEP, lib64objc`'OBJC_SO`'LS (= ${gcc:Version}), lib64gcc`'GCC_SO-dbg`'LS
+Description: Runtime library for GNU Objective-C applications (64 bit debug symbols)
+ Library needed for GNU ObjC applications linked against the shared library.
+')`'dnl lib64objc
+
+ifenabled(`lib32objc',`
+Package: lib32objc`'OBJC_SO
+Section: libs
+Architecture: biarch32_archs
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Objective-C applications (32bit)
+ Library needed for GNU ObjC applications linked against the shared library.
+
+Package: lib32objc`'OBJC_SO-dbg`'LS
+Section: libdevel
+Architecture: ifdef(`TARGET',`all',`any')
+Priority: extra
+Depends: BASEDEP, lib32objc`'OBJC_SO`'LS (= ${gcc:Version}), lib32gcc`'GCC_SO-dbg`'LS
+Description: Runtime library for GNU Objective-C applications (32 bit debug symbols)
+ Library needed for GNU ObjC applications linked against the shared library.
+')`'dnl lib32objc
+')`'dnl objc
+
+ifenabled(`fortran',`
+ifenabled(`fdev',`
+Package: gfortran`'PV
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, gcc`'PV (= ${gcc:Version}), libgfortran`'FORTRAN_SO (>= ${gcc:Version}), ${dep:libcdev}, ${shlibs:Depends}
+Provides: fortran95-compiler
+Suggests: ${gfortran:multilib}, gfortran`'PV-doc, libgfortran`'FORTRAN_SO-dbg
+Replaces: libgfortran`'FORTRAN_SO-dev
+Description: The GNU Fortran 95 compiler
+ This is the GNU Fortran compiler, which compiles
+ Fortran 95 on platforms supported by the gcc compiler. It uses the
+ gcc backend to generate optimized code.
+
+ifenabled(`multilib',`
+Package: gfortran`'PV-multilib`'TS
+Architecture: MULTILIB_ARCHS
+Section: devel
+Priority: ifdef(`TARGET',`extra',`PRI(optional)')
+Depends: BASEDEP, gfortran`'PV`'TS (= ${gcc:Version}), gcc`'PV-multilib`'TS (= ${gcc:Version}), ${dep:libfortranbiarch}, ${shlibs:Depends}
+Replaces: gfortran-4.2 (<< 4.2-20061008)
+Description: The GNU Fortran 95 compiler (multilib files)`'ifdef(`TARGET)',` (cross compiler for TARGET architecture)', `')
+ This is the GNU Fortran compiler, which compiles Fortran 95 on platforms
+ supported by the gcc compiler.
+ .
+ On architectures with multilib support, the package contains files
+ and dependencies for the non-default multilib architecture(s).
+')`'dnl multilib
+
+ifenabled(`gfdldoc',`
+Package: gfortran`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Description: Documentation for the GNU Fortran compiler (gfortran)
+ Documentation for the GNU Fortran 95 compiler in info `format'.
+')`'dnl gfdldoc
+')`'dnl fdev
+
+ifenabled(`libgfortran',`
+Package: libgfortran`'FORTRAN_SO
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}
+Description: Runtime library for GNU Fortran applications
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+
+Package: libgfortran`'FORTRAN_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: BASEDEP, libgfortran`'FORTRAN_SO (= ${gcc:Version})
+Description: Runtime library for GNU Fortran applications (debug symbols)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+')`'dnl libgfortran
+
+ifenabled(`lib64gfortran',`
+Package: lib64gfortran`'FORTRAN_SO
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Fortran applications (64bit)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+
+Package: lib64gfortran`'FORTRAN_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: BASEDEP, lib64gfortran`'FORTRAN_SO (= ${gcc:Version})
+Description: Runtime library for GNU Fortran applications (64bit debug symbols)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+')`'dnl lib64gfortran
+
+ifenabled(`lib32gfortran',`
+Package: lib32gfortran`'FORTRAN_SO
+Section: libs
+Architecture: biarch32_archs
+Priority: PRI(optional)
+Depends: BASEDEP, ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Fortran applications (32bit)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+
+Package: lib32gfortran`'FORTRAN_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: BASEDEP, lib32gfortran`'FORTRAN_SO (= ${gcc:Version})
+Description: Runtime library for GNU Fortran applications (32 bit debug symbols)
+ Library needed for GNU Fortran applications linked against the
+ shared library.
+')`'dnl lib32gfortran
+')`'dnl fortran
+
+ifenabled(`java',`
+ifenabled(`gcj',`
+Package: gcj`'PV
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), ${dep:gcj}, ${dep:libcdev}, gij`'PV (= ${gcj:Version}), libgcj`'GCJ_SO-dev (= ${gcj:Version}), libgcj`'GCJ_SO-jar (>= ${gcj:SoftVersion}), ${dep:ecj}, libgcj-bc, java-common, ${shlibs:Depends}
+Recommends: fastjar, libecj-java-gcj
+Suggests: java-gcj-compat-dev, libgcj`'GCJ_SO-dbg
+Provides: java-compiler
+Conflicts: cpp-4.1 (<< 4.1.1), gcc-4.1 (<< 4.1.1), java-gcj-compat-dev (<< 1.0.56-2)
+Description: The GNU compiler for Java(TM)
+ GCJ is a front end to the GCC compiler which can natively compile both
+ Java(tm) source and bytecode files. The compiler can also generate class
+ files.
+')`'dnl gcj
+
+ifenabled(`libgcj',`
+ifenabled(`libgcjcommon',`
+Package: libgcj-common
+Section: libs
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion})
+Conflicts: classpath (<= 0.04-4)
+Replaces: java-gcj-compat (<< 1.0.65-3), java-gcj-compat-dev (<< 1.0.65-3)
+Description: Java runtime library (common files)
+ This package contains files shared by classpath and libgcj libraries.
+')`'dnl libgcjcommon
+
+Package: gij`'PV
+Priority: optional
+Architecture: any
+Depends: gcj`'PV-base (= ${gcj:Version}), libgcj`'LIBGCJ_EXT (= ${gcj:Version}), ${dep:prctl}, ${shlibs:Depends}
+Recommends: libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version})
+Suggests: fastjar, gcj`'PV (= ${gcj:Version}), java-gcj-compat
+Replaces: libgcj8
+Conflicts: java-gcj-compat (<< 1.0.76-4)
+Provides: java-virtual-machine, java5-runtime-headless, java2-runtime-headless, java1-runtime-headless, java-runtime-headless
+Description: The GNU Java bytecode interpreter
+ GIJ is not limited to interpreting bytecode. It includes a class loader which
+ can dynamically load shared objects, so it is possible to give it the name
+ of a class which has been compiled and put into a shared library on the
+ class path.
+
+Package: libgcj`'LIBGCJ_EXT
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:Version}), libgcj-common (>= 1:4.1.1-21), ${shlibs:Depends}
+Recommends: libgcj`'GCJ_SO-jar (>= ${gcj:SoftVersion}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version})
+Suggests: libgcj`'GCJ_SO-dbg
+Conflicts: libgcj8
+Replaces: libgcj8, libgcj8-awt (<< 4.2-20060817)
+Description: Java runtime library for use with gcj
+ This is the runtime that goes along with the gcj front end to
+ gcc. libgcj includes parts of the Java Class Libraries, plus glue to
+ connect the libraries to the compiler and the underlying OS.
+ .
+ To show file names and line numbers in stack traces, the packages
+ libgcj`'GCJ_SO-dbg and binutils are required.
+
+Package: libgcj`'GCJ_SO-jar
+Section: libs
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion}), libgcj`'LIBGCJ_EXT (>= ${gcj:SoftVersion})
+Conflicts: libgcj7-common
+Replaces: libgcj7-common
+Description: Java runtime library for use with gcj (jar files)
+ This is the jar file that goes along with the gcj front end to gcc.
+
+ifenabled(`gcjbc',`
+Package: libgcj-bc
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:Version}), libgcj`'LIBGCJ_EXT (>= ${gcj:Version})
+Description: Link time only library for use with gcj
+ A fake library that is used at link time only.  It ensures that
+ binaries built with the BC-ABI link against a constant SONAME.
+ This way, BC-ABI binaries continue to work if the SONAME underlying
+ libgcj.so changes.
+')`'dnl gcjbc
+
+Package: libgcj`'LIBGCJ_EXT-awt
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:Version}), libgcj`'LIBGCJ_EXT (= ${gcj:Version}), ${shlibs:Depends}
+Suggests: ${pkg:gcjqt}
+Replaces: libgcj8-awt-gtk (<< 4.2-20070210)
+Description: AWT peer runtime libraries for use with gcj
+ These are runtime libraries holding the AWT peer implementations
+ for libgcj (currently the GTK based peer library is required, the
+ QT bases library is not built).
+
+ifenabled(`gtkpeer',`
+Package: libgcj`'GCJ_SO-awt-gtk
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version}), ${shlibs:Depends}
+Description: AWT GTK peer runtime library for use with libgcj
+ This is the runtime library holding the GTK based AWT peer
+ implementation for libgcj.
+')`'dnl gtkpeer
+
+ifenabled(`qtpeer',`
+Package: libgcj`'GCJ_SO-awt-qt
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version}), ${shlibs:Depends}
+Description: AWT QT peer runtime library for use with libgcj
+ This is the runtime library holding the QT based AWT peer
+ implementation for libgcj.
+')`'dnl qtpeer
+
+Package: gappletviewer`'PV
+Section: utils
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), gij`'PV (= ${gcj:Version}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version}), ${shlibs:Depends}
+Description: Standalone application to execute Java (tm) applets
+ gappletviewer is a standalone application to execute Java (tm) applets.
+')`'dnl libgcj
+
+ifenabled(`libgcjdev',`
+Package: libgcj`'GCJ_SO-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gcj`'PV-base (= ${gcj:Version}), gcj`'PV (= ${gcj:Version}), libgcj`'GCJ_SO-jar (>= ${gcj:SoftVersion}), libgcj`'LIBGCJ_EXT-awt (= ${gcj:Version}), libgcj-bc, ${pkg:gcjgtk}, ${pkg:gcjqt}, zlib1g-dev, ${shlibs:Depends}
+Suggests: libgcj-doc
+Description: Java development headers for use with gcj
+ These are the development headers that go along with the gcj front end
+ to gcc. libgcj includes parts of the Java Class Libraries, plus glue
+ to connect the libraries to the compiler and the underlying OS.
+
+Package: libgcj`'GCJ_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: gcj`'PV-base (= ${gcj:Version}), libgcj`'LIBGCJ_EXT (= ${gcj:Version})
+Recommends: binutils
+Description: Debugging symbols for libraries provided in libgcj`'GCJ_SO-dev
+ The package provides debugging symbols for the libraries provided
+ in libgcj`'GCJ_SO-dev.
+ .
+ binutils is required to show file names and line numbers in stack traces.
+
+Package: libgcj`'GCJ_SO-src
+Section: libdevel
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion}), gcj`'PV (>= ${gcj:SoftVersion}), libgcj`'GCJ_SO-jar (= ${gcj:Version})
+Description: libgcj java sources for use in eclipse
+ These are the java source files packaged as a zip file for use in development
+ environments like eclipse.
+
+ifenabled(`gcjdoc',`
+Package: libgcj-doc
+Section: doc
+Architecture: all
+Priority: PRI(optional)
+Depends: gcj`'PV-base (>= ${gcj:SoftVersion})
+Enhances: libgcj`'GCJ_SO-dev
+Provides: classpath-doc
+Description: libgcj API documentation and example programs
+ Autogenerated documentation describing the API of the libgcj library.
+ Sources and precompiled example programs from the classpath library.
+')`'dnl gcjdoc
+')`'dnl libgcjdev
+')`'dnl java
+
+ifenabled(`libffi',`
+Package: libffi`'FFI_SO
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), ${shlibs:Depends}
+Description: Foreign Function Interface library runtime
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: libffi`'FFI_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: PRI(extra)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), libffi`'FFI_SO (= ${gcc:Version})
+Description: Foreign Function Interface library runtime (debug symbols)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: lib32ffi`'FFI_SO
+Section: libs
+Architecture: biarch32_archs
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libffi4 (<< 4.1)
+Description: Foreign Function Interface library runtime (32bit)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: lib32ffi`'FFI_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: PRI(extra)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), lib32ffi`'FFI_SO (= ${gcc:Version})
+Description: Foreign Function Interface library runtime (debug symbols)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: lib64ffi`'FFI_SO
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Replaces: libffi4 (<< 4.1)
+Description: Foreign Function Interface library runtime (64bit)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: lib64ffi`'FFI_SO-dbg
+Section: libdevel
+Architecture: any
+Priority: PRI(extra)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), lib64ffi`'FFI_SO (= ${gcc:Version})
+Description: Foreign Function Interface library runtime (debug symbols)
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+
+Package: libffi`'FFI_SO-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gcc`'PV`'-base (= ${gcc:Version}), libffi`'FFI_SO (>= ${gcc:Version})
+Suggests: ${sug:libffidev}
+Provides: libffi-dev
+Conflicts: libffi1-dev, libffi2-dev, libffi3-dev, libffi-dev, libffi
+Description: Foreign Function Interface library (development files)
+ This package contains the headers and static library files necessary for
+ building programs which use libffi.
+ .
+ A foreign function interface is the popular name for the interface that
+ allows code written in one language to call code written in another
+ language.
+')`'dnl libffi
+
+ifenabled(`c++',`
+ifenabled(`libcxx',`
+Package: libstdc++CXX_SO`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(required))
+Depends: BASEDEP, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libstdc++CXX_SO-TARGET-dcv1
+',`')`'dnl
+Conflicts: scim (<< 1.4.2-1)
+Description: The GNU Standard C++ Library v3`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl libcxx
+
+ifenabled(`lib32cxx',`
+Package: lib32stdc++CXX_SO`'LS
+Architecture: ifdef(`TARGET',`all',`biarch32_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, lib32gcc1`'LS
+ifdef(`TARGET',`Provides: lib32stdc++CXX_SO-TARGET-dcv1
+',`')`'dnl
+Description: The GNU Standard C++ Library v3 (32 bit Version)
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib32cxx
+
+ifenabled(`lib64cxx',`
+Package: lib64stdc++CXX_SO`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: ifdef(`TARGET',`devel',`libs')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, ${shlibs:Depends}, lib64gcc1`'LS
+ifdef(`TARGET',`Provides: lib64stdc++CXX_SO-TARGET-dcv1
+',`')`'dnl
+Description: The GNU Standard C++ Library v3`'ifdef(`TARGET)',` (TARGET)', `') (64bit)
+ This package contains an additional runtime library for C++ programs
+ built with the GNU compiler.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+')`'dnl lib64cxx
+
+ifenabled(`c++dev',`
+Package: libstdc++CXX_SO`'PV-dev`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: ifdef(`TARGET',`extra',PRI(optional))
+Depends: BASEDEP, g++`'PV`'TS (= ${gcc:Version}), libstdc++CXX_SO`'LS (>= ${gcc:Version}), ${dep:libcdev}
+ifdef(`TARGET',`',`dnl native
+Conflicts: libg++27-dev, libg++272-dev (<< 2.7.2.8-1), libstdc++2.8-dev, libg++2.8-dev, libstdc++2.9-dev, libstdc++2.9-glibc2.1-dev, libstdc++2.10-dev (<< 1:2.95.3-2), libstdc++3.0-dev, libstdc++6-4.2-dev (<< 4.2-20070307), libgcj8-dev (<< 4.2-20070307)
+Suggests: libstdc++CXX_SO`'PV-doc
+')`'dnl native
+Provides: libstdc++-dev`'LS`'dnl
+ifdef(`TARGET',`, libstdc++-dev-TARGET-dcv1, libstdc++CXX_SO-dev-TARGET-dcv1
+',`
+')`'dnl
+Description: The GNU Standard C++ Library v3 (development files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the headers and static library files necessary for
+ building C++ programs which use libstdc++.
+ .
+ libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
+ was included up to g++-2.95. The first version of libstdc++-v3 appeared
+ in g++-3.0.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libstdc++CXX_SO`'PV-pic`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, libstdc++CXX_SO`'LS (>= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version})
+ifdef(`TARGET',`Provides: libstdc++CXX_SO-pic-TARGET-dcv1
+',`')`'dnl
+Description: The GNU Standard C++ Library v3 (shared library subset kit)`'ifdef(`TARGET)',` (TARGET)', `')
+ This is used to develop subsets of the libstdc++ shared libraries for
+ use on custom installation floppies and in embedded systems.
+ .
+ Unless you are making one of those, you will not need this package.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: libstdc++CXX_SO`'PV-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`any')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, libstdc++CXX_SO`'LS (>= ${gcc:Version}), libgcc`'GCC_SO-dbg`'LS, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: libstdc++CXX_SO-dbg-TARGET-dcv1
+',`')`'dnl
+Recommends: libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version})
+Conflicts: libstdc++5-dbg`'LS, libstdc++5-3.3-dbg`'LS, libstdc++6-dbg`'LS, libstdc++6-4.0-dbg`'LS, libstdc++6-4.1-dbg`'LS
+Description: The GNU Standard C++ Library v3 (debugging files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the shared library of libstdc++ compiled with
+ debugging symbols.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: lib32stdc++CXX_SO`'PV-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`biarch32_archs')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, lib32stdc++CXX_SO`'LS (>= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version}), lib32gcc`'GCC_SO-dbg`'LS, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: lib32stdc++CXX_SO-dbg-TARGET-dcv1
+',`')`'dnl
+Conflicts: lib32stdc++6-dbg`'LS, lib32stdc++6-4.0-dbg`'LS, lib32stdc++6-4.1-dbg`'LS
+Description: The GNU Standard C++ Library v3 (debugging files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the shared library of libstdc++ compiled with
+ debugging symbols.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+Package: lib64stdc++CXX_SO`'PV-dbg`'LS
+Architecture: ifdef(`TARGET',`all',`biarch64_archs')
+Section: ifdef(`TARGET',`devel',`libdevel')
+Priority: extra
+Depends: BASEDEP, lib64stdc++CXX_SO`'LS (>= ${gcc:Version}), libstdc++CXX_SO`'PV-dev`'LS (= ${gcc:Version}), lib64gcc`'GCC_SO-dbg`'LS, ${shlibs:Depends}
+ifdef(`TARGET',`Provides: lib64stdc++CXX_SO-dbg-TARGET-dcv1
+',`')`'dnl
+Conflicts: lib64stdc++6-dbg`'LS, lib64stdc++6-4.0-dbg`'LS, lib64stdc++6-4.1-dbg`'LS
+Description: The GNU Standard C++ Library v3 (debugging files)`'ifdef(`TARGET)',` (TARGET)', `')
+ This package contains the shared library of libstdc++ compiled with
+ debugging symbols.
+ifdef(`TARGET', `dnl
+ .
+ This package contains files for TARGET architecture, for use in cross-compile
+ environment.
+')`'dnl
+
+ifdef(`TARGET', `', `
+Package: libstdc++CXX_SO`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Conflicts: libstdc++5-doc, libstdc++5-3.3-doc, libstdc++6-doc, libstdc++6-4.0-doc, libstdc++6-4.1-doc
+Description: The GNU Standard C++ Library v3 (documentation files)
+ This package contains documentation files for the GNU stdc++ library.
+ .
+ One set is the distribution documentation, the other set is the
+ source documentation including a namespace list, class hierarchy,
+ alphabetical list, compound list, file list, namespace members,
+ compound members and file members.
+')`'dnl native
+')`'dnl c++dev
+')`'dnl c++
+
+ifenabled(`ada',`
+Package: gnat`'-GNAT_V
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), gcc`'PV (>= ${gcc:Version}), ${dep:libgnat}, ${dep:libcdev}, ${shlibs:Depends}
+Suggests: gnat`'PV-doc, ada-reference-manual
+Provides: ada-compiler
+Conflicts: gnat (<< 4.1), gnat-3.1, gnat-3.2, gnat-3.3, gnat-3.4, gnat-3.5, gnat-4.0, gnat-4.1
+Description: The GNU Ada compiler
+ This is the GNU Ada compiler, which compiles Ada on platforms supported
+ by the gcc compiler. It uses the gcc backend to generate optimized code.
+
+ifenabled(`libgnat',`
+Package: libgnat`'-GNAT_V
+Section: libs
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), ${shlibs:Depends}
+Description: Runtime library for GNU Ada applications
+ Library needed for GNU Ada applications linked against the shared library.
+
+Package: libgnat`'-GNAT_V-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnat`'-GNAT_V (= ${gnat:Version})
+Recommends: gnat-gdb (>= 6.4)
+Description: Runtime library for GNU Ada applications
+ Debugging symbols for the library needed for GNU Ada applications linked
+ against the shared library.
+
+Package: libgnatvsn`'GNAT_V-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), gnat`'PV (= ${gnat:Version}), libgnatvsn`'GNAT_V (= ${gnat:Version})
+Conflicts: libgnatvsn-dev (< `'GNAT_V)
+Description: GNU Ada compiler version library - development files
+ This library exports selected components of GNAT, the GNU Ada compiler, for use
+ in other packages, most notably ASIS and ASIS-based packages.  It is licensed
+ under the GNAT-Modified GPL, allowing to link proprietary programs with it.
+ .
+ This package contains the development files and static library.
+
+Package: libgnatvsn`'GNAT_V
+Architecture: any
+Priority: PRI(optional)
+Section: libs
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnat`'-GNAT_V (= ${gnat:Version})
+Description: GNU Ada compiler version library
+ This library exports selected components of GNAT, the GNU Ada compiler, for use
+ in other packages, most notably ASIS and ASIS-based packages.  It is licensed
+ under the GNAT-Modified GPL, allowing to link proprietary programs with it.
+ .
+ This package contains the run-time shared library.
+
+Package: libgnatvsn`'GNAT_V-dbg
+Architecture: any
+Priority: extra
+Section: libdevel
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnatvsn`'GNAT_V (= ${gnat:Version})
+Recommends: gnat-gdb (>= 6.4), libgnatvsn-dev (= ${gnat:Version})
+Description: GNU Ada compiler version library
+ This library exports selected components of GNAT, the GNU Ada compiler, for use
+ in other packages, most notably ASIS and ASIS-based packages.  It is licensed
+ under the GNAT-Modified GPL, allowing to link proprietary programs with it.
+ .
+ This package contains the debugging symbols for the run-time shared library.
+
+Package: libgnatprj`'GNAT_V-dev
+Section: libdevel
+Architecture: any
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), gnat`'PV (= ${gnat:Version}), libgnatprj`'GNAT_V (= ${gnat:Version}), libgnatvsn`'GNAT_V-dev (= ${gnat:Version})
+Conflicts: libgnatprj-dev (< `'GNAT_V)
+Description: GNU Ada Project Manager development files
+ GNAT, the GNU Ada compiler, uses project files to organise source and object
+ files in large-scale development efforts.  Several other tools, such as
+ ASIS tools (package asis-programs) and GNAT Programming Studio (package
+ gnat-gps) also use project files.  This library contains the necessary
+ support; it was built from GNAT itself.  It is licensed under the pure GPL;
+ all programs that use it must also be distributed under the GPL, or not
+ distributed at all.
+ .
+ This package contains development files: install it to develop applications
+ that understand GNAT project files.
+
+Package: libgnatprj`'GNAT_V
+Architecture: any
+Priority: PRI(optional)
+Section: libs
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnat`'-GNAT_V (= ${gnat:Version}), libgnatvsn`'GNAT_V (= ${gnat:Version})
+Description: GNU Ada Project Manager
+ GNAT, the GNU Ada compiler, uses project files to organise source and object
+ files in large-scale development efforts.  Several other tools, such as
+ ASIS tools (package asis-programs) and GNAT Programming Studio (package
+ gnat-gps) also use project files.  This library contains the necessary
+ support; it was built from GNAT itself.  It is licensed under the pure GPL;
+ all programs that use it must also be distributed under the GPL, or not
+ distributed at all.
+ .
+ This package contains the run-time shared library.
+
+Package: libgnatprj`'GNAT_V-dbg
+Architecture: any
+Priority: extra
+Section: libdevel
+Depends: gnat`'PV-base (= ${gnat:Version}), libgnatprj`'GNAT_V (= ${gnat:Version})
+Recommends: gnat-gdb (>= 6.4), libgnatprj-dev (= ${gnat:Version})
+Description: GNU Ada Project Manager
+ GNAT, the GNU Ada compiler, uses project files to organise source and object
+ files in large-scale development efforts.  Several other tools, such as
+ ASIS tools (package asis-programs) and GNAT Programming Studio (package
+ gnat-gps) also use project files.  This library contains the necessary
+ support; it was built from GNAT itself.  It is licensed under the pure GPL;
+ all programs that use it must also be distributed under the GPL, or not
+ distributed at all.
+ .
+ This package contains the debugging symbols for the run-time shared library.
+')`'dnl libgnat
+
+ifenabled(`lib64gnat',`
+Package: lib64gnat`'-GNAT_V
+Section: libs
+Architecture: biarch64_archs
+Priority: PRI(optional)
+Depends: gnat`'PV-base (= ${gnat:Version}), ${dep:libcbiarch}, ${shlibs:Depends}
+Description: Runtime library for GNU Ada applications
+ Library needed for GNU Ada applications linked against the shared library.
+')`'dnl libgnat
+
+ifenabled(`gfdldoc',`
+Package: gnat`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Suggests: gnat`'PV
+Description: Documentation for the GNU Ada compiler (gnat)
+ Documentation for the GNU Ada compiler in info `format'.
+')`'dnl gfdldoc
+')`'dnl ada
+
+ifenabled(`pascal',`
+Package: gpc`'PV
+Architecture: any
+Priority: PRI(optional)
+Depends: SOFTBASEDEP, gcc`'PV (>= ${gcc:SoftVersion}), ${dep:libcdev}, ${shlibs:Depends}
+Recommends: libgmp3-dev, libncurses5-dev
+Suggests: gpc`'PV-doc (>= ${gpc:Version})
+Provides: pascal-compiler
+Description: The GNU Pascal compiler
+ This is the GNU Pascal compiler, which compiles Pascal on platforms supported
+ by the gcc compiler. It uses the gcc backend to generate optimized code.
+ .
+ WARNING: the integration of gpc into gcc-4.x is still in an experimental
+ stage. For production use, please use gpc or gpc-2.1-3.4.
+
+Package: gpc`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: SOFTBASEDEP
+Replaces: gpc (<= 2.91.58-3)
+Suggests: gpc`'PV
+Description: Documentation for the GNU Pascal compiler (gpc)
+ Documentation for the GNU Pascal compiler in info `format'.
+ .
+ WARNING: the integration of gpc into gcc-4.x is still in an experimental
+ stage. For production use, please use gpc or gpc-2.1-3.4.
+')`'dnl pascal
+
+ifenabled(`d ',`
+Package: gdc`'PV`'TS
+Architecture: any
+Priority: PRI(optional)
+Depends: SOFTBASEDEP, g++`'PV`'TS (>= ${gcc:SoftVersion}), libphobos`'PHOBOS_V`'PV`'TS-dev (= ${gdc:Version}) [libphobos_no_archs], ${shlibs:Depends}
+Description: The D compiler
+ This is the D compiler, which compiles D on platforms supported by the gcc
+ compiler. It uses the GCC backend to generate optimised code.
+ .
+  Homepage: http://dgcc.sourceforge.net/
+
+ifenabled(`libphobos',`
+Package: libphobos`'PHOBOS_V`'PV`'TS-dev
+Architecture: any
+Priority: PRI(optional)
+Depends: ${shlibs:Depends}, gdc`'PV`'TS (= ${gdc:Version}), zlib1g-dev (>= 1:1.2.3.3)
+Conflicts: libphobos-4.1-dev (<< 0.25-4.1.2-17exp3)
+Description: The phobos D standard library
+ This is the Phobos standard library that comes with the D compiler.
+ .
+  Homepage: http://www.digitalmars.com/d/phobos/phobos.html
+')`'dnl libphobos
+')`'dnl d
+
+ifdef(`TARGET',`',`dnl
+ifenabled(`libs',`
+Package: gcc`'PV-soft-float
+Architecture: arm armel
+Priority: PRI(optional)
+Depends: BASEDEP, ifenabled(`cdev',`gcc`'PV (= ${gcc:Version}),') ${shlibs:Depends}
+Replaces: gcc-soft-float-ss
+Description: The soft-floating-point gcc libraries (arm)
+ These are versions of basic static libraries such as libgcc.a compiled
+ with the -msoft-float option, for CPUs without a floating-point unit.
+')`'dnl commonlibs
+')`'dnl
+
+ifenabled(`fixincl',`
+Package: fixincludes
+Architecture: any
+Priority: PRI(optional)
+Depends: BASEDEP, gcc`'PV (= ${gcc:Version}), ${shlibs:Depends}
+Description: Fix non-ANSI header files
+ FixIncludes was created to fix non-ANSI system header files. Many
+ system manufacturers supply proprietary headers that are not ANSI compliant.
+ The GNU compilers cannot compile non-ANSI headers. Consequently, the
+ FixIncludes shell script was written to fix the header files.
+ .
+ Not all packages with header files are installed on the system, when the
+ package is built, so we make fixincludes available at build time of other
+ packages, such that checking tools like lintian can make use of it.
+')`'dnl fixincl
+
+ifenabled(`cdev',`
+ifdef(`TARGET', `', `
+ifenabled(`gfdldoc',`
+Package: gcc`'PV-doc
+Architecture: all
+Section: doc
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion})
+Conflicts: gcc-docs (<< 2.95.2)
+Replaces: gcc (<=2.7.2.3-4.3), gcc-docs (<< 2.95.2)
+Description: Documentation for the GNU compilers (gcc, gobjc, g++)
+ Documentation for the GNU compilers in info `format'.
+')`'dnl gfdldoc
+')`'dnl native
+')`'dnl cdev
+
+ifdef(`TARGET',`',`dnl
+ifenabled(`libnof',`
+Package: gcc`'PV-nof
+Architecture: powerpc
+Priority: PRI(optional)
+Depends: BASEDEP, ${shlibs:Depends}ifenabled(`cdev',`, gcc`'PV (= ${gcc:Version})')
+Conflicts: gcc-3.2-nof
+Description: The no-floating-point gcc libraries (powerpc)
+ These are versions of basic static libraries such as libgcc.a compiled
+ with the -msoft-float option, for CPUs without a floating-point unit.
+')`'dnl libnof
+')`'dnl
+
+ifenabled(`source',`
+Package: gcc`'PV-source
+Architecture: all
+Priority: PRI(optional)
+Depends: gcc`'PV-base (>= ${gcc:SoftVersion}), make (>= 3.81)
+Description: Source of the GNU Compiler Collection
+ This package contains the sources and patches which are needed to
+ build the GNU Compiler Collection (GCC).
+')`'dnl source
+dnl
+')`'dnl gcc-X.Y
+dnl last line in file
--- gcj-4.2-4.2.4.orig/debian/gij-wrapper-BV.1
+++ gcj-4.2-4.2.4/debian/gij-wrapper-BV.1
@@ -0,0 +1,22 @@
+.TH GIJ-WRAPPER 1 "August 11, 2001" gij-wrapper "Java User's Manual"
+.SH NAME
+gij-wrapper \- a wrapper around gij
+
+.SH SYNOPSIS
+gij-wrapper [\fB\s-1OPTION\s0\fR] ... \fI\s-1JARFILE\s0\fR [\fI\s-1ARGS\s0\fR...]
+.PP
+gij-wrapper [\fB\-jar\fR] [\fB\s-1OPTION\s0\fR] ... \fI\s-1CLASS\s0\fR [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fBgij-wrapper\fR is a wrapper around gij(1) to be called as the java
+interpreter. Options different for java(1) and gij(1) are translated,
+options unknown to gij(1) are silently ignored.
+
+.SH OPTIONS
+See gij-@BV@(1) for a list of options that gij understands.
+
+.SH "SEE ALSO"
+.BR gij-@BV@(1)
+,
+.BR java(1)
--- gcj-4.2-4.2.4.orig/debian/gpc-BV-doc.doc-base.gpc
+++ gcj-4.2-4.2.4/debian/gpc-BV-doc.doc-base.gpc
@@ -0,0 +1,15 @@
+Document: gpc-@BV@-doc
+Title: The GNU Pascal Compiler
+Author: Various
+Abstract: This manual documents how to run, install and maintain the
+ GNU Pascal compiler (GPC), as well as its new features and
+ incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/pascal/gpc.html
+Files: /usr/share/doc/gcc-@BV@-base/pascal/gpc.html
+
+Format: info
+Index: /usr/share/info/gpc-@BV@.info.gz
+Files: /usr/share/info/gpc-@BV@*
--- gcj-4.2-4.2.4.orig/debian/libgcc1.symbols.hurd-i386
+++ gcj-4.2-4.2.4/debian/libgcc1.symbols.hurd-i386
@@ -0,0 +1,95 @@
+libgcc_s.so.1 libgcc1 #MINVER#
+ GCC_3.0@GCC_3.0 4.2.1
+ GCC_3.3.1@GCC_3.3.1 4.2.1
+ GCC_3.3@GCC_3.3 4.2.1
+ GCC_3.4.2@GCC_3.4.2 4.2.1
+ GCC_3.4@GCC_3.4 4.2.1
+ GCC_4.0.0@GCC_4.0.0 4.2.1
+ GCC_4.2.0@GCC_4.2.0 4.2.1
+ GLIBC_2.0@GLIBC_2.0 4.2.1
+ _Unwind_Backtrace@GCC_3.3 4.2.1
+ _Unwind_DeleteException@GCC_3.0 4.2.1
+ _Unwind_FindEnclosingFunction@GCC_3.3 4.2.1
+ _Unwind_Find_FDE@GCC_3.0 4.2.1
+ _Unwind_ForcedUnwind@GCC_3.0 4.2.1
+ _Unwind_GetCFA@GCC_3.3 4.2.1
+ _Unwind_GetDataRelBase@GCC_3.0 4.2.1
+ _Unwind_GetGR@GCC_3.0 4.2.1
+ _Unwind_GetIP@GCC_3.0 4.2.1
+ _Unwind_GetIPInfo@GCC_4.2.0 4.2.1
+ _Unwind_GetLanguageSpecificData@GCC_3.0 4.2.1
+ _Unwind_GetRegionStart@GCC_3.0 4.2.1
+ _Unwind_GetTextRelBase@GCC_3.0 4.2.1
+ _Unwind_RaiseException@GCC_3.0 4.2.1
+ _Unwind_Resume@GCC_3.0 4.2.1
+ _Unwind_Resume_or_Rethrow@GCC_3.3 4.2.1
+ _Unwind_SetGR@GCC_3.0 4.2.1
+ _Unwind_SetIP@GCC_3.0 4.2.1
+ __absvdi2@GCC_3.0 4.2.1
+ __absvsi2@GCC_3.0 4.2.1
+ __addvdi3@GCC_3.0 4.2.1
+ __addvsi3@GCC_3.0 4.2.1
+ __ashldi3@GCC_3.0 4.2.1
+ __ashrdi3@GCC_3.0 4.2.1
+ __clear_cache@GCC_3.0 4.2.1
+ __clzdi2@GCC_3.4 4.2.1
+ __clzsi2@GCC_3.4 4.2.1
+ __cmpdi2@GCC_3.0 4.2.1
+ __ctzdi2@GCC_3.4 4.2.1
+ __ctzsi2@GCC_3.4 4.2.1
+ __deregister_frame@GLIBC_2.0 4.2.1
+ __deregister_frame_info@GLIBC_2.0 4.2.1
+ __deregister_frame_info_bases@GCC_3.0 4.2.1
+ __divdc3@GCC_4.0.0 4.2.1
+ __divdi3@GLIBC_2.0 4.2.1
+ __divsc3@GCC_4.0.0 4.2.1
+ __divxc3@GCC_4.0.0 4.2.1
+ __enable_execute_stack@GCC_3.4.2 4.2.1
+ __ffsdi2@GCC_3.0 4.2.1
+ __fixdfdi@GCC_3.0 4.2.1
+ __fixsfdi@GCC_3.0 4.2.1
+ __fixunsdfdi@GCC_3.0 4.2.1
+ __fixunsdfsi@GCC_3.0 4.2.1
+ __fixunssfdi@GCC_3.0 4.2.1
+ __fixunssfsi@GCC_3.0 4.2.1
+ __fixunsxfdi@GCC_3.0 4.2.1
+ __fixunsxfsi@GCC_3.0 4.2.1
+ __fixxfdi@GCC_3.0 4.2.1
+ __floatdidf@GCC_3.0 4.2.1
+ __floatdisf@GCC_3.0 4.2.1
+ __floatdixf@GCC_3.0 4.2.1
+ __floatundidf@GCC_4.2.0 4.2.1
+ __floatundisf@GCC_4.2.0 4.2.1
+ __floatundixf@GCC_4.2.0 4.2.1
+ __frame_state_for@GLIBC_2.0 4.2.1
+ __gcc_personality_v0@GCC_3.3.1 4.2.1
+ __lshrdi3@GCC_3.0 4.2.1
+ __moddi3@GLIBC_2.0 4.2.1
+ __muldc3@GCC_4.0.0 4.2.1
+ __muldi3@GCC_3.0 4.2.1
+ __mulsc3@GCC_4.0.0 4.2.1
+ __mulvdi3@GCC_3.0 4.2.1
+ __mulvsi3@GCC_3.0 4.2.1
+ __mulxc3@GCC_4.0.0 4.2.1
+ __negdi2@GCC_3.0 4.2.1
+ __negvdi2@GCC_3.0 4.2.1
+ __negvsi2@GCC_3.0 4.2.1
+ __paritydi2@GCC_3.4 4.2.1
+ __paritysi2@GCC_3.4 4.2.1
+ __popcountdi2@GCC_3.4 4.2.1
+ __popcountsi2@GCC_3.4 4.2.1
+ __powidf2@GCC_4.0.0 4.2.1
+ __powisf2@GCC_4.0.0 4.2.1
+ __powixf2@GCC_4.0.0 4.2.1
+ __register_frame@GLIBC_2.0 4.2.1
+ __register_frame_info@GLIBC_2.0 4.2.1
+ __register_frame_info_bases@GCC_3.0 4.2.1
+ __register_frame_info_table@GLIBC_2.0 4.2.1
+ __register_frame_info_table_bases@GCC_3.0 4.2.1
+ __register_frame_table@GLIBC_2.0 4.2.1
+ __subvdi3@GCC_3.0 4.2.1
+ __subvsi3@GCC_3.0 4.2.1
+ __ucmpdi2@GCC_3.0 4.2.1
+ __udivdi3@GLIBC_2.0 4.2.1
+ __udivmoddi4@GCC_3.0 4.2.1
+ __umoddi3@GLIBC_2.0 4.2.1
--- gcj-4.2-4.2.4.orig/debian/gnatvsn.gpr
+++ gcj-4.2-4.2.4/debian/gnatvsn.gpr
@@ -0,0 +1,36 @@
+--  Project file for use with GNAT
+--  Copyright (c) 2005 Ludovic Brenta <ludovic@ludovic-brenta.org>
+--
+--  This program is free software; you can redistribute it and/or modify
+--  it under the terms of the GNU General Public License as published by
+--  the Free Software Foundation; either version 2 of the License, or
+--  (at your option) any later version.
+--
+--  This program is distributed in the hope that it will be useful,
+--  but WITHOUT ANY WARRANTY; without even the implied warranty of
+--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+--  GNU General Public License for more details.
+--
+--  This project file is designed to help build applications that use
+--  GNAT project files.  Here is an example of how to use this project file:
+--
+--  with "/usr/share/ada/adainclude/gnatvsn";
+--  project Example is
+--     for Object_Dir use "obj";
+--     for Exec_Dir use ".";
+--     for Main use ("example");
+--     package Linker renames Gnatvsn.Linker;
+--     --  Alternatively, if you need additional switches:
+--     --  package Linker is
+--     --     for Default_Switches ("Ada") use (Gnatvsn.Linker_Switches & ...)
+--     --  end Linker;
+--  end Example;
+
+project Gnatvsn is
+   for Source_Dirs use ("/usr/share/ada/adainclude/gnatvsn");
+   for Object_Dir use "/usr/lib/ada/adalib/gnatvsn";
+   Linker_Switches := "-lgnatvsn";
+   package Linker is
+      for Default_Switches ("Ada") use (Linker_Switches);
+   end Linker;
+end Gnatvsn;
--- gcj-4.2-4.2.4.orig/debian/dummy-man.1
+++ gcj-4.2-4.2.4/debian/dummy-man.1
@@ -0,0 +1,29 @@
+.TH @NAME@ 1 "May 24, 2003" @name@ "Debian Free Documentation"
+.SH NAME
+@name@ \- A program with a man page covered by the GFDL with invariant sections
+.SH SYNOPSIS
+@name@ [\fB\s-1OPTION\s0\fR] ... [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fB@name@\fR is documented by a man page, which is covered by the "GNU
+Free Documentation License" (GFDL) containing invariant sections.
+.P
+In November 2002, version 1.2 of the GNU Free Documentation License (GNU
+FDL) was released by the Free Software Foundation after a long period
+of consultation. Unfortunately, some concerns raised by members of the
+Debian Project were not addressed, and as such the GNU FDL can apply
+to works that do not pass the Debian Free Software Guidelines (DFSG),
+and may thus only be included in the non-free component of the Debian
+archive, not the Debian distribution itself.
+
+.SH "SEE ALSO"
+.BR http://gcc.gnu.org/onlinedocs/
+for the complete documentation,
+.BR http://lists.debian.org/debian-legal/2003/debian-legal-200304/msg00307.html
+for a proposed statement of Debian with respect to the GFDL,
+.BR gfdl(7)
+
+.SH AUTHOR
+This manual page was written by the Debian GCC maintainers,
+for the Debian GNU/Linux system.
--- gcj-4.2-4.2.4.orig/debian/fastjar.prerm
+++ gcj-4.2-4.2.4/debian/fastjar.prerm
@@ -0,0 +1,16 @@
+#! /bin/sh -e
+
+if [ -f /usr/share/info/fastjar.info.gz ]; then
+  install-info --quiet --remove fastjar
+else
+  # GFDL invariant free
+  true
+fi
+
+if [ "$1" != "upgrade" ]; then
+  update-alternatives --quiet --remove jar /usr/bin/fastjar
+fi
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/gcc-dummy.texi
+++ gcj-4.2-4.2.4/debian/gcc-dummy.texi
@@ -0,0 +1,41 @@
+\input texinfo  @c -*-texinfo-*-
+@c %**start of header
+
+@settitle The GNU Compiler Collection (GCC)
+
+@c Create a separate index for command line options.
+@defcodeindex op
+@c Merge the standard indexes into a single one.
+@syncodeindex fn cp
+@syncodeindex vr cp
+@syncodeindex ky cp
+@syncodeindex pg cp
+@syncodeindex tp cp
+
+@paragraphindent 1
+
+@c %**end of header
+
+@copying
+The current documentation is licensed under the same terms as the Debian packaging.
+@end copying
+@ifnottex
+@dircategory Programming
+@direntry
+* @name@: (@name@).                  The GNU Compiler Collection (@name@).
+@end direntry
+@sp 1
+@end ifnottex
+
+@summarycontents
+@contents
+@page
+
+@node Top
+@top Introduction
+@cindex introduction
+The official GNU compilers' documentation is released under the terms
+of the GNU Free Documentation License with cover texts. This has been
+considered non free by the Debian Project. Thus you will find it in the
+non-free section of the Debian archive.
+@bye
--- gcj-4.2-4.2.4.orig/debian/libgcj-common.postinst
+++ gcj-4.2-4.2.4/debian/libgcj-common.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libgcj-common
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcj-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/cpp-BV-doc.prerm
+++ gcj-4.2-4.2.4/debian/cpp-BV-doc.prerm
@@ -0,0 +1,6 @@
+#! /bin/sh -e
+
+install-info --quiet --remove cpp-@BV@
+install-info --quiet --remove cppinternals-@BV@
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/porting.html
+++ gcj-4.2-4.2.4/debian/porting.html
@@ -0,0 +1,30 @@
+<html lang="en">
+<head>
+<title>Porting libstdc++-v3</title>
+<meta http-equiv="Content-Type" content="text/html">
+<meta name="description" content="Porting libstdc++-v3">
+<meta name="generator" content="makeinfo 4.6">
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+  pre.display { font-family:inherit }
+  pre.format  { font-family:inherit }
+  pre.smalldisplay { font-family:inherit; font-size:smaller }
+  pre.smallformat  { font-family:inherit; font-size:smaller }
+  pre.smallexample { font-size:smaller }
+  pre.smalllisp    { font-size:smaller }
+--></style>
+</head>
+<body>
+<h1 class="settitle">Porting libstdc++-v3</h1>
+<div class="node">
+<p><hr>
+Node:&nbsp;<a name="Top">Top</a>,
+Next:&nbsp;<a rel="next" accesskey="n" href="#Operating%20system">Operating system</a>,
+Up:&nbsp;<a rel="up" accesskey="u" href="#dir">(dir)</a>
+<br>
+</div>
+
+The documentation in this file was removed, because it is licencensed
+under a non DFSG conforming licencse.
+
+</body></html>
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.mips
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.mips
@@ -0,0 +1,4 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
--- gcj-4.2-4.2.4.orig/debian/libgcj-common.preinst
+++ gcj-4.2-4.2.4/debian/libgcj-common.preinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    upgrade|install)
+	if [ -n "$2" ] && [ -h /usr/share/doc/libgcj-common ] \
+	   && dpkg --compare-versions "$2" lt 1:4.0.2-10
+	then
+	    rm -f /usr/share/doc/libgcj-common
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.s390
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.s390
@@ -0,0 +1,531 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.common"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx17__pool_alloc_base16_M_get_free_listEm@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx17__pool_alloc_base9_M_refillEm@GLIBCXX_3.4.2 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE16_M_reclaim_blockEPcm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb0EE16_M_reserve_blockEmm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_reclaim_blockEPcm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx6__poolILb1EE16_M_reserve_blockEmm@GLIBCXX_3.4.4 4.1.1
+ _ZN9__gnu_cxx9free_list6_M_getEm@GLIBCXX_3.4.4 4.1.1
+ _ZNK10__cxxabiv117__class_type_info12__do_dyncastEiNS0_10__sub_kindEPKS0_PKvS3_S5_RNS0_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv117__class_type_info20__do_find_public_srcEiPKvPKS0_S2_@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info12__do_dyncastEiNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv120__si_class_type_info20__do_find_public_srcEiPKvPKNS_17__class_type_infoES2_@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info12__do_dyncastEiNS_17__class_type_info10__sub_kindEPKS1_PKvS4_S6_RNS1_16__dyncast_resultE@CXXABI_1.3 4.1.1
+ _ZNK10__cxxabiv121__vmi_class_type_info20__do_find_public_srcEiPKvPKNS_17__class_type_infoES2_@CXXABI_1.3 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE12find_last_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE13find_first_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthEmmPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE16find_last_not_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE17find_first_not_ofEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE2atEm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4copyEPwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE4findEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEPKwmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindERKS2_m@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE5rfindEwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE6substrEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmPKw@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE7compareEmmRKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8_M_checkEmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEE8_M_limitEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSbIwSt11char_traitsIwESaIwEEixEm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs12find_last_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs13find_first_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs15_M_check_lengthEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs15_M_check_lengthEmmPKc@GLIBCXX_3.4.5 4.1.1
+ _ZNKSs16find_last_not_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs16find_last_not_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs17find_first_not_ofEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs2atEm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4copyEPcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs4findEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEPKcmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindERKSsm@GLIBCXX_3.4 4.1.1
+ _ZNKSs5rfindEcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs6substrEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmRKSs@GLIBCXX_3.4 4.1.1
+ _ZNKSs7compareEmmRKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNKSs8_M_checkEmPKc@GLIBCXX_3.4 4.1.1
+ _ZNKSs8_M_limitEmm@GLIBCXX_3.4 4.1.1
+ _ZNKSsixEm@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIcE6_M_putEPcmPKcPK2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt11__timepunctIwE6_M_putEPwmPKwPK2tm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIcc11__mbstate_tE9do_lengthERS0_PKcS4_m@GLIBCXX_3.4 4.1.1
+ _ZNKSt7codecvtIwc11__mbstate_tE9do_lengthERS0_PKcS4_m@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIcE12_M_transformEPcPKcm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7collateIwE12_M_transformEPwPKwm@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE12_M_group_intEPKcmcRSt8ios_basePcS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE14_M_group_floatEPKcmcS6_PcS7_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE6_M_padEciRSt8ios_basePcPKcRi@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE12_M_group_intEPKcmwRSt8ios_basePwS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE14_M_group_floatEPKcmwPKwPwS9_Ri@GLIBCXX_3.4 4.1.1
+ _ZNKSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEE6_M_padEwiRSt8ios_basePwPKwRi@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE14_M_extract_numES3_S3_RiiimRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEE15_M_extract_nameES3_S3_RiPPKcmRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE14_M_extract_numES3_S3_RiiimRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEE15_M_extract_nameES3_S3_RiPPKwmRSt8ios_baseRSt12_Ios_Iostate@GLIBCXX_3.4 4.1.1
+ _ZNKSt8valarrayImE4sizeEv@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE12_S_constructEmwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE14_M_replace_auxEmmmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE15_M_replace_safeEmmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE2atEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep8_M_cloneERKS1_m@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE4_Rep9_S_createEmmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE5eraseEmm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6appendEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6assignEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEN9__gnu_cxx17__normal_iteratorIPwS2_EEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmRKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6insertEmmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6resizeEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE6resizeEmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKwm@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7_M_moveEPwPKwm@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_PKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEN9__gnu_cxx17__normal_iteratorIPwS2_EES6_mw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmPKw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmPKwm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmRKS2_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmRKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7replaceEmmmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE7reserveEm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwmw@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_assignEPwmw@GLIBCXX_3.4.5 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEE9_M_mutateEmmm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EPKwmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1ERKS2_mmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC1EmwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EPKwmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_mm@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2ERKS2_mmRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEC2EmwRKS1_@GLIBCXX_3.4 4.1.1
+ _ZNSbIwSt11char_traitsIwESaIwEEixEm@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEPci@GLIBCXX_3.4 4.1.1
+ _ZNSi3getEPcic@GLIBCXX_3.4 4.1.1
+ _ZNSi4readEPci@GLIBCXX_3.4 4.1.1
+ _ZNSi5seekgExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEi@GLIBCXX_3.4 4.1.1
+ _ZNSi6ignoreEi@GLIBCXX_3.4.5 4.1.1
+ _ZNSi6ignoreEii@GLIBCXX_3.4 4.1.1
+ _ZNSi7getlineEPci@GLIBCXX_3.4 4.1.1
+ _ZNSi7getlineEPcic@GLIBCXX_3.4 4.1.1
+ _ZNSi8readsomeEPci@GLIBCXX_3.4 4.1.1
+ _ZNSo5seekpExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSo5writeEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSo8_M_writeEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSs12_S_constructEmcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs14_M_replace_auxEmmmc@GLIBCXX_3.4 4.1.1
+ _ZNSs15_M_replace_safeEmmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs2atEm@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep26_M_set_length_and_sharableEm@GLIBCXX_3.4.5 4.1.1
+ _ZNSs4_Rep8_M_cloneERKSaIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSs4_Rep9_S_createEmmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSs5eraseEmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6appendEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6assignEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEN9__gnu_cxx17__normal_iteratorIPcSsEEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmRKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmRKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs6insertEmmc@GLIBCXX_3.4 4.1.1
+ _ZNSs6resizeEm@GLIBCXX_3.4 4.1.1
+ _ZNSs6resizeEmc@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_copyEPcPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_copyEPcPKcm@GLIBCXX_3.4.5 4.1.1
+ _ZNSs7_M_moveEPcPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7_M_moveEPcPKcm@GLIBCXX_3.4.5 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_PKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEN9__gnu_cxx17__normal_iteratorIPcSsEES2_mc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmPKc@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmRKSs@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmRKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSs7replaceEmmmc@GLIBCXX_3.4 4.1.1
+ _ZNSs7reserveEm@GLIBCXX_3.4 4.1.1
+ _ZNSs9_M_assignEPcmc@GLIBCXX_3.4 4.1.1
+ _ZNSs9_M_assignEPcmc@GLIBCXX_3.4.5 4.1.1
+ _ZNSs9_M_mutateEmmm@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EPKcmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSsC1ERKSsmmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC1EmcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EPKcmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSsmm@GLIBCXX_3.4 4.1.1
+ _ZNSsC2ERKSsmmRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsC2EmcRKSaIcE@GLIBCXX_3.4 4.1.1
+ _ZNSsixEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC1EPci@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt10istrstreamC2EPci@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1EPSt18__moneypunct_cacheIcLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2EPSt18__moneypunct_cacheIcLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1EPSt18__moneypunct_cacheIcLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2EPSt18__moneypunct_cacheIcLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIcLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1EPSt18__moneypunct_cacheIwLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2EPSt18__moneypunct_cacheIwLb0EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1EPSt18__moneypunct_cacheIwLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2EPSt18__moneypunct_cacheIwLb1EEm@GLIBCXX_3.4 4.1.1
+ _ZNSt10moneypunctIwLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1EPSt17__timepunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2EPSt17__timepunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1EPSt17__timepunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2EPSt17__timepunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt11__timepunctIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE6xsgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE6xsputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE7seekoffExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt12__basic_fileIcE8xsputn_2EPKciS2_i@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12ctype_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8_M_allocEm@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambuf8_M_setupEPcS0_i@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPFPvmEPFvS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKai@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPKhi@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPaiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPciS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1EPhiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC1Ei@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPFPvmEPFvS0_E@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKai@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPKhi@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPaiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPciS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2EPhiS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt12strstreambufC2Ei@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE13_M_set_bufferEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE22_M_convert_to_externalEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6xsgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE6xsputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7_M_seekExSt12_Ios_Seekdir11__mbstate_t@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE13_M_set_bufferEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE22_M_convert_to_externalEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6setbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6xsgetnEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE6xsputnEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7_M_seekExSt12_Ios_Seekdir11__mbstate_t@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_filebufIwSt11char_traitsIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE3getEPwiw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE4readEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE5seekgExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEi@GLIBCXX_3.4.5 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreEij@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7getlineEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE7getlineEPwiw@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_istreamIwSt11char_traitsIwEE8readsomeEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5seekpExSt12_Ios_Seekdir@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE5writeEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt13basic_ostreamIwSt11char_traitsIwEE8_M_writeEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIcc11__mbstate_tEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14codecvt_bynameIwc11__mbstate_tEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt14collate_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE10pubseekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE5sputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6xsgetnEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE6xsputnEPKci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIcSt11char_traitsIcEE9pubsetbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE10pubseekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sgetnEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE5sputnEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6setbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6xsgetnEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE6xsputnEPKwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_streambufIwSt11char_traitsIwEE9pubsetbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE6setbufEPci@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7_M_syncEPcmm@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIcSt11char_traitsIcESaIcEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE6setbufEPwi@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7_M_syncEPwmm@GLIBCXX_3.4 4.1.1
+ _ZNSt15basic_stringbufIwSt11char_traitsIwESaIwEE7seekoffExSt12_Ios_SeekdirSt13_Ios_Openmode@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15messages_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIcEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15numpunct_bynameIwEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_get_bynameIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt15time_put_bynameIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt16__numpunct_cacheIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17__timepunct_cacheIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb0EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIcLb1EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb0EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EEC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt17moneypunct_bynameIwLb1EEC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIcLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb0EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt18__moneypunct_cacheIwLb1EEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC1EP15__locale_structPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC1EPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC2EP15__locale_structPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIcEC2EPKtbm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt5ctypeIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt6gslice8_IndexerC1EmRKSt8valarrayImES4_@GLIBCXX_3.4 4.1.1
+ _ZNSt6gslice8_IndexerC2EmRKSt8valarrayImES4_@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_Impl16_M_install_cacheEPKNS_5facetEm@GLIBCXX_3.4.7 4.1.1
+ _ZNSt6locale5_ImplC1EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC1ERKS0_m@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2EPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2ERKS0_m@GLIBCXX_3.4 4.1.1
+ _ZNSt6locale5_ImplC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIcc11__mbstate_tEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7codecvtIwc11__mbstate_tEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt7collateIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt7num_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC1EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC2EP15__locale_structPKcm@GLIBCXX_3.4 4.1.1
+ _ZNSt8messagesIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1EPSt16__numpunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2EPSt16__numpunct_cacheIcEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIcEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1EPSt16__numpunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2EP15__locale_structm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2EPSt16__numpunct_cacheIwEm@GLIBCXX_3.4 4.1.1
+ _ZNSt8numpunctIwEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8time_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC1ERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC2ERKS0_@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImED1Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImED2Ev@GLIBCXX_3.4 4.1.1
+ _ZNSt8valarrayImEixEm@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIcSt19istreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_getIwSt19istreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC1Em@GLIBCXX_3.4 4.1.1
+ _ZNSt9money_putIwSt19ostreambuf_iteratorIwSt11char_traitsIwEEEC2Em@GLIBCXX_3.4 4.1.1
+ _ZSt16__ostream_insertIcSt11char_traitsIcEERSt13basic_ostreamIT_T0_ES6_PKS3_i@GLIBCXX_3.4.9 4.2.1
+ _ZSt16__ostream_insertIwSt11char_traitsIwEERSt13basic_ostreamIT_T0_ES6_PKS3_i@GLIBCXX_3.4.9 4.2.1
+ _ZSt17__copy_streambufsIcSt11char_traitsIcEEiPSt15basic_streambufIT_T0_ES6_@GLIBCXX_3.4.6 4.1.1
+ _ZSt17__copy_streambufsIwSt11char_traitsIwEEiPSt15basic_streambufIT_T0_ES6_@GLIBCXX_3.4.6 4.1.1
+ _ZSt21__copy_streambufs_eofIcSt11char_traitsIcEEiPSt15basic_streambufIT_T0_ES6_Rb@GLIBCXX_3.4.9 4.2.1
+ _ZSt21__copy_streambufs_eofIwSt11char_traitsIwEEiPSt15basic_streambufIT_T0_ES6_Rb@GLIBCXX_3.4.9 4.2.1
+ _ZThn8_NSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZThn8_NSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSdD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSdD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSiD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSiD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSoD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSoD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10istrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10istrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10ostrstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt10ostrstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_fstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_istreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_istreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_ostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt13basic_ostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ifstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_iostreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_iostreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIcSt11char_traitsIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIcSt11char_traitsIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIwSt11char_traitsIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt14basic_ofstreamIwSt11char_traitsIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt18basic_stringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_istringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIcSt11char_traitsIcESaIcEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt19basic_ostringstreamIwSt11char_traitsIwESaIwEED1Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt9strstreamD0Ev@GLIBCXX_3.4 4.1.1
+ _ZTv0_n12_NSt9strstreamD1Ev@GLIBCXX_3.4 4.1.1
+ _Znam@GLIBCXX_3.4 4.1.1
+ _ZnamRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ _Znwm@GLIBCXX_3.4 4.1.1
+ _ZnwmRKSt9nothrow_t@GLIBCXX_3.4 4.1.1
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
+#include "libstdc++6.symbols.ldbl.32bit.s390"
--- gcj-4.2-4.2.4.orig/debian/source.lintian-overrides
+++ gcj-4.2-4.2.4/debian/source.lintian-overrides
@@ -0,0 +1 @@
+gcc-4.2: invalid-arch-string-in-source-relation
--- gcj-4.2-4.2.4.orig/debian/dh_doclink
+++ gcj-4.2-4.2.4/debian/dh_doclink
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+pkg=`echo $1 | sed 's/^-p//'`
+target=$2
+
+[ -d debian/$pkg/usr/share/doc ] || mkdir -p debian/$pkg/usr/share/doc
+if [ -d debian/$pkg/usr/share/doc/$p -a ! -h debian/$pkg/usr/share/doc/$p ]
+then
+    echo "WARNING: removing doc directory  $pkg"
+    rm -rf debian/$pkg/usr/share/doc/$pkg
+fi
+ln -sf $target debian/$pkg/usr/share/doc/$pkg
--- gcj-4.2-4.2.4.orig/debian/gcjh-wrapper-BV.1
+++ gcj-4.2-4.2.4/debian/gcjh-wrapper-BV.1
@@ -0,0 +1,20 @@
+.TH GCJH-WRAPPER 1 "June 6, 2002" gcjh-wrapper "Java User's Manual"
+.SH NAME
+gcjh-wrapper \- a wrapper around gcjh
+
+.SH SYNOPSIS
+gcjh-wrapper [\fB\s-1OPTION\s0\fR] ... [\fI\s-1ARGS\s0\fR...]
+
+.SH DESCRIPTION
+
+\fBgcjh-wrapper\fR is a wrapper around gcjh(1) to be called as the java header
+compiler. Options different for javah(1) and gcjh(1) are translated,
+options unknown to gcjh(1) are silently ignored.
+
+.SH OPTIONS
+See gcjh-@BV@(1) for a list of options that gcj understands.
+
+.SH "SEE ALSO"
+.BR gcjh-@BV@(1)
+,
+.BR javah(1)
--- gcj-4.2-4.2.4.orig/debian/reduce-test-diff.awk
+++ gcj-4.2-4.2.4/debian/reduce-test-diff.awk
@@ -0,0 +1,33 @@
+#! /usr/bin/gawk -f
+
+BEGIN {
+	skip=0
+	warn=0
+}
+
+/^-(FAIL|ERROR|UNRESOLVED|WARNING)/ {
+	next
+}
+
+# only compare gcc, g++, g77 and objc results
+/=== treelang tests ===/ {
+	skip=1
+}
+
+# omit extra files appended to test-summary
+/^\+Compiler version/ {
+	skip=1
+}
+
+skip == 0 {
+	print
+	next
+}
+
+/^\+(FAIL|ERROR|UNRESOLVED|WARNING)/ {
+	warn=1
+}
+
+END {
+	exit warn
+}
--- gcj-4.2-4.2.4.orig/debian/libgomp1.symbols.common
+++ gcj-4.2-4.2.4/debian/libgomp1.symbols.common
@@ -0,0 +1,91 @@
+ GOMP_1.0@GOMP_1.0 4.2.1
+ GOMP_atomic_end@GOMP_1.0 4.2.1
+ GOMP_atomic_start@GOMP_1.0 4.2.1
+ GOMP_barrier@GOMP_1.0 4.2.1
+ GOMP_critical_end@GOMP_1.0 4.2.1
+ GOMP_critical_name_end@GOMP_1.0 4.2.1
+ GOMP_critical_name_start@GOMP_1.0 4.2.1
+ GOMP_critical_start@GOMP_1.0 4.2.1
+ GOMP_loop_dynamic_next@GOMP_1.0 4.2.1
+ GOMP_loop_dynamic_start@GOMP_1.0 4.2.1
+ GOMP_loop_end@GOMP_1.0 4.2.1
+ GOMP_loop_end_nowait@GOMP_1.0 4.2.1
+ GOMP_loop_guided_next@GOMP_1.0 4.2.1
+ GOMP_loop_guided_start@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_dynamic_next@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_dynamic_start@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_guided_next@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_guided_start@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_runtime_next@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_runtime_start@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_static_next@GOMP_1.0 4.2.1
+ GOMP_loop_ordered_static_start@GOMP_1.0 4.2.1
+ GOMP_loop_runtime_next@GOMP_1.0 4.2.1
+ GOMP_loop_runtime_start@GOMP_1.0 4.2.1
+ GOMP_loop_static_next@GOMP_1.0 4.2.1
+ GOMP_loop_static_start@GOMP_1.0 4.2.1
+ GOMP_ordered_end@GOMP_1.0 4.2.1
+ GOMP_ordered_start@GOMP_1.0 4.2.1
+ GOMP_parallel_end@GOMP_1.0 4.2.1
+ GOMP_parallel_loop_dynamic_start@GOMP_1.0 4.2.1
+ GOMP_parallel_loop_guided_start@GOMP_1.0 4.2.1
+ GOMP_parallel_loop_runtime_start@GOMP_1.0 4.2.1
+ GOMP_parallel_loop_static_start@GOMP_1.0 4.2.1
+ GOMP_parallel_sections_start@GOMP_1.0 4.2.1
+ GOMP_parallel_start@GOMP_1.0 4.2.1
+ GOMP_sections_end@GOMP_1.0 4.2.1
+ GOMP_sections_end_nowait@GOMP_1.0 4.2.1
+ GOMP_sections_next@GOMP_1.0 4.2.1
+ GOMP_sections_start@GOMP_1.0 4.2.1
+ GOMP_single_copy_end@GOMP_1.0 4.2.1
+ GOMP_single_copy_start@GOMP_1.0 4.2.1
+ GOMP_single_start@GOMP_1.0 4.2.1
+ OMP_1.0@OMP_1.0 4.2.1
+ OMP_2.0@OMP_2.0 4.2.1
+ omp_destroy_lock@OMP_1.0 4.2.1
+ omp_destroy_lock_@OMP_1.0 4.2.1
+ omp_destroy_nest_lock@OMP_1.0 4.2.1
+ omp_destroy_nest_lock_@OMP_1.0 4.2.1
+ omp_get_dynamic@OMP_1.0 4.2.1
+ omp_get_dynamic_@OMP_1.0 4.2.1
+ omp_get_max_threads@OMP_1.0 4.2.1
+ omp_get_max_threads_@OMP_1.0 4.2.1
+ omp_get_nested@OMP_1.0 4.2.1
+ omp_get_nested_@OMP_1.0 4.2.1
+ omp_get_num_procs@OMP_1.0 4.2.1
+ omp_get_num_procs_@OMP_1.0 4.2.1
+ omp_get_num_threads@OMP_1.0 4.2.1
+ omp_get_num_threads_@OMP_1.0 4.2.1
+ omp_get_thread_num@OMP_1.0 4.2.1
+ omp_get_thread_num_@OMP_1.0 4.2.1
+ omp_get_wtick@OMP_2.0 4.2.1
+ omp_get_wtick_@OMP_2.0 4.2.1
+ omp_get_wtime@OMP_2.0 4.2.1
+ omp_get_wtime_@OMP_2.0 4.2.1
+ omp_in_parallel@OMP_1.0 4.2.1
+ omp_in_parallel_@OMP_1.0 4.2.1
+ omp_init_lock@OMP_1.0 4.2.1
+ omp_init_lock_@OMP_1.0 4.2.1
+ omp_init_nest_lock@OMP_1.0 4.2.1
+ omp_init_nest_lock_@OMP_1.0 4.2.1
+ omp_set_dynamic@OMP_1.0 4.2.1
+ omp_set_dynamic_8_@OMP_1.0 4.2.1
+ omp_set_dynamic_@OMP_1.0 4.2.1
+ omp_set_lock@OMP_1.0 4.2.1
+ omp_set_lock_@OMP_1.0 4.2.1
+ omp_set_nest_lock@OMP_1.0 4.2.1
+ omp_set_nest_lock_@OMP_1.0 4.2.1
+ omp_set_nested@OMP_1.0 4.2.1
+ omp_set_nested_8_@OMP_1.0 4.2.1
+ omp_set_nested_@OMP_1.0 4.2.1
+ omp_set_num_threads@OMP_1.0 4.2.1
+ omp_set_num_threads_8_@OMP_1.0 4.2.1
+ omp_set_num_threads_@OMP_1.0 4.2.1
+ omp_test_lock@OMP_1.0 4.2.1
+ omp_test_lock_@OMP_1.0 4.2.1
+ omp_test_nest_lock@OMP_1.0 4.2.1
+ omp_test_nest_lock_@OMP_1.0 4.2.1
+ omp_unset_lock@OMP_1.0 4.2.1
+ omp_unset_lock_@OMP_1.0 4.2.1
+ omp_unset_nest_lock@OMP_1.0 4.2.1
+ omp_unset_nest_lock_@OMP_1.0 4.2.1
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.powerpc
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.powerpc
@@ -0,0 +1,5 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
+#include "libstdc++6.symbols.ldbl.32bit"
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.alpha
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.alpha
@@ -0,0 +1,6 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
+#include "libstdc++6.symbols.ldbl.64bit"
--- gcj-4.2-4.2.4.orig/debian/libobjc2.symbols.common
+++ gcj-4.2-4.2.4/debian/libobjc2.symbols.common
@@ -0,0 +1,205 @@
+ __gnu_objc_personality_v0@Base 4.2.1
+ __objc_add_class_to_hash@Base 4.2.1
+ __objc_class_links_resolved@Base 4.2.1
+ __objc_class_name_NXConstantString@Base 4.2.1
+ __objc_class_name_Object@Base 4.2.1
+ __objc_class_name_Protocol@Base 4.2.1
+ __objc_close_thread_system@Base 4.2.1
+ __objc_condition_allocate@Base 4.2.1
+ __objc_condition_broadcast@Base 4.2.1
+ __objc_condition_deallocate@Base 4.2.1
+ __objc_condition_signal@Base 4.2.1
+ __objc_condition_wait@Base 4.2.1
+ __objc_dangling_categories@Base 4.2.1
+ __objc_exec_class@Base 4.2.1
+ __objc_force_linking@Base 4.2.1
+ __objc_generate_gc_type_description@Base 4.2.1
+ __objc_get_forward_imp@Base 4.2.1
+ __objc_init_class_tables@Base 4.2.1
+ __objc_init_dispatch_tables@Base 4.2.1
+ __objc_init_selector_tables@Base 4.2.1
+ __objc_init_thread_system@Base 4.2.1
+ __objc_install_premature_dtable@Base 4.2.1
+ __objc_is_multi_threaded@Base 4.2.1
+ __objc_linking@Base 4.2.1
+ __objc_msg_forward@Base 4.2.1
+ __objc_mutex_allocate@Base 4.2.1
+ __objc_mutex_deallocate@Base 4.2.1
+ __objc_mutex_lock@Base 4.2.1
+ __objc_mutex_trylock@Base 4.2.1
+ __objc_mutex_unlock@Base 4.2.1
+ __objc_object_alloc@Base 4.2.1
+ __objc_object_copy@Base 4.2.1
+ __objc_object_dispose@Base 4.2.1
+ __objc_print_dtable_stats@Base 4.2.1
+ __objc_read_nbyte_uint@Base 4.2.1
+ __objc_read_nbyte_ulong@Base 4.2.1
+ __objc_register_instance_methods_to_class@Base 4.2.1
+ __objc_register_selectors_from_class@Base 4.2.1
+ __objc_register_selectors_from_list@Base 4.2.1
+ __objc_resolve_class_links@Base 4.2.1
+ __objc_responds_to@Base 4.2.1
+ __objc_runtime_mutex@Base 4.2.1
+ __objc_runtime_threads_alive@Base 4.2.1
+ __objc_selector_max_index@Base 4.2.1
+ __objc_sparse2_id@Base 4.2.1
+ __objc_thread_detach@Base 4.2.1
+ __objc_thread_exit@Base 4.2.1
+ __objc_thread_exit_status@Base 4.2.1
+ __objc_thread_get_data@Base 4.2.1
+ __objc_thread_get_priority@Base 4.2.1
+ __objc_thread_id@Base 4.2.1
+ __objc_thread_set_data@Base 4.2.1
+ __objc_thread_set_priority@Base 4.2.1
+ __objc_thread_yield@Base 4.2.1
+ __objc_uninstalled_dtable@Base 4.2.1
+ __objc_update_dispatch_table_for_class@Base 4.2.1
+ __objc_write_class@Base 4.2.1
+ __objc_write_object@Base 4.2.1
+ __objc_write_selector@Base 4.2.1
+ __sel_register_typed_name@Base 4.2.1
+ _objc_atomic_malloc@Base 4.2.1
+ _objc_became_multi_threaded@Base 4.2.1
+ _objc_calloc@Base 4.2.1
+ _objc_free@Base 4.2.1
+ _objc_load_callback@Base 4.2.1
+ _objc_lookup_class@Base 4.2.1
+ _objc_malloc@Base 4.2.1
+ _objc_object_alloc@Base 4.2.1
+ _objc_object_copy@Base 4.2.1
+ _objc_object_dispose@Base 4.2.1
+ _objc_realloc@Base 4.2.1
+ _objc_valloc@Base 4.2.1
+ class_add_method_list@Base 4.2.1
+ class_create_instance@Base 4.2.1
+ class_get_class_method@Base 4.2.1
+ class_get_instance_method@Base 4.2.1
+ class_ivar_set_gcinvisible@Base 4.2.1
+ class_pose_as@Base 4.2.1
+ get_imp@Base 4.2.1
+ idxsize@Base 4.2.1
+ method_get_first_argument@Base 4.2.1
+ method_get_next_argument@Base 4.2.1
+ method_get_nth_argument@Base 4.2.1
+ method_get_number_of_arguments@Base 4.2.1
+ method_get_sizeof_arguments@Base 4.2.1
+ narrays@Base 4.2.1
+ nbuckets@Base 4.2.1
+ nil_method@Base 4.2.1
+ nindices@Base 4.2.1
+ objc_aligned_size@Base 4.2.1
+ objc_alignof_type@Base 4.2.1
+ objc_atomic_malloc@Base 4.2.1
+ objc_calloc@Base 4.2.1
+ objc_close_typed_stream@Base 4.2.1
+ objc_condition_allocate@Base 4.2.1
+ objc_condition_broadcast@Base 4.2.1
+ objc_condition_deallocate@Base 4.2.1
+ objc_condition_signal@Base 4.2.1
+ objc_condition_wait@Base 4.2.1
+ objc_end_of_typed_stream@Base 4.2.1
+ objc_error@Base 4.2.1
+ objc_exception_throw@Base 4.2.1
+ objc_flush_typed_stream@Base 4.2.1
+ objc_free@Base 4.2.1
+ objc_get_class@Base 4.2.1
+ objc_get_meta_class@Base 4.2.1
+ objc_get_stream_class_version@Base 4.2.1
+ objc_get_type_qualifiers@Base 4.2.1
+ objc_get_uninstalled_dtable@Base 4.2.1
+ objc_hash_add@Base 4.2.1
+ objc_hash_delete@Base 4.2.1
+ objc_hash_is_key_in_hash@Base 4.2.1
+ objc_hash_new@Base 4.2.1
+ objc_hash_next@Base 4.2.1
+ objc_hash_remove@Base 4.2.1
+ objc_hash_value_for_key@Base 4.2.1
+ objc_layout_finish_structure@Base 4.2.1
+ objc_layout_structure@Base 4.2.1
+ objc_layout_structure_get_info@Base 4.2.1
+ objc_layout_structure_next_member@Base 4.2.1
+ objc_lookup_class@Base 4.2.1
+ objc_malloc@Base 4.2.1
+ objc_msg_lookup@Base 4.2.1
+ objc_msg_lookup_super@Base 4.2.1
+ objc_msg_sendv@Base 4.2.1
+ objc_mutex_allocate@Base 4.2.1
+ objc_mutex_deallocate@Base 4.2.1
+ objc_mutex_lock@Base 4.2.1
+ objc_mutex_trylock@Base 4.2.1
+ objc_mutex_unlock@Base 4.2.1
+ objc_next_class@Base 4.2.1
+ objc_open_typed_stream@Base 4.2.1
+ objc_open_typed_stream_for_file@Base 4.2.1
+ objc_promoted_size@Base 4.2.1
+ objc_read_array@Base 4.2.1
+ objc_read_char@Base 4.2.1
+ objc_read_int@Base 4.2.1
+ objc_read_long@Base 4.2.1
+ objc_read_object@Base 4.2.1
+ objc_read_selector@Base 4.2.1
+ objc_read_short@Base 4.2.1
+ objc_read_string@Base 4.2.1
+ objc_read_type@Base 4.2.1
+ objc_read_types@Base 4.2.1
+ objc_read_unsigned_char@Base 4.2.1
+ objc_read_unsigned_int@Base 4.2.1
+ objc_read_unsigned_long@Base 4.2.1
+ objc_read_unsigned_short@Base 4.2.1
+ objc_realloc@Base 4.2.1
+ objc_set_error_handler@Base 4.2.1
+ objc_set_thread_callback@Base 4.2.1
+ objc_sizeof_type@Base 4.2.1
+ objc_skip_argspec@Base 4.2.1
+ objc_skip_offset@Base 4.2.1
+ objc_skip_type_qualifiers@Base 4.2.1
+ objc_skip_typespec@Base 4.2.1
+ objc_thread_add@Base 4.2.1
+ objc_thread_detach@Base 4.2.1
+ objc_thread_exit@Base 4.2.1
+ objc_thread_get_data@Base 4.2.1
+ objc_thread_get_priority@Base 4.2.1
+ objc_thread_id@Base 4.2.1
+ objc_thread_remove@Base 4.2.1
+ objc_thread_set_data@Base 4.2.1
+ objc_thread_set_priority@Base 4.2.1
+ objc_thread_yield@Base 4.2.1
+ objc_valloc@Base 4.2.1
+ objc_verror@Base 4.2.1
+ objc_write_array@Base 4.2.1
+ objc_write_char@Base 4.2.1
+ objc_write_int@Base 4.2.1
+ objc_write_long@Base 4.2.1
+ objc_write_object@Base 4.2.1
+ objc_write_object_reference@Base 4.2.1
+ objc_write_root_object@Base 4.2.1
+ objc_write_selector@Base 4.2.1
+ objc_write_short@Base 4.2.1
+ objc_write_string@Base 4.2.1
+ objc_write_string_atomic@Base 4.2.1
+ objc_write_type@Base 4.2.1
+ objc_write_types@Base 4.2.1
+ objc_write_unsigned_char@Base 4.2.1
+ objc_write_unsigned_int@Base 4.2.1
+ objc_write_unsigned_long@Base 4.2.1
+ objc_write_unsigned_short@Base 4.2.1
+ object_copy@Base 4.2.1
+ object_dispose@Base 4.2.1
+ sarray_at_put@Base 4.2.1
+ sarray_at_put_safe@Base 4.2.1
+ sarray_free@Base 4.2.1
+ sarray_lazy_copy@Base 4.2.1
+ sarray_new@Base 4.2.1
+ sarray_realloc@Base 4.2.1
+ sarray_remove_garbage@Base 4.2.1
+ search_for_method_in_list@Base 4.2.1
+ sel_get_any_typed_uid@Base 4.2.1
+ sel_get_any_uid@Base 4.2.1
+ sel_get_name@Base 4.2.1
+ sel_get_type@Base 4.2.1
+ sel_get_typed_uid@Base 4.2.1
+ sel_get_uid@Base 4.2.1
+ sel_is_mapped@Base 4.2.1
+ sel_register_name@Base 4.2.1
+ sel_register_typed_name@Base 4.2.1
+ sel_types_match@Base 4.2.1
--- gcj-4.2-4.2.4.orig/debian/README.patches
+++ gcj-4.2-4.2.4/debian/README.patches
@@ -0,0 +1,30 @@
+Patches applied to the Debian version of egcs
+---------------------------------------------
+
+Debian specific patches can be found in the debian/patches directory.
+Each patch is accompanied by a shell script to apply and unapply the
+patch:
+
+- The script can be found in the debian/patches directory and is called
+  <patchname>.dpatch.
+- The shell script is called by the debian/rules file with the option
+  '-patch' to apply the patch and and with '-unpatch' to unapply
+  the patch. The working directory is the source directory.
+- The shell script returns 0 on success and 1 on failure when
+  (un)applying the patch. The patch program itself should be called with
+  --force to prevent questions.
+- debian/rules creates a file patched-<patchname> in the source
+  directory when applying the patch and removes this file when
+  unapplying the patch.
+
+Besides the patches, the following add-ons were included:
+
+- gpc (unpacked from gpc-19990118.tar.gz)
+  ftp://agnes.dida.physik.uni-essen.de/gnu-pascal/beta/gpc-19990118.tar.gz
+
+If these package(s) aren't found in the gcc source directory, it's
+assumed that the tarball(s) can be found in the parent directory. See
+debian/rules for more details.
+
+Before making a source package, these packages need to be unpacked.
+You can use "debian/rules unpack-addons".
--- gcj-4.2-4.2.4.orig/debian/lib64gomp1.symbols
+++ gcj-4.2-4.2.4/debian/lib64gomp1.symbols
@@ -0,0 +1,2 @@
+libgomp.so.1 lib64gomp1 #MINVER#
+#include "libgomp1.symbols.common"
--- gcj-4.2-4.2.4.orig/debian/fixincludes.in
+++ gcj-4.2-4.2.4/debian/fixincludes.in
@@ -0,0 +1,8 @@
+#! /bin/sh
+
+PATH="/@LIBEXECDIR@/install-tools:$PATH"
+
+TARGET_MACHINE=`dpkg-architecture -qDEB_HOST_GNU_TYPE`
+export TARGET_MACHINE
+
+exec fixinc.sh "$@"
--- gcj-4.2-4.2.4.orig/debian/rules.conf
+++ gcj-4.2-4.2.4/debian/rules.conf
@@ -0,0 +1,820 @@
+# -*- makefile -*-
+# rules.conf
+#	- used to build debian/control and debian/rules.parameters
+#	- assumes unpacked sources
+
+include debian/rules.defs
+
+SOURCE_VERSION := $(call vafilt,$(CHANGELOG_VARS),Version)
+DEB_VERSION := $(shell echo $(SOURCE_VERSION) \
+	| sed -e 's/.*://' -e 's/ds[0-9]*//')
+ifneq (,$(findstring gpc,$(PKGSOURCE)))
+  GPC_BASE_VERSION := $(word 1, $(subst -, ,$(DEB_VERSION)))
+  DEB_VERSION := $(subst $(GPC_BASE_VERSION)-,,$(DEB_VERSION))
+endif
+ifneq (,$(findstring gdc,$(PKGSOURCE)))
+  GDC_BASE_VERSION := $(word 1, $(subst -, ,$(DEB_VERSION)))
+  DEB_VERSION := $(subst $(GDC_BASE_VERSION)-,,$(DEB_VERSION))
+endif
+
+# epoch used for gcc versions up to 3.3.x, now used for some remaining
+# libraries: libgcc1, libobjc1, libffi2, libffi2-dev, libg2c0
+EPOCH := 1
+DEB_EVERSION := $(EPOCH):$(DEB_VERSION)
+BASE_VERSION := $(shell echo $(DEB_VERSION) | sed -e 's/\([1-9]\.[0-9]\).*-.*/\1/')
+
+# The binutils version needed.
+# The oldest suitable versions for the various platforms can be found in
+# INSTALL/specific.html ; we take a tighter dependency if possible to be on
+# the safe side (something like newest( version in stable, versions for the
+# various platforms in INSTALL/specific.html) ).
+BINUTILSV = 2.17cvs20070426
+ifdef DEB_CROSS
+  BINUTILS_BUILD_DEP = binutils$(TS) (>= $(BINUTILSV))
+else
+  BINUTILS_BUILD_DEP = binutils (>= $(BINUTILSV)) | binutils-multiarch (>= $(BINUTILSV))
+endif
+
+# libc-dev dependencies
+libc_ver := 2.5
+ifeq ($(DEB_TARGET_ARCH_OS),linux)
+  ifneq (,$(findstring $(DEB_TARGET_ARCH),alpha ia64))
+    LIBC_DEP = libc6.1
+    LIBC_DEV_DEP = libc6.1-dev$(LS) (>= $(libc_ver))
+  else
+    LIBC_DEP = libc6
+    LIBC_DEV_DEP = libc6-dev$(LS) (>= $(libc_ver))
+  endif
+else
+  ifeq ($(DEB_TARGET_ARCH_OS),gnu)
+    LIBC_DEP = libc0.3
+    LIBC_DEV_DEP = libc0.3-dev$(LS)
+  endif
+  ifeq ($(DEB_TARGET_ARCH_OS),kfreebsd)
+    LIBC_DEP = libc0.1
+    LIBC_DEV_DEP = libc0.1-dev
+  endif
+endif
+
+LIBC_BIARCH_DEP :=
+LIBC_BIARCH_DEV_DEP :=
+LIBCXX_BIARCH_DEP :=
+ifeq ($(biarch),yes)
+  ifeq ($(DEB_TARGET_ARCH),i386)
+    LIBC_BIARCH_DEP := libc6-amd64$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-amd64$(LS)
+  endif
+  ifeq ($(DEB_TARGET_ARCH),powerpc)
+    LIBC_BIARCH_DEP := libc6-ppc64$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-ppc64$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),sparc)
+    LIBC_BIARCH_DEP := libc6-sparc64$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-sparc64$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),s390)
+    LIBC_BIARCH_DEP := libc6-s390x$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-s390x$(LS) (>= $(libc_ver))
+  endif
+  LIBCXX_BIARCH_DEP = lib64stdc++$(CXX_SONAME)$(LS) (>= $${gcc:Version})
+  LIBCXX_BIARCH_DBG_DEP = lib64stdc++$(CXX_SONAME)-$(BASE_VERSION)-dbg
+endif
+ifeq ($(biarch32),yes)
+  ifeq ($(DEB_TARGET_ARCH),amd64)
+    LIBC_BIARCH_DEV_DEP := libc6-dev-i386$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEP := libc6-i386$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),ppc64)
+    LIBC_BIARCH_DEP := libc6-powerpc$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEV_DEP := libc6-dev-powerpc$(LS) (>= $(libc_ver))
+  endif
+  ifeq ($(DEB_TARGET_ARCH),kfreebsd-amd64)
+    LIBC_BIARCH_DEV_DEP := libc0.1-dev-i386$(LS) (>= $(libc_ver))
+    LIBC_BIARCH_DEP := libc0.1-i386$(LS) (>= $(libc_ver))
+  endif
+  LIBCXX_BIARCH_DEP = lib32stdc++$(CXX_SONAME)$(LS) (>= $${gcc:Version})
+  LIBCXX_BIARCH_DBG_DEP = lib32stdc++$(CXX_SONAME)-$(BASE_VERSION)-dbg
+endif
+
+LIBUNWIND_DEV_DEP :=
+ifeq ($(DEB_TARGET_ARCH),ia64)
+  LIBUNWIND_DEV_DEP := libunwind7-dev$(LS) (>= 0.98.5-6)
+endif
+
+SOURCE_BUILD_DEP += gcc-$(BASE_VERSION)-source (>= $(BASE_VERSION).4), gcc-$(BASE_VERSION)-source (<< $(BASE_VERSION).5),
+
+CHECK_BUILD_DEP := expect-tcl8.3 [hppa], dejagnu [check_no_archs]
+ifeq ($(distribution),Ubuntu)
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    CHECK_BUILD_DEP = dejagnu [check_no_archs]
+  endif
+endif
+
+ifndef DEB_CROSS
+LIBC_BUILD_DEP := libc6.1-dev (>= $(libc_ver)) [alpha ia64] | libc0.3-dev (>= $(libc_ver)) [hurd-i386] | libc0.1-dev (>= $(libc_ver)) [kfreebsd-i386 kfreebsd-amd64] | libc6-dev (>= $(libc_ver))
+JAVA_BUILD_DEP := libz-dev,
+
+ifneq (,$(java_awt_peers))
+  JAVA_BUILD_DEP += fastjar [java_no_archs], libmagic-dev [java_no_archs],
+  JAVA_BUILD_DEP += libecj-java (>= 3.3.0-2) [java_no_archs], zip [java_no_archs],
+  ifeq ($(with_java_maintainer_mode),yes)
+    # gcj-4.2 needed for gjavah-4.2.
+    JAVA_BUILD_DEP += gcj-4.2 [java_no_archs], ecj (>= 3.3.0-2) [java_no_archs],
+  endif
+  JAVA_BUILD_DEP += libasound2-dev [java_no_archs !hurd-i386 !kfreebsd-i386 !kfreebsd-amd64],
+  ifneq (,$(findstring gtk,$(java_awt_peers)))
+    JAVA_BUILD_DEP += libxtst-dev [java_no_archs], libxt-dev [java_no_archs], libgtk2.0-dev (>= 2.4.4-2) [java_no_archs], libart-2.0-dev [java_no_archs], libcairo2-dev [java_no_archs],
+  endif
+  ifneq (,$(findstring qt,$(java_awt_peers)))
+    JAVA_BUILD_DEP += libqt4-dev (>= 4.1.0) [java_no_archs],
+  endif
+  # gconf peer
+  JAVA_BUILD_DEP += libgconf2-dev [java_no_archs],
+  # gstreamer peer
+  #JAVA_BUILD_DEP += libgstreamer-plugins-base0.10-dev [java_no_archs],
+  ifneq ($(PKGSOURCE),gcc-snapshot)
+    ifeq ($(java_plugin_backend),xulrunner-1.9)
+      JAVA_BUILD_DEP += xulrunner-1.9-dev [java_plugin_no_archs],
+    else
+      JAVA_BUILD_DEP += iceape-dev [java_plugin_no_archs],
+    endif
+    JAVA_BUILD_DEP += g++-4.2 [armel],
+  endif
+endif
+ifneq ($(with_standalone_gcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    JAVA_BUILD_DEP += $(SOURCE_BUILD_DEP)
+  endif
+endif
+JAVA_BUILD_INDEP := gjdoc
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  JAVA_BUILD_INDEP :=
+endif
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+    JAVA_BUILD_DEP :=
+    JAVA_BUILD_INDEP :=
+  endif
+endif
+
+ECJ_DEP = libecj-java (>= 3.3.0-2)
+ifneq (,$(filter $(DEB_HOST_ARCH), alpha arm armel))
+  ECJ_DEP += , ecj1
+endif
+
+ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+  LIBSTDCXX_BUILD_INDEP = doxygen (>= 1.4.2), graphviz (>= 2.2), gsfonts-x11, texlive-latex-base
+  JAVA_BUILD_INDEP := , $(JAVA_BUILD_INDEP)
+endif
+
+ifeq ($(with_fortran),yes)
+  FORTRAN_BUILD_DEP := libmpfr-dev (>= 2.3.0~rc1.dfsg.1) [fortran_no_archs],
+else
+  FORTRAN_BUILD_DEP :=
+endif
+
+PASCAL_BUILD_DEP := libncurses5-dev [pascal_no_archs], texlive-latex-base [pascal_no_archs], libgmp3-dev [pascal_no_archs], help2man [pascal_no_archs],
+
+ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+  ifneq ($(with_separate_gnat),yes)
+    # Build gnat as part of the combiled gcc-x.y source package.  Do not fail
+    # if gnat is not present on unsupported architectures; the build scripts
+    # will not use gnat anyway.
+    GNAT_BUILD_DEP := gnat (>= 4.1) [ada_no_archs],
+  endif
+  ifeq ($(with_separate_gpc),yes)
+    PASCAL_BUILD_DEP :=
+  endif
+else ifeq ($(PKGSOURCE),gcc-snapshot)
+  # Ditto, as part of the gcc-snapshot package.
+  GNAT_BUILD_DEP := gnat (>= 4.1) [ada_no_archs],
+  PASCAL_BUILD_DEP :=
+else ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+  # Special source package just for gnat. Fail early if gnat is not present,
+  # rather than waste CPU cycles and fail later.
+  GNAT_BUILD_DEP := gnat (>= 4.1) | gnat-$(BASE_VERSION),
+  GNAT_BUILD_DEP += $(SOURCE_BUILD_DEP)
+  JAVA_BUILD_DEP :=
+  JAVA_BUILD_INDEP :=
+  PASCAL_BUILD_DEP :=
+else ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+  # Special source package just for gcj.
+  GNAT_BUILD_DEP :=
+  PASCAL_BUILD_DEP :=
+  GDC_BUILD_DEP :=
+else ifeq ($(PKGSOURCE),gdc-$(BASE_VERSION))
+  # Special source package just for gdc.
+  GNAT_BUILD_DEP :=
+  JAVA_BUILD_DEP :=
+  JAVA_BUILD_INDEP :=
+  PASCAL_BUILD_DEP :=
+  GDC_BUILD_DEP := $(SOURCE_BUILD_DEP)
+else ifeq ($(PKGSOURCE),gpc-$(BASE_VERSION))
+  # Special source package just for gpc.
+  GNAT_BUILD_DEP :=
+  JAVA_BUILD_DEP :=
+  JAVA_BUILD_INDEP :=
+  GDC_BUILD_DEP :=
+  PASCAL_BUILD_DEP += $(SOURCE_BUILD_DEP)
+endif
+
+
+LIBC_BIARCH_BUILD_DEP = libc6-dev-amd64 [i386], libc6-dev-sparc64 [sparc], libc6-dev-s390x [s390], libc6-dev-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-ppc64 [powerpc], libc0.1-dev-i386 [kfreebsd-amd64], lib32gcc1 [amd64 ppc64 kfreebsd-amd64], lib64gcc1 [i386 powerpc sparc s390],
+
+else
+# build cross compiler
+
+LIBC_BUILD_DEP := $(LIBC_DEV_DEP)
+
+ifneq ($(LIBC_BIARCH_DEV_DEP),)
+  LIBC_BIARCH_BUILD_DEP := $(LIBC_BIARCH_DEV_DEP),
+else
+  LIBC_BIARCH_BUILD_DEP :=
+endif
+
+ifneq ($(LIBUNWIND_DEV_DEP),)
+  LIBUNWIND_BUILD_DEP := $(LIBUNWIND_DEV_DEP),
+else
+  LIBUNWIND_BUILD_DEP := 
+endif
+
+ifeq ($(DEB_TARGET_ARCH),ia64)
+  LIBATOMIC_OPS_BUILD_DEP := libatomic-ops-dev$(LS),
+else
+  LIBATOMIC_OPS_BUILD_DEP :=
+endif
+
+JAVA_BUILD_DEP := libz-dev, lib64z1-dev [i386 powerpc sparc s390], lib32z1-dev [amd64 ppc64 kfreebsd-amd64],
+JAVA_BUILD_INDEP :=
+GNAT_BUILD_DEP :=
+
+endif # cross compiler
+
+GCC_VERSION := $(strip $(shell cat $(srcdir)/gcc/BASE-VER))
+
+# The numeric part of the gcc version number (x.yy.zz)
+NEXT_GCC_VERSION := $(shell echo $(GCC_VERSION) | \
+		awk -F. '{OFS="."; if (NF==2) $$3=1; else $$NF += 1; print}')
+# first version with a new path component in gcc_lib_dir (i.e. GCC_VERSION
+# or TARGET_ALIAS changes), or last version available for all architectures
+DEB_GCC_SOFT_VERSION := 4.2.3-1
+DEB_GCJ_SOFT_VERSION := 4.2.3-1
+ifeq ($(with_pascal),yes)
+GPC_DATE := $(shell sed -n 's/^.define GPC_VERSION_STRING "\(.*\)"/\1/p' $(srcdir)/gcc/p/version.h || true)
+DEB_GPC_VERSION := $(shell echo $(DEB_VERSION) \
+			   | sed 's/.*:\(.*\)-\(.*\)/2:\1.$(GPC_DATE)-\2/')
+endif
+
+ifeq ($(with_pascal),yes)
+  DEB_GPC_VERSION := $(GPC_BASE_VERSION)-$(DEB_VERSION)
+endif
+
+ifeq ($(with_d),yes)
+  DEB_GDC_VERSION := $(GDC_BASE_VERSION)-$(DEB_VERSION)
+endif
+
+# semiautomatic ...
+DEB_SOVERSION		:= $(DEB_VERSION)
+DEB_SOVERSION		:= 4.2.1
+DEB_SOEVERSION		:= $(EPOCH):4.2.1
+DEB_STDCXX_SOVERSION	:= 4.2.1
+DEB_GCJ_SOVERSION	:= 4.2.1
+DEB_GOMP_SOVERSION	:= $(DEB_SOVERSION)
+DEB_GCCMATH_SOVERSION	:= $(DEB_SOVERSION)
+
+DEB_GCC_VERSION := $(DEB_VERSION)
+DEB_GCJ_VERSION := $(DEB_VERSION)
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    DEB_GCC_VERSION := $(DEB_GCC_SOFT_VERSION)
+  endif
+endif
+
+DEB_GNAT_VERSION := $(DEB_VERSION)
+ifeq ($(with_separate_gnat),yes)
+  ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+    DEB_GCC_VERSION := $(DEB_GCC_SOFT_VERSION)
+  endif
+endif
+
+# manual ...
+ifeq ($(DEB_TARGET_GNU_CPU), $(findstring $(DEB_TARGET_GNU_CPU),hppa m68k))
+  ifeq ($(DEB_TARGET_ARCH),m68k)
+    GCC_SONAME := 2
+  endif
+  ifeq ($(DEB_TARGET_ARCH),hppa)
+    GCC_SONAME := 4
+  endif
+  DEB_LIBGCC_SOVERSION := $(DEB_SOVERSION)
+  DEB_LIBGCC_VERSION := $(DEB_VERSION)
+else
+  GCC_SONAME := 1
+  DEB_LIBGCC_SOVERSION := $(DEB_SOEVERSION)
+  DEB_LIBGCC_VERSION := $(DEB_EVERSION)
+endif
+
+LIBGCC_DEP := libgcc$(GCC_SONAME)$(LS) (>= $(DEB_LIBGCC_VERSION))
+LIBGCC_BIARCH_DEP := 
+ifeq ($(biarch),yes)
+  LIBGCC_BIARCH_DEP := lib64gcc$(GCC_SONAME)$(LS) (>= $(DEB_LIBGCC_VERSION))
+endif
+ifeq ($(biarch32),yes)
+  LIBGCC_BIARCH_DEP := lib32gcc$(GCC_SONAME)$(LS) (>= $(DEB_LIBGCC_VERSION))
+endif
+
+ifeq (,$(wildcard debian/soname-cache))
+  SONAME_VARS := $(shell \
+	cache=debian/soname-cache; \
+	rm -f $$cache; \
+	v=`awk -F= '/^libtool_VERSION/ {split($$2,v,":"); print v[1]}' \
+		$(srcdir)/libstdc++-v3/configure.ac`; \
+	echo CXX_SONAME=$$v >> $$cache; \
+	v=`awk -F= '/^VERSION/ {split($$2,v,":"); print v[1]}' \
+		$(srcdir)/libobjc/configure.ac`; \
+	echo OBJC_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libgfortran/libtool-version | cut -d: -f1`; \
+	echo FORTRAN_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libmudflap/libtool-version | cut -d: -f1`; \
+	echo MUDFLAP_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libssp/libtool-version | cut -d: -f1`; \
+	echo SSP_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libjava/libtool-version | cut -d: -f1`; \
+	echo GCJ_SONAME=$$v >> $$cache; \
+	if [ "$$v" -ge 70 ]; then \
+	  echo GCJ_SONAME1=`echo $$v | sed 's/.$$//'` >> $$cache; \
+	  echo GCJ_SONAME2=`echo $$v | sed 's/.*\(.\)$$/\1/'` >> $$cache; \
+	else \
+	  echo GCJ_SONAME1=$$v >> $$cache; \
+	  echo GCJ_SONAME2= >> $$cache; \
+	fi; \
+	v=`tail -1 $(srcdir)/libffi/libtool-version | cut -d: -f1`; \
+	echo FFI_SONAME=$$v >> $$cache; \
+	v=`awk -F= '/^libtool_VERSION/ {split($$2,v,":"); print v[1]}' \
+		$(srcdir)/libgomp/configure.ac`; \
+	echo GOMP_SONAME=$$v >> $$cache; \
+	v=`tail -1 $(srcdir)/libgcc-math/libtool-version | cut -d: -f1`; \
+	echo GCCMATH_SONAME=$$v >> $$cache; \
+	v=`grep '[^_]Library_Version.*:' $(srcdir)/gcc/ada/gnatvsn.ads \
+		| sed -e 's/.*"\([^"]*\)".*/\1/'`; \
+	echo GNAT_SONAME=$$v >> $$cache; \
+	cat $$cache)
+else
+  SONAME_VARS := $(shell cat debian/soname-cache)
+endif
+CXX_SONAME	= $(call vafilt,$(SONAME_VARS),CXX_SONAME)
+OBJC_SONAME	= $(call vafilt,$(SONAME_VARS),OBJC_SONAME)
+FORTRAN_SONAME	= $(call vafilt,$(SONAME_VARS),FORTRAN_SONAME)
+MUDFLAP_SONAME	= $(call vafilt,$(SONAME_VARS),MUDFLAP_SONAME)
+SSP_SONAME	= $(call vafilt,$(SONAME_VARS),SSP_SONAME)
+GCJ_SONAME	= $(call vafilt,$(SONAME_VARS),GCJ_SONAME)
+GCJ_SONAME1	= $(call vafilt,$(SONAME_VARS),GCJ_SONAME1)
+GCJ_SONAME2	= $(call vafilt,$(SONAME_VARS),GCJ_SONAME2)
+FFI_SONAME	= $(call vafilt,$(SONAME_VARS),FFI_SONAME)
+GOMP_SONAME	= $(call vafilt,$(SONAME_VARS),GOMP_SONAME)
+GCCMATH_SONAME	= $(call vafilt,$(SONAME_VARS),GCCMATH_SONAME)
+GNAT_SONAME	= $(call vafilt,$(SONAME_VARS),GNAT_SONAME)
+
+GNAT_VERSION := $(BASE_VERSION)
+
+LIBGNAT_DEP :=
+ifeq ($(with_libgnat),yes)
+  LIBGNAT_DEP := libgnat-$(GNAT_VERSION) (= $(DEB_VERSION))
+endif
+
+pkg_ver := -$(BASE_VERSION)
+
+PKG_GCJ_EXT = $(GCJ_SONAME1)
+PKG_LIBGCJ_EXT = $(GCJ_SONAME1)$(if $(GCJ_SONAME2),-$(GCJ_SONAME2))
+
+ctrl_flags = \
+	-DBINUTILSV=$(BINUTILSV) \
+	-DSRCNAME=$(PKGSOURCE) \
+	-D__$(DEB_TARGET_GNU_CPU)__ \
+	-DARCH=$(DEB_TARGET_ARCH) \
+	-DDIST=$(distribution)
+
+ctrl_flags += \
+	-DLIBC_DEV_DEP="$(LIBC_DEV_DEP)" \
+	-DLIBC_BIARCH_BUILD_DEP="$(LIBC_BIARCH_BUILD_DEP)" \
+	-DFORTRAN_BUILD_DEP="$(FORTRAN_BUILD_DEP)" \
+	-DGNAT_BUILD_DEP="$(GNAT_BUILD_DEP)" \
+	-DJAVA_BUILD_DEP="$(JAVA_BUILD_DEP)" \
+	-DJAVA_BUILD_INDEP="$(JAVA_BUILD_INDEP)" \
+	-DLIBSTDCXX_BUILD_INDEP="$(LIBSTDCXX_BUILD_INDEP)" \
+	-DPASCAL_BUILD_DEP="$(PASCAL_BUILD_DEP)" \
+	-DGDC_BUILD_DEP="$(GDC_BUILD_DEP)" \
+	-DBINUTILS_BUILD_DEP="$(BINUTILS_BUILD_DEP)" \
+	-DLIBC_BUILD_DEP="$(LIBC_BUILD_DEP)" \
+	-DCHECK_BUILD_DEP="$(CHECK_BUILD_DEP)" \
+	-DMULTILIB_ARCHS="$(multilib_archs)" \
+	-DTP=$(TP) \
+	-DTS=$(TS) \
+	-DLS=$(LS)
+
+ifdef DEB_CROSS
+  ctrl_flags += \
+	-DTARGET=$(DEB_TARGET_ARCH) \
+	-DLIBUNWIND_BUILD_DEP="$(LIBUNWIND_BUILD_DEP)" \
+	-DLIBATOMIC_OPS_BUILD_DEP="$(LIBATOMIC_OPS_BUILD_DEP)"
+else
+  # add '-DPRI=optional' to ctrl_flags if this is not the default compiler
+  # ctrl_flags += \
+  #     -DPRI=optional
+endif
+
+ifeq ($(with_base_only),yes)
+  ctrl_flags += \
+	-DBASE_ONLY=yes
+endif
+
+control: control-file parameters-file substvars-file versioned-files
+
+ifdef DEB_CROSS
+  languages = c c++ objc objpp
+  addons = libgcc lib64gcc libcxx lib32cxx lib64cxx cdev c++dev libobjc objcdev objppdev gccxbase
+  ifeq ($(with_d),yes)
+    ifeq ($(with_separate_gdc),yes)
+      languages = # disable others languages
+      addons = # disable others addons
+    endif
+    languages += d
+    ifeq ($(with_libphobos),yes)
+      addons += libphobos
+    endif
+  endif
+else
+  languages = ada c c++ fortran java objc objpp d # pascal
+  addons = gccbase cdev c++dev fdev libgcj libgcjdev gcjdoc libgnat libs \
+	   objcdev source objppdev multilib # libgmath libnof lib64gnat ssp
+  ifeq ($(with_libgcc),yes)
+    addons += libgcc lib4gcc lib32gcc lib64gcc
+  endif
+  ifeq ($(with_libcxx),yes)
+    addons += libcxx lib32cxx lib64cxx
+  endif
+  ifeq ($(with_mudflap),yes)
+    addons += mudflap
+    ifeq ($(with_libmudflap),yes)
+      addons += libmudf
+    endif
+  endif
+  ifeq ($(with_libffi),yes)
+    addons += libffi lib32ffi lib64ffi
+  endif
+  ifeq ($(with_libfortran),yes)
+    addons += libgfortran lib32gfortran lib64gfortran
+  endif
+  ifeq ($(with_libobjc),yes)
+    addons += libobjc lib32objc lib64objc
+  endif
+  ifeq ($(with_libgomp),yes)
+    addons += libgomp lib32gomp lib64gomp
+  endif
+  ifeq ($(with_proto),yes)
+    addons += proto
+  endif
+  ifeq ($(with_fixincl),yes)
+    addons += fixincl
+  endif
+  ifeq ($(with_libgcj_doc),yes)
+    addons += gcjdoc
+  endif
+#  ifneq (,$(findstring gtk, $(java_awt_peers)))
+#    addons += gtkpeer
+#  endif
+#  ifneq (,$(findstring qt, $(java_awt_peers)))
+#    addons += qtpeer
+#  endif
+  ifeq ($(with_separate_libgcj),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out java,$(languages))
+      addons := $(filter-out gcj libgcj libgcjdev gcjdoc gtkpeer qtpeer,$(addons))
+    endif
+    ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+      languages = java
+      addons = gcj libgcj libgcjdev
+    ifeq ($(with_libgcj_doc),yes)
+      addons += gcjdoc
+    endif
+#      ifneq (,$(findstring gtk, $(java_awt_peers)))
+#        addons += gtkpeer
+#      endif
+#      ifneq (,$(findstring qt, $(java_awt_peers)))
+#        addons += qtpeer
+#      endif
+      ifeq ($(with_standalone_gcj),yes)
+	addons += libgcc lib4gcc lib64gcc lib32gcc
+      endif
+    endif
+  endif
+  ifeq ($(with_standalone_gcj),yes)
+    ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+      ctrl_flags += -DSTANDALONEJAVA
+    endif
+  endif
+  ifeq ($(with_separate_gnat),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out ada,$(languages))
+      addons := $(filter-out libgnat,$(addons))
+    endif
+    ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+      languages = ada
+      addons = libgnat
+    endif
+  endif
+  ifeq ($(with_separate_gpc),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out pascal,$(languages))
+    endif
+    ifeq ($(PKGSOURCE),gpc-$(BASE_VERSION))
+      languages = pascal
+      addons = 
+    endif
+  endif
+  ifeq ($(with_separate_gdc),yes)
+    ifeq ($(PKGSOURCE),gcc-$(BASE_VERSION))
+      languages := $(filter-out d,$(languages))
+    endif
+    ifeq ($(PKGSOURCE),gdc-$(BASE_VERSION))
+      languages = d
+      addons = 
+      ifeq ($(with_libphobos),yes)
+        addons += libphobos
+      endif
+    endif
+  endif
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    addons += gfdldoc
+  endif
+endif
+
+ifeq ($(distribution),DebianXXX)
+# use type-handling
+ada_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(ada_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(ada_no_systems) | tr ' ' ,`))
+java_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(java_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(java_no_systems) | tr ' ' ,`))
+pascal_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(pascal_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(pascal_no_systems) | tr ' ' ,`))
+fortran_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(fortran_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(fortran_no_systems) | tr ' ' ,`))
+libphobos_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(libphobos_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(libphobos_no_systems) | tr ' ' ,`))
+libgc_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(libgc_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(libgc_no_systems) | tr ' ' ,`))
+check_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(check_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(check_no_systems) | tr ' ' ,`) \
+	!hurd-i386)
+locale_no_archs := $(strip \
+	$(shell type-handling -n -r `echo $(locale_no_cpus) | tr ' ' ,` any) \
+	$(shell type-handling -n -r any `echo $(locale_no_systems) | tr ' ' ,`))
+
+linux_gnu_archs := $(shell type-handling -r any linux-gnu)
+else
+# avoid it ...
+ada_no_archs    := $(strip $(foreach cpu,$(ada_no_cpus),!$(cpu)) \
+			!kfreebsd-amd64 !kfreebsd-i386 !hurd-i386)
+java_no_archs   := $(strip $(foreach cpu,$(java_no_cpus),!$(cpu)) \
+			)
+java_plugin_no_archs := $(strip $(foreach cpu,$(java_plugin_no_cpus),!$(cpu)) \
+			!hurd-i386)
+pascal_no_archs := $(strip $(foreach cpu,$(pascal_no_cpus),!$(cpu)) \
+			)
+fortran_no_archs:= $(strip $(foreach cpu,$(fortran_no_cpus),!$(cpu)) \
+			!avr)
+libphobos_no_archs    := $(strip $(foreach cpu,$(libphobos_no_cpus),!$(cpu)) \
+			!hurd-i386)
+libgc_no_archs  := $(strip $(foreach cpu,$(libgc_no_cpus),!$(cpu)) \
+			)
+check_no_archs  := $(strip $(foreach cpu,$(check_no_cpus),!$(cpu)) \
+			!hurd-i386)
+locale_no_archs := $(strip $(foreach cpu,$(locale_no_cpus),!$(cpu)) \
+			!hurd-i386)
+
+linux_gnu_archs := !hurd-i386
+endif
+
+locale_no_archs += !m68k
+
+
+control-file:
+	echo "addons: $(addons)"; \
+	m4 $(ctrl_flags) \
+	  -DPV=$(pkg_ver) \
+	  -DCXX_SO=$(CXX_SONAME) \
+	  -DGCC_SO=$(GCC_SONAME) \
+	  -DOBJC_SO=$(OBJC_SONAME) \
+	  -DFORTRAN_SO=$(FORTRAN_SONAME) \
+	  -DGCJ_SO=$(PKG_GCJ_EXT) \
+	  -DLIBGCJ_EXT=$(PKG_LIBGCJ_EXT) \
+	  -DGNAT_SO=$(GNAT_SONAME) \
+	  -DGNAT_V=$(GNAT_VERSION) \
+	  -DPHOBOS_V=$(libphobos_version) \
+	  -DGOMP_SO=$(GOMP_SONAME) \
+	  -DGCCMATH_SO=$(GCCMATH_SONAME) \
+	  -DMF_SO=$(MUDFLAP_SONAME) \
+	  -DSSP_SO=$(SSP_SONAME) \
+	  -Denabled_languages="$(languages) $(addons)" \
+	  -Dada_no_archs="$(ada_no_archs)" \
+	  -Djava_no_archs="$(java_no_archs)" \
+	  -Djava_plugin_no_archs="$(java_plugin_no_archs)" \
+	  -Dpascal_no_archs="$(pascal_no_archs)" \
+	  -Dfortran_no_archs="$(fortran_no_archs)" \
+	  -Dlibgc_no_archs="$(libgc_no_archs)" \
+	  -Dcheck_no_archs="$(check_no_archs)" \
+	  -Dlocale_no_archs="$(locale_no_archs)" \
+	  -Dlinux_gnu_archs="$(linux_gnu_archs)" \
+	  -Dlibphobos_no_archs="$(libphobos_no_archs)" \
+	  -Dbiarch32_archs="$(strip $(subst /, ,$(biarch32_archs)))" \
+	  -Dbiarch64_archs="$(strip $(subst /, ,$(biarch_archs)))" \
+		debian/control.m4 > debian/control.tmp2
+	uniq debian/control.tmp2 | sed '/^Build/s/ *, */, /g' \
+		| sed -e 's/\[\]//g' | sed -e 's/\s*!none\s*//g' \
+		> debian/control.tmp
+	rm -f debian/control.tmp2
+	[ -e debian/control ] \
+	  && cmp -s debian/control debian/control.tmp \
+	  && rm -f debian/control.tmp && exit 0; \
+	  mv debian/control.tmp debian/control; touch $(control_stamp)
+
+substvars-file:
+	rm -f debian/substvars.local.tmp
+	( \
+		echo 'gcc:Version=$(DEB_GCC_VERSION)'; \
+		echo 'gcc:EpochVersion=$(DEB_EVERSION)'; \
+		echo 'gcc:SoftVersion=$(DEB_GCC_SOFT_VERSION)'; \
+		echo 'gpc:Version=$(DEB_GPC_VERSION)'; \
+		echo 'gdc:Version=$(DEB_GDC_VERSION)'; \
+		echo 'gcj:Version=$(DEB_GCJ_VERSION)'; \
+		echo 'gcj:SoftVersion=$(DEB_GCJ_SOFT_VERSION)'; \
+		echo 'gcj:BaseVersion=$(BASE_VERSION)'; \
+		echo 'gnat:Version=$(DEB_GNAT_VERSION)'; \
+		echo 'binutils:Version=$(BINUTILSV)'; \
+		echo 'dep:libgcc=$(LIBGCC_DEP)'; \
+		echo 'dep:libgccbiarch=$(LIBGCC_BIARCH_DEP)'; \
+		echo 'dep:libcdev=$(LIBC_DEV_DEP)'; \
+		echo 'dep:libcbiarch=$(LIBC_BIARCH_DEP)'; \
+		echo 'dep:libcbiarchdev=$(LIBC_BIARCH_DEV_DEP)'; \
+		echo 'dep:libunwinddev=$(LIBUNWIND_DEV_DEP)'; \
+		echo 'dep:libcxxbiarch=$(LIBCXX_BIARCH_DEP)'; \
+		echo 'dep:libcxxbiarchdbg=$(LIBCXX_BIARCH_DBG_DEP)'; \
+		echo 'dep:libgnat=$(LIBGNAT_DEP)'; \
+		echo 'dep:ecj=$(ECJ_DEP)'; \
+	) > debian/substvars.local.tmp
+ifneq (,$(filter $(DEB_TARGET_ARCH), $(multilib_archs)))
+	( \
+		echo 'gcc:multilib=gcc-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gxx:multilib=g++-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gobjc:multilib=gobjc-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gobjcxx:multilib=gobjc++-$(BASE_VERSION)-multilib$(TS)'; \
+		echo 'gfortran:multilib=gfortran-$(BASE_VERSION)-multilib$(TS)'; \
+	) >> debian/substvars.local.tmp
+endif
+ifeq ($(with_libssp),yes)
+	echo 'dep:libssp=libssp$(SSP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_libgomp),yes)
+	echo 'dep:libgomp=libgomp$(GOMP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32fortran),yes)
+	echo 'dep:libfortranbiarch=lib32gfortran$(FORTRAN_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32objc),yes)
+	echo 'dep:libobjcbiarch=lib32objc$(OBJC_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32ffi),yes)
+	echo 'sug:libffidev=lib32ffi$(FFI_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32mudflap),yes)
+	echo 'dep:libmudflapbiarch=lib32mudflap$(MUDFLAP_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32ssp),yes)
+	echo 'dep:libsspbiarch=lib32ssp$(SSP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib32gomp),yes)
+	echo 'dep:libgompbiarch=lib32gomp$(GOMP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64fortran),yes)
+	echo 'dep:libfortranbiarch=lib64gfortran$(FORTRAN_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64objc),yes)
+	echo 'dep:libobjcbiarch=lib64objc$(OBJC_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64ffi),yes)
+	echo 'dep:libffidev=lib64ffi$(FFI_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64mudflap),yes)
+	echo 'dep:libmudflapbiarch=lib64mudflap$(MUDFLAP_SONAME)' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64ssp),yes)
+	echo 'dep:libsspbiarch=lib64ssp$(SSP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifeq ($(with_lib64gomp),yes)
+	echo 'dep:libgompbiarch=lib64gomp$(GOMP_SONAME) (>= $${gcc:Version})' \
+		>> debian/substvars.local.tmp
+endif
+ifneq ($(with_standalone_gcj),yes)
+	echo 'dep:gcj=gcc$(pkg_ver) (>= $(DEB_GCC_SOFT_VERSION))' \
+		>> debian/substvars.local.tmp
+endif
+#ifneq (,$(findstring gtk, $(java_awt_peers)))
+#	echo 'pkg:gcjgtk=libgcj$(subst 0,,$(GCJ_SONAME))-awt-gtk (>= $(DEB_GCJ_VERSION))' \
+#		>> debian/substvars.local.tmp
+#endif
+#ifneq (,$(findstring qt, $(java_awt_peers)))
+#	echo 'pkg:gcjqt=libgcj$(subst 0,,$(GCJ_SONAME))-awt-qt (>= $(DEB_GCJ_VERSION))' \
+#		>> debian/substvars.local.tmp
+#endif
+ifeq ($(DEB_HOST_ARCH),hppa)
+	echo 'dep:prctl=prctl' >> debian/substvars.local.tmp
+endif
+	[ -e debian/substvars.local ] \
+	  && cmp -s debian/substvars.local debian/substvars.local.tmp \
+	  && rm -f debian/substvars.local.tmp && exit 0; \
+	  mv debian/substvars.local.tmp debian/substvars.local; \
+	  touch $(control_stamp)
+
+parameters-file:
+	rm -f debian/rules.parameters.tmp
+	( \
+		echo '# configuration parameters taken from upstream source files'; \
+		echo 'GCC_VERSION	:= $(GCC_VERSION)'; \
+		echo 'NEXT_GCC_VERSION	:= $(NEXT_GCC_VERSION)'; \
+		echo 'BASE_VERSION	:= $(BASE_VERSION)'; \
+		echo 'SOURCE_VERSION	:= $(SOURCE_VERSION)'; \
+		echo 'DEB_VERSION	:= $(DEB_VERSION)'; \
+		echo 'DEB_EVERSION	:= $(DEB_EVERSION)'; \
+		echo 'GPC_BASE_VERSION	:= $(GPC_BASE_VERSION)'; \
+		echo 'GDC_BASE_VERSION  := $(GDC_BASE_VERSION)'; \
+		echo 'DEB_GPC_VERSION	:= $(DEB_GPC_VERSION)'; \
+		echo 'DEB_GDC_VERSION	:= $(DEB_GDC_VERSION)'; \
+		echo 'DEB_SOVERSION	:= $(DEB_SOVERSION)'; \
+		echo 'DEB_SOEVERSION	:= $(DEB_SOEVERSION)'; \
+		echo 'DEB_LIBGCC_SOVERSION	:= $(DEB_LIBGCC_SOVERSION)'; \
+		echo 'DEB_LIBGCC_VERSION	:= $(DEB_LIBGCC_VERSION)'; \
+		echo 'DEB_STDCXX_SOVERSION	:= $(DEB_STDCXX_SOVERSION)'; \
+		echo 'DEB_GCJ_SOVERSION	:= $(DEB_GCJ_SOVERSION)'; \
+		echo 'PKG_GCJ_EXT	:= $(PKG_GCJ_EXT)'; \
+		echo 'PKG_LIBGCJ_EXT	:= $(PKG_LIBGCJ_EXT)'; \
+		echo 'DEB_GOMP_SOVERSION	:= $(DEB_GOMP_SOVERSION)'; \
+		echo 'DEB_GCCMATH_SOVERSION	:= $(DEB_GCCMATH_SOVERSION)'; \
+		echo 'GCC_SONAME	:= $(GCC_SONAME)'; \
+		echo 'CXX_SONAME	:= $(CXX_SONAME)'; \
+		echo 'FORTRAN_SONAME	:= $(FORTRAN_SONAME)'; \
+		echo 'OBJC_SONAME	:= $(OBJC_SONAME)'; \
+		echo 'GCJ_SONAME	:= $(GCJ_SONAME)'; \
+		echo 'GNAT_VERSION	:= $(GNAT_VERSION)'; \
+		echo 'GNAT_SONAME	:= $(GNAT_SONAME)'; \
+		echo 'FFI_SONAME	:= $(FFI_SONAME)'; \
+		echo 'MUDFLAP_SONAME	:= $(MUDFLAP_SONAME)'; \
+		echo 'SSP_SONAME	:= $(SSP_SONAME)'; \
+		echo 'GOMP_SONAME	:= $(GOMP_SONAME)'; \
+		echo 'GCCMATH_SONAME	:= $(GCCMATH_SONAME)'; \
+		echo 'LIBC_DEP		:= $(LIBC_DEP)'; \
+	) > debian/rules.parameters.tmp
+	[ -e debian/rules.parameters ] \
+	  && cmp -s debian/rules.parameters debian/rules.parameters.tmp \
+	  && rm -f debian/rules.parameters.tmp && exit 0; \
+	  mv debian/rules.parameters.tmp debian/rules.parameters; \
+	  touch $(control_stamp)
+
+versioned-files:
+	fs=`echo debian/*-BV* debian/*GCJ* debian/*CXX* debian/*LC* debian/*MF* | sort -u`; \
+	for f in $$fs; do \
+	  [ -f $$f ] || echo "CANNOT FIND $$f"; \
+	  [ -f $$f ] || continue; \
+	  f2=$$(echo $$f \
+		| sed 's/BV/$(BASE_VERSION)/;s/PV/$(GPC_BASE_VERSION)/;s/CXX/$(CXX_SONAME)/;s/LGCJ/$(PKG_LIBGCJ_EXT)/;s/GCJ/$(PKG_GCJ_EXT)/;s/LC/$(GCC_SONAME)/;s/MF/$(MUDFLAP_SONAME)/'); \
+	  sed -e 's/@BV@/$(BASE_VERSION)/g' \
+	      -e 's/@PV@/$(GPC_BASE_VERSION)/g' \
+	      -e 's/@CXX@/$(CXX_SONAME)/g' \
+	      -e 's/@LGCJ@/$(PKG_LIBGCJ_EXT)/g' \
+	      -e 's/@GCJ@/$(PKG_GCJ_EXT)/g' \
+	      -e 's/@GCJSO@/$(GCJ_SONAME)/g' \
+	      -e 's/@LC@/$(GCC_SONAME)/g' \
+	      -e 's/@MF@/$(MUDFLAP_SONAME)/g' \
+	      -e 's/@browser_dirs@/$(browser_plugin_dirs)/g' \
+	      -e 's/@GFDL@/$(if $(filter yes,$(GFDL_INVARIANT_FREE)),#)/g' \
+	    $$f > $$f2; \
+	  touch -r $$f $$f2; \
+	done
--- gcj-4.2-4.2.4.orig/debian/dh_rmemptydirs
+++ gcj-4.2-4.2.4/debian/dh_rmemptydirs
@@ -0,0 +1,10 @@
+#! /bin/sh -e
+
+pkg=`echo $1 | sed 's/^-p//'`
+
+: # remove empty directories, when all components are in place
+for d in `find debian/$pkg -depth -type d -empty 2> /dev/null`; do \
+    while rmdir $d 2> /dev/null; do d=`dirname $d`; done; \
+done
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/gnat-BV-doc.doc-base.rm
+++ gcj-4.2-4.2.4/debian/gnat-BV-doc.doc-base.rm
@@ -0,0 +1,16 @@
+Document: gnat_rm-@BV@
+Title: GNAT (GNU Ada) Reference Manual
+Author: Various
+Abstract: This manual contains useful information in writing programs
+ using the GNAT compiler.  It includes information on implementation
+ dependent characteristics of GNAT, including all the information
+ required by Annex M of the standard.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gnat-@BV@-doc/gnat_rm.html
+Files: /usr/share/doc/gnat-@BV@-doc/gnat_rm.html
+
+Format: info
+Index: /usr/share/info/gnat_rm-@BV@.info.gz
+Files: /usr/share/info/gnat_rm-@BV@*
--- gcj-4.2-4.2.4.orig/debian/gcc-BV-doc.doc-base.gcc
+++ gcj-4.2-4.2.4/debian/gcc-BV-doc.doc-base.gcc
@@ -0,0 +1,14 @@
+Document: gcc-@BV@
+Title: The GNU C and C++ compiler
+Author: Various
+Abstract: This manual documents how to run, install and port the GNU compiler,
+ as well as its new features and incompatibilities, and how to report bugs.
+Section: Apps/Programming
+
+Format: html
+Index: /usr/share/doc/gcc-@BV@-base/gcc.html
+Files: /usr/share/doc/gcc-@BV@-base/gcc.html
+
+Format: info
+Index: /usr/share/info/gcc-@BV@.info.gz
+Files: /usr/share/info/gcc-@BV@*
--- gcj-4.2-4.2.4.orig/debian/gcj-BV.postinst
+++ gcj-4.2-4.2.4/debian/gcj-BV.postinst
@@ -0,0 +1,45 @@
+#! /bin/sh -e
+
+if [ -d /usr/share/doc/gcc-@BV@-base/java ] && [ ! -h /usr/share/doc/gcc-@BV@-base/java ]; then
+    rm -rf /usr/share/doc/gcc-@BV@-base/java
+    ln -s ../gcj-@BV@-base /usr/share/doc/gcc-@BV@-base/java
+fi
+
+prio=$(echo @BV@ | sed 's/\.//g')
+update-alternatives --quiet \
+    --install /usr/bin/javac javac /usr/bin/gcj-wrapper-@BV@ $prio \
+    @GFDL@--slave /usr/share/man/man1/javac.1.gz javac.1.gz /usr/share/man/man1/gcj-wrapper-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/jar jar /usr/bin/gjar-@BV@ $prio \
+    --slave /usr/share/man/man1/jar.1.gz jar.1.gz /usr/share/man/man1/gjar-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/jarsigner jarsigner /usr/bin/gjarsigner-@BV@ $prio \
+    --slave /usr/share/man/man1/jarsigner.1.gz jarsigner.1.gz /usr/share/man/man1/gjarsigner-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/javah javah /usr/bin/gjavah-@BV@ $prio \
+    --slave /usr/share/man/man1/javah.1.gz javah.1.gz /usr/share/man/man1/gjavah-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/native2ascii native2ascii /usr/bin/gnative2ascii-@BV@ $prio \
+    --slave /usr/share/man/man1/native2ascii.1.gz native2ascii.1.gz /usr/share/man/man1/gnative2ascii-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/rmic rmic /usr/bin/grmic-@BV@ $prio \
+    @GFDL@--slave /usr/share/man/man1/rmic.1.gz rmic.1.gz /usr/share/man/man1/grmic-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/tnameserv tnameserv /usr/bin/gtnameserv-@BV@ $prio \
+    --slave /usr/share/man/man1/tnameserv.1.gz tnameserv.1.gz /usr/share/man/man1/gtnameserv-@BV@.1.gz
+
+if [ -f /usr/share/info/gcj-@BV@.info.gz ]; then
+  install-info --quiet --section "Development" "Development" \
+	/usr/share/info/gcj-@BV@.info.gz
+else
+  # GFDL invariant free
+  :
+fi
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/lib64stdc++6.symbols.powerpc
+++ gcj-4.2-4.2.4/debian/lib64stdc++6.symbols.powerpc
@@ -0,0 +1,6 @@
+libstdc++.so.6 lib64stdc++6 #MINVER#
+#include "libstdc++6.symbols.64bit"
+ _ZN9__gnu_cxx12__atomic_addEPVii@GLIBCXX_3.4 4.1.1
+ _ZN9__gnu_cxx18__exchange_and_addEPVii@GLIBCXX_3.4 4.1.1
+#include "libstdc++6.symbols.glibcxxmath"
+#include "libstdc++6.symbols.ldbl.64bit"
--- gcj-4.2-4.2.4.orig/debian/README.maintainers
+++ gcj-4.2-4.2.4/debian/README.maintainers
@@ -0,0 +1,222 @@
+-*- Outline -*-
+
+Read this file if you are a Debian Developer or would like to become
+one, or if you would like to create your own binary packages of GCC.
+
+* Overview
+
+From the GCC sources, Debian currently builds 4 source packages and
+almost 100 binary packages, using a single set of build scripts.  The
+4 source packages are:
+
+gcc-4.2: C, C++, Fortran, Objective-C and Objective-C++, plus many
+         common libraries like libssp, libmudflap and libgcc.
+gcj-4.2: Java.
+gnat-4.2: Ada.
+gdc-4.2: D.
+
+The way we do this is quite peculiar, so listen up :)
+
+When we build from the gcc-4.2 source package, we produce, among many
+others, a gcc-4.2-source binary package that contains the pristine
+upstream tarball and some Debian-specific patches.  Any user can then
+install this package on their Debian system, and will have the full
+sources in /usr/src/gcc-4.2/gcc-<version>.tar.bz2, along with the
+Makefile snippets that unpack and patch them.
+
+The intended use for this package is twofold: (a) allow users to build
+their own cross-compilers, and (b) build the other packages: gcj-4.2,
+gnat-4.2 and gdc-4.2, which build-depend on gcc-4.2-source.
+
+For these other packages, the "source tarball" just contains an empty
+directory; e.g.:
+
+$ tar tzf gnat-4.2_4.2-20070609.orig.tar.gz
+gnat-4.2-4.2-20070609.orig/
+
+The build scripts for all source packages are the same, and they are
+included, as usual, in the .diff.gz file.
+
+* The build sequence
+
+As for all other Debian packages, you build GCC by calling
+debian/rules.
+
+The first thing debian/rules does it to look at the top-most entry in
+debian/changelog: this tells it which source package it is building.
+For example, if the first entry in debian/changelog reads:
+
+gcj-4.2 (4.2-20070609-1) unstable; urgency=low
+
+  * Upload as gcj-4.2.
+
+ -- Ludovic Brenta <lbrenta@debian.org>  Tue, 26 Jun 2007 00:26:42 +0200
+
+then, debian/rules will build only the Java binary packages.
+
+The second step is to unpack the GCC source tarball.  This tarball is
+either in the build directory (when building gcc-4.2), or in
+/usr/src/gcc-4.2/gcc-<timestamp>.tar.bz2 (when building the other
+source packages).
+
+The third step is to build debian/control from debian/control.m4 and a
+complex set of rules specified in debian/rules.conf.  The resulting
+control file contains only the binary packages to be built.
+
+The fourth step is to select which patches to apply (this is done in
+debian/rules.defs), and then to apply the selected patches (see
+debian/rules.patch).
+
+The fifth step is to create a "build" directory, cd into it, call
+../src/configure, and bootstrap the compiler and libraries selected.
+This is in debian/rules2.
+
+The sixth step is to call "make install" in the build directory: this
+installs the compiler and libraries into debian/tmp
+(i.e. debian/tmp/usr/bin/gcc, etc.)
+
+The seventh step is to run the GCC test suite (this actually takes at
+least as much time as bootstrapping, and you can disable it by setting
+WITHOUT_CHECK to "yes" in the environment).
+
+The eighth step is to build the binary packages, i.e. the .debs.  This
+is done by a set of language- and architecture-dependent Makefile
+snippets in the debian/rules.d/ directory, which move files from the
+debian/tmp tree to the debian/<package> trees.
+
+* Making your own packages
+
+In this example, we will build our own gnat-4.2 package.
+
+1) Create a .orig.tar.gz tarball containing a single, empty directory.
+
+$ mkdir gnat-4.2-4.2-20070609.orig
+$ tar czf gnat-4.2_4.2-20070609.orig.tar.gz gnat-4.2-4.2-20070609.orig
+
+2) Install gcc-4.2-source, which contains the real sources:
+
+# apt-get install gcc-4.2-source
+
+3) Create a build directory:
+
+$ mkdir gnat-4.2-4.2-20070609; cd gnat-4.2-4.2-20070609
+
+4) Checkout from Subversion:
+
+$ svn checkout svn://svn.debian.org/gcccvs/branches/sid/gcc-4.2/debian
+
+5) Edit the debian/changelog file, adding a new entry at the top that
+   starts with "gnat-4.2" instead of "gcc-4.2".
+
+6) Generate the debian/control file, adjusted for gnat:
+
+$ debian/rules control
+
+7) Build:
+
+$ dpkg-buildpackage -rfakeroot
+
+* Hints
+
+You need a powerful machine to build GCC.  The larger, the better.
+The build scripts take advantage of as many CPU cores as are available
+in your box.  If you have 2 GB or more of physical RAM, you can
+achieve maximum performance by building in a tmpfs, like this:
+
+1) as root, create the new tmpfs:
+
+# mount -t tmpfs -o size=1280m none /home/lbrenta/src/debian/ram
+
+By default, the tmpfs will be limited to half your physical RAM.  The
+beauty of it is that it only consumes as much physical RAM as
+necessary to hold the files in it; deleting files frees up RAM.
+
+2) As your regular user, create the working directory in the tmpfs
+
+$ cp --archive ~/src/debian/gcc-4.2-4.2-20070609 ~/src/debian/ram
+
+3) Build in there.  On my dual-core, 2 GHz amd64, it takes 34 minutes
+   to build gnat, and the tmpfs takes 992 MB of physical RAM but
+   exceeds 1 Gb during the build.
+
+Note that the build process uses a lot of temporary files.  Your $TEMP
+directory should therefore also be in a ram disk.  You can achieve
+that either by mounting it as tmpfs, or by setting TEMP to point to
+~/src/debian/ram.
+
+* Patching GCC
+
+Debian applies a large number of patches to GCC as part of the build
+process.  The patches are shell scripts located in debian/patches.
+The file debian/rules.defs selects which patches to apply, and in
+which order.  Then, debian/rules.patch applies them in order and
+produces a file listing the applied patches in order in
+stamps/02-patch-stamp.
+
+There is currently no tool to help modify patches; you have to do it
+by hand.  Here is one possible way to do it:
+
+1) Apply all patches up to and EXCLUDING the patch you intend to
+   modify, in order.
+
+2) Make a deep copy of the src directory, e.g.
+   $ cp --archive src src.bak
+
+3) Apply the patch you intend to modify.
+
+4) Open the .dpatch file in your editor and remove the entire patch
+   section; leave alone the shell script part at the top.
+
+5) Change the files you want in the src directory.  After making
+   changes, you can experiment with
+   $ make -C build -jK
+   (where K is the number of processor threads you have)
+
+6) $ diff -rNu src.bak src >> debian/patches/<file>.dpatch
+
+7) Apply all remaining patches, to see if your change broke any of
+   them.
+
+8) $ svn commit debian/patches/<file>.dpatch
+
+If you want to add a new patch, the procedure is similar.  You must
+first choose where in the list of patches you want to insert your new
+patch.  Then, apply all patches up to that point and start editing.
+
+** Patching GCC with Quilt
+
+The above method uses an entire copy of the source tree, which is
+currently 421 megabytes in size.  If you are in a one-gigabyte ram
+disk (see Hints above), this may be a problem.  One solution to this
+problem is to use quilt, which will only keep copies of the files
+touched by patches, not all files.  It also automates the updating of
+a patch after you change the sources.
+
+Quilt however does not take into account the selection of patches made
+in debian/rules.defs; instead it has a static list of patches.  After
+calling "debian/rules patch", you can generate such a list like this:
+
+$ egrep '^[^ ]+:' stamps/02-patch-stamp | \
+  sed 's!:!.dpatch -p0!' > debian/patches/series
+
+Unfortunately, not all patches are applied with -p0; you must then
+edit debian/patches/series by hand to replace -p0 with -p1 for a few
+patches.
+
+Once you have your debian/patches/series:
+
+$ debian/rules unpatch
+$ export QUILT_PATCHES=$PWD/debian/patches
+$ cd src
+$ quilt push -a (or quild push <patch_name>)
+edit files at will; quilt add <file_name> to add a new file to the patch
+$ make -C ../build
+$ quilt refresh
+$ quilt push -a # check that no patch is broken
+$ quilt pop -a
+$ cd ..
+$ debian/rules clean build
+$ svn commit
+
+-- 
+Ludovic Brenta, 2007-09-19.
--- gcj-4.2-4.2.4.orig/debian/README.Bugs
+++ gcj-4.2-4.2.4/debian/README.Bugs
@@ -0,0 +1,304 @@
+Reporting Bugs in the Debian/GNU GNU Compiler Setup
+===================================================
+
+Before reporting a bug, please
+------------------------------
+
+- Check that the behaviour really is a bug. Have a look into some
+  ANSI standards document.
+
+- Check the list of well known bugs: http://gcc.gnu.org/bugs.html#known
+
+- Try to reproduce the bug with a current GCC development snapshot. For
+  Debian GNU/Linux you can get a recent development snapshot from the
+  gcc-snapshot package in the unstable distribution.
+  See: http://packages.debian.org/gcc-snapshot
+
+- Try to find out if the bug is a regression (an older GCC version does
+  not show the bug).
+
+- Check if the bug is already reported in the bug tracking systems.
+
+    Debian:   http://bugs.debian.org/debian-gcc@lists.debian.org
+    Upstream: http://gcc.gnu.org/bugzilla/
+
+
+Where to report a bug
+---------------------
+
+Report bugs found in the packaging of GCC to the Debian bug tracking system.
+See http://www.debian.org/Bugs/ for instructions (or use the reportbug
+script).
+
+Debian's current policy is to closely follow the upstream development and
+only apply a minimal set of patches (which are summarized in the README.Debian
+document).
+
+If you think you have found an upstream bug, you did check the section
+above ("Before reporting a bug") and are able to provide a complete bug
+report (see below "How to report a bug"), then you may help the Debian
+GCC package maintainers, if you report the bug upstream and then submit
+a bug report to the Debian BTS and tell us the upstream report number.
+This way you are able to follow the upstream bug handling as well. If in
+doubt, report the bug to the Debian BTS (but read "How to report a bug"
+below.
+
+
+How to report a bug
+-------------------
+
+There are complete instructions in the gcc info manual (found in the
+gcc-doc package), section Bugs.
+
+The manual can be read using `M-x info' in Emacs, or if the GNU info
+program is installed on your system by `info --node "(gcc)Bugs"'. Or see
+the file BUGS included with the gcc source code.
+
+Online bug reporting instructions can be found at
+
+	http://gcc.gnu.org/bugs.html
+
+[Some paragraphs taken from the above URL]
+
+The main purpose of a bug report is to enable us to fix the bug. The
+most important prerequisite for this is that the report must be
+complete and self-contained, which we explain in detail below.
+
+Before you report a bug, please check the list of well-known bugs and,
+if possible in any way, try a current development snapshot.
+
+Summarized bug reporting instructions
+-------------------------------------
+
+What we need
+
+Please include in your bug report all of the following items, the
+first three of which can be obtained from the output of gcc -v:
+
+    * the exact version of GCC;
+    * the system type;
+    * the options given when GCC was configured/built;
+    * the complete command line that triggers the bug;
+    * the compiler output (error messages, warnings, etc.); and
+    * the preprocessed file (*.i*) that triggers the bug, generated by
+      adding -save-temps to the complete compilation command, or, in
+      the case of a bug report for the GNAT front end, a complete set
+      of source files (see below).
+
+What we do not want
+
+    * A source file that #includes header files that are left out
+      of the bug report (see above)
+    * That source file and a collection of header files.
+    * An attached archive (tar, zip, shar, whatever) containing all
+      (or some :-) of the above.
+    * A code snippet that won't cause the compiler to produce the
+      exact output mentioned in the bug report (e.g., a snippet with
+      just a few lines around the one that apparently triggers the
+      bug, with some pieces replaced with ellipses or comments for
+      extra obfuscation :-)
+    * The location (URL) of the package that failed to build (we won't
+      download it, anyway, since you've already given us what we need
+      to duplicate the bug, haven't you? :-)
+    * An error that occurs only some of the times a certain file is
+      compiled, such that retrying a sufficient number of times
+      results in a successful compilation; this is a symptom of a
+      hardware problem, not of a compiler bug (sorry)
+    * E-mail messages that complement previous, incomplete bug
+      reports. Post a new, self-contained, full bug report instead, if
+      possible as a follow-up to the original bug report
+    * Assembly files (*.s) produced by the compiler, or any binary files,
+      such as object files, executables, core files, or precompiled
+      header files
+    * Duplicate bug reports, or reports of bugs already fixed in the
+      development tree, especially those that have already been
+      reported as fixed last week :-)
+    * Bugs in the assembler, the linker or the C library. These are
+      separate projects, with separate mailing lists and different bug
+      reporting procedures
+    * Bugs in releases or snapshots of GCC not issued by the GNU
+      Project. Report them to whoever provided you with the release
+    * Questions about the correctness or the expected behavior of
+      certain constructs that are not GCC extensions. Ask them in
+      forums dedicated to the discussion of the programming language
+
+
+Known Bugs and Non-Bugs
+-----------------------
+
+[Please see /usr/share/doc/gcc/FAQ or http://gcc.gnu.org/faq.html first]
+
+
+C++ exceptions don't work with C libraries
+------------------------------------------
+
+[Taken from the closed bug report #22769] C++ exceptions don't work
+with C libraries, if the C code wasn't designed to be thrown through.
+A solution could be to translate all C libraries with -fexceptions.
+Mostly trying to throw an exception in a callback function (qsort,
+Tcl command callbacks, etc ...). Example:
+
+    #include <stdio.h>
+    #include <tcl.h>
+
+    class A {};
+
+    static
+    int SortCondition(void const*, void const*)
+    {
+        printf("throwing 'sortcondition' exception\n");
+        throw A();
+    }
+
+    int main(int argc, char *argv[])
+    {
+        int list[2];
+
+        try {
+            SortCondition(NULL,NULL);
+        } catch (A) {
+            printf("caught test-sortcondition exception\n");
+        }
+        try {
+            qsort(&list, sizeof(list)/sizeof(list[0]),sizeof(list[0]),
+                 &SortCondition);
+        } catch (A) {
+            printf("caught real-sortcondition exception\n");
+        }
+        return 0;
+}
+
+Andrew Macleod <amacleod@cygnus.com> responded:
+
+When compiled with the table driven exception handling, exception can only
+be thrown through functions which have been compiled with the table driven EH.
+If a function isn't compiled that way, then we do not have the frame
+unwinding information required to restore the registers when unwinding.
+
+I believe the setjmp/longjmp mechanism will throw through things like this, 
+but its produces much messier code.  (-fsjlj-exceptions)
+
+The C compiler does support exceptions, you just have to turn them on
+with -fexceptions.
+
+Your main options are to:
+  a) Don't use callbacks, or at least don't throw through them.
+  b) Get the source and compile the library with -fexceptions (You have to
+     explicitly turn on exceptions in the C compiler)
+  c) always use -fsjlj-exceptions (boo, bad choice :-)
+
+
+g++: "undefined reference" to static const array in class
+---------------------------------------------------------
+
+The following code compiles under GNU C++ 2.7.2 with correct results,
+but produces the same linker error with GNU C++ 2.95.2.
+Alexandre Oliva <oliva@lsd.ic.unicamp.br> responded:
+
+All of them are correct.  A static data member *must* be defined
+outside the class body even if it is initialized within the class
+body, but no diagnostic is required if the definition is missing.  It
+turns out that some releases do emit references to the missing symbol,
+while others optimize it away.
+
+#include <iostream>
+
+class Test
+{
+  public:
+    Test(const char *q);
+  protected:
+    static const unsigned char  Jam_signature[4]   = "JAM";
+};
+
+Test::Test(const char *q)
+{
+  if (memcmp(q, Jam_signature, sizeof(Jam_signature)) != 0)
+  cerr << "Hello world!\n";
+}
+
+int main(void)
+{
+  Test::Test("JAM");
+  return 0;
+}
+
+g++: g++ causes passing non const ptr to ptr to a func with const arg
+     to cause an error (not a bug)
+---------------------------------------------------------------------
+
+Example:
+
+#include <stdio.h>
+void test(const char **b){
+        printf ("%s\n",*b);
+}
+int main(void){
+        char *test1="aoeu";
+        test(&test1);
+}
+
+make const
+g++     const.cc   -o const
+const.cc: In function `int main()':
+const.cc:7: passing `char **' as argument 1 of `test(const char **)' adds cv-quals without intervening `const'
+make: *** [const] Error 1
+
+Answer from "Martin v. Loewis" <martin@loewis.home.cs.tu-berlin.de>:
+
+> ok... maybe I missed something.. I haven't really kept up with the latest in
+> C++ news.  But I've never heard anything even remotly close to passing a non
+> const var into a const arg being an error before.
+
+Thanks for your bug report. This is a not a bug in the compiler, but
+in your code. The standard, in 4.4/4, puts it that way
+
+# A conversion can add cv-qualifiers at levels other than the first in
+# multi-level pointers, subject to the following rules:
+# Two pointer types T1 and T2 are similar if there exists a type T and
+# integer n > 0 such that:
+#   T1 is cv(1,0) pointer to cv(1,1) pointer to ... cv(1,n-1)
+#   pointer to cv(1,n) T
+# and
+#   T2 is cv(2,0) pointer to cv(2,1) pointer to ... cv(2,n-1)
+#   pointer to cv(2,n) T
+# where each cv(i,j) is const, volatile, const volatile, or
+# nothing. The n-tuple of cv-qualifiers after the first in a pointer
+# type, e.g., cv(1,1) , cv(1,2) , ... , cv(1,n) in the pointer type
+# T1, is called the cv-qualification signature of the pointer type. An
+# expression of type T1 can be converted to type T2 if and only if the
+# following conditions are satisfied:
+#  - the pointer types are similar.
+#  - for every j > 0, if const is in cv(1,j) then const is in cv(2,j) ,
+#    and similarly for volatile.
+#  - if the cv(1,j) and cv(2,j) are different, then const is in every
+#    cv(2,k) for 0 < k < j.
+
+It is the last rule that your code violates. The standard gives then
+the following example as a rationale:
+
+# [Note: if a program could assign a pointer of type T** to a pointer
+# of type const T** (that is, if line //1 below was allowed), a
+# program could inadvertently modify a const object (as it is done on
+# line //2). For example,
+# int main() { 
+#   const char c = 'c'; 
+#   char* pc; 
+#   const char** pcc = &pc; //1: not allowed 
+#   *pcc = &c; 
+#   *pc = 'C'; //2: modifies a const object 
+# }
+# - end note]
+
+If you question this line of reasoning, please discuss it in one of
+the public C++ fora first, eg. comp.lang.c++.moderated, or
+comp.std.c++.
+
+
+cpp removes blank lines
+-----------------------
+
+With the new cpp, you need to add -traditional to the "cpp -P" args, else 
+blank lines get removed.
+
+[EDIT ME: scan Debian bug reports and write some nice summaries ...]
--- gcj-4.2-4.2.4.orig/debian/lib32stdc++6.symbols.amd64
+++ gcj-4.2-4.2.4/debian/lib32stdc++6.symbols.amd64
@@ -0,0 +1,3 @@
+libstdc++.so.6 lib32stdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
--- gcj-4.2-4.2.4.orig/debian/lib32gcc1.symbols.amd64
+++ gcj-4.2-4.2.4/debian/lib32gcc1.symbols.amd64
@@ -0,0 +1,95 @@
+libgcc_s.so.1 lib32gcc1 #MINVER#
+ GCC_3.0@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ GCC_3.3.1@GCC_3.3.1 1:4.1.1-21+ia32.libs.1.19
+ GCC_3.3@GCC_3.3 1:4.1.1-21+ia32.libs.1.19
+ GCC_3.4.2@GCC_3.4.2 1:4.1.1-21+ia32.libs.1.19
+ GCC_3.4@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ GCC_4.0.0@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ GCC_4.2.0@GCC_4.2.0 1:4.1.1-21+ia32.libs.1.19
+ GLIBC_2.0@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_Backtrace@GCC_3.3 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_DeleteException@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_FindEnclosingFunction@GCC_3.3 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_Find_FDE@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_ForcedUnwind@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetCFA@GCC_3.3 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetDataRelBase@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetGR@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetIP@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetIPInfo@GCC_4.2.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetLanguageSpecificData@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetRegionStart@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_GetTextRelBase@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_RaiseException@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_Resume@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_Resume_or_Rethrow@GCC_3.3 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_SetGR@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ _Unwind_SetIP@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __absvdi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __absvsi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __addvdi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __addvsi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __ashldi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __ashrdi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __clear_cache@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __clzdi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __clzsi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __cmpdi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __ctzdi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __ctzsi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __deregister_frame@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __deregister_frame_info@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __deregister_frame_info_bases@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __divdc3@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __divdi3@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __divsc3@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __divxc3@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __enable_execute_stack@GCC_3.4.2 1:4.1.1-21+ia32.libs.1.19
+ __ffsdi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixdfdi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixsfdi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixunsdfdi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixunsdfsi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixunssfdi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixunssfsi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixunsxfdi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixunsxfsi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __fixxfdi@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __floatdidf@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __floatdisf@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __floatdixf@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __floatundidf@GCC_4.2.0 1:4.2.1
+ __floatundisf@GCC_4.2.0 1:4.2.1
+ __floatundixf@GCC_4.2.0 1:4.2.1
+ __frame_state_for@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __gcc_personality_v0@GCC_3.3.1 1:4.1.1-21+ia32.libs.1.19
+ __lshrdi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __moddi3@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __muldc3@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __muldi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __mulsc3@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __mulvdi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __mulvsi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __mulxc3@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __negdi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __negvdi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __negvsi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __paritydi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __paritysi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __popcountdi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __popcountsi2@GCC_3.4 1:4.1.1-21+ia32.libs.1.19
+ __powidf2@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __powisf2@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __powixf2@GCC_4.0.0 1:4.1.1-21+ia32.libs.1.19
+ __register_frame@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __register_frame_info@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __register_frame_info_bases@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __register_frame_info_table@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __register_frame_info_table_bases@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __register_frame_table@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __subvdi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __subvsi3@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __ucmpdi2@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __udivdi3@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
+ __udivmoddi4@GCC_3.0 1:4.1.1-21+ia32.libs.1.19
+ __umoddi3@GLIBC_2.0 1:4.1.1-21+ia32.libs.1.19
--- gcj-4.2-4.2.4.orig/debian/gnatprj.gpr
+++ gcj-4.2-4.2.4/debian/gnatprj.gpr
@@ -0,0 +1,37 @@
+--  Project file for use with GNAT 3.15p
+--  Copyright (c) 2005 Ludovic Brenta <ludovic@ludovic-brenta.org>
+--
+--  This program is free software; you can redistribute it and/or modify
+--  it under the terms of the GNU General Public License as published by
+--  the Free Software Foundation; either version 2 of the License, or
+--  (at your option) any later version.
+--
+--  This program is distributed in the hope that it will be useful,
+--  but WITHOUT ANY WARRANTY; without even the implied warranty of
+--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+--  GNU General Public License for more details.
+--
+--  This project file is designed to help build applications that use
+--  GNAT project files.  Here is an example of how to use this project file:
+--
+--  with "/usr/share/ada/adainclude/gnatprj";
+--  project Example is
+--     for Object_Dir use "obj";
+--     for Exec_Dir use ".";
+--     for Main use ("example");
+--     package Linker renames Gnatprj.Linker;
+--     --  Alternatively, if you need additional switches:
+--     --  package Linker is
+--     --     for Default_Switches ("Ada") use (Gnatprj.Linker_Switches & ...)
+--     --  end Linker;
+--  end Example;
+
+with "gnatvsn.gpr";
+project Gnatprj is
+   for Source_Dirs use ("/usr/share/ada/adainclude/gnatprj");
+   for Object_Dir use "/usr/lib/ada/adalib/gnatprj";
+   Linker_Switches := "-lgnatprj";
+   package Linker is
+      for Default_Switches ("Ada") use (Linker_Switches);
+   end Linker;
+end Gnatprj;
--- gcj-4.2-4.2.4.orig/debian/gnat-BV-doc.postinst
+++ gcj-4.2-4.2.4/debian/gnat-BV-doc.postinst
@@ -0,0 +1,16 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	install-info --quiet --section "Development" "Development" \
+	    --description="GNAT (GNU Ada) User's Guide for Unix Platforms." \
+	    /usr/share/info/gnat_ugn_unw-@BV@.info
+	install-info --quiet --section "Development" "Development" \
+	    --description="GNAT (GNU Ada) Reference Manual." \
+	    /usr/share/info/gnat_rm-@BV@.info
+	install-info --quiet --section "Development" "Development" \
+	    --description="GNAT Coding Style." \
+	    /usr/share/info/gnat-style-@BV@.info
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/gij-BV.postinst
+++ gcj-4.2-4.2.4/debian/gij-BV.postinst
@@ -0,0 +1,52 @@
+#! /bin/sh -e
+
+prio=$(echo @BV@ | sed 's/\.//g')
+
+update-alternatives --quiet \
+    --install /usr/bin/java java /usr/bin/gij-@BV@ $prio \
+    @GFDL@--slave /usr/share/man/man1/java.1.gz java.1.gz /usr/share/man/man1/gij-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/rmiregistry rmiregistry /usr/bin/grmiregistry-@BV@ $prio \
+    --slave /usr/share/man/man1/rmiregistry.1.gz rmiregistry.1.gz /usr/share/man/man1/grmiregistry-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/keytool keytool /usr/bin/gkeytool-@BV@ $prio \
+    --slave /usr/share/man/man1/keytool.1.gz keytool.1.gz /usr/share/man/man1/gkeytool-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/orbd orbd /usr/bin/gorbd-@BV@ $prio \
+    --slave /usr/share/man/man1/orbd.1.gz orbd.1.gz /usr/share/man/man1/gorbd-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/rmid rmid /usr/bin/grmid-@BV@ $prio \
+    --slave /usr/share/man/man1/rmid.1.gz rmid.1.gz /usr/share/man/man1/grmid-@BV@.1.gz
+
+update-alternatives --quiet \
+    --install /usr/bin/serialver serialver /usr/bin/gserialver-@BV@ $prio \
+    --slave /usr/share/man/man1/serialver.1.gz serialver.1.gz /usr/share/man/man1/gserialver-@BV@.1.gz
+
+case "$1" in
+configure)
+    if [ ! -f /var/lib/gcj-@BV@/classmap.db ]; then
+	uname=$(uname -m)
+	mkdir -p /var/lib/gcj-@BV@
+	if gcj-dbtool-@BV@ -n /var/lib/gcj-@BV@/classmap.db; then
+	    case "$uname" in arm*|m68k|parisc*)
+	        echo >&2 "gcj-dbtool succeeded unexpectedly"
+	    esac
+	else
+	    case "$uname" in
+	    arm*|m68k|parisc*)
+	        echo >&2 "ERROR: gcj-dbtool did fail; known problem on $uname";;
+	    *)
+		exit 2
+	    esac
+	    touch /var/lib/gcj-@BV@/classmap.db
+	fi
+    fi
+esac
+
+#DEBHELPER#
+
+exit 0
--- gcj-4.2-4.2.4.orig/debian/README
+++ gcj-4.2-4.2.4/debian/README
@@ -0,0 +1,33 @@
+		The Debian GNU Compiler Collection setup
+		========================================
+
+Please see the README.Debian in /usr/share/doc/gcc, contained in the
+gcc package for a description of the setup of the different compiler
+versions.
+
+For general discussion about the Debian toolchain (GCC, glibc, binutils)
+please use the mailing list debian-toolchain@lists.debian.org; for GCC
+specific things, please use debian-gcc@lists.debian.org.  When in doubt
+use the debian-toolchain ML.
+
+
+Maintainers of these packages
+-----------------------------
+
+Matthias Klose <doko@debian.org>
+Ray Dassen <jdassen@debian.org>
+Jeff Bailey <jbailey@nisa.net>			(hurd-i386)
+Joel Baker <fenton@debian.org>			(netbsd-i386)
+Philip Blundell <pb@debian.org>			(arm-linux)
+Ben Collins <bcollins@debian.org>		(sparc-linux)
+Randolph Chung <tausq@debian.org>		(ia64-linux)
+Falk Hueffner <falk@debian.org>			(alpha-linux)
+Dan Jacobowitz <dan@debian.org>			(powerpc-linux)
+Thiemo Seufer <ths@networkno.de>		(mips*-linux)
+Matt Taggart <taggart@carmen.fc.hp.com>		(hppa-linux)
+Gerhard Tonn <GerhardTonn@swol.de>		(s390-linux)
+Roman Zippel <zippel@linux-m68k.org>		(m68k-linux)
+Ludovic Brenta <ludovic@ludovic-brenta.org>	(gnat)
+Arthur Loiret <arthur.loiret@gmail.com>		(gdc)
+
+===============================================================================
--- gcj-4.2-4.2.4.orig/debian/control
+++ gcj-4.2-4.2.4/debian/control
@@ -0,0 +1,124 @@
+Source: gcj-4.2
+Section: devel
+Priority: optional
+Maintainer: Debian GCC Maintainers <debian-gcc@lists.debian.org>
+Uploaders: Matthias Klose <doko@debian.org>
+Standards-Version: 3.7.3
+Build-Depends: dpkg-dev (>= 1.14.15), debhelper (>= 5.0.62), gcc-multilib [amd64 i386 powerpc ppc64 s390 sparc kfreebsd-amd64], libc6.1-dev (>= 2.5) [alpha ia64] | libc0.3-dev (>= 2.5) [hurd-i386] | libc0.1-dev (>= 2.5) [kfreebsd-i386 kfreebsd-amd64] | libc6-dev (>= 2.5), libc6-dev-amd64 [i386], libc6-dev-sparc64 [sparc], libc6-dev-s390x [s390], libc6-dev-i386 [amd64], libc6-dev-powerpc [ppc64], libc6-dev-ppc64 [powerpc], libc0.1-dev-i386 [kfreebsd-amd64], lib32gcc1 [amd64 ppc64 kfreebsd-amd64], lib64gcc1 [i386 powerpc sparc s390], libunwind7-dev (>= 0.98.5-6) [ia64], libatomic-ops-dev [ia64], m4, autoconf, autoconf2.13, automake1.9, libtool, autogen, gawk, expect-tcl8.3 [hppa], dejagnu [!hurd-i386], lzma, binutils (>= 2.17cvs20070426) | binutils-multiarch (>= 2.17cvs20070426), binutils-hppa64 (>= 2.17cvs20070426) [hppa], gperf (>= 3.0.1), bison (>= 1:2.3), flex, gettext, texinfo (>= 4.3), locales [!hurd-i386 !m68k], procps [!hurd-i386], sharutils, libz-dev, fastjar , libmagic-dev , libecj-java (>= 3.3.0-2) , zip , libasound2-dev [ !hurd-i386 !kfreebsd-i386 !kfreebsd-amd64], libxtst-dev , libxt-dev , libgtk2.0-dev (>= 2.4.4-2) , libart-2.0-dev , libcairo2-dev , libgconf2-dev , iceape-dev [!hurd-i386], g++-4.2 [armel], gcc-4.2-source (>= 4.2.4), gcc-4.2-source (<< 4.2.5), realpath (>= 1.9.12), chrpath, lsb-release, make (>= 3.81)
+Build-Depends-Indep:  gjdoc
+
+Package: gcj-4.2-base
+Architecture: any
+Section: libs
+Priority: optional
+Description: The GNU Compiler Collection (gcj base package)
+ This package contains files common to all java related packages
+ built from the GNU Compiler Collection (GCC).
+
+Package: gcj-4.2
+Architecture: any
+Priority: optional
+Depends: gcj-4.2-base (= ${gcj:Version}), ${dep:gcj}, ${dep:libcdev}, gij-4.2 (= ${gcj:Version}), libgcj8-dev (= ${gcj:Version}), libgcj8-jar (>= ${gcj:SoftVersion}), ${dep:ecj}, libgcj-bc, java-common, ${shlibs:Depends}
+Recommends: fastjar, libecj-java-gcj
+Suggests: java-gcj-compat-dev, libgcj8-dbg
+Provides: java-compiler
+Conflicts: cpp-4.1 (<< 4.1.1), gcc-4.1 (<< 4.1.1), java-gcj-compat-dev (<< 1.0.56-2)
+Description: The GNU compiler for Java(TM)
+ GCJ is a front end to the GCC compiler which can natively compile both
+ Java(tm) source and bytecode files. The compiler can also generate class
+ files.
+
+Package: gij-4.2
+Priority: optional
+Architecture: any
+Depends: gcj-4.2-base (= ${gcj:Version}), libgcj8-1 (= ${gcj:Version}), ${dep:prctl}, ${shlibs:Depends}
+Recommends: libgcj8-1-awt (= ${gcj:Version})
+Suggests: fastjar, gcj-4.2 (= ${gcj:Version}), java-gcj-compat
+Replaces: libgcj8
+Conflicts: java-gcj-compat (<< 1.0.76-4)
+Provides: java-virtual-machine, java5-runtime-headless, java2-runtime-headless, java1-runtime-headless, java-runtime-headless
+Description: The GNU Java bytecode interpreter
+ GIJ is not limited to interpreting bytecode. It includes a class loader which
+ can dynamically load shared objects, so it is possible to give it the name
+ of a class which has been compiled and put into a shared library on the
+ class path.
+
+Package: libgcj8-1
+Section: libs
+Architecture: any
+Priority: optional
+Depends: gcj-4.2-base (>= ${gcj:Version}), libgcj-common (>= 1:4.1.1-21), ${shlibs:Depends}
+Recommends: libgcj8-jar (>= ${gcj:SoftVersion}), libgcj8-1-awt (= ${gcj:Version})
+Suggests: libgcj8-dbg
+Conflicts: libgcj8
+Replaces: libgcj8, libgcj8-awt (<< 4.2-20060817)
+Description: Java runtime library for use with gcj
+ This is the runtime that goes along with the gcj front end to
+ gcc. libgcj includes parts of the Java Class Libraries, plus glue to
+ connect the libraries to the compiler and the underlying OS.
+ .
+ To show file names and line numbers in stack traces, the packages
+ libgcj8-dbg and binutils are required.
+
+Package: libgcj8-jar
+Section: libs
+Architecture: all
+Priority: optional
+Depends: gcj-4.2-base (>= ${gcj:SoftVersion}), libgcj8-1 (>= ${gcj:SoftVersion})
+Conflicts: libgcj7-common
+Replaces: libgcj7-common
+Description: Java runtime library for use with gcj (jar files)
+ This is the jar file that goes along with the gcj front end to gcc.
+
+Package: libgcj8-1-awt
+Section: libs
+Architecture: any
+Priority: optional
+Depends: gcj-4.2-base (>= ${gcj:Version}), libgcj8-1 (= ${gcj:Version}), ${shlibs:Depends}
+Suggests: ${pkg:gcjqt}
+Replaces: libgcj8-awt-gtk (<< 4.2-20070210)
+Description: AWT peer runtime libraries for use with gcj
+ These are runtime libraries holding the AWT peer implementations
+ for libgcj (currently the GTK based peer library is required, the
+ QT bases library is not built).
+
+Package: gappletviewer-4.2
+Section: utils
+Architecture: any
+Priority: optional
+Depends: gcj-4.2-base (= ${gcj:Version}), gij-4.2 (= ${gcj:Version}), libgcj8-1-awt (= ${gcj:Version}), ${shlibs:Depends}
+Description: Standalone application to execute Java (tm) applets
+ gappletviewer is a standalone application to execute Java (tm) applets.
+
+Package: libgcj8-dev
+Section: libdevel
+Architecture: any
+Priority: optional
+Depends: gcj-4.2-base (= ${gcj:Version}), gcj-4.2 (= ${gcj:Version}), libgcj8-jar (>= ${gcj:SoftVersion}), libgcj8-1-awt (= ${gcj:Version}), libgcj-bc, ${pkg:gcjgtk}, ${pkg:gcjqt}, zlib1g-dev, ${shlibs:Depends}
+Suggests: libgcj-doc
+Description: Java development headers for use with gcj
+ These are the development headers that go along with the gcj front end
+ to gcc. libgcj includes parts of the Java Class Libraries, plus glue
+ to connect the libraries to the compiler and the underlying OS.
+
+Package: libgcj8-dbg
+Section: libdevel
+Architecture: any
+Priority: extra
+Depends: gcj-4.2-base (= ${gcj:Version}), libgcj8-1 (= ${gcj:Version})
+Recommends: binutils
+Description: Debugging symbols for libraries provided in libgcj8-dev
+ The package provides debugging symbols for the libraries provided
+ in libgcj8-dev.
+ .
+ binutils is required to show file names and line numbers in stack traces.
+
+Package: libgcj8-src
+Section: libdevel
+Architecture: all
+Priority: optional
+Depends: gcj-4.2-base (>= ${gcj:SoftVersion}), gcj-4.2 (>= ${gcj:SoftVersion}), libgcj8-jar (= ${gcj:Version})
+Description: libgcj java sources for use in eclipse
+ These are the java source files packaged as a zip file for use in development
+ environments like eclipse.
+
--- gcj-4.2-4.2.4.orig/debian/libstdc++6.symbols.i386
+++ gcj-4.2-4.2.4/debian/libstdc++6.symbols.i386
@@ -0,0 +1,3 @@
+libstdc++.so.6 libstdc++6 #MINVER#
+#include "libstdc++6.symbols.32bit"
+ __gxx_personality_v0@CXXABI_1.3 4.1.1
--- gcj-4.2-4.2.4.orig/debian/rules.patch
+++ gcj-4.2-4.2.4/debian/rules.patch
@@ -0,0 +1,315 @@
+# -*- makefile -*-
+# rules to patch the unpacked files in the source directory
+# ---------------------------------------------------------------------------
+# various rules to unpack addons and (un)apply patches.
+# 	- patch / apply-patches
+#	- unpatch / reverse-patches
+
+.NOTPARALLEL:
+
+patchdir	?= debian/patches
+
+# which patches should be applied?
+
+debian_patches = \
+	svn-updates
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+#  debian_patches += svn-doc-updates
+endif
+
+ifeq ($(with_java),yes)
+  debian_patches += \
+	svn-class-updates
+endif
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  debian_patches += \
+	rename-info-files \
+	gcc-directives-only-doc \
+	sparc-niagara2-doc \
+	i386-biarch-doc
+#	svn-doc-updates
+endif
+
+debian_patches += \
+	gcc-version \
+	gcc-textdomain \
+	gcc-driver-extra-langs \
+	gcc-hash-style-both \
+	libstdc++-pic \
+	libstdc++-doclink \
+	libstdc++-doxygen \
+	libjava-stacktrace \
+	libjava-subdir \
+	libjava-jnipath \
+	libjava-sjlj \
+	libjava-rpath \
+	libjava-jar \
+	libjava-nojavac \
+	libjava-armel-ldflags \
+	libjava-xulrunner1.9 \
+	libjava-extra-cflags \
+	libgcj-bc \
+	libffi-configure \
+	pr20218 \
+	pr20218-mips \
+	pr28102 \
+	pr22244 \
+	pr30961 \
+	libgcc-tramp-ppc32 \
+	gcc-directives-only \
+	sparc-niagara2 \
+	alpha-no-ev4-directive \
+	boehm-gc-nocheck \
+	boehm-gc-getnprocs \
+	note-gnu-stack \
+	arm-pr28516 \
+	arm-pr30486 \
+	arm-unbreak-eabi-armv4t \
+	hurd-profiling \
+	hurd-fast-math \
+	m68k-fjump \
+	m68k-save_pic \
+	m68k-dwarf \
+	m68k-split_shift \
+	m68k-limit_reload \
+	m68k-prevent-qipush \
+	m68k-return \
+	m68k-jumptable \
+	m68k-sig-unwind \
+	m68k-peephole \
+	m68k-align-code \
+	m68k-align-stack \
+	m68k-secondary-addr-reload \
+	m68k-notice-move \
+	m68k-fpcompare \
+	m68k-symbolic-operand \
+	m68k-bitfield-offset \
+	mips-libspec \
+	pr24170 \
+	pr32889 \
+	pr28322 \
+	libobjc-gc-link \
+	pr35020 \
+	m68k-allow-gnu99 \
+	pr28482 \
+	pr35437 \
+
+#	svn-updates \
+#	classmap-path \
+
+#ifneq ($(GFDL_INVARIANT_FREE),yes)
+#  debian_patches += classpath-tooldoc
+#endif
+
+ifeq ($(with_ssp)-$(with_ssp_default),yes-yes)
+  debian_patches += gcc-ssp-default
+endif
+
+ifneq ($(distribution),Ubuntu)
+  ifeq ($(with_ssp),yes)
+    debian_patches += libssp-gnu
+  endif
+endif
+
+ifeq ($(with_java),yes)
+  ifeq ($(with_native_ecj),yes)
+    debian_patches += native-ecj
+  endif
+endif
+
+ifeq ($(with_proto),yes)
+  debian_patches += deb-protoize
+endif
+
+ifeq ($(with_ada),yes)
+  debian_patches += \
+	ada-driver-check \
+	ada-gcc-name \
+	ada-default-project-path \
+	ada-symbolic-tracebacks \
+	ada-acats
+
+  ifeq ($(with_libgnat),yes)
+    debian_patches += \
+	ada-gnatvsn \
+	ada-link-lib \
+	ada-libgnatvsn \
+	ada-libgnatprj \
+	ada-sjlj
+  endif
+endif
+
+# gcc-4.2 is not yet supported by gpc
+ifeq ($(with_pascal),yes)
+#  debian_patches += gpc-gcc-4.x gpc-4.1 gpc-names
+else
+#  debian_patches += gcc-pascal-lang
+endif
+
+ifeq ($(with_d),yes)
+# debian_patches += svn-gdc-updates
+  debian_patches += gdc-4.2 gdc-4.2-build
+  debian_patches += gdc-driver-zlib
+  debian_patches += gdc-driver-defaultlib
+  ifeq ($(with_libphobos),yes)
+    debian_patches += gdc-libphobos-build
+  else
+    debian_patches += gdc-driver-nophobos
+  endif
+  debian_patches += gdc-fix-build
+  debian_patches += gdc-libphobos-std-format
+  debian_patches += gdc-arm-unwind_ptr
+else
+  debian_patches += gcc-d-lang
+endif
+
+ifeq ($(DEB_TARGET_ARCH_OS),hurd)
+  debian_patches += hurd-changes
+endif
+
+ifeq ($(DEB_TARGET_ARCH),alpha)
+  debian_patches += alpha-ieee mudflap-nocheck
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    debian_patches += alpha-ieee-doc
+  endif
+endif
+
+ifeq ($(DEB_TARGET_ARCH),ia64)
+  debian_patches += pr27880
+endif
+
+ifeq ($(DEB_TARGET_ARCH),m68k)
+  debian_patches += m68k-bitfield m68k-autoinc
+  debian_patches += m68k-dwarf2 m68k-peephole-note
+  debian_patches += m68k-prevent-swap m68k-reg-inc m68k-noautoinc-setjmp
+endif
+
+ifeq ($(DEB_TARGET_ARCH_OS),kfreebsd)
+  debian_patches += kbsd-gnu
+  debian_patches += kbsd-gnu-ada
+endif
+ifeq ($(DEB_TARGET_ARCH_OS),netbsd)
+  debian_patches += # netbsd-all-gcc netbsd-archs-gcc
+endif
+
+ifdef DEB_CROSS
+  debian_patches += cross-include cross-fixes
+endif
+
+#debian_patches += link-libs
+
+# all patches below this line are applied for gcc-snapshot builds as well
+
+ifeq ($(PKGSOURCE),gcc-snapshot)
+  debian_patches =
+endif
+
+ifneq ($(DEB_TARGET_ARCH),lpia)
+  debian_patches += cpu-default-i486
+endif
+
+debian_patches += reporting
+ifneq ($(DEB_TARGET_ARCH),sh4)
+  debian_patches += multiarch-include
+endif
+debian_patches += gcc-ice-hack libjava-disable-static
+debian_patches += gcc-ice-apport
+
+ifeq ($(biarch),yes)
+  ifeq (,$(findstring libjava, $(biarch_multidir_names)))
+    debian_patches += libjava-nobiarch-check
+  endif
+  debian_patches += config-ml
+
+  ifeq ($(DEB_TARGET_ARCH),powerpc)
+    debian_patches += powerpc-biarch
+  endif
+  ifeq ($(DEB_TARGET_ARCH),s390)
+    debian_patches += s390-biarch
+  endif
+  ifeq ($(DEB_TARGET_ARCH),sparc)
+      debian_patches += sparc-biarch
+  endif
+  ifeq ($(DEB_TARGET_ARCH),i386)
+    debian_patches += i386-biarch
+  endif
+  ifneq ($(with_64bit_check),yes)
+    debian_patches += disable-configure-run-check
+  endif
+endif
+
+ifeq ($(biarch32),yes)
+  ifeq (,$(findstring libjava, $(biarch_multidir_names)))
+    debian_patches += libjava-nobiarch-check
+  endif
+  debian_patches += config-ml gcc-multilib64dir
+
+  ifeq ($(DEB_TARGET_ARCH),ppc64)
+    debian_patches += ppc64-ada
+  endif
+  ifneq ($(with_32bit_check),yes)
+    debian_patches += disable-configure-run-check
+  endif
+endif
+
+
+firsthalf=true
+patch-to-specific: $(foreach patch, $(debian_patches),$(if $(firsthalf),$(if $(findstring $(PATCH_TO),$(patch)),$(eval firsthalf=),$(patch_stamp)-$(patch)),))
+
+patch: $(patch_stamp)
+$(patch_stamp): $(unpack_stamp) pre-patch \
+    $(foreach p,$(debian_patches),$(patch_stamp)-$(p))
+	echo -e "\nPatches that $(distribution) applied in this version:" > pxxx
+	for i in $(debian_patches); do \
+	  echo -e "\n$$i:" >> pxxx; \
+	  sed -n 's/^# *DP: */  /p' $(patchdir)/$$i.dpatch >> pxxx; \
+	done
+ifeq ($(with_libphobos),yes)
+	[ ! -d $(srcdir)/libphobos ] || rm -rf $(srcdir)/libphobos
+	mkdir $(srcdir)/libphobos && \
+	  cd $(srcdir)/libphobos && \
+	    ../symlink-tree ../gcc/d/phobos$(libphobos_version) 2>&1 && \
+	cd $(srcdir)
+	chmod a+x $(srcdir)/gcc/d/phobos$(libphobos_version)/config/x3
+endif
+	mv -f pxxx $@
+
+pre-patch:
+	@if [ -x /usr/bin/automake-1.4 ]; then \
+	  : ; \
+	else \
+	  mkdir -p $(PWD)/bin; \
+	  ln -sf /usr/bin/automake $(PWD)/bin/automake-1.4; \
+	fi
+
+unpatch:
+	for stamp in none `ls -1t $(patch_stamp)-*`; do \
+	  case "$$stamp" in none|patched-stamp|patched-\*) continue; esac; \
+	  patch=`echo $$stamp | sed -e 's,$(patch_stamp)-,,'`; \
+	  echo "trying to revert patch $$patch ..."; \
+	  if [ -x $(patchdir)/$$patch.dpatch ]; then true; else \
+	    chmod +x $(patchdir)/$$patch.dpatch; fi; \
+	  if $(patchdir)/$$patch.dpatch -unpatch -d $(srcdir); then \
+	    echo "reverted $$patch patch."; \
+	    rm -f $$stamp; \
+	  else \
+	    echo "error in reverting $$patch patch."; \
+	    exit 1; \
+	  fi; \
+	done
+	rm -f patched-stamp
+
+# debian/rules.conf isn't yet sourced
+SOURCE_VERSION := $(call vafilt,$(CHANGELOG_VARS),Version)
+
+$(patch_stamp)-%: $(patchdir)/%.dpatch
+	@if [ -x $< ]; then true; else chmod +x $<; fi
+	@if [ -f $@ ]; then \
+	  echo "$* patches already applied."; exit 1; \
+	fi
+	DEB_VERSION=$$(echo $(SOURCE_VERSION) | sed 's/ds[0-9]*//'); \
+	export DEB_VERSION; set -x; \
+	$< -patch -d $(srcdir)
+	@echo "$* patches applied." > $@
--- gcj-4.2-4.2.4.orig/debian/libgccLC.postinst
+++ gcj-4.2-4.2.4/debian/libgccLC.postinst
@@ -0,0 +1,12 @@
+#! /bin/sh -e
+
+case "$1" in
+    configure)
+	docdir=/usr/share/doc/libgcc@LC@
+	if [ -d $docdir ] && [ ! -h $docdir ]; then
+	    rm -rf $docdir
+	    ln -s gcc-@BV@-base $docdir
+	fi
+esac
+
+#DEBHELPER#
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-cxx-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-cxx-cross.mk
@@ -0,0 +1,42 @@
+arch_binaries  := $(arch_binaries) cxx
+
+dirs_cxx = \
+	$(docdir) \
+	$(PF)/bin \
+	$(gcc_lib_dir) \
+	$(PF)/share/man/man1
+files_cxx = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1 \
+	$(gcc_lib_dir)/cc1plus
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cxx)
+	dh_installdirs -p$(p_cxx) $(dirs_cxx)
+	DH_COMPAT=2 dh_movefiles -p$(p_cxx) $(files_cxx)
+# g++ man page is a .so link
+	rm -f $(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1
+	ln -sf $(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1.gz \
+		$(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1.gz
+
+	debian/dh_doclink -p$(p_cxx) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cxx)
+
+	dh_strip -p$(p_cxx)
+	dh_compress -p$(p_cxx)
+	dh_fixperms -p$(p_cxx)
+	dh_shlibdeps -p$(p_cxx)
+	dh_gencontrol -p$(p_cxx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cxx)
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/g++/g' < debian/gcc-cross.postinst > debian/$(p_cxx)/DEBIAN/postinst
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/g++/g' < debian/gcc-cross.prerm > debian/$(p_cxx)/DEBIAN/prerm
+	chmod 755 debian/$(p_cxx)/DEBIAN/{postinst,prerm}
+	dh_md5sums -p$(p_cxx)
+	dh_builddeb -p$(p_cxx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-softfloat.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-softfloat.mk
@@ -0,0 +1,33 @@
+arch_binaries  := $(arch_binaries) softfloat
+
+p_softfloat  = gcc$(pkg_ver)-soft-float
+d_softfloat  = debian/$(p_softfloat)
+
+dirs_softfloat = \
+	$(PF)/$(libdir)/soft-float \
+	$(gcc_lib_dir)/soft-float
+
+files_softfloat = \
+	$(PF)/$(libdir)/soft-float \
+	$(gcc_lib_dir)/soft-float
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-softfloat: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_softfloat)
+	dh_installdirs -p$(p_softfloat) $(dirs_softfloat)
+	DH_COMPAT=2 dh_movefiles -p$(p_softfloat) $(files_softfloat)
+	debian/dh_doclink -p$(p_softfloat) $(p_base)
+	dh_strip -p$(p_softfloat) -Xlibgcj.a
+	dh_compress -p$(p_softfloat)
+	dh_fixperms -p$(p_softfloat)
+	dh_shlibdeps -p$(p_softfloat)
+	dh_gencontrol -p$(p_softfloat) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_softfloat)
+	dh_md5sums -p$(p_softfloat)
+	dh_builddeb -p$(p_softfloat)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-base.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-base.mk
@@ -0,0 +1,19 @@
+arch_binaries := base $(arch_binaries)
+
+# ---------------------------------------------------------------------------
+# gcc-base
+
+$(binary_stamp)-base: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_base)
+	dh_installdirs -p$(p_base)
+	dh_installdocs -p$(p_base)
+	dh_installchangelogs -p$(p_base)
+	dh_compress -p$(p_base)
+	dh_fixperms -p$(p_base)
+	dh_gencontrol -p$(p_base) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_base)
+	dh_md5sums -p$(p_base)
+	dh_builddeb -p$(p_base)
+	touch $@
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-cpp-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-cpp-cross.mk
@@ -0,0 +1,40 @@
+arch_binaries  := $(arch_binaries) cpp
+
+dirs_cpp = \
+	$(docdir) \
+	$(PF)/share/man/man1 \
+	$(PF)/bin \
+	$(gcc_lexec_dir)
+
+files_cpp = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1 \
+	$(gcc_lexec_dir)/cc1
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cpp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cpp)
+	dh_installdirs -p$(p_cpp) $(dirs_cpp)
+	DH_COMPAT=2 dh_movefiles -p$(p_cpp) $(files_cpp)
+
+	debian/dh_doclink -p$(p_cpp) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cpp)
+
+	dh_strip -p$(p_cpp)
+	dh_compress -p$(p_cpp)
+	dh_fixperms -p$(p_cpp)
+	dh_shlibdeps -p$(p_cpp)
+	dh_gencontrol -p$(p_cpp) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cpp)
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g' < debian/gcc-cross.postinst > debian/$(p_cpp)/DEBIAN/postinst
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g' < debian/gcc-cross.prerm > debian/$(p_cpp)/DEBIAN/prerm
+	chmod 755 debian/$(p_cpp)/DEBIAN/{postinst,prerm}
+	dh_md5sums -p$(p_cpp)
+	dh_builddeb -p$(p_cpp)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-fixincl.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-fixincl.mk
@@ -0,0 +1,47 @@
+arch_binaries  := $(arch_binaries) fixincl
+
+p_fix	= fixincludes
+d_fix	= debian/$(p_fix)
+
+dirs_fix = \
+	$(docdir)/$(p_base)/fixincludes \
+	$(PF)/share/man/man1 \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)
+files_fix = \
+	$(gcc_lexec_dir)/install-tools \
+	$(gcc_lib_dir)/install-tools
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fixincl: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_fix)
+	dh_installdirs -p$(p_fix) $(dirs_fix)
+	DH_COMPAT=2 dh_movefiles -p$(p_fix) $(files_fix)
+
+#	$(IP) $(builddir)/gcc/fixinc/fixincl $(d_fix)/$(PF)/lib/fixincludes/
+#	sed -e "s,^FIXINCL=\(.*\),FIXINCL=/$(PF)/lib/fixincludes/fixincl," \
+#	    $(builddir)/gcc/fixinc.sh \
+#		> $(d_fix)/$(PF)/lib/fixincludes/fixinc.sh
+#	chmod 755 $(d_fix)/$(PF)/lib/fixincludes/fixinc.sh
+	$(IR) $(srcdir)/fixincludes/README \
+	    $(d_fix)/$(docdir)/$(p_base)/fixincludes
+	sed -e 's,@LIBEXECDIR@,$(gcc_lexec_dir),g' debian/fixincludes.in \
+	    > $(d_fix)/$(PF)/bin/fixincludes
+	chmod 755 $(d_fix)/$(PF)/bin/fixincludes
+
+	debian/dh_doclink -p$(p_fix) $(p_base)
+	dh_strip -p$(p_fix)
+	dh_compress -p$(p_fix)
+	dh_fixperms -p$(p_fix)
+	dh_shlibdeps -p$(p_fix)
+	dh_gencontrol -p$(p_fix) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_fix)
+	dh_md5sums -p$(p_fix)
+	dh_builddeb -p$(p_fix)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-hppa64.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-hppa64.mk
@@ -0,0 +1,29 @@
+arch_binaries  := $(arch_binaries) hppa64
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-hppa64: $(install_hppa64_stamp)
+	dh_testdir
+	dh_testroot
+
+#	dh_installdirs -p$(p_hppa64)
+
+	: # provide as and ld links
+	dh_link -p $(p_hppa64) \
+		/usr/bin/hppa64-linux-gnu-as \
+		/$(PF)/lib/gcc/hppa64-linux-gnu/$(GCC_VERSION)/as \
+		/usr/bin/hppa64-linux-gnu-ld \
+		/$(PF)/lib/gcc/hppa64-linux-gnu/$(GCC_VERSION)/ld
+
+	debian/dh_doclink -p$(p_hppa64) $(p_base)
+	debian/dh_rmemptydirs -p$(p_hppa64)
+
+	dh_strip -p$(p_hppa64) -X.o -Xlibgcc.a -Xlibgcov.a
+	dh_compress -p$(p_hppa64)
+	dh_fixperms -p$(p_hppa64)
+	dh_shlibdeps -p$(p_hppa64)
+	dh_gencontrol -p$(p_hppa64) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_hppa64)
+	dh_md5sums -p$(p_hppa64)
+	dh_builddeb -p$(p_hppa64)
+
+	touch $@
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-cpp.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-cpp.mk
@@ -0,0 +1,97 @@
+arch_binaries  := $(arch_binaries) cpp
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  indep_binaries := $(indep_binaries) cpp-doc
+endif
+
+dirs_cpp = \
+	$(docdir) \
+	$(PF)/share/man/man1 \
+	$(PF)/bin \
+	$(gcc_lexec_dir)
+
+files_cpp = \
+	$(PF)/bin/cpp$(pkg_ver) \
+	$(gcc_lexec_dir)/cc1
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_cpp += \
+	$(PF)/share/man/man1/cpp$(pkg_ver).1
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cpp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cpp)
+	dh_installdirs -p$(p_cpp) $(dirs_cpp)
+	DH_COMPAT=2 dh_movefiles -p$(p_cpp) $(files_cpp)
+
+ifeq ($(with_common_gcclibdir),yes)
+	ln -sf $(BASE_VERSION) \
+	    $(d_cpp)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lib_dir))
+  ifneq ($(gcc_lib_dir),$(gcc_lexec_dir))
+	ln -sf $(BASE_VERSION) \
+	    $(d_cpp)/$(subst /$(BASE_VERSION),/$(GCC_VERSION),$(gcc_lexec_dir))
+  endif
+
+#	ln -sf $(BASE_VERSION) \
+#	    $(d_cpp)/$(subst /$(BASE_VERSION),/4.2.3,$(gcc_lib_dir))
+#  ifneq ($(gcc_lib_dir),$(gcc_lexec_dir))
+#	ln -sf $(BASE_VERSION) \
+#	    $(d_cpp)/$(subst /$(BASE_VERSION),/4.2.3,$(gcc_lexec_dir))
+#  endif
+endif
+
+	ln -sf cpp$(pkg_ver) \
+	    $(d_cpp)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver)
+	ln -sf cpp$(pkg_ver) \
+	    $(d_cpp)/$(PF)/bin/$(TARGET_ALIAS)-cpp$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf cpp$(pkg_ver).1 \
+	    $(d_cpp)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1
+	ln -sf cpp$(pkg_ver).1 \
+	    $(d_cpp)/$(PF)/share/man/man1/$(TARGET_ALIAS)-cpp$(pkg_ver).1
+endif
+
+	debian/dh_doclink -p$(p_cpp) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cpp)
+
+	dh_strip -p$(p_cpp)
+	dh_compress -p$(p_cpp)
+	dh_fixperms -p$(p_cpp)
+	dh_shlibdeps -p$(p_cpp)
+	dh_gencontrol -p$(p_cpp) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cpp)
+	dh_md5sums -p$(p_cpp)
+	dh_builddeb -p$(p_cpp)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cpp-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cppd)
+	dh_installdirs -p$(p_cppd) \
+		$(docdir)/$(p_base) \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_cppd) \
+		$(PF)/share/info/cpp*
+
+	debian/dh_doclink -p$(p_cppd) $(p_base)
+	dh_installdocs -p$(p_cppd) html/cpp.html html/cppinternals.html
+	rm -f $(d_cppd)/$(docdir)/$(p_base)/copyright
+	debian/dh_rmemptydirs -p$(p_cppd)
+
+	dh_compress -p$(p_cppd)
+	dh_fixperms -p$(p_cppd)
+	dh_installdeb -p$(p_cppd)
+	dh_gencontrol -p$(p_cppd) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_cppd)
+	dh_builddeb -p$(p_cppd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-objcxx-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-objcxx-cross.mk
@@ -0,0 +1,35 @@
+arch_binaries := $(arch_binaries) objcxx
+
+p_objcx	= gobjc++$(pkg_ver)$(cross_bin_arch)
+d_objcx	= debian/$(p_objcx)
+
+dirs_objcx = \
+	$(docdir) \
+	$(gcc_lib_dir)
+
+files_objcx = \
+	$(gcc_lib_dir)/cc1objplus
+
+$(binary_stamp)-objcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_objcx)
+	dh_installdirs -p$(p_objcx) $(dirs_objcx)
+	DH_COMPAT=2 dh_movefiles -p$(p_objcx) $(files_objcx)
+
+	debian/dh_doclink -p$(p_objcx) $(p_base)
+	debian/dh_rmemptydirs -p$(p_objcx)
+
+	dh_strip -p$(p_objcx)
+	dh_compress -p$(p_objcx)
+
+	dh_fixperms -p$(p_objcx)
+	dh_shlibdeps -p$(p_objcx)
+	dh_gencontrol -p$(p_objcx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objcx)
+	dh_md5sums -p$(p_objcx)
+	dh_builddeb -p$(p_objcx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libstdcxx.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libstdcxx.mk
@@ -0,0 +1,430 @@
+
+ifeq ($(with_libcxx),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx
+endif
+ifeq ($(with_lib64cxx),yes)
+  arch_binaries  := $(arch_binaries) lib64stdcxx
+endif
+ifeq ($(with_lib64cxxdbg),yes)
+  arch_binaries	:= $(arch_binaries) lib64stdcxxdbg
+endif
+ifeq ($(with_lib32cxx),yes)
+  arch_binaries	:= $(arch_binaries) lib32stdcxx
+endif
+ifeq ($(with_lib32cxxdbg),yes)
+  arch_binaries	:= $(arch_binaries) lib32stdcxxdbg
+endif
+
+ifeq ($(with_cxxdev),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx-dev
+  indep_binaries := $(indep_binaries) libstdcxx-doc
+endif
+
+libstdc_ext = -$(BASE_VERSION)
+
+p_lib	= libstdc++$(CXX_SONAME)
+p_lib64	= lib64stdc++$(CXX_SONAME)
+p_lib32	= lib32stdc++$(CXX_SONAME)
+p_dev	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dev
+p_pic	= libstdc++$(CXX_SONAME)$(libstdc_ext)-pic
+p_dbg	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dbg
+p_dbg64	= $(p_lib64)$(libstdc_ext)-dbg
+p_dbg32	= $(p_lib32)$(libstdc_ext)-dbg
+p_libd	= libstdc++$(CXX_SONAME)$(libstdc_ext)-doc
+
+d_lib	= debian/$(p_lib)
+d_lib64	= debian/$(p_lib64)
+d_lib32	= debian/$(p_lib32)
+d_dev	= debian/$(p_dev)
+d_pic	= debian/$(p_pic)
+d_dbg	= debian/$(p_dbg)
+d_dbg64	= debian/$(p_dbg64)
+d_dbg32	= debian/$(p_dbg32)
+d_libd	= debian/$(p_libd)
+
+dirs_dev = \
+	$(docdir)/$(p_base)/C++ \
+	$(PF)/$(libdir) \
+	$(gcc_lib_dir)/include \
+	$(cxx_inc_dir)
+
+files_dev = \
+	$(cxx_inc_dir)/ \
+	$(gcc_lib_dir)/libstdc++.{a,so} \
+	$(gcc_lib_dir)/libsupc++.a
+# Not yet...
+#	$(PF)/$(libdir)/lib{supc,stdc}++.la
+
+dirs_dbg = \
+	$(docdir) \
+	$(PF)/$(libdir)/debug \
+	$(gcc_lib_dir)
+files_dbg = \
+	$(PF)/$(libdir)/debug/libstdc++.{a,so*}
+
+dirs_pic = \
+	$(docdir) \
+	$(gcc_lib_dir)
+files_pic = \
+	$(gcc_lib_dir)/libstdc++_pic.a
+
+# ----------------------------------------------------------------------
+
+gxx_baseline_dir = $(shell \
+			sed -n '/^baseline_dir *=/s,.*= *\(.*\)\$$.*$$,\1,p' \
+			    $(buildlibdir)/libstdc++-v3/testsuite/Makefile)
+gxx_baseline_file = $(gxx_baseline_dir)/baseline_symbols.txt
+
+debian/README.libstdc++-baseline:
+	cat debian/README.libstdc++-baseline.in \
+		> debian/README.libstdc++-baseline
+
+	baseline_name=`basename $(gxx_baseline_dir)`; \
+	baseline_parentdir=`dirname $(gxx_baseline_dir)`; \
+	compat_baseline_name=""; \
+	if [ -f "$(gxx_baseline_file)" ]; then \
+	  ( \
+	    echo "A baseline file for $$baseline_name was found."; \
+	    echo "Running the check-abi script ..."; \
+	    echo ""; \
+	    $(MAKE) -C $(buildlibdir)/libstdc++-v3/testsuite \
+		check-abi; \
+	  ) >> debian/README.libstdc++-baseline; \
+	else \
+	  ( \
+	    echo "No baseline file found for $$baseline_name."; \
+	    echo "Generating a new baseline file ..."; \
+	    echo ""; \
+	  ) >> debian/README.libstdc++-baseline; \
+	  mkdir -p $(gxx_baseline_dir); \
+	  $(MAKE) -C $(buildlibdir)/libstdc++-v3/testsuite new-abi-baseline; \
+	  cat $(gxx_baseline_file) >> debian/README.libstdc++-baseline; \
+	fi
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libstdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib)
+	dh_installdirs -p$(p_lib) \
+		$(docdir) \
+		$(PF)/$(libdir)
+
+	cp -a $(d)/$(PF)/$(libdir)/libstdc++.so.* \
+		$(d_lib)/$(PF)/$(libdir)/
+
+	debian/dh_doclink -p$(p_lib) $(p_base)
+	debian/dh_rmemptydirs -p$(p_lib)
+
+	dh_strip -p$(p_lib)
+	dh_compress -p$(p_lib)
+	dh_fixperms -p$(p_lib)
+	dh_makeshlibs -p$(p_lib) -V '$(p_lib) (>= $(DEB_STDCXX_SOVERSION))'
+	cat debian/$(p_lib)/DEBIAN/shlibs >> debian/shlibs.local
+	dh_shlibdeps \
+		-L$(p_lgcc) -l:$(d)/$(PF)/lib:$(d_lgcc)/lib:\
+		-p$(p_lib)
+	dh_gencontrol -p$(p_lib) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib)
+	dh_md5sums -p$(p_lib)
+	dh_builddeb -p$(p_lib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib64)
+	dh_installdirs -p$(p_lib64) \
+		$(docdir) \
+		$(PF)/lib64
+
+	cp -a $(d)/$(PF)/lib64/libstdc++.so.* \
+		$(d_lib64)/$(PF)/lib64/.
+
+	dh_strip -p$(p_lib64)
+
+	debian/dh_doclink -p$(p_lib64) $(p_base)
+	debian/dh_rmemptydirs -p$(p_lib64)
+
+	dh_compress -p$(p_lib64)
+	dh_fixperms -p$(p_lib64)
+	dh_makeshlibs -p$(p_lib64) -V '$(p_lib64) (>= $(DEB_STDCXX_SOVERSION))'
+# pass explicit dependencies to dh_shlibdeps
+#	dh_shlibdeps -p$(p_lib64) -L $(p_l64gcc) -l $(d_l64gcc)/lib
+#/usr/bin/ldd: line 1: /lib/ld64.so.1: cannot execute binary file
+#dpkg-shlibdeps: failure: ldd on `debian/lib64gcc1/lib64/libgcc_s.so.1' gave error exit status 1
+	echo 'shlibs:Depends=$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION))' \
+		> debian/$(p_lib64).substvars
+	dh_gencontrol -p$(p_lib64) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib64)
+	dh_md5sums -p$(p_lib64)
+	dh_builddeb -p$(p_lib64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64stdcxxdbg: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dbg64)
+	dh_installdirs -p$(p_dbg64) \
+		$(PF)/lib64
+ifeq ($(with_lib64cxx),yes)
+	cp -a $(d)/$(PF)/lib64/libstdc++.so.* \
+		$(d_dbg64)/$(PF)/lib64/.
+	dh_strip -p$(p_dbg64) --keep-debug
+	rm -f $(d_dbg64)/$(PF)/lib64/libstdc++.so.*
+endif
+
+ifeq ($(with_debug),yes)
+	mv $(d)/$(PF)/lib64/debug $(d_dbg64)/$(PF)/lib64/.
+	rm -f $(d_dbg64)/$(PF)/lib64/debug/libstdc++_pic.a
+	rm -f $(d_dbg64)/$(PF)/lib64/debug/libstdc++.la
+endif
+
+	debian/dh_doclink -p$(p_dbg64) $(p_base)
+	debian/dh_rmemptydirs -p$(p_dbg64)
+
+	dh_compress -p$(p_dbg64)
+	dh_fixperms -p$(p_dbg64)
+	dh_gencontrol -p$(p_dbg64) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dbg64)
+	dh_md5sums -p$(p_dbg64)
+	dh_builddeb -p$(p_dbg64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib32)
+
+	dh_installdirs -p$(p_lib32) \
+		$(docdir) \
+		$(lib32)
+
+	cp -a $(d)/$(lib32)/libstdc++.so.* \
+		$(d_lib32)/$(lib32)/.
+
+	debian/dh_doclink -p$(p_lib32) $(p_base)
+	debian/dh_rmemptydirs -p$(p_lib32)
+
+	dh_strip -p$(p_lib32)
+	dh_compress -p$(p_lib32)
+	dh_fixperms -p$(p_lib32)
+	dh_makeshlibs -p$(p_lib32) -V '$(p_lib32) (>= $(DEB_STDCXX_SOVERSION))'
+	dh_gencontrol -p$(p_lib32) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib32)
+	dh_md5sums -p$(p_lib32)
+	dh_builddeb -p$(p_lib32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32stdcxxdbg: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dbg32)
+	dh_installdirs -p$(p_dbg32) \
+		$(lib32)
+
+ifeq ($(with_lib32cxx),yes)
+	cp -a $(d)/$(lib32)/libstdc++.so.* \
+		$(d_dbg32)/$(lib32)/.
+	dh_strip -p$(p_dbg32) --keep-debug
+	rm -f $(d_dbg32)/$(lib32)/libstdc++.so.*
+endif
+
+ifeq ($(with_debug),yes)
+	mv $(d)/$(lib32)/debug $(d_dbg32)/$(lib32)/.
+	rm -f $(d_dbg32)/$(lib32)/debug/libstdc++_pic.a
+	rm -f $(d_dbg32)/$(lib32)/debug/libstdc++.la
+endif
+
+	debian/dh_doclink -p$(p_dbg32) $(p_base)
+	debian/dh_rmemptydirs -p$(p_dbg32)
+
+	dh_compress -p$(p_dbg32)
+	dh_fixperms -p$(p_dbg32)
+	dh_gencontrol -p$(p_dbg32) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dbg32)
+	dh_md5sums -p$(p_dbg32)
+	dh_builddeb -p$(p_dbg32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+libcxxdev_deps = $(install_stamp)
+ifeq ($(with_libcxx),yes)
+  libcxxdev_deps += $(binary_stamp)-libstdcxx
+endif
+ifeq ($(with_check),yes)
+  libcxxdev_deps += debian/README.libstdc++-baseline
+endif
+$(binary_stamp)-libstdcxx-dev: $(libcxxdev_deps)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dev) $(d_pic)
+	dh_installdirs -p$(p_dev) $(dirs_dev)
+	dh_installdirs -p$(p_pic) $(dirs_pic)
+	dh_installdirs -p$(p_dbg) $(dirs_dbg)
+
+	: # - correct libstdc++-v3 file locations
+	mv $(d)/$(PF)/$(libdir)/libsupc++.a $(d)/$(gcc_lib_dir)/
+	mv $(d)/$(PF)/$(libdir)/libstdc++.{a,so} $(d)/$(gcc_lib_dir)/
+	ln -sf ../../../$(DEB_TARGET_GNU_TYPE)/libstdc++.so.$(CXX_SONAME) \
+		$(d)/$(gcc_lib_dir)/libstdc++.so
+	mv $(d)/$(PF)/$(libdir)/libstdc++_pic.a $(d)/$(gcc_lib_dir)/
+
+	rm -f $(d)/$(PF)/$(libdir)/debug/libstdc++_pic.a
+	rm -f $(d)/$(PF)/lib64/debug/libstdc++_pic.a
+
+	: # remove precompiled headers
+	-find $(d) -type d -name '*.gch' | xargs rm -rf
+
+	for i in $(d)/$(PF)/include/c++/$(GCC_VERSION)/*-linux; do \
+	  if [ -d $$i ]; then mv $$i $$i-gnu; fi; \
+	done
+
+	DH_COMPAT=2 dh_movefiles -p$(p_dev) $(files_dev)
+	DH_COMPAT=2 dh_movefiles -p$(p_pic) $(files_pic)
+ifeq ($(with_debug),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_dbg) $(files_dbg)
+endif
+
+	dh_link -p$(p_dev) \
+		/$(PF)/$(libdir)/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/libstdc++.so \
+		/$(cxx_inc_dir) /$(PF)/include/c++/$(GCC_VERSION)
+
+	debian/dh_doclink -p$(p_dev) $(p_base)
+	debian/dh_doclink -p$(p_pic) $(p_base)
+	debian/dh_doclink -p$(p_dbg) $(p_base)
+	cp -p $(srcdir)/libstdc++-v3/ChangeLog \
+		$(d_dev)/$(docdir)/$(p_base)/C++/changelog.libstdc++
+ifeq ($(with_check),yes)
+	cp -p debian/README.libstdc++-baseline \
+		$(d_dev)/$(docdir)/$(p_base)/C++/README.libstdc++-baseline
+	if [ -f $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt ]; \
+	then \
+	  cp -p $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt \
+	    $(d_dev)/$(docdir)/$(p_base)/C++/libstdc++_symbols.txt; \
+	fi
+endif
+	cp -p $(buildlibdir)/libstdc++-v3/src/libstdc++-symbols.ver \
+		$(d_pic)/$(gcc_lib_dir)/libstdc++_pic.map
+
+ifeq ($(with_libcxx),yes)
+	cp -a $(d)/$(PF)/$(libdir)/libstdc++.so.* \
+		$(d_dbg)/$(PF)/$(libdir)/
+	dh_strip -p$(p_dbg) --keep-debug
+	rm -f $(d_dbg)/$(PF)/$(libdir)/libstdc++.so.*
+endif
+
+	dh_strip -p$(p_dev) --dbg-package=$(p_dbg)
+	dh_strip -p$(p_pic)
+
+ifeq ($(with_cxxdev),yes)
+	debian/dh_rmemptydirs -p$(p_dev)
+	debian/dh_rmemptydirs -p$(p_pic)
+	debian/dh_rmemptydirs -p$(p_dbg)
+endif
+
+	dh_compress -p$(p_dev) -p$(p_pic) -p$(p_dbg) -X.txt
+	dh_fixperms -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+ifeq ($(biarch),yes)
+	dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib64
+else
+	dh_shlibdeps -p$(p_dev) -p$(p_pic) -p$(p_dbg) -Xlib32/debug
+endif
+	dh_gencontrol -p$(p_dev) -p$(p_pic) -p$(p_dbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_md5sums -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_builddeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+doxygen_doc_dir = $(buildlibdir)/libstdc++-v3/docs/doxygen
+
+doxygen-docs: $(build_doxygen_stamp)
+$(build_doxygen_stamp):
+	rm -rf $(doxygen_doc_dir)/html*
+	$(MAKE) -C $(buildlibdir)/libstdc++-v3 SHELL=/bin/bash doxygen
+	$(MAKE) -C $(buildlibdir)/libstdc++-v3 SHELL=/bin/bash doxygen-man
+	sed -e 's,http://gcc\.gnu\.org/onlinedocs/libstdc++,../html,g' \
+	    -e 's,<title>Main Page</title>,<title>libstdc++-v3 Source: Main Index</title>,' \
+	  $(doxygen_doc_dir)/html_user/index.html \
+	    > $(doxygen_doc_dir)/html_user/index.html.new
+	mv -f $(doxygen_doc_dir)/html_user/index.html.new \
+	    $(doxygen_doc_dir)/html_user/index.html
+
+	-find $(doxygen_doc_dir)/html_user -name 'struct*' -empty | xargs rm -f
+
+	touch $@
+
+$(binary_stamp)-libstdcxx-doc: $(install_stamp) doxygen-docs
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_libd)
+	dh_installdirs -p$(p_libd) \
+		$(docdir)/$(p_base)/libstdc++ \
+		$(PF)/share/man
+
+#	debian/dh_doclink -p$(p_libd) $(p_base)
+	dh_link -p$(p_libd) /usr/share/doc/$(p_base) /usr/share/doc/$(p_libd)
+	dh_installdocs -p$(p_libd)
+	rm -f $(d_libd)/$(docdir)/$(p_base)/copyright
+
+	cp -a $(srcdir)/libstdc++-v3/docs/html \
+		$(d_libd)/$(docdir)/$(p_base)/libstdc++/.
+	ln -sf documentation.html \
+		$(d_libd)/$(docdir)/$(p_base)/libstdc++/html/index.html
+	-find $(d_libd)/$(docdir)/$(p_base)/libstdc++/ -name CVS -type d \
+		| xargs rm -rf
+
+	cp -a $(doxygen_doc_dir)/html_user \
+		$(d_libd)/$(docdir)/$(p_base)/libstdc++/.
+	cp -a $(doxygen_doc_dir)/man/man3 \
+		$(d_libd)/$(PF)/share/man/.
+	cp -p $(srcdir)/libstdc++-v3/docs/doxygen/Intro.3 \
+		$(d_libd)/$(PF)/share/man/man3/C++Intro.3
+
+	mkdir -p $(d_libd)/usr/share/lintian/overrides
+	cp -p debian/$(p_libd).overrides \
+		$(d_libd)/usr/share/lintian/overrides/$(p_libd)
+
+	dh_compress -p$(p_libd) -Xhtml/17_intro -X.txt -X.tag
+	dh_fixperms -p$(p_libd)
+	dh_gencontrol -p$(p_libd) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_libd)
+	dh_md5sums -p$(p_libd)
+	dh_builddeb -p$(p_libd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-nof-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-nof-cross.mk
@@ -0,0 +1,46 @@
+arch_binaries  := $(arch_binaries) nof
+
+p_nof  = gcc$(pkg_arch)-nof
+d_nof  = debian/$(p_nof)
+
+dirs_nof = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/nof
+ifeq ($(with_cdev),yes)
+  dirs_nof += \
+	$(gcc_lib_dir)/nof
+endif
+
+ifeq ($(with_cdev),yes)
+  files_nof = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libgcc_s_nof.so.$(GCC_SONAME) \
+	$(gcc_lib_dir)/libgcc_s_nof.so \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/nof \
+	$(gcc_lib_dir)/nof
+else
+  files_nof = \
+	lib/libgcc_s_nof.so.$(GCC_SONAME)
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-nof: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	ln -sf /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libgcc_s_nof.so.$(GCC_SONAME) \
+		$(d)/$(gcc_lib_dir)/libgcc_s_nof.so
+
+	rm -rf $(d_nof)
+	dh_installdirs -p$(p_nof) $(dirs_nof)
+	DH_COMPAT=2 dh_movefiles -p$(p_nof) $(files_nof)
+	debian/dh_doclink -p$(p_nof) $(p_base)
+	dh_strip -p$(p_nof)
+	dh_compress -p$(p_nof)
+	dh_fixperms -p$(p_nof)
+	dh_gencontrol -p$(p_nof) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_nof)
+	dh_md5sums -p$(p_nof)
+	dh_builddeb -p$(p_nof)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-objcxx.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-objcxx.mk
@@ -0,0 +1,62 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) objcxx-multi
+endif
+arch_binaries := $(arch_binaries) objcxx
+
+p_objcx		= gobjc++$(pkg_ver)
+d_objcx		= debian/$(p_objcx)
+
+p_objcx_m	= gobjc++$(pkg_ver)-multilib
+d_objcx_m	= debian/$(p_objcx_m)
+
+dirs_objcx = \
+	$(docdir)/$(p_base)/Obj-C++ \
+	$(gcc_lexec_dir)
+
+files_objcx = \
+	$(gcc_lexec_dir)/cc1objplus
+
+$(binary_stamp)-objcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_objcx)
+	dh_installdirs -p$(p_objcx) $(dirs_objcx)
+	DH_COMPAT=2 dh_movefiles -p$(p_objcx) $(files_objcx)
+
+	debian/dh_doclink -p$(p_objcx) $(p_base)
+	cp -p $(srcdir)/gcc/objcp/ChangeLog \
+		$(d_objcx)/$(docdir)/$(p_base)/Obj-C++/changelog
+
+	debian/dh_rmemptydirs -p$(p_objcx)
+
+	dh_strip -p$(p_objcx)
+	dh_compress -p$(p_objcx)
+
+	dh_fixperms -p$(p_objcx)
+	dh_shlibdeps -p$(p_objcx)
+	dh_gencontrol -p$(p_objcx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objcx)
+	dh_md5sums -p$(p_objcx)
+	dh_builddeb -p$(p_objcx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+$(binary_stamp)-objcxx-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+
+	rm -rf $(d_objcx_m)
+
+	debian/dh_doclink -p$(p_objcx_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_objcx_m)
+	dh_strip -p$(p_objcx_m)
+	dh_compress -p$(p_objcx_m)
+
+	dh_fixperms -p$(p_objcx_m)
+	dh_shlibdeps -p$(p_objcx_m)
+	dh_gencontrol -p$(p_objcx_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objcx_m)
+	dh_md5sums -p$(p_objcx_m)
+	dh_builddeb -p$(p_objcx_m)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-source.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-source.mk
@@ -0,0 +1,32 @@
+indep_binaries := $(indep_binaries) gcc-source
+
+p_source = gcc$(pkg_ver)-source
+d_source= debian/$(p_source)
+
+$(binary_stamp)-gcc-source:
+	dh_testdir
+	dh_testroot
+
+	dh_install -p$(p_source) $(gcc_tarball) usr/src/gcc$(pkg_ver)
+#	dh_install -p$(p_source) $(gcj_tarball) usr/src/gcc$(pkg_ver)
+	dh_install -p$(p_source) debian/patches usr/src/gcc$(pkg_ver)
+	chmod 755 debian/$(p_source)/usr/src/gcc$(pkg_ver)/patches/*.dpatch
+	rm -rf debian/$(p_source)/usr/src/gcc$(pkg_ver)/patches/.svn
+	dh_install -p$(p_source) \
+	    debian/rules.source \
+		usr/src/gcc$(pkg_ver)
+	dh_install -p$(p_source) \
+	    debian/rules.defs debian/rules.patch debian/rules.unpack \
+	    debian/dummy.texi debian/gcc-dummy.texi debian/multiarch.inc \
+	    debian/porting.* \
+		usr/src/gcc$(pkg_ver)/debian
+
+	debian/dh_doclink -p$(p_source) $(p_base)
+
+	dh_fixperms -p$(p_source)
+	dh_gencontrol -p$(p_source) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_source)
+	dh_md5sums -p$(p_source)
+	dh_builddeb -p$(p_source)
+
+	touch $@
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-proto.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-proto.mk
@@ -0,0 +1,43 @@
+arch_binaries  := $(arch_binaries) proto
+
+p_proto	= protoize
+d_proto	= debian/$(p_proto)
+
+dirs_proto = \
+	$(docdir) \
+	$(PF)/share/man/man1 \
+	$(PF)/bin
+files_proto = \
+	$(PF)/bin/{protoize,unprotoize} \
+	$(PF)/share/man/man1/{protoize,unprotoize}.1
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-proto: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_proto)
+	dh_installdirs -p$(p_proto) $(dirs_proto)
+
+ifeq ($(versioned_packages),yes)
+	: # rename versioned files back to unversioned ones.
+	for i in protoize unprotoize; do \
+	  mv $(d)/$(PF)/bin/$$i$(pkg_ver) $(d)/$(PF)/bin/$$i; \
+	done
+endif
+	$(IR) debian/protoize.1 $(d)/$(PF)/share/man/man1/
+	ln -sf protoize.1 $(d)/$(PF)/share/man/man1/unprotoize.1
+	DH_COMPAT=2 dh_movefiles -p$(p_proto) $(files_proto)
+
+	debian/dh_doclink -p$(p_proto) $(p_base)
+	dh_strip -p$(p_proto)
+	dh_compress -p$(p_proto)
+	dh_fixperms -p$(p_proto)
+	dh_shlibdeps -p$(p_proto)
+	dh_gencontrol -p$(p_proto) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_proto)
+	dh_md5sums -p$(p_proto)
+	dh_builddeb -p$(p_proto)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libffi.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libffi.mk
@@ -0,0 +1,155 @@
+arch_binaries  := $(arch_binaries) libffi
+ifeq ($(with_lib64ffi),yes)
+  arch_binaries  := $(arch_binaries) lib64ffi
+endif
+ifeq ($(with_lib32ffi),yes)
+  arch_binaries	:= $(arch_binaries) lib32ffi
+endif
+
+p_ffi	= libffi$(FFI_SONAME)
+p_l32ffi= lib32ffi$(FFI_SONAME)
+p_l64ffi= lib64ffi$(FFI_SONAME)
+p_ffid	= libffi$(FFI_SONAME)-dev
+p_ffidbg	= libffi$(FFI_SONAME)-dbg
+p_l32ffidbg	= lib32ffi$(FFI_SONAME)-dbg
+p_l64ffidbg	= lib64ffi$(FFI_SONAME)-dbg
+
+d_ffi	= debian/$(p_ffi)
+d_l32ffi= debian/$(p_l32ffi)
+d_l64ffi= debian/$(p_l64ffi)
+d_ffid	= debian/$(p_ffid)
+d_ffidbg	= debian/$(p_ffidbg)
+d_l32ffidbg	= debian/$(p_l32ffidbg)
+d_l64ffidbg	= debian/$(p_l64ffidbg)
+
+dirs_ffi = \
+	$(docdir)/$(p_base)/libffi \
+	$(PF)/$(libdir)
+files_ffi = \
+	$(PF)/$(libdir)/libffi.so.*
+
+dirs_ffid = \
+	$(docdir)/$(p_base)/libffi \
+	$(PF)/include \
+	$(gcc_lib_dir)/include
+files_ffid = \
+	$(PF)/include/{ffi.h,ffitarget.h} \
+	$(PF)/$(libdir)/libffi.{a,so}
+
+ifeq ($(with_lib32ffi),yes)
+	dirs_ffid  += $(lib32)
+	files_ffid += $(lib32)/libffi.{a,so}
+endif
+ifeq ($(with_lib64ffi),yes)
+	dirs_ffid  += $(PF)/lib64
+	files_ffid += $(PF)/lib64/libffi.{a,so}
+endif
+
+$(binary_stamp)-libffi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ffi) $(d_ffid) $(d_ffidbg)
+	dh_installdirs -p$(p_ffi) $(dirs_ffi)
+	dh_installdirs -p$(p_ffid) $(dirs_ffid)
+
+	mv $(d)/$(gcc_lib_dir)/include/ffi*.h $(d)/$(PF)/include/.
+
+	DH_COMPAT=2 dh_movefiles -p$(p_ffi) $(files_ffi)
+	DH_COMPAT=2 dh_movefiles -p$(p_ffid) $(files_ffid)
+
+	cp -p $(buildlibdir)/libffi/.libs/libffi_convenience.a \
+		$(d_ffid)/$(PF)/lib/libffi_pic.a
+
+ifeq ($(with_lib64ffi),yes)
+	cp -p $(buildlibdir)/64/libffi/.libs/libffi_convenience.a \
+		$(d_ffid)/$(PF)/$(lib64)/libffi_pic.a
+endif
+ifeq ($(with_lib32ffi),yes)
+	cp -p $(buildlibdir)/32/libffi/.libs/libffi_convenience.a \
+		$(d_ffid)/$(lib32)/libffi_pic.a
+endif
+
+	cp -p $(srcdir)/libffi/README $(d_ffid)/$(docdir)/$(p_base)/libffi/
+	cp -p $(srcdir)/libffi/ChangeLog \
+		$(d_ffid)/$(docdir)/$(p_base)/libffi/changelog
+	cp -p $(srcdir)/libffi/ChangeLog.libgcj \
+		$(d_ffid)/$(docdir)/$(p_base)/libffi/changelog.libgcj
+
+	debian/dh_doclink -p$(p_ffi) $(p_base)
+	debian/dh_doclink -p$(p_ffid) $(p_base)
+	debian/dh_doclink -p$(p_ffidbg) $(p_base)
+
+	debian/dh_rmemptydirs -p$(p_ffi)
+	debian/dh_rmemptydirs -p$(p_ffid)
+	debian/dh_rmemptydirs -p$(p_ffidbg)
+
+	dh_strip -p$(p_ffi) -p$(p_ffid) --dbg-package=$(p_ffidbg)
+	dh_compress -p$(p_ffi) -p$(p_ffid) -p$(p_ffidbg)
+	dh_fixperms -p$(p_ffi) -p$(p_ffid) -p$(p_ffid)
+	dh_makeshlibs -p$(p_ffi) -V '$(p_ffi) (>= $(DEB_FFI_SOVERSION))'
+	dh_shlibdeps -p$(p_ffi) -p$(p_ffid)
+	dh_gencontrol -p$(p_ffi) -p$(p_ffid) -p$(p_ffidbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ffi) -p$(p_ffid) -p$(p_ffidbg)
+	dh_md5sums -p$(p_ffi) -p$(p_ffid) -p$(p_ffidbg)
+	dh_builddeb -p$(p_ffi) -p$(p_ffid) -p$(p_ffidbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64ffi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64ffi) $(d_l64ffidbg)
+	dh_installdirs -p$(p_l64ffi) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64ffi) \
+		$(PF)/lib64/libffi.so.*
+
+	debian/dh_doclink -p$(p_l64ffi) $(p_base)
+	debian/dh_doclink -p$(p_l64ffidbg) $(p_base)
+
+	dh_strip -p$(p_l64ffi) --dbg-package=$(p_l64ffidbg)
+	dh_compress -p$(p_l64ffi) -p$(p_l64ffidbg)
+	dh_fixperms -p$(p_l64ffi) -p$(p_l64ffidbg)
+	dh_makeshlibs -p$(p_l64ffi) -V '$(p_l64ffi) (>= $(DEB_FFI_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64ffi)
+	dh_gencontrol -p$(p_l64ffi) -p$(p_l64ffidbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64ffi) -p$(p_l64ffidbg)
+	dh_md5sums -p$(p_l64ffi) -p$(p_l64ffidbg)
+	dh_builddeb -p$(p_l64ffi) -p$(p_l64ffidbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32ffi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32ffi) $(d_l32ffidbg)
+	dh_installdirs -p$(p_l32ffi) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32ffi) \
+		$(lib32)/libffi.so.*
+
+	debian/dh_doclink -p$(p_l32ffi) $(p_base)
+	debian/dh_doclink -p$(p_l32ffidbg) $(p_base)
+
+	dh_strip -p$(p_l32ffi) --dbg-package=$(p_l32ffidbg)
+	dh_compress -p$(p_l32ffi) -p$(p_l32ffidbg)
+	dh_fixperms -p$(p_l32ffi) -p$(p_l32ffidbg)
+	dh_makeshlibs -p$(p_l32ffi) -V '$(p_l32ffi) (>= $(DEB_FFI_SOVERSION))'
+	dh_shlibdeps -p$(p_l32ffi)
+	dh_gencontrol -p$(p_l32ffi) -p$(p_l32ffidbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32ffi) -p$(p_l32ffidbg)
+	dh_md5sums -p$(p_l32ffi) -p$(p_l32ffidbg)
+	dh_builddeb -p$(p_l32ffi) -p$(p_l32ffidbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-cross.mk
@@ -0,0 +1,57 @@
+arch_binaries  := $(arch_binaries) gcc-cross
+
+dirs_gcc = \
+	$(docdir)/$(p_base)/gcc \
+	$(PF)/bin \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1
+
+files_gcc = \
+	$(PF)/bin/{$(DEB_TARGET_GNU_TPE)-gcc,$(DEB_TARGET_GNU_TYPE)-cpp}$(pkg_ver) \
+	$(PF)/share/man/man1/{$(DEB_TARGET_GNU_TYPE)-gcc}$(pkg_ver).1 \
+	$(gcc_lib_dir) \
+
+
+files_gcc += \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+		&& echo $(gcc_lib_dir)/SYSCALLS.c.X)
+
+usr_doc_files = debian/README.Bugs \
+	$(shell test -f $(srcdir)/FAQ && echo $(srcdir)/FAQ)
+ifeq ($(with_check),yes)
+  usr_doc_files += test-summary
+endif
+ifeq ($(DEB_HOST_ARCH),sparc)
+  usr_doc_files += debian/README.sparc
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-cross: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_gcc)
+	dh_installdirs -p$(p_gcc) $(dirs_gcc)
+	$(IS) debian/c89 $(d)/$(PF)/bin/
+	$(IR) debian/c89.1 $(d)/$(PF)/share/man/man1/
+
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc) $(files_gcc)
+
+#	dh_installdebconf
+	debian/dh_doclink -p$(p_gcc) $(p_base)
+	cp -p $(usr_doc_files) $(d_gcc)/$(docdir)/$(p_base)/.
+	cp -p debian/NEWS.gcc $(d_gcc)/$(docdir)/$(p_base)/NEWS
+	dh_undocumented -p$(p_gcc) gccbug$(pkg_ver).1
+	debian/dh_rmemptydirs -p$(p_gcc)
+	dh_strip -p$(p_gcc)
+	dh_compress -p$(p_gcc)
+	dh_fixperms -p$(p_gcc)
+	dh_shlibdeps -p$(p_gcc)
+	dh_gencontrol -p$(p_gcc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gcc)
+	dh_md5sums -p$(p_gcc)
+	dh_builddeb -p$(p_gcc)
+	touch $@
+
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-fortran.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-fortran.mk
@@ -0,0 +1,263 @@
+ifeq ($(with_libfortran),yes)
+  arch_binaries  := $(arch_binaries) libfortran
+endif
+ifeq ($(with_lib64fortran),yes)
+  arch_binaries  := $(arch_binaries) lib64fortran
+endif
+ifeq ($(with_lib32fortran),yes)
+  arch_binaries	:= $(arch_binaries) lib32fortran
+endif
+
+ifeq ($(with_fdev),yes)
+  ifneq (,$(filter yes, $(biarch) $(biarch32)))
+    arch_binaries  := $(arch_binaries) fdev-multi
+  endif
+  arch_binaries  := $(arch_binaries) fdev
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    indep_binaries := $(indep_binaries) fortran-doc
+  endif
+endif
+
+p_g95	= gfortran$(pkg_ver)
+p_g95_m	= gfortran$(pkg_ver)-multilib
+p_g95d	= gfortran$(pkg_ver)-doc
+p_flib	= libgfortran$(FORTRAN_SONAME)
+p_f32lib= lib32gfortran$(FORTRAN_SONAME)
+p_f64lib= lib64gfortran$(FORTRAN_SONAME)
+p_flibdbg	= libgfortran$(FORTRAN_SONAME)-dbg
+p_f32libdbg	= lib32gfortran$(FORTRAN_SONAME)-dbg
+p_f64libdbg	= lib64gfortran$(FORTRAN_SONAME)-dbg
+
+d_g95	= debian/$(p_g95)
+d_g95_m	= debian/$(p_g95_m)
+d_g95d	= debian/$(p_g95d)
+d_flib	= debian/$(p_flib)
+d_f32lib= debian/$(p_f32lib)
+d_f64lib= debian/$(p_f64lib)
+d_flibdbg	= debian/$(p_flibdbg)
+d_f32libdbg	= debian/$(p_f32libdbg)
+d_f64libdbg	= debian/$(p_f64libdbg)
+
+dirs_g95 = \
+	$(docdir)/$(p_base)/fortran \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir) \
+	$(PF)/include \
+	$(PF)/share/man/man1
+files_g95 = \
+	$(PF)/bin/gfortran$(pkg_ver) \
+	$(gcc_lib_dir)/finclude \
+	$(gcc_lib_dir)/libgfortranbegin.a \
+	$(gcc_lexec_dir)/f951 
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_g95 += \
+	$(PF)/share/man/man1/gfortran$(pkg_ver).1
+endif
+
+dirs_flib = \
+	$(docdir) \
+	$(PF)/$(libdir) \
+
+files_flib = \
+	$(PF)/$(libdir)/libgfortran.so.*
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libfortran: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_flib)$(d_flibdbg)
+	dh_installdirs -p$(p_flib) $(dirs_flib)
+	DH_COMPAT=2 dh_movefiles -p$(p_flib) $(files_flib)
+	debian/dh_doclink -p$(p_flib) $(p_base)
+	debian/dh_doclink -p$(p_flibdbg) $(p_base)
+
+	dh_strip -p$(p_flib) --dbg-package=$(p_flibdbg)
+	dh_compress -p$(p_flib) -p$(p_flibdbg)
+	dh_fixperms -p$(p_flib) -p$(p_flibdbg)
+	dh_makeshlibs -p$(p_flib) -V '$(p_flib) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_flib)
+	dh_gencontrol -p$(p_flib) -p$(p_flibdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_flib) -p$(p_flibdbg)
+	dh_md5sums -p$(p_flib) -p$(p_flibdbg)
+	dh_builddeb -p$(p_flib) -p$(p_flibdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64fortran: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_f64lib) $(d_f64libdbg)
+	dh_installdirs -p$(p_f64lib) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_f64lib) \
+		$(PF)/lib64/libgfortran.so.*
+
+	debian/dh_doclink -p$(p_f64lib) $(p_base)
+	debian/dh_doclink -p$(p_f64libdbg) $(p_base)
+
+	dh_strip -p$(p_f64lib) --dbg-package=$(p_f64libdbg)
+	dh_compress -p$(p_f64lib) -p$(p_f64libdbg)
+	dh_fixperms -p$(p_f64lib) -p$(p_f64libdbg)
+	dh_makeshlibs -p$(p_f64lib) -V '$(p_f64lib) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_f64lib)
+	dh_gencontrol -p$(p_f64lib) -p$(p_f64libdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_f64lib) -p$(p_f64libdbg)
+	dh_md5sums -p$(p_f64lib) -p$(p_f64libdbg)
+	dh_builddeb -p$(p_f64lib) -p$(p_f64libdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32fortran: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_f32lib) $(d_f32libdbg)
+	dh_installdirs -p$(p_f32lib) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_f32lib) \
+		$(lib32)/libgfortran.so.*
+
+	debian/dh_doclink -p$(p_f32lib) $(p_base)
+	debian/dh_doclink -p$(p_f32libdbg) $(p_base)
+
+	dh_strip -p$(p_f32lib) --dbg-package=$(p_f32libdbg)
+	dh_compress -p$(p_f32lib) -p$(p_f32libdbg)
+	dh_fixperms -p$(p_f32lib) -p$(p_f32libdbg)
+	dh_makeshlibs -p$(p_f32lib) -V '$(p_f32lib) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_f32lib)
+	dh_gencontrol -p$(p_f32lib) -p$(p_f32libdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_f32lib) -p$(p_f32libdbg)
+	dh_md5sums -p$(p_f32lib) -p$(p_f32libdbg)
+	dh_builddeb -p$(p_f32lib) -p$(p_f32libdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fdev: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_g95)
+	dh_installdirs -p$(p_g95) $(dirs_g95)
+
+	rm -f $(d)/$(gcc_lib_dir)/libgfortranbegin.la
+	rm -f $(d)/$(gcc_lib_dir)/$(biarchsubdir)/libgfortranbegin.la
+
+	DH_COMPAT=2 dh_movefiles -p$(p_g95) $(files_g95)
+
+	rm -f $(d)/$(PF)/lib/libgfortran*.{la,so}
+	mv $(d)/$(PF)/lib/libgfortran*.a $(d_g95)/$(gcc_lib_dir)/
+	dh_link -p$(p_g95) \
+	  /$(PF)/$(libdir)/libgfortran.so.$(FORTRAN_SONAME) \
+	  /$(gcc_lib_dir)/libgfortran.so
+
+	ln -sf gfortran$(pkg_ver) \
+	    $(d_g95)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-gfortran$(pkg_ver)
+	ln -sf gfortran$(pkg_ver) \
+	    $(d_g95)/$(PF)/bin/$(TARGET_ALIAS)-gfortran$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf gfortran$(pkg_ver).1 \
+	    $(d_g95)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-gfortran$(pkg_ver).1
+	ln -sf gfortran$(pkg_ver).1 \
+	    $(d_g95)/$(PF)/share/man/man1/$(TARGET_ALIAS)-gfortran$(pkg_ver).1
+endif
+
+	debian/dh_doclink -p$(p_g95) $(p_base)
+
+	cp -p $(srcdir)/gcc/fortran/ChangeLog \
+		$(d_g95)/$(docdir)/$(p_base)/fortran/changelog
+	debian/dh_rmemptydirs -p$(p_g95)
+
+	dh_strip -p$(p_g95)
+	dh_compress -p$(p_g95)
+	dh_fixperms -p$(p_g95)
+	dh_shlibdeps -p$(p_g95)
+	dh_gencontrol -p$(p_g95) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_g95)
+	dh_md5sums -p$(p_g95)
+	dh_builddeb -p$(p_g95)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fdev-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_g95_m)
+	dh_installdirs -p$(p_g95_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir)
+	DH_COMPAT=2 dh_movefiles -p$(p_g95_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/libgfortranbegin.a
+
+ifeq ($(biarch),yes)
+	rm -f $(d)/$(PF)/lib64/libgfortran*.{la,so}
+	mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/lib64/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_g95_m) \
+	  /$(PF)/lib64/libgfortran.so.$(FORTRAN_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgfortran.so
+endif
+ifeq ($(biarch32),yes)
+	rm -f $(d)/$(lib32)/libgfortran*.{la,so}
+	mkdir -p $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(lib32)/libgfortran*.a $(d_g95_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_g95_m) \
+	  /$(lib32)/libgfortran.so.$(FORTRAN_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgfortran.so
+endif
+
+	debian/dh_doclink -p$(p_g95_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_g95_m)
+	dh_strip -p$(p_g95_m)
+	dh_compress -p$(p_g95_m)
+	dh_fixperms -p$(p_g95_m)
+	dh_shlibdeps -p$(p_g95_m)
+	dh_gencontrol -p$(p_g95_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_g95_m)
+	dh_md5sums -p$(p_g95_m)
+	dh_builddeb -p$(p_g95_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-fortran-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_g95d)
+	dh_installdirs -p$(p_g95d) \
+		$(docdir)/$(p_base)/fortran \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_g95d) \
+		$(PF)/share/info/gfortran*
+
+	debian/dh_doclink -p$(p_g95d) $(p_base)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	dh_installdocs -p$(p_g95d)
+	rm -f $(d_g95d)/$(docdir)/$(p_base)/copyright
+	cp -p html/gfortran.html $(d_g95d)/$(docdir)/$(p_base)/fortran/
+endif
+
+	dh_compress -p$(p_g95d)
+	dh_fixperms -p$(p_g95d)
+	dh_installdeb -p$(p_g95d)
+	dh_gencontrol -p$(p_g95d) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_g95d)
+	dh_builddeb -p$(p_g95d)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-d.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-d.mk
@@ -0,0 +1,112 @@
+arch_binaries := $(arch_binaries) gdc
+
+ifeq ($(with_libphobos),yes)
+  arch_binaries += libphobos
+endif
+
+p_gdc		= gdc$(pkg_ver)
+d_gdc		= debian/$(p_gdc)
+
+# no shared lib for now
+p_libphobos	= libphobos$(libphobos_version)$(pkg_ver)-dev
+d_libphobos	= debian/$(p_libphobos)
+
+gdc_include_dir := $(PF)/include/d$(libphobos_version)
+
+dirs_gdc = \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(gdc_include_dir)/$(BASE_VERSION) \
+	$(gcc_lib_dir)
+
+files_gdc = \
+	$(PF)/bin/gdc$(pkg_ver) \
+	$(PF)/bin/gdmd$(pkg_ver) \
+	$(PF)/share/man/man1/gdc$(pkg_ver).1 \
+	$(PF)/share/man/man1/gdmd$(pkg_ver).1 \
+	$(gcc_lib_dir)/cc1d
+
+
+dirs_libphobos = \
+	$(PF)/lib \
+	$(gdc_include_dir)/$(BASE_VERSION) \
+	$(gcc_lib_dir)
+
+files_libphobos = \
+	$(PF)/lib/libgphobos$(libphobos_version).a \
+	$(gdc_include_dir)/$(BASE_VERSION)
+
+
+# include path
+links_gdc = \
+	/$(gdc_include_dir)/$(BASE_VERSION) \
+		/$(gdc_include_dir)/$(GCC_VERSION)
+
+
+$(binary_stamp)-gdc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gdc)
+	dh_installdirs -p$(p_gdc) $(dirs_gdc)
+
+	dh_installdocs -p$(p_gdc) \
+		src/gcc/d/{README,GDC.html,History}
+	dh_installchangelogs -p$(p_gdc) src/gcc/d/ChangeLog
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gdc) -X/zlib/ $(files_gdc)
+
+	# Always needed by gdc.
+	cp $(srcdir)/gcc/d/phobos$(libphobos_version)/object.d \
+		$(d_gdc)/$(gdc_include_dir)/$(BASE_VERSION)/
+
+	dh_link -p$(p_gdc) $(links_gdc)
+
+	dh_strip -p$(p_gdc)
+	dh_compress -p$(p_gdc)
+	dh_fixperms -p$(p_gdc)
+	dh_shlibdeps -p$(p_gdc)
+	dh_gencontrol -p$(p_gdc) --  -v$(DEB_GDC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gdc)
+	dh_md5sums -p$(p_gdc)
+	dh_builddeb -p$(p_gdc)
+
+	find $(d_gdc) -type d -empty -delete
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+$(binary_stamp)-libphobos: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_libphobos)
+	dh_installdirs -p$(p_libphobos) $(dirs_libphobos)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_libphobos) -X/zlib/ $(files_libphobos)
+
+        # better to have it there, avoid conflicts
+	mv $(d_libphobos)/$(PF)/lib/libgphobos$(libphobos_version).a \
+		$(d_libphobos)/$(gcc_lib_dir)
+
+	# included in gdc package
+	rm -f $(d_libphobos)/$(gdc_include_dir)/$(BASE_VERSION)/object.d
+
+	# no need to have it twice
+	dh_link -p$(p_libphobos) \
+		/$(PF)/share/doc/$(p_gdc) /$(PF)/share/doc/$(p_libphobos)
+
+	dh_strip -p$(p_libphobos)
+	dh_compress -p$(p_libphobos)
+	dh_fixperms -p$(p_libphobos)
+	dh_shlibdeps -p$(p_libphobos)
+	dh_gencontrol -p$(p_libphobos) --  -v$(DEB_GDC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_libphobos)
+	dh_md5sums -p$(p_libphobos)
+	dh_builddeb -p$(p_libphobos)
+
+	find $(d_libphobos) -type d -empty -delete
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-java.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-java.mk
@@ -0,0 +1,615 @@
+ifeq ($(with_gcj_base_only),yes)
+  arch_binaries  := $(arch_binaries) jbase
+else
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    arch_binaries  := $(arch_binaries) jbase
+  endif
+else
+  arch_binaries  := $(arch_binaries) jbase
+endif
+
+ifeq ($(with_libgcj),yes)
+  ifeq ($(with_java),yes)
+    arch_binaries  := $(arch_binaries) java gcjapplet
+    indep_binaries  := $(indep_binaries) libgcjjar
+  endif
+
+  ifeq ($(with_javadev),yes)
+    arch_binaries  := $(arch_binaries) libgcjdev libgcjdbg
+    indep_binaries := $(indep_binaries) libgcjsrc
+    ifeq ($(with_libgcj_doc),yes)
+      indep_binaries := $(indep_binaries) libgcjdoc
+    endif
+  endif
+endif
+
+ifeq ($(with_gcj),yes)
+    arch_binaries  := $(arch_binaries) gcj
+endif
+endif
+
+p_jbase	= gcj$(pkg_ver)-base
+p_gcj	= gcj$(pkg_ver)
+p_gij	= gij$(pkg_ver)
+p_jlib	= libgcj$(PKG_LIBGCJ_EXT)
+p_jdbg	= libgcj$(PKG_GCJ_EXT)-dbg
+p_jar	= libgcj$(PKG_GCJ_EXT)-jar
+p_jlibx	= libgcj$(PKG_LIBGCJ_EXT)-awt
+p_jgtk	= libgcj$(PKG_GCJ_EXT)-awt-gtk
+p_jqt	= libgcj$(PKG_GCJ_EXT)-awt-qt
+p_jdev	= libgcj$(PKG_GCJ_EXT)-dev
+p_jsrc	= libgcj$(PKG_GCJ_EXT)-src
+p_view	= gappletviewer$(pkg_ver)
+p_jdoc	= libgcj-doc
+
+d_jbase	= debian/$(p_jbase)
+d_gcj	= debian/$(p_gcj)
+d_gij	= debian/$(p_gij)
+d_jlib	= debian/$(p_jlib)
+d_jdbg	= debian/$(p_jdbg)
+d_jar	= debian/$(p_jar)
+d_jlibx	= debian/$(p_jlibx)
+d_jgtk	= debian/$(p_jgtk)
+d_jqt	= debian/$(p_jqt)
+d_jdev	= debian/$(p_jdev)
+d_jsrc	= debian/$(p_jsrc)
+d_jdoc	= debian/$(p_jdoc)
+d_view	= debian/$(p_view)
+
+GCJ_BASE_VERSION = $(BASE_VERSION)
+
+gcj_vlibdir	= $(PF)/$(libdir)/gcj-$(BASE_VERSION)-$(GCJ_SONAME)
+
+dirs_gcj = \
+	$(docdir)/$(p_jbase) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(PF)/share/info \
+	$(gcc_lexec_dir)
+files_gcj = \
+	$(PF)/bin/{gcj,gjar,gc-analyze,gjarsigner,gcjh,gjavah,gnative2ascii,grmic,gtnameserv,jv-convert,jcf-dump}$(pkg_ver) \
+	$(PF)/share/man/man1/{gjar,gjarsigner,gcjh,gjavah,gnative2ascii,gtnameserv}$(pkg_ver).1 \
+	$(gcc_lexec_dir)/{ecj1,jc1,jvgenmain}
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_gcj += \
+	$(PF)/share/info/gcj* \
+	$(PF)/share/man/man1/{gcj,gc-analyze,grmic,jv-convert,jcf-dump}$(pkg_ver).1
+endif
+
+dirs_gij = \
+	$(docdir)/$(p_jbase) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	var/lib/gcj$(pkg_ver)
+
+files_gij = \
+	$(PF)/bin/{gij,gcj-dbtool,gorbd,grmid,grmiregistry,gkeytool,gserialver}$(pkg_ver) \
+	$(PF)/share/man/man1/{gorbd,grmid,grmiregistry,gkeytool,gserialver}$(pkg_ver).1
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_gij += \
+	$(PF)/share/man/man1/{gij,gcj-dbtool}$(pkg_ver).1
+endif
+
+dirs_jlib = \
+	$(docdir)/$(p_jbase) \
+	$(gcj_vlibdir) \
+	$(PF)/$(libdir)
+
+files_jlib = \
+	$(PF)/$(libdir)/libgij.so.* \
+	$(PF)/$(libdir)/libgcj-tools.so.* \
+	$(PF)/$(libdir)/libgcj.so.* \
+	$(gcj_vlibdir)/libjvm.so \
+
+#	$(gcj_vlibdir)/libgconfpeer.so
+
+ifeq ($(with_java_alsa),yes)
+  files_jlib += \
+	$(gcj_vlibdir)/libgjsmalsa.so
+endif
+
+dirs_jar = \
+	$(PF)/share/java
+
+dirs_jlibx = \
+	$(PF)/$(libdir) \
+	$(gcj_vlibdir) \
+	$(PF)/share/java
+
+files_jlibx = \
+	$(gcj_vlibdir)/libjawt.so \
+	$(gcj_vlibdir)/libgtkpeer.so
+
+#files_jgtk = \
+#	$(gcj_vlibdir)/libgtkpeer.so
+#files_jqt = \
+#	$(gcj_vlibdir)/libqtpeer.so
+
+dirs_jdev = \
+	$(PF)/{include,lib} \
+	$(gcc_lib_dir)/include/gcj
+
+files_jdev = \
+	$(cxx_inc_dir)/{org,gcj,java,javax} \
+	$(cxx_inc_dir)/gnu/{awt,classpath,gcj,java,javax} \
+	$(gcc_lib_dir)/include/{jni.h,jni_md.h,jvmpi.h} \
+	$(gcc_lib_dir)/include/{jawt.h,jawt_md.h} \
+	$(gcc_lib_dir)/include/gcj/libgcj-config.h \
+	$(PF)/$(libdir)/libgij.so \
+	$(PF)/$(libdir)/libgcj.{so,spec} \
+	$(PF)/$(libdir)/libgcj-tools.so \
+	$(PF)/$(libdir)/pkgconfig/libgcj-$(BASE_VERSION).pc \
+	$(gcj_vlibdir)/lib*peer.so \
+
+ifeq ($(with_static_java),yes)
+  files_jdev += \
+	$(PF)/$(libdir)/libgij.a \
+	$(PF)/$(libdir)/libgcj.a \
+	$(PF)/$(libdir)/libgcj-tools.a
+endif
+
+ifeq ($(with_standalone_gcj),yes)
+
+  dirs_gcj += \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1
+
+  files_gcj += \
+	$(PF)/bin/{cpp,gcc,gcov}$(pkg_ver) \
+	$(gcc_lexec_dir)/cc1 \
+	$(gcc_lexec_dir)/collect2 \
+	$(gcc_lib_dir)/{libgcc*,libgcov.a,*.o} \
+	$(shell for h in \
+		    README features.h \
+		    {decfloat,float,iso646,limits,std*,syslimits,unwind,varargs}.h \
+		    {,e,p,x}mmintrin.h mm3dnow.h mm_malloc.h; \
+		do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$h \
+		    && echo $(gcc_lib_dir)/include/$$h; \
+		  test -e $(d)/$(gcc_lib_dir)/include-fixed/$$h \
+		    && echo $(gcc_lib_dir)/include-fixed/$$h; \
+		done) \
+	$(shell for d in \
+		  asm bits gnu linux $(TARGET_ALIAS) \
+		  $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu),$(TARGET_ALIAS)); \
+		do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$d \
+		    && echo $(gcc_lib_dir)/include/$$d; \
+		  test -e $(d)/$(gcc_lib_dir)/include-fixed/$$d \
+		    && echo $(gcc_lib_dir)/include-fixed/$$d; \
+		done) \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+		&& echo $(gcc_lib_dir)/SYSCALLS.c.X)
+
+  ifneq ($(GFDL_INVARIANT_FREE),yes)
+    files_gcj += \
+	$(PF)/share/man/man1/{cpp,gcc,gcov}$(pkg_ver).1
+  endif
+
+  ifeq ($(biarch),yes)
+    files_gcj += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,libgcov.a,*.o}
+  endif
+  ifeq ($(biarch32),yes)
+    files_gcj += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,*.o}
+  endif
+
+  ifeq ($(DEB_HOST_ARCH),ia64)
+    files_gcj += $(gcc_lib_dir)/include/ia64intrin.h
+  endif
+
+  ifeq ($(DEB_HOST_ARCH),m68k)
+    files_gcj += $(gcc_lib_dir)/include/math-68881.h
+  endif
+
+  ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),powerpc ppc64))
+    files_gcj += $(gcc_lib_dir)/include/{altivec.h,ppc-asm.h,spe.h}
+  endif
+
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-jbase: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	rm -rf $(d_jbase)
+	dh_installdirs -p$(p_jbase)
+	dh_installdocs -p$(p_jbase)
+	dh_installchangelogs -p$(p_jbase)
+	dh_compress -p$(p_jbase)
+	dh_fixperms -p$(p_jbase)
+	dh_gencontrol -p$(p_jbase) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jbase)
+	dh_md5sums -p$(p_jbase)
+	dh_builddeb -p$(p_jbase)
+	touch $@
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjjar: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	dh_installdirs -p$(p_jar) $(dirs_jar)
+	mv $(d)/$(PF)/share/java/libgcj-$(BASE_VERSION).jar \
+		$(d_jar)/$(PF)/share/java/
+	mv $(d)/$(PF)/share/java/libgcj-tools-$(BASE_VERSION).jar \
+		$(d_jar)/$(PF)/share/java/
+	ln -sf libgcj-$(BASE_VERSION).jar \
+		$(d_jar)/$(PF)/share/java/libgcj-$(GCC_VERSION).jar
+	ln -sf libgcj-tools-$(BASE_VERSION).jar \
+		$(d_jar)/$(PF)/share/java/libgcj-tools-$(GCC_VERSION).jar
+	debian/dh_doclink -p$(p_jar) $(p_jbase)
+	debian/dh_rmemptydirs -p$(p_jar)
+	dh_compress -p$(p_jar)
+	dh_fixperms -p$(p_jar)
+	dh_gencontrol -p$(p_jar) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jar)
+	dh_md5sums -p$(p_jar)
+	dh_builddeb -p$(p_jar)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjsrc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+
+	PATH=$(PWD)/bin:$$PATH \
+	  $(MAKE) -C $(buildlibdir)/libjava \
+		DESTDIR=$(PWD)/$(d) install-src.zip
+	mkdir -p $(d_jsrc)/$(PF)/share/java
+	mv $(d)/$(PF)/share/java/src-$(BASE_VERSION).zip \
+	   $(d_jsrc)/$(PF)/share/java/libgcj-src-$(BASE_VERSION).zip
+
+	debian/dh_doclink -p$(p_jsrc) $(p_jbase)
+	debian/dh_rmemptydirs -p$(p_jsrc)
+	dh_compress -p$(p_jsrc)
+	dh_fixperms -p$(p_jsrc)
+	dh_gencontrol -p$(p_jsrc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jsrc)
+	dh_md5sums -p$(p_jsrc)
+	dh_builddeb -p$(p_jsrc)
+
+	touch $@
+
+# ----------------------------------------------------------------------
+libgcj_version = $(shell $(builddir)/gcc/xgcc --version \
+			 | sed -n '/GCC/s/.*(GCC) *//p')
+libgcj_title = LibGCJ Classpath
+libgcjhbox_href = http://gcc.gnu.org/java
+libgcjhbox = <span class='logo'><a href='$(libgcjhbox_href)' target='_top'>$(title)</a> ($(libgcj_version))
+
+$(build_javadoc_stamp): $(build_stamp)
+	mkdir -p $(builddir)/java-src
+	cd $(builddir)/java-src && fastjar -xf $(buildlibdir)/libjava/src.zip
+
+	mkdir -p $(builddir)/html
+	gjdoc \
+	  -use \
+	  -sourcepath "$(builddir)/java-src" \
+	  -encoding UTF-8 \
+	  -breakiterator \
+	  -licensetext \
+	  -linksource \
+	  -splitindex \
+	  -d $(builddir)/html \
+	  -doctitle "$(title) $(libgcj_version)" \
+	  -windowtitle "$(title) $(libgcj_version) Documentation" \
+	  -header "$(classpathbox)" \
+	  -footer "$(classpathbox)" \
+	  -subpackages gnu:java:javax:org
+
+	touch $@
+
+$(binary_stamp)-libgcjdoc: $(install_stamp) $(build_javadoc_stamp)
+	dh_testdir
+	dh_testroot
+
+	dh_installdocs -p$(p_jdoc)
+	dh_installchangelogs -p$(p_jdoc)
+	mkdir -p $(d_jdoc)/usr/share/doc/$(p_jbase)
+	cp -al $(builddir)/html $(d_jdoc)/usr/share/doc/$(p_jbase)/
+	ln -sf ../$(p_jbase)/html $(d_jdoc)/usr/share/doc/$(p_jdoc)/html
+	dh_compress -p$(p_jdoc) -X.java -X.c
+	dh_fixperms -p$(p_jdoc)
+	dh_gencontrol -p$(p_jdoc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jdoc)
+	dh_md5sums -p$(p_jdoc)
+	dh_builddeb -p$(p_jdoc)
+
+	touch $@
+
+# ----------------------------------------------------------------------
+
+#peer_pkgs =
+#ifneq (,$(findstring gtk, $(java_awt_peers)))
+#  peer_pkgs += -p$(p_jgtk)
+#endif
+#ifneq (,$(findstring qt, $(java_awt_peers)))
+#  peer_pkgs += -p$(p_jqt)
+#endif
+
+$(binary_stamp)-java: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	dh_installdirs -p$(p_gij)   $(dirs_gij)
+	dh_installdirs -p$(p_jlib)  $(dirs_jlib)
+	dh_installdirs -p$(p_jlibx) $(dirs_jlibx)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gij)   $(files_gij)
+	DH_COMPAT=2 dh_movefiles -p$(p_jlib)  $(files_jlib)
+	DH_COMPAT=2 dh_movefiles -p$(p_jlibx) $(files_jlibx)
+#ifneq (,$(findstring gtk, $(java_awt_peers)))
+#	DH_COMPAT=2 dh_movefiles -p$(p_jgtk) $(files_jgtk)
+#endif
+#ifneq (,$(findstring qt, $(java_awt_peers)))
+#	DH_COMPAT=2 dh_movefiles -p$(p_jqt) $(files_jqt)
+#endif
+
+ifeq ($(DEB_HOST_ARCH),hppa)
+	mv $(d_gij)/$(PF)/bin/gij$(pkg_ver) \
+		$(d_gij)/$(PF)/bin/gij$(pkg_ver).bin
+	install -m755 debian/gij-hppa $(d_gij)/$(PF)/bin/gij$(pkg_ver)
+endif
+
+	ln -s ../libgcj.so.$(GCJ_SONAME) \
+		$(d_jlib)/$(gcj_vlibdir)/libgcj_bc.so.1
+
+	cp -p $(srcdir)/libjava/{NEWS,README,THANKS} \
+		$(d_gij)/usr/share/doc/$(p_jbase)/
+
+	debian/dh_doclink -p$(p_gij)   $(p_jbase)
+	debian/dh_doclink -p$(p_jlib)  $(p_jbase)
+	debian/dh_doclink -p$(p_jlibx) $(p_jbase)
+#ifneq (,$(findstring gtk, $(java_awt_peers)))
+#	debian/dh_doclink -p$(p_jgtk) $(p_jbase)
+#endif
+#ifneq (,$(findstring qt, $(java_awt_peers)))
+#	debian/dh_doclink -p$(p_jqt) $(p_jbase)
+#endif
+
+ifeq ($(with_separate_libgcj),yes)
+  ifeq ($(PKGSOURCE),gcj-$(BASE_VERSION))
+    ifeq ($(with_check),yes)
+	cp -p test-summary $(d_gij)/usr/share/doc/$(p_jbase)/test-summary
+    endif
+  endif
+endif
+	debian/dh_rmemptydirs -p$(p_gij)
+	debian/dh_rmemptydirs -p$(p_jlib)
+	debian/dh_rmemptydirs -p$(p_jlibx)
+
+	mkdir -p $(d_gij)/var/lib/gcj$(pkg_ver)
+
+	dh_makeshlibs -p$(p_jlib) -V '$(p_jlib) (>= $(DEB_GCJ_SOVERSION))'
+	echo "libgcj_bc 1 libgcj-bc (>= 4.2.1-1)" >> debian/$(p_jlib)/DEBIAN/shlibs
+	cat debian/$(p_jlib)/DEBIAN/shlibs >> debian/shlibs.local
+
+	dh_makeshlibs -p$(p_jlibx) -V '$(p_jlibx) (>= $(DEB_GCJ_SOVERSION))'
+#ifneq (,$(findstring gtk, $(java_awt_peers)))
+#	dh_makeshlibs -p$(p_jgtk) -V '$(p_jgtk) (>= $(DEB_GCJ_SOVERSION))'
+#endif
+#ifneq (,$(findstring qt, $(java_awt_peers)))
+#	dh_makeshlibs -p$(p_jqt) -V '$(p_jqt) (>= $(DEB_GCJ_SOVERSION))'
+#endif
+
+	dh_strip --dbg-package=$(p_jdbg) \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+	rm -f $(d_jdbg)/$(gcc_lib_dir)/libgcj_bc.so
+
+	dh_compress -p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+	dh_fixperms -p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+# the libstdc++ binary packages aren't built yet ...
+	echo 'libstdc++ $(CXX_SONAME) libstdc++$(CXX_SONAME) (>= $(DEB_STDCXX_SOVERSION))' \
+	    >> debian/shlibs.local
+	-[ -d $(d_l64gcc) ] && mv $(d_l64gcc) $(d_l64gcc).saved
+ifeq ($(with_separate_libgcj)-$(with_standalone_gcj),yes-no)
+	dh_shlibdeps \
+		-L$(p_jlib) \
+		-l$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/$(libdir) \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+else
+	dh_shlibdeps \
+		-L$(p_lgcc) \
+		-L$(p_jlib) \
+		-l:$(d)/$(PF)/$(libdir):$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/$(libdir):$(d_lgcc)/lib \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+endif
+	-[ -d $(d_l64gcc).saved ] && mv $(d_l64gcc).saved $(d_l64gcc)
+	sed -e 's/$(p_jlib)[^,]*//' -e 's/, *,/,/' debian/$(p_jlib).substvars \
+		>> debian/$(p_jlib).substvars.tmp \
+	    && mv -f debian/$(p_jlib).substvars.tmp debian/$(p_jlib).substvars
+	dh_gencontrol \
+		-p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+
+#	mkdir -p $(d_jlibx)/usr/share/lintian/overrides
+#	cp -p debian/$(p_jlibx).overrides \
+#		$(d_jlibx)/usr/share/lintian/overrides/$(p_jlibx)
+
+	dh_installdeb -p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+	dh_md5sums -p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+	dh_builddeb -p$(p_gij) -p$(p_jlib) -p$(p_jlibx) $(peer_pkgs)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcj: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcj)
+	dh_installdirs -p$(p_gcj)  $(dirs_gcj)
+
+	mkdir -p $(d_gcj)/usr/share/lintian/overrides
+	cp -p debian/$(p_gcj).overrides \
+		$(d_gcj)/usr/share/lintian/overrides/$(p_gcj)
+	cp -p $(srcdir)/gcc/java/ChangeLog \
+		$(d_gcj)/usr/share/doc/$(p_jbase)/changelog.gcj
+	cp -p $(srcdir)/libjava/ChangeLog \
+		$(d_gcj)/usr/share/doc/$(p_jbase)/changelog.libjava
+
+ifeq ($(with_standalone_gcj),yes)
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+endif
+	DH_COMPAT=2 dh_movefiles -p$(p_gcj)  $(files_gcj)
+
+	ln -sf gcj$(pkg_ver) \
+	    $(d_gcj)/$(PF)/bin/$(TARGET_ALIAS)-gcj$(pkg_ver)
+
+ifneq (,$(filter $(DEB_HOST_ARCH), alpha arm armel))
+	ln -sf ../../ecj1 $(d_gcj)/$(gcc_lexec_dir)/ecj1
+endif
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf gcj$(pkg_ver).1 \
+	    $(d_gcj)/$(PF)/share/man/man1/$(TARGET_ALIAS)-gcj$(pkg_ver).1
+	cp -p html/gcj.html $(d_gcj)/$(docdir)/$(p_jbase)/
+endif
+
+	debian/dh_doclink -p$(p_gcj) $(p_jbase)
+
+	cp -p debian/FAQ.gcj $(d_gcj)/$(docdir)/$(p_jbase)/
+
+	cp -p debian/gcj-wrapper$(pkg_ver) $(d_gcj)/$(PF)/bin/
+	chmod 755 $(d_gcj)/$(PF)/bin/gcj-wrapper$(pkg_ver)
+	cp -p debian/gcj-wrapper$(pkg_ver).1 $(d_gcj)/$(PF)/share/man/man1/
+
+	debian/dh_rmemptydirs -p$(p_gcj)
+
+	dh_strip -p$(p_gcj)
+	dh_compress -p$(p_gcj) -X.java
+	dh_fixperms -p$(p_gcj)
+	dh_shlibdeps -p$(p_gcj) -l$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/lib -Xecj1
+	dh_gencontrol -p$(p_gcj) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gcj)
+	dh_md5sums -p$(p_gcj)
+	dh_builddeb -p$(p_gcj)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjdev: $(build_html_stamp) $(install_stamp) $(binary_stamp)-java
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	dh_installdirs -p$(p_jdev) $(dirs_jdev)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_jdev) $(files_jdev)
+
+	for i in libgij libgcj libgcj-tools; do \
+	  dh_link -p$(p_jdev) /$(PF)/$(libdir)/$$i.so.$(GCJ_SONAME) \
+	    $(gcc_lib_dir)/$$i.so; \
+	  rm -f $(d_jdev)/$(PF)/$(libdir)/$$i.{la,so}; \
+	done
+ifeq ($(with_static_java),yes)
+	for i in libgij libgcj libgcj-tools; do \
+	  mv $(d_jdev)/$(PF)/$(libdir)/$$i.a $(d_jdev)/$(gcc_lib_dir)/; \
+	done
+endif
+
+	ln -sf libgcj-$(BASE_VERSION).pc \
+		$(d_jdev)/$(PF)/$(libdir)/pkgconfig/libgcj$(PKG_GCJ_EXT).pc
+	sed -i -e 's,-[IL][^ ]* *,,' \
+		$(d_jdev)/$(PF)/$(libdir)/pkgconfig/libgcj-$(BASE_VERSION).pc
+
+	mv $(d_jdev)/$(PF)/$(libdir)/libgcj.spec $(d_jdev)/$(gcc_lib_dir)/
+
+	install -m 755 $(d)/$(PF)/lib/libgcj_bc.so.1 \
+		$(d_jdev)/$(gcc_lib_dir)/libgcj_bc.so
+	$(builddir)/gcc/xgcc -B$(builddir)/gcc/ -shared -fpic -xc /dev/null \
+		-o build/libgcj.so -Wl,-soname,libgcj.so.$(GCJ_SONAME) -nostdlib
+	$(builddir)/gcc/xgcc -B$(builddir)/gcc/ -shared -fpic \
+		$(srcdir)/libjava/libgcj_bc.c \
+		-o $(d_jdev)/$(gcc_lib_dir)/libgcj_bc.so \
+		-Wl,-soname,libgcj_bc.so.1 $(builddir)/libgcj.so -shared-libgcc 
+
+	debian/dh_doclink -p$(p_jdev) $(p_jbase)
+
+	debian/dh_rmemptydirs -p$(p_jdev)
+
+	mkdir -p $(d_jdev)/usr/share/lintian/overrides
+	cp -p debian/libgcj$(PKG_GCJ_EXT)-dev.overrides \
+		$(d_jdev)/usr/share/lintian/overrides/$(p_jdev)
+
+	DH_COMPAT=5 dh_strip -p$(p_jdev) --dbg-package=$(p_jdbg)
+	dh_compress -p$(p_jdev) -X.java
+	dh_fixperms -p$(p_jdev)
+ifeq ($(with_separate_libgcj)-$(with_standalone_gcj),yes-no)
+	dh_shlibdeps \
+		-l$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/$(libdir) \
+		-p$(p_jdev)
+else
+	dh_shlibdeps \
+		-L$(p_lgcc) \
+		-l:$(d)/$(PF)/$(libdir):$(d_lib)/$(PF)/$(libdir):$(d_jlib)/$(PF)/$(libdir):$(d_lgcc)/lib \
+		-p$(p_jdev)
+endif
+	dh_gencontrol -p$(p_jdev) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jdev)
+	dh_md5sums -p$(p_jdev)
+	dh_builddeb -p$(p_jdev)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcjdbg: $(install_stamp) $(binary_stamp)-java $(binary_stamp)-libgcjdev $(binary_stamp)-gcjapplet
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	debian/dh_doclink -p$(p_jdbg) $(p_jbase)
+
+	for i in libgij libgcj libgcj-tools; do \
+	  if [ -f $(d_jdbg)/usr/lib/debug/usr/lib/$$i.so.$(GCJ_SONAME).0.0 ]; then \
+	    ln -sf $$i.so.$(GCJ_SONAME).0.0 \
+	      $(d_jdbg)/usr/lib/debug/usr/lib/$$i.so.$(GCJ_SONAME); \
+	  fi; \
+	done
+#	ln -sf libgconfpeer.so.0.0.0 \
+#	  $(d_jdbg)/usr/lib/debug/$(gcj_vlibdir)/libgconfpeer.so.0
+
+	dh_compress -p$(p_jdbg)
+	dh_fixperms -p$(p_jdbg)
+	dh_gencontrol -p$(p_jdbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_jdbg)
+	dh_md5sums -p$(p_jdbg)
+	dh_builddeb -p$(p_jdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcjapplet: $(install_stamp) $(binary_stamp)-java
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+ifeq ($(with_java_plugin),yes)
+	dh_installdirs -p$(p_view) \
+		$(PF)/bin \
+		$(PF)/share/man/man1
+	DH_COMPAT=2 dh_movefiles -p$(p_view) \
+		$(PF)/bin/gappletviewer$(pkg_ver) \
+		$(PF)/share/man/man1/gappletviewer$(pkg_ver).1 \
+		$(gcj_vlibdir)/libgcjwebplugin.so
+	rm -f $(d)/$(gcj_vlibdir)/libgcjwebplugin.*a
+endif
+
+	debian/dh_doclink -p$(p_view) $(p_jbase)
+	DH_COMPAT=5 dh_strip -p$(p_view) --dbg-package=$(p_jdbg)
+	dh_compress -p$(p_view)
+	dh_fixperms -p$(p_view)
+	dh_gencontrol -p$(p_view) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_view)
+	dh_md5sums -p$(p_view)
+	dh_builddeb -p$(p_view)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-objc-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-objc-cross.mk
@@ -0,0 +1,60 @@
+arch_binaries := $(arch_binaries) objc
+
+p_objc	= gobjc$(pkg_ver)$(cross_bin_arch)
+d_objc	= debian/$(p_objc)
+
+dirs_objc = \
+	$(docdir) \
+	$(gcc_lib_dir)
+
+files_objc = \
+	$(gcc_lib_dir)/cc1obj \
+	$(gcc_lib_dir)/include/objc \
+	$(gcc_lib_dir)/{libobjc*.a,libobjc*.la}
+
+$(binary_stamp)-objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc*.{a,la} $(d)/$(gcc_lib_dir)/
+
+	rm -rf $(d_objc)
+	dh_installdirs -p$(p_objc) $(dirs_objc)
+	DH_COMPAT=2 dh_movefiles -p$(p_objc) $(files_objc)
+
+ifeq ($(with_lib64objc),yes)
+	mkdir -p $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libobjc*.{a,la} $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+endif
+ifeq ($(with_lib32objc),yes)
+	mkdir -p $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(DEB_TARGET_GNU_TYPE)/$(lib32)/libobjc*.{a,la} $(d_objc)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc) \
+	  /$(lib32)/$(DEB_TARGET_GNU_TYPE)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+endif
+
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
+ifeq ($(with_objc_gc),yes)
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc_gc.so.$(OBJC_SONAME) \
+	  /$(gcc_lib_dir)/libobjc_gc.so
+endif
+
+	debian/dh_doclink -p$(p_objc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_objc)
+
+	dh_strip -p$(p_objc)
+	dh_compress -p$(p_objc)
+
+	dh_fixperms -p$(p_objc)
+	dh_shlibdeps -p$(p_objc)
+	dh_gencontrol -p$(p_objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objc)
+	dh_md5sums -p$(p_objc)
+	dh_builddeb -p$(p_objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libgcc.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libgcc.mk
@@ -0,0 +1,173 @@
+ifeq ($(with_libgcc),yes)
+  arch_binaries	:= $(arch_binaries) libgcc
+endif
+ifeq ($(with_lib64gcc),yes)
+  arch_binaries	:= $(arch_binaries) lib64gcc
+endif
+ifeq ($(biarch32),yes)
+  arch_binaries	:= $(arch_binaries) lib32gcc
+endif
+
+p_lgcc		= libgcc$(GCC_SONAME)
+p_lgccdbg	= libgcc$(GCC_SONAME)-dbg
+d_lgcc		= debian/$(p_lgcc)
+d_lgccdbg	= debian/$(p_lgccdbg)
+
+p_l32gcc	= lib32gcc$(GCC_SONAME)
+p_l32gccdbg	= lib32gcc$(GCC_SONAME)-dbg
+d_l32gcc	= debian/$(p_l32gcc)
+d_l32gccdbg	= debian/$(p_l32gccdbg)
+
+p_l64gcc	= lib64gcc$(GCC_SONAME)
+p_l64gccdbg	= lib64gcc$(GCC_SONAME)-dbg
+d_l64gcc	= debian/$(p_l64gcc)
+d_l64gccdbg	= debian/$(p_l64gccdbg)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lgcc) $(d_lgccdbg)
+	dh_installdirs -p$(p_lgcc) \
+		$(docdir)/$(p_lgcc) \
+		$(libdir)
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/lib/libgcc_s.so.$(GCC_SONAME) $(d_lgcc)/$(libdir)/.
+endif
+
+ifeq ($(with_standalone_gcj),yes)
+	debian/dh_doclink -p$(p_lgcc) $(p_jbase)
+	debian/dh_doclink -p$(p_lgccdbg) $(p_jbase)
+else
+	debian/dh_doclink -p$(p_lgcc) $(p_base)
+	debian/dh_doclink -p$(p_lgccdbg) $(p_base)
+endif
+	debian/dh_rmemptydirs -p$(p_lgcc)
+	debian/dh_rmemptydirs -p$(p_lgccdbg)
+	dh_strip -v -p$(p_lgcc) --dbg-package=$(p_lgccdbg)
+	dh_compress -p$(p_lgcc) -p$(p_lgccdbg)
+	dh_fixperms -p$(p_lgcc) -p$(p_lgccdbg)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_lgcc) -V '$(p_lgcc) (>= $(DEB_LIBGCC_SOVERSION))' \
+		-- -v$(DEB_LIBGCC_VERSION)
+	cat debian/$(p_lgcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	dh_shlibdeps -p$(p_lgcc)
+	dh_gencontrol -p$(p_lgcc) -p$(p_lgccdbg) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+
+	mkdir -p $(d_lgcc)/usr/share/lintian/overrides
+	echo '$(p_lgcc): package-name-doesnt-match-sonames' \
+		> $(d_lgcc)/usr/share/lintian/overrides/$(p_lgcc)
+
+	dh_installdeb -p$(p_lgcc) -p$(p_lgccdbg)
+	dh_md5sums -p$(p_lgcc) -p$(p_lgccdbg)
+	dh_builddeb -p$(p_lgcc) -p$(p_lgccdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64gcc) $(d_l64gccdbg)
+	dh_installdirs -p$(p_l64gcc) \
+		$(docdir)/$(p_l64gcc) \
+		lib64
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/lib64/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/lib64/.
+endif
+
+	debian/dh_doclink -p$(p_l64gcc) $(p_base)
+	debian/dh_doclink -p$(p_l64gccdbg) $(p_base)
+	debian/dh_rmemptydirs -p$(p_l64gcc)
+	debian/dh_rmemptydirs -p$(p_l64gccdbg)
+	dh_strip -p$(p_l64gcc) --dbg-package=$(p_l64gccdbg)
+	dh_compress -p$(p_l64gcc) -p$(p_l64gccdbg)
+	dh_fixperms -p$(p_l64gcc) -p$(p_l64gccdbg)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_l64gcc) \
+		-V '$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION))' \
+		-- -v$(DEB_LIBGCC_VERSION)
+# this does not work ... shlibs.local doesn't distinguish 32/64 bit libs
+#	cat debian/$(p_l64gcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+#	dh_shlibdeps -p$(p_l64gcc)
+#/usr/bin/ldd: line 1: /lib/ld64.so.1: cannot execute binary file
+#dpkg-shlibdeps: failure: ldd on `debian/lib64gcc1/lib64/libgcc_s.so.1' gave error exit status 1
+ifeq ($(DEB_TARGET_ARCH),s390)
+	echo 'shlibs:Depends=libc6-s390x (>= 2.3.1-1)' \
+		> debian/$(p_l64gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),i386)
+	echo 'shlibs:Depends=libc6-amd64' \
+		> debian/$(p_l64gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),sparc)
+	echo 'shlibs:Depends=libc6-sparc64 (>= 2.3.1-1)' \
+		> debian/$(p_l64gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),powerpc)
+	# FIXME change dependency when lib64c6 exists
+	echo 'shlibs:Depends=libc6 (>= 0.1)' \
+		> debian/$(p_l64gcc).substvars
+endif
+	dh_gencontrol -p$(p_l64gcc) -p$(p_l64gccdbg) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64gcc) -p$(p_l64gccdbg)
+	dh_md5sums -p$(p_l64gcc) -p$(p_l64gccdbg)
+	dh_builddeb -p$(p_l64gcc) -p$(p_l64gccdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib32gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32gcc) $(d_l32gccdbg)
+
+	dh_installdirs -p$(p_l32gcc) \
+		$(docdir)/$(p_l32gcc) \
+		$(lib32)
+	mv $(d)/$(lib32)/libgcc_s.so.$(GCC_SONAME) \
+		$(d_l32gcc)/$(lib32)/.
+
+	debian/dh_doclink -p$(p_l32gcc) $(p_base)
+	debian/dh_doclink -p$(p_l32gccdbg) $(p_base)
+	debian/dh_rmemptydirs -p$(p_l32gcc)
+	debian/dh_rmemptydirs -p$(p_l32gccdbg)
+	dh_strip -p$(p_l32gcc) --dbg-package=$(p_l32gccdbg)
+
+	dh_makeshlibs -p$(p_l32gcc) -p$(p_l32gccdbg) \
+		-V '$(p_l32gcc) (>= $(DEB_LIBGCC_SOVERSION))' \
+		-- -v$(DEB_LIBGCC_VERSION)
+ifeq ($(DEB_TARGET_ARCH),amd64)
+	echo 'shlibs:Depends=libc6-i386 | ia32-libs' \
+		> debian/$(p_l32gcc).substvars
+endif
+ifeq ($(DEB_TARGET_ARCH),ppc64)
+	echo 'shlibs:Depends=libc6-powerpc' \
+		> debian/$(p_l32gcc).substvars
+endif
+
+	dh_compress -p$(p_l32gcc) -p$(p_l32gccdbg)
+	dh_fixperms -p$(p_l32gcc) -p$(p_l32gccdbg)
+	dh_gencontrol -p$(p_l32gcc) -p$(p_l32gccdbg) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+ifeq (,$(findstring emul, $(lib32)))
+	rm -f debian/lib32gcc1.preinst
+endif
+	dh_installdeb -p$(p_l32gcc) -p$(p_l32gccdbg)
+	dh_md5sums -p$(p_l32gcc) -p$(p_l32gccdbg)
+	dh_builddeb -p$(p_l32gcc) -p$(p_l32gccdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-pascal.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-pascal.mk
@@ -0,0 +1,110 @@
+arch_binaries  := $(arch_binaries) pascal
+indep_binaries := $(indep_binaries) pascal-doc
+
+p_gpc	= gpc$(pkg_ver)
+p_gpcd	= gpc$(pkg_ver)-doc
+
+d_gpc	= debian/$(p_gpc)
+d_gpcd	= debian/$(p_gpcd)
+
+dirs_gpc = \
+	$(docdir)/$(p_base)/pascal \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/{include,units} \
+	$(PF)/share/man/man1
+ifeq ($(with_gpidump),yes)
+  files_gpc = \
+	$(PF)/bin/{binobj,gpc,gpc-run,gpidump}$(pkg_ver) \
+	$(PF)/share/man/man1/{binobj,gpc,gpc-run,gpidump}$(pkg_ver).1 \
+	$(gcc_lexec_dir)/gpc1 \
+	$(gcc_lib_dir)/{libgpc.a,units} \
+	$(gcc_lib_dir)/include/gpc-in-c.h
+else
+  files_gpc = \
+	$(PF)/bin/{binobj,gpc,gpc-run}$(pkg_ver) \
+	$(PF)/share/man/man1/{binobj,gpc,gpc-run}$(pkg_ver).1 \
+	$(gcc_lexec_dir)/gpc1 \
+	$(gcc_lib_dir)/{libgpc.a,units} \
+	$(gcc_lib_dir)/include/gpc-in-c.h
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-pascal: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gpc)
+	dh_installdirs -p$(p_gpc) $(dirs_gpc)
+
+	rm -f $(d)/$(PF)/bin/pc $(d)/$(PF)/share/man/man1/pc.1
+	DH_COMPAT=2 dh_movefiles -p$(p_gpc) $(files_gpc)
+
+	dh_installdocs -p$(p_gpcd) 
+	dh_installchangelogs -p$(p_gpcd)
+
+	cp -p $(srcdir)/gcc/p/{AUTHORS,FAQ,NEWS,README} \
+		$(d_gpc)/$(docdir)/$(p_base)/pascal/.
+	cp -p $(srcdir)/gcc/p/test/README \
+		$(d_gpc)/$(docdir)/$(p_base)/pascal/README.gpc-test
+	cp -p $(srcdir)/gcc/p/ChangeLog \
+		$(d_gpc)/$(docdir)/$(p_base)/pascal/changelog
+
+#	ln -sf ../$(p_gpc)/examples $(d_gpcd)/$(docdir)/$(p_gpcd)/examples
+#	ln -sf ../$(p_gpc)/docdemos $(d_gpcd)/$(docdir)/$(p_gpcd)/docdemos
+
+	dh_strip -p$(p_gpc)
+	dh_compress -p$(p_gpc)
+	dh_fixperms -p$(p_gpc)
+	dh_shlibdeps -p$(p_gpc)
+	dh_gencontrol -p$(p_gpc) -- -v$(DEB_GPC_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gpc)
+	dh_md5sums -p$(p_gpc)
+	dh_builddeb -p$(p_gpc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-pascal-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gpcd)
+	dh_installdirs -p$(p_gpcd) \
+		$(docdir)/$(p_base)/pascal \
+		$(docdir)/$(p_gpc)/pascal \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_gpcd) \
+		$(PF)/share/info/gpc*$(pkg_ver)*info*
+
+	dh_installdocs -p$(p_gpcd) 
+	dh_installchangelogs -p$(p_gpcd)
+	cp -p html/gpc.html html/gpcs.html \
+		$(d_gpcd)/$(docdir)/$(p_base)/pascal/
+	mv $(d)/$(PF)/doc/gpc/demos \
+		$(d_gpcd)/$(docdir)/$(p_base)/pascal/examples
+	mv $(d)/$(PF)/doc/gpc/docdemos \
+		$(d_gpcd)/$(docdir)/$(p_base)/pascal/.
+
+	for i in gpc.html gpc.html docdemos examples; do \
+	  ln -sf ../$(p_base)/pascal/$$i \
+	    $(d_gpcd)/usr/share/doc/$(p_gpcd)/$$i; \
+	  ln -sf ../$(p_base)/pascal/$$i \
+	    $(d_gpcd)/usr/share/doc/$(p_gpc)/$$i; \
+	done
+
+#	-$(MAKE) -C $(builddir)/gcc gpc.ps
+#	cp -p $(builddir)/gcc/gpc.ps $(d_gpcd)/$(docdir)/$(p_base)/pascal/.
+
+	debian/dh_rmemptydirs -p$(p_gpcd)
+
+	dh_compress -p$(p_gpcd)
+	dh_fixperms -p$(p_gpcd)
+	dh_installdeb -p$(p_gpcd)
+	dh_gencontrol -p$(p_gpcd) -- -v$(DEB_GPC_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_gpcd)
+	dh_builddeb -p$(p_gpcd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-gcc.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-gcc.mk
@@ -0,0 +1,318 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) gcc-multi
+endif
+arch_binaries  := $(arch_binaries) gcc
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  indep_binaries := $(indep_binaries) gcc-doc
+endif
+ifeq ($(with_nls),yes)
+  indep_binaries := $(indep_binaries) gcc-locales
+endif
+
+# gcc must be moved after g77 and g++
+# not all files $(PF)/include/*.h are part of gcc,
+# but it becomes difficult to name all these files ...
+
+dirs_gcc = \
+	$(docdir)/$(p_base)/{gcc,libssp,gomp} \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/{include,include-fixed} \
+	$(PF)/share/man/man1 $(libdir)
+
+files_gcc = \
+	$(PF)/bin/{gcc,gcov}$(pkg_ver) \
+	$(gcc_lexec_dir)/collect2 \
+	$(gcc_lib_dir)/{libgcc*,libgcov.a,*.o} \
+	$(gcc_lib_dir)/include/std*.h \
+	$(shell for h in \
+		    README features.h \
+		    {decfloat,float,iso646,limits,syslimits,unwind,varargs}.h \
+		    {,e,p,x}mmintrin.h mm3dnow.h mm_malloc.h; \
+		do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$h \
+		    && echo $(gcc_lib_dir)/include/$$h; \
+		  test -e $(d)/$(gcc_lib_dir)/include-fixed/$$h \
+		    && echo $(gcc_lib_dir)/include-fixed/$$h; \
+		done) \
+	$(shell for d in \
+		  asm bits gnu linux $(TARGET_ALIAS) \
+		  $(subst $(DEB_TARGET_GNU_CPU),$(biarch_cpu),$(TARGET_ALIAS)); \
+		do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$d \
+		    && echo $(gcc_lib_dir)/include/$$d; \
+		  test -e $(d)/$(gcc_lib_dir)/include-fixed/$$d \
+		    && echo $(gcc_lib_dir)/include-fixed/$$d; \
+		done) \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+		&& echo $(gcc_lib_dir)/SYSCALLS.c.X)
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+    files_gcc += \
+	$(PF)/share/man/man1/{gcc,gcov}$(pkg_ver).1
+endif
+
+ifeq ($(with_libssp),yes)
+    files_gcc += $(gcc_lib_dir)/include/ssp
+endif
+ifeq ($(with_gomp),yes)
+    files_gcc += $(gcc_lib_dir)/include/omp.h
+endif
+
+ifeq ($(DEB_HOST_ARCH),ia64)
+    files_gcc += $(gcc_lib_dir)/include/ia64intrin.h
+endif
+
+ifeq ($(DEB_HOST_ARCH),m68k)
+    files_gcc += $(gcc_lib_dir)/include/math-68881.h
+endif
+
+ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),powerpc ppc64))
+    files_gcc += $(gcc_lib_dir)/include/{altivec.h,ppc-asm.h,spe.h}
+endif
+
+usr_doc_files = debian/README.Bugs \
+	$(shell test -f $(srcdir)/FAQ && echo $(srcdir)/FAQ) \
+	$(shell test -f test-summary && echo test-summary)
+
+p_loc	= gcc$(pkg_ver)-locales
+d_loc	= debian/$(p_loc)
+
+p_gcc_m	= gcc$(pkg_ver)-multilib
+d_gcc_m	= debian/$(p_gcc_m)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcc)
+	dh_installdirs -p$(p_gcc) $(dirs_gcc)
+
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+
+ifeq ($(with_libgmath),yes)
+	rm -f $(d)/$(PF)/$(libdir)/libgcc-math.{la,so}
+	dh_link -p$(p_gcc) \
+	  /$(PF)/$(libdir)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc-math.so
+	mv $(d)/$(PF)/$(libdir)/libgcc-math.a $(d)/$(gcc_lib_dir)/
+endif
+
+ifeq ($(with_libssp),yes)
+	mv $(d)/$(PF)/lib/libssp*.a $(d_gcc)/$(gcc_lib_dir)/
+	rm -f $(d)/$(PF)/lib/libssp*.{la,so}
+	dh_link -p$(p_gcc) \
+	  /$(PF)/lib/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/libssp.so
+	cp -p $(srcdir)/libssp/ChangeLog \
+		$(d_gcc)/$(docdir)/$(p_base)/libssp/changelog
+endif
+ifeq ($(with_gomp),yes)
+	mv $(d)/$(PF)/lib/libgomp*.{a,spec} $(d_gcc)/$(gcc_lib_dir)/
+	rm -f $(d)/$(PF)/lib/libgomp*.{la,so}
+	dh_link -p$(p_gcc) \
+	  /$(PF)/lib/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir)/libgomp.so
+	cp -p $(srcdir)/libgomp/ChangeLog \
+		$(d_gcc)/$(docdir)/$(p_base)/gomp/changelog
+endif
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc) $(files_gcc)
+
+	ln -sf gcc$(pkg_ver) \
+	    $(d_gcc)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver)
+	ln -sf gcc$(pkg_ver) \
+	    $(d_gcc)/$(PF)/bin/$(TARGET_ALIAS)-gcc$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+	ln -sf gcc$(pkg_ver).1 \
+	    $(d_gcc)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1
+	ln -sf gcc$(pkg_ver).1 \
+	    $(d_gcc)/$(PF)/share/man/man1/$(TARGET_ALIAS)-gcc$(pkg_ver).1
+endif
+
+#	dh_installdebconf
+	debian/dh_doclink -p$(p_gcc) $(p_base)
+	cp -p $(usr_doc_files) $(d_gcc)/$(docdir)/$(p_base)/.
+	if [ -f testsuite-comparision ]; then \
+	  cp -p testsuite-comparision $(d_gcc)/$(docdir)/$(p_base)/. ; \
+	fi
+	cp -p debian/README.ssp $(d_gcc)/$(docdir)/$(p_base)/
+	cp -p debian/NEWS.gcc $(d_gcc)/$(docdir)/$(p_base)/NEWS
+	cp -p debian/NEWS.html $(d_gcc)/$(docdir)/$(p_base)/NEWS.html
+	cp -p $(srcdir)/ChangeLog $(d_gcc)/$(docdir)/$(p_base)/changelog
+	cp -p $(srcdir)/gcc/ChangeLog \
+		$(d_gcc)/$(docdir)/$(p_base)/gcc/changelog
+	if [ -f $(builddir)/gcc/.bad_compare ]; then \
+	  ( \
+	    echo "The comparision of the stage2 and stage3 object files shows differences."; \
+	    echo "The Debian package was modified to ignore these differences."; \
+	    echo ""; \
+	    echo "The following files differ:"; \
+	    echo ""; \
+	    cat $(builddir)/gcc/.bad_compare; \
+	  ) > $(d_gcc)/$(docdir)/$(p_base)/BOOTSTRAP_COMPARISION_FAILURE; \
+	else \
+	  true; \
+	fi
+	debian/dh_rmemptydirs -p$(p_gcc)
+	dh_strip -p$(p_gcc)
+	dh_compress -p$(p_gcc) -X README.Bugs
+	dh_fixperms -p$(p_gcc)
+	dh_shlibdeps -p$(p_gcc)
+	dh_gencontrol -p$(p_gcc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gcc)
+	dh_md5sums -p$(p_gcc)
+	dh_builddeb -p$(p_gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+	: # remove empty directories, when all components are in place
+	-find $(d) -type d -empty -delete
+
+	@echo "Listing installed files not included in any package:"
+	-find $(d) ! -type d
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-multi: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcc_m)
+	dh_installdirs -p$(p_gcc_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir) \
+
+ifeq ($(biarch),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,libgcov.a,*.o}
+	rm -f $(d)/$(PF)/$(lib64)/libgcc_s.so
+	dh_link -p$(p_gcc_m) \
+	  /$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
+	  /$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+  ifeq ($(with_lib64gmath),yes)
+	rm -f $(d)/$(PF)/$(lib64)/libgcc-math.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(PF)/$(lib64)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc-math.so
+	mv $(d)/$(PF)/$(lib64)/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/
+  endif
+endif
+ifeq ($(biarch32),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,libgcov.a,*.o}
+	rm -f $(d)/$(lib32)/libgcc_s.so
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/libgcc_s_32.so \
+	  /$(lib32)/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+  ifeq ($(with_lib32gmath),yes)
+	rm -f $(d)/$(lib32)/libgcc-math.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libgcc-math.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc-math.so
+	mv $(d)/$(lib32)/libgcc-math.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/
+  endif
+endif
+
+ifeq ($(with_libssp),yes)
+  ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/$(lib64)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	rm -f $(d)/$(PF)/$(lib64)/$(biarchsubdir)/libssp*.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(PF)/$(lib64)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libssp.so
+  endif
+  ifeq ($(biarch32),yes)
+	mv $(d)/$(lib32)/libssp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	rm -f $(d)/$(lib32)/$(biarchsubdir)/libssp*.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libssp.so.$(SSP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libssp.so
+  endif
+endif
+
+ifeq ($(with_gomp),yes)
+  ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/$(lib64)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	rm -f $(d)/$(PF)/$(lib64)/$(biarchsubdir)/libgomp*.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(PF)/$(lib64)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgomp.so
+  endif
+  ifeq ($(biarch32),yes)
+	mv $(d)/$(lib32)/libgomp*.a $(d_gcc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	rm -f $(d)/$(lib32)/$(biarchsubdir)/libgomp*.{la,so}
+	dh_link -p$(p_gcc_m) \
+	  /$(lib32)/libgomp.so.$(GOMP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgomp.so
+  endif
+endif
+
+	debian/dh_doclink -p$(p_gcc_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_gcc_m)
+
+	dh_strip -p$(p_gcc_m)
+	dh_compress -p$(p_gcc_m)
+	dh_shlibdeps -p$(p_gcc_m)
+	dh_fixperms -p$(p_gcc_m)
+	dh_installdeb -p$(p_gcc_m)
+	dh_gencontrol -p$(p_gcc_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_gcc_m)
+	dh_builddeb -p$(p_gcc_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-locales: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_loc)
+	dh_installdirs -p$(p_loc) \
+		$(docdir)
+	DH_COMPAT=2 dh_movefiles -p$(p_loc) \
+		$(PF)/share/locale/*/*/cpplib*.* \
+		$(PF)/share/locale/*/*/gcc*.*
+
+	debian/dh_doclink -p$(p_loc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_loc)
+
+	dh_compress -p$(p_loc)
+	dh_fixperms -p$(p_loc)
+	dh_installdeb -p$(p_loc)
+	dh_gencontrol -p$(p_loc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_loc)
+	dh_builddeb -p$(p_loc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc-doc: $(build_html_stamp) $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_doc)
+	dh_installdirs -p$(p_doc) \
+		$(docdir)/$(p_base) \
+		$(PF)/share/info
+	DH_COMPAT=2 dh_movefiles -p$(p_doc) \
+		$(PF)/share/info/gcc*
+	rm -f $(d_doc)/$(PF)/share/info/gccinst*
+
+ifeq ($(with_gomp),yes)
+	$(MAKE) -C $(buildlibdir)/libgomp stamp-build-info
+	cp -p $(buildlibdir)/libgomp/libgomp$(pkg_ver).info $(d_doc)/$(PF)/share/info/
+endif
+
+	debian/dh_doclink -p$(p_doc) $(p_base)
+	dh_installdocs -p$(p_doc) html/gcc.html html/gccint.html
+ifeq ($(with_gomp),yes)
+	cp -p html/libgomp.html $(d_doc)/usr/share/doc/$(p_doc)/
+endif
+	rm -f $(d_doc)/$(docdir)/$(p_base)/copyright
+	debian/dh_rmemptydirs -p$(p_doc)
+
+	dh_compress -p$(p_doc)
+	dh_fixperms -p$(p_doc)
+	dh_installdeb -p$(p_doc)
+	dh_gencontrol -p$(p_doc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_doc)
+	dh_builddeb -p$(p_doc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libssp.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libssp.mk
@@ -0,0 +1,121 @@
+arch_binaries  := $(arch_binaries) libssp
+ifeq ($(with_lib64ssp),yes)
+  arch_binaries  := $(arch_binaries) lib64ssp
+endif
+ifeq ($(with_lib32ssp),yes)
+  arch_binaries	:= $(arch_binaries) lib32ssp
+endif
+
+p_ssp	= libssp$(SSP_SONAME)
+p_ssp32	= lib32ssp$(SSP_SONAME)
+p_ssp64	= lib64ssp$(SSP_SONAME)
+p_sspd	= libssp$(SSP_SONAME)-dev
+
+d_ssp	= debian/$(p_ssp)
+d_ssp32	= debian/$(p_ssp32)
+d_ssp64	= debian/$(p_ssp64)
+d_sspd	= debian/$(p_sspd)
+
+dirs_ssp = \
+	$(docdir)/$(p_base) \
+	$(PF)/$(libdir)
+files_ssp = \
+	$(PF)/$(libdir)/libssp.so.*
+
+dirs_sspd = \
+	$(docdir) \
+	$(PF)/include \
+	$(PF)/$(libdir)
+files_sspd = \
+	$(gcc_lib_dir)/include/ssp \
+	$(PF)/$(libdir)/libssp.{a,so,la} \
+	$(PF)/$(libdir)/libssp_nonshared.{a,la}
+
+ifeq ($(with_lib32ssp),yes)
+	dirs_sspd  += $(lib32)
+	files_sspd += $(lib32)/libssp.{a,la,so}
+	files_sspd += $(lib32)/libssp_nonshared.{a,la}
+endif
+ifeq ($(with_lib64ssp),yes)
+	dirs_sspd  += $(PF)/lib64
+	files_sspd += $(PF)/lib64/libssp.{a,la,so}
+	files_sspd += $(PF)/lib64/libssp_nonshared.{a,la}
+endif
+
+$(binary_stamp)-libssp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ssp)
+	dh_installdirs -p$(p_ssp)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_ssp) $(files_ssp)
+	debian/dh_doclink -p$(p_ssp) $(p_base)
+
+	debian/dh_rmemptydirs -p$(p_ssp)
+
+	dh_strip -p$(p_ssp)
+	dh_compress -p$(p_ssp)
+	dh_fixperms -p$(p_ssp)
+	dh_makeshlibs -p$(p_ssp) -V '$(p_ssp) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_ssp)
+	dh_gencontrol -p$(p_ssp) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ssp)
+	dh_md5sums -p$(p_ssp)
+	dh_builddeb -p$(p_ssp)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64ssp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ssp64)
+	dh_installdirs -p$(p_ssp64) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_ssp64) \
+		$(PF)/lib64/libssp.so.*
+
+	debian/dh_doclink -p$(p_ssp64) $(p_base)
+
+	dh_strip -p$(p_ssp64)
+	dh_compress -p$(p_ssp64)
+	dh_fixperms -p$(p_ssp64)
+	dh_makeshlibs -p$(p_ssp64) -V '$(p_ssp64) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_ssp64)
+	dh_gencontrol -p$(p_ssp64) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ssp64)
+	dh_md5sums -p$(p_ssp64)
+	dh_builddeb -p$(p_ssp64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32ssp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_ssp32)
+	dh_installdirs -p$(p_ssp32) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_ssp32) \
+		$(lib32)/libssp.so.*
+
+	debian/dh_doclink -p$(p_ssp32) $(p_base)
+
+	dh_strip -p$(p_ssp32)
+	dh_compress -p$(p_ssp32)
+	dh_fixperms -p$(p_ssp32)
+	dh_makeshlibs -p$(p_ssp32) -V '$(p_ssp32) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_ssp32)
+	dh_gencontrol -p$(p_ssp32) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_ssp32)
+	dh_md5sums -p$(p_ssp32)
+	dh_builddeb -p$(p_ssp32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-nof.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-nof.mk
@@ -0,0 +1,56 @@
+arch_binaries  := $(arch_binaries) nof
+
+p_nof  = gcc$(pkg_ver)-nof
+d_nof  = debian/$(p_nof)
+
+dirs_nof = \
+	$(docdir) \
+	$(PF)/$(libdir)/nof
+ifeq ($(with_cdev),yes)
+  dirs_nof += \
+	$(gcc_lib_dir)/nof
+endif
+
+ifeq ($(with_cdev),yes)
+  files_nof = \
+	$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) \
+	$(gcc_lib_dir)/libgcc_s_nof.so \
+	$(PF)/$(libdir)/nof \
+	$(gcc_lib_dir)/nof
+else
+  files_nof = \
+	$(libdir)/libgcc_s_nof.so.$(GCC_SONAME)
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-nof: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	mv $(d)/$(PF)/$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) $(d)/$(libdir)/.
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s_nof.so
+	ln -sf /$(libdir)/libgcc_s_nof.so.$(GCC_SONAME) \
+		$(d)/$(gcc_lib_dir)/libgcc_s_nof.so
+
+	rm -rf $(d_nof)
+	dh_installdirs -p$(p_nof) $(dirs_nof)
+	DH_COMPAT=2 dh_movefiles -p$(p_nof) $(files_nof)
+	debian/dh_doclink -p$(p_nof) $(p_base)
+	dh_strip -p$(p_nof)
+	dh_compress -p$(p_nof)
+	dh_fixperms -p$(p_nof)
+	dh_shlibdeps -p$(p_nof)
+
+	dh_makeshlibs -p$(p_nof)
+	: # Only keep the shlibs file for the libgcc_s_nof library
+	fgrep libgcc_s_nof debian/$(p_nof)/DEBIAN/shlibs \
+		> debian/$(p_nof)/DEBIAN/shlibs.tmp
+	mv -f debian/$(p_nof)/DEBIAN/shlibs.tmp debian/$(p_nof)/DEBIAN/shlibs
+
+	dh_gencontrol -p$(p_nof) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_nof)
+	dh_md5sums -p$(p_nof)
+	dh_builddeb -p$(p_nof)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libmudflap.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libmudflap.mk
@@ -0,0 +1,188 @@
+ifeq ($(with_dev),yes)
+  arch_binaries  := $(arch_binaries) libmudflapdev
+endif
+
+ifeq ($(with_libmudflap),yes)
+  arch_binaries  := $(arch_binaries) libmudflap
+  ifeq ($(with_lib64mudflap),yes)
+    arch_binaries  := $(arch_binaries) lib64mudflap
+  endif
+  ifeq ($(with_lib32mudflap),yes)
+    arch_binaries	:= $(arch_binaries) lib32mudflap
+  endif
+endif
+
+p_mf	= libmudflap$(MUDFLAP_SONAME)
+p_l32mf	= lib32mudflap$(MUDFLAP_SONAME)
+p_l64mf	= lib64mudflap$(MUDFLAP_SONAME)
+p_mfd	= libmudflap$(MUDFLAP_SONAME)$(pkg_ver)-dev
+p_mfdbg		= libmudflap$(MUDFLAP_SONAME)-dbg
+p_l32mfdbg	= lib32mudflap$(MUDFLAP_SONAME)-dbg
+p_l64mfdbg	= lib64mudflap$(MUDFLAP_SONAME)-dbg
+
+d_mf	= debian/$(p_mf)
+d_l32mf	= debian/$(p_l32mf)
+d_l64mf	= debian/$(p_l64mf)
+d_mfd	= debian/$(p_mfd)
+d_mfddbg	= debian/$(p_mfddbg)
+d_l32mfdbg	= debian/$(p_l32mfdbg)
+d_l64mfdbg	= debian/$(p_l64mfdbg)
+
+dirs_mfd = \
+	$(docdir)/$(p_base)/mudflap \
+	$(PF)/include \
+	$(PF)/$(libdir)
+files_mfd = \
+	$(gcc_lib_dir)/include/mf-runtime.h \
+	$(gcc_lib_dir)/libmudflap*.a
+
+ifeq ($(with_lib32mudflap),yes)
+	dirs_mfd  += $(gcc_lib_dir)/$(biarchsubdir)
+	files_mfd += $(gcc_lib_dir)/$(biarchsubdir)/libmudflap*.a
+endif
+ifeq ($(with_lib64mudflap),yes)
+	dirs_mfd  += $(gcc_lib_dir)/$(biarchsubdir)
+	files_mfd += $(gcc_lib_dir)/$(biarchsubdir)/libmudflap*.a
+endif
+
+$(binary_stamp)-libmudflap: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_mf) $(d_mfdbg)
+	dh_installdirs -p$(p_mf) \
+		$(docdir) \
+		$(PF)/$(libdir)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_mf) \
+		$(PF)/$(libdir)/libmudflap*.so.*
+
+	debian/dh_doclink -p$(p_mf) $(p_base)
+	debian/dh_doclink -p$(p_mfdbg) $(p_base)
+	debian/dh_rmemptydirs -p$(p_mf)
+	dh_strip -p$(p_mf) --dbg-package=$(p_mfdbg)
+	dh_compress -p$(p_mf) -p$(p_mfdbg)
+	dh_fixperms -p$(p_mf) -p$(p_mfdbg)
+	dh_makeshlibs -p$(p_mf) -V '$(p_mf) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_mf)
+	dh_gencontrol -p$(p_mf) -p$(p_mfdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_mf) -p$(p_mfdbg)
+	dh_md5sums -p$(p_mf) -p$(p_mfdbg)
+	dh_builddeb -p$(p_mf) -p$(p_mfdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libmudflapdev: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_mfd)
+	dh_installdirs -p$(p_mfd) $(dirs_mfd)
+
+	rm -f $(d)/$(PF)/$(libdir)/libmudflap*.so
+	mv $(d)/$(PF)/$(libdir)/libmudflap*.a $(d)/$(gcc_lib_dir)/
+
+	rm -f $(d)/$(PF)/$(libdir)/libmudflap*.la
+	rm -f $(d)/$(PF)/$(libdir)/$(biarchsubdir)/libmudflap*.la
+
+	DH_COMPAT=2 dh_movefiles -p$(p_mfd) $(files_mfd)
+
+	dh_link -p$(p_mfd) \
+	  /$(PF)/$(libdir)/libmudflap.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/libmudflap.so \
+	  /$(PF)/$(libdir)/libmudflapth.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/libmudflapth.so
+
+ifeq ($(with_lib32mudflap),yes)
+	rm -f $(d)/$(lib32)/libmudflap*.so
+	mkdir -p $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(lib32)/libmudflap*.a $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_mfd) \
+	  /$(lib32)/libmudflap.so.$(MUDLFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflap.so \
+	  /$(lib32)/libmudflapth.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflapth.so
+endif
+
+ifeq ($(with_lib64mudflap),yes)
+	rm -f $(d)/$(PF)/$(lib64)/libmudflap*.so
+	mkdir -p $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/$(lib64)/libmudflap*.a $(d_mfd)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_mfd) \
+	  /$(PF)/lib64/libmudflap.so.$(MUDLFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflap.so \
+	  /$(PF)/lib64/libmudflapth.so.$(MUDFLAP_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libmudflapth.so
+endif
+
+	cp -p $(srcdir)/libmudflap/ChangeLog \
+		$(d_mfd)/$(docdir)/$(p_base)/mudflap/changelog
+
+	debian/dh_doclink -p$(p_mfd) $(p_base)
+	debian/dh_rmemptydirs -p$(p_mfd)
+
+	dh_strip -p$(p_mfd)
+	dh_compress -p$(p_mfd)
+	dh_fixperms -p$(p_mfd)
+	dh_shlibdeps -p$(p_mfd)
+	dh_gencontrol -p$(p_mfd) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_mfd)
+	dh_md5sums -p$(p_mfd)
+	dh_builddeb -p$(p_mfd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64mudflap: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64mf) $(d_l64mfdbg)
+	dh_installdirs -p$(p_l64mf) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64mf) \
+		$(PF)/lib64/libmudflap*.so.*
+
+	debian/dh_doclink -p$(p_l64mf) $(p_base)
+	debian/dh_doclink -p$(p_l64mfdbg) $(p_base)
+
+	dh_strip -p$(p_l64mf) --dbg-package=$(p_l64mfdbg)
+	dh_compress -p$(p_l64mf) -p$(p_l64mfdbg)
+	dh_fixperms -p$(p_l64mf) -p$(p_l64mfdbg)
+	dh_makeshlibs -p$(p_l64mf) -V '$(p_l64mf) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64mf)
+	dh_gencontrol -p$(p_l64mf) -p$(p_l64mfdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64mf) -p$(p_l64mfdbg)
+	dh_md5sums -p$(p_l64mf) -p$(p_l64mfdbg)
+	dh_builddeb -p$(p_l64mf) -p$(p_l64mfdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32mudflap: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32mf) $(d_l32mfdbg)
+	dh_installdirs -p$(p_l32mf) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32mf) \
+		$(lib32)/libmudflap*.so.*
+
+	debian/dh_doclink -p$(p_l32mf) $(p_base)
+	debian/dh_doclink -p$(p_l32mfdbg) $(p_base)
+
+	dh_strip -p$(p_l32mf) --dbg-package=$(p_l32mfdbg)
+	dh_compress -p$(p_l32mf) -p$(p_l32mfdbg)
+	dh_fixperms -p$(p_l32mf) -p$(p_l32mfdbg)
+	dh_makeshlibs -p$(p_l32mf) -V '$(p_l32mf) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32mf)
+	dh_gencontrol -p$(p_l32mf) -p$(p_l32mfdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32mf) -p$(p_l32mfdbg)
+	dh_md5sums -p$(p_l32mf) -p$(p_l32mfdbg)
+	dh_builddeb -p$(p_l32mf) -p$(p_l32mfdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libobjc.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libobjc.mk
@@ -0,0 +1,137 @@
+ifeq ($(with_objcdev),yes)
+  arch_binaries := $(arch_binaries) libobjc
+endif
+ifeq ($(with_lib64objc),yes)
+  arch_binaries  := $(arch_binaries) lib64objc
+endif
+ifeq ($(with_lib32objc),yes)
+  arch_binaries	:= $(arch_binaries) lib32objc
+endif
+
+p_lobjc		= libobjc$(OBJC_SONAME)
+p_l32objc	= lib32objc$(OBJC_SONAME)
+p_l64objc	= lib64objc$(OBJC_SONAME)
+p_lobjcdbg	= libobjc$(OBJC_SONAME)-dbg
+p_l32objcdbg	= lib32objc$(OBJC_SONAME)-dbg
+p_l64objcdbg	= lib64objc$(OBJC_SONAME)-dbg
+
+d_lobjc		= debian/$(p_lobjc)
+d_l32objc	= debian/$(p_l32objc)
+d_l64objc	= debian/$(p_l64objc)
+d_lobjcdbg	= debian/$(p_lobjcdbg)
+d_l32objcdbg	= debian/$(p_l32objcdbg)
+d_l64objcdbg	= debian/$(p_l64objcdbg)
+
+dirs_lobjc = \
+	$(docdir)/objc \
+	$(PF)/$(libdir)
+files_lobjc = \
+	$(PF)/$(libdir)/libobjc.so.*
+ifeq ($(with_objc_gc),yes)
+  files_lobjc += \
+	$(PF)/$(libdir)/libobjc_gc.so.*
+endif
+
+
+$(binary_stamp)-libobjc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lobjc) $(d_lobjcdbg)
+	dh_installdirs -p$(p_lobjc) $(dirs_lobjc)
+#	mv $(d)/$(gcc_lib_dir)/libobjc.so.* $(d)/$(PF)/$(libdir)/.
+#ifeq ($(with_objc_gc),yes)
+#	mv $(d)/$(gcc_lib_dir)/libobjc_gc.so.* $(d)/$(PF)/$(libdir)/.
+#endif
+	DH_COMPAT=2 dh_movefiles -p$(p_lobjc) $(files_lobjc)
+
+	debian/dh_doclink -p$(p_lobjc) $(p_base)
+	debian/dh_doclink -p$(p_lobjcdbg) $(p_base)
+
+	debian/dh_rmemptydirs -p$(p_lobjc)
+
+	dh_strip -p$(p_lobjc) --dbg-package=$(p_lobjcdbg)
+	dh_compress -p$(p_lobjc) -p$(p_lobjcdbg)
+
+	dh_fixperms -p$(p_lobjc) -p$(p_lobjcdbg)
+	b=libobjc; \
+	for ext in preinst postinst prerm postrm; do \
+	  for t in '' -dev -dbg; do \
+	    v=$(OBJC_SONAME); \
+	    if [ -f debian/$$b$$t.$$ext ]; then \
+	      cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	    fi; \
+	  done; \
+	done
+	dh_makeshlibs -p$(p_lobjc) -V '$(p_lobjc) (>= $(DEB_SOVERSION))'
+	dh_shlibdeps -p$(p_lobjc)
+	dh_gencontrol -p$(p_lobjc) -p$(p_lobjcdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lobjc) -p$(p_lobjcdbg)
+	dh_md5sums -p$(p_lobjc) -p$(p_lobjcdbg)
+	dh_builddeb -p$(p_lobjc) -p$(p_lobjcdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64objc) $(d_l64objcdbg)
+	dh_installdirs -p$(p_l64objc) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64objc) \
+		$(PF)/lib64/libobjc.so.*
+ifeq ($(with_objc_gc),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_l64objc) \
+		$(PF)/lib64/libobjc_gc.so.*
+endif
+	debian/dh_doclink -p$(p_l64objc) $(p_base)
+	debian/dh_doclink -p$(p_l64objcdbg) $(p_base)
+
+	dh_strip -p$(p_l64objc) --dbg-package=$(p_l64objcdbg)
+	dh_compress -p$(p_l64objc) -p$(p_l64objcdbg)
+	dh_fixperms -p$(p_l64objc) -p$(p_l64objcdbg)
+	dh_makeshlibs -p$(p_l64objc) -V '$(p_l64objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64objc)
+	dh_gencontrol -p$(p_l64objc) -p$(p_l64objcdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64objc) -p$(p_l64objcdbg)
+	dh_md5sums -p$(p_l64objc) -p$(p_l64objcdbg)
+	dh_builddeb -p$(p_l64objc) -p$(p_l64objcdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32objc) $(d_l32objcdbg)
+	dh_installdirs -p$(p_l32objc) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32objc) \
+		$(lib32)/libobjc.so.*
+ifeq ($(with_objc_gc),yes)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32objc) \
+		$(lib32)/libobjc_gc.so.*
+endif
+	debian/dh_doclink -p$(p_l32objc) $(p_base)
+	debian/dh_doclink -p$(p_l32objcdbg) $(p_base)
+
+	dh_strip -p$(p_l32objc) --dbg-package=$(p_l32objcdbg)
+	dh_compress -p$(p_l32objc) -p$(p_l32objcdbg)
+	dh_fixperms -p$(p_l32objc) -p$(p_l32objcdbg)
+	dh_makeshlibs -p$(p_l32objc) -V '$(p_l32objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32objc)
+	dh_gencontrol -p$(p_l32objc) -p$(p_l32objcdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32objc) -p$(p_l32objcdbg)
+	dh_md5sums -p$(p_l32objc) -p$(p_l32objcdbg)
+	dh_builddeb -p$(p_l32objc) -p$(p_l32objcdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libgomp.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libgomp.mk
@@ -0,0 +1,108 @@
+arch_binaries  := $(arch_binaries) libgomp
+ifeq ($(with_lib64gomp),yes)
+  arch_binaries  := $(arch_binaries) lib64gomp
+endif
+ifeq ($(with_lib32gomp),yes)
+  arch_binaries	:= $(arch_binaries) lib32gomp
+endif
+
+p_gomp	= libgomp$(GOMP_SONAME)
+p_l32gomp= lib32gomp$(GOMP_SONAME)
+p_l64gomp= lib64gomp$(GOMP_SONAME)
+p_gompdbg	= libgomp$(GOMP_SONAME)-dbg
+p_l32gompdbg	= lib32gomp$(GOMP_SONAME)-dbg
+p_l64gompdbg	= lib64gomp$(GOMP_SONAME)-dbg
+
+d_gomp	= debian/$(p_gomp)
+d_l32gomp= debian/$(p_l32gomp)
+d_l64gomp= debian/$(p_l64gomp)
+d_gompdbg	= debian/$(p_gompdbg)
+d_l32gompdbg	= debian/$(p_l32gompdbg)
+d_l64gompdbg	= debian/$(p_l64gompdbg)
+
+dirs_gomp = \
+	$(PF)/$(libdir)
+files_gomp = \
+	$(PF)/$(libdir)/libgomp.so.*
+
+$(binary_stamp)-libgomp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gomp) $(d_gompdbg)
+	dh_installdirs -p$(p_gomp) $(dirs_gomp)
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gomp) $(files_gomp)
+
+	debian/dh_doclink -p$(p_gomp) $(p_base)
+	debian/dh_doclink -p$(p_gompdbg) $(p_base)
+
+	dh_strip -p$(p_gomp) --dbg-package=$(p_gompdbg)
+	dh_compress -p$(p_gomp) -p$(p_gompdbg)
+	dh_fixperms -p$(p_gomp) -p$(p_gompdbg)
+	dh_makeshlibs -p$(p_gomp) -V '$(p_gomp) (>= $(DEB_GOMP_SOVERSION))'
+	dh_shlibdeps -p$(p_gomp)
+	dh_gencontrol -p$(p_gomp) -p$(p_gompdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gomp) -p$(p_gompdbg)
+	dh_md5sums -p$(p_gomp) -p$(p_gompdbg)
+	dh_builddeb -p$(p_gomp) -p$(p_gompdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gomp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64gomp) $(d_l64gompdbg)
+	dh_installdirs -p$(p_l64gomp) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64gomp) \
+		$(PF)/lib64/libgomp.so.*
+
+	debian/dh_doclink -p$(p_l64gomp) $(p_base)
+	debian/dh_doclink -p$(p_l64gompdbg) $(p_base)
+
+	dh_strip -p$(p_l64gomp) --dbg-package=$(p_l64gompdbg)
+	dh_compress -p$(p_l64gomp) -p$(p_l64gompdbg)
+	dh_fixperms -p$(p_l64gomp) -p$(p_l64gompdbg)
+	dh_makeshlibs -p$(p_l64gomp) -V '$(p_l64gomp) (>= $(DEB_GOMP_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64gomp)
+	dh_gencontrol -p$(p_l64gomp) -p$(p_l64gompdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64gomp) -p$(p_l64gompdbg)
+	dh_md5sums -p$(p_l64gomp) -p$(p_l64gompdbg)
+	dh_builddeb -p$(p_l64gomp) -p$(p_l64gompdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32gomp: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32gomp) $(d_l32gompdbg)
+	dh_installdirs -p$(p_l32gomp) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32gomp) \
+		$(lib32)/libgomp.so.*
+
+	debian/dh_doclink -p$(p_l32gomp) $(p_base)
+	debian/dh_doclink -p$(p_l32gompdbg) $(p_base)
+
+	dh_strip -p$(p_l32gomp) --dbg-package=$(p_l32gompdbg)
+	dh_compress -p$(p_l32gomp) -p$(p_l32gompdbg)
+	dh_fixperms -p$(p_l32gomp) -p$(p_l32gompdbg)
+	dh_makeshlibs -p$(p_l32gomp) -V '$(p_l32gomp) (>= $(DEB_GOMP_SOVERSION))'
+	dh_shlibdeps -p$(p_l32gomp)
+	dh_gencontrol -p$(p_l32gomp) -p$(p_l32gompdbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32gomp) -p$(p_l32gompdbg)
+	dh_md5sums -p$(p_l32gomp) -p$(p_l32gompdbg)
+	dh_builddeb -p$(p_l32gomp) -p$(p_l32gompdbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-gcc-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-gcc-cross.mk
@@ -0,0 +1,109 @@
+arch_binaries  := $(arch_binaries) gcc
+
+# gcc must be moved after g77 and g++
+# not all files $(PF)/include/*.h are part of gcc,
+# but it becomes difficult to name all these files ...
+
+dirs_gcc = \
+	$(PF)/bin \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/include \
+	$(PF)/share/man/man1 $(libdir)
+
+files_gcc = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1 \
+	$(gcc_lexec_dir)/collect2 \
+	$(gcc_lib_dir)/{libgcc*,*.o} \
+	$(gcc_lib_dir)/include/README \
+	$(gcc_lib_dir)/include/{float,iso646,limits,std*,syslimits,unwind,varargs}.h \
+	$(shell for d in asm bits gnu linux; do \
+		  test -e $(d)/$(gcc_lib_dir)/include/$$d \
+		    && echo $(gcc_lib_dir)/include/$$d; \
+		done) \
+	$(shell test -e $(d)/$(gcc_lib_dir)/SYSCALLS.c.X \
+	       && echo $(gcc_lib_dir)/SYSCALLS.c.X) \
+	$(shell for h in {,e,p,x}mmintrin.h mm3dnow.h mm_malloc.h; do \
+	         test -e $(d)/$(gcc_lib_dir)/include/$$h \
+	           && echo $(gcc_lib_dir)/include/$$h; \
+	       done) \
+
+
+ifeq ($(biarch),yes)
+    files_gcc += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,*.o}
+endif
+ifeq ($(biarch32),yes)
+    files_gcc += $(gcc_lib_dir)/$(biarchsubdir)/{libgcc*,*.o}
+endif
+
+ifeq ($(DEB_TARGET_ARCH),ia64)
+    files_gcc += $(gcc_lib_dir)/include/ia64intrin.h
+endif
+
+ifeq ($(DEB_TARGET_ARCH),m68k)
+    files_gcc += $(gcc_lib_dir)/include/math-68881.h
+endif
+
+ifeq ($(DEB_TARGET_ARCH),$(findstring $(DEB_TARGET_ARCH),powerpc ppc64))
+    files_gcc += $(gcc_lib_dir)/include/{altivec.h,ppc-asm.h}
+endif
+
+usr_doc_files = debian/README.Bugs \
+	$(shell test -f $(srcdir)/FAQ && echo $(srcdir)/FAQ)
+ifeq ($(with_check),yes)
+  usr_doc_files += test-summary
+endif
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gcc)
+	dh_installdirs -p$(p_gcc) $(dirs_gcc)
+
+	rm -f $(d)/$(PF)/$(libdir)/libgcc_s.so
+	ln -sf /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libgcc_s.so.$(GCC_SONAME) $(d)/$(gcc_lib_dir)/libgcc_s.so
+ifeq ($(biarch),yes)
+	rm -f $(d)/$(PF)/$(lib64)/libgcc_s.so
+	dh_link -p$(p_gcc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/libgcc_s_64.so \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/$(lib64)/libgcc_s.so.$(GCC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+endif
+ifeq ($(biarch32),yes)
+	mkdir -p $(d_gcc)/$(gcc_lib_dir)
+	mv $(d)/$(gcc_lib_dir)/$(biarchsubdir) $(d_gcc)/$(gcc_lib_dir)/
+	dh_link -p$(p_gcc) \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/libgcc_s_32.so \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s_32.so \
+	  /$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME)  /$(gcc_lib_dir)/$(biarchsubdir)/libgcc_s.so
+endif
+
+	DH_COMPAT=2 dh_movefiles -p$(p_gcc) $(files_gcc)
+
+#	dh_installdebconf
+	debian/dh_doclink -p$(p_gcc) $(p_base)
+	debian/dh_rmemptydirs -p$(p_gcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_gcc)
+	dh_compress -p$(p_gcc)
+	dh_fixperms -p$(p_gcc)
+	dh_shlibdeps -p$(p_gcc)
+	dh_gencontrol -p$(p_gcc) -- -v$(DEB_VERSION) $(common_substvars)
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g' < debian/gcc-cross.postinst > debian/$(p_gcc)/DEBIAN/postinst
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g' < debian/gcc-cross.prerm > debian/$(p_gcc)/DEBIAN/prerm
+	chmod 755 debian/$(p_gcc)/DEBIAN/{postinst,prerm}
+	dh_installdeb -p$(p_gcc)
+	dh_md5sums -p$(p_gcc)
+	dh_builddeb -p$(p_gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+	: # remove empty directories, when all components are in place
+	for d in `find $(d) -depth -type d -empty 2> /dev/null`; do \
+	    while rmdir $$d 2> /dev/null; do d=`dirname $$d`; done; \
+	done
+
+	@echo "Listing installed files not included in any package:"
+	-find $(d) ! -type d
+
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-objc.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-objc.mk
@@ -0,0 +1,108 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) objc-multi
+endif
+arch_binaries := $(arch_binaries) objc
+
+p_objc	= gobjc$(pkg_ver)
+d_objc	= debian/$(p_objc)
+
+p_objc_m= gobjc$(pkg_ver)-multilib
+d_objc_m= debian/$(p_objc_m)
+
+dirs_objc = \
+	$(docdir)/$(p_base)/ObjC \
+	$(gcc_lexec_dir) \
+	$(gcc_lib_dir)/include
+
+files_objc = \
+	$(gcc_lexec_dir)/cc1obj \
+	$(gcc_lib_dir)/include/objc \
+	$(gcc_lib_dir)/libobjc*.a
+
+$(binary_stamp)-objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -f $(d)/$(PF)/$(libdir)/libobjc.{la,so}
+	mv $(d)/$(PF)/$(libdir)/libobjc*.a $(d)/$(gcc_lib_dir)/
+
+	rm -rf $(d_objc)
+	dh_installdirs -p$(p_objc) $(dirs_objc)
+	DH_COMPAT=2 dh_movefiles -p$(p_objc) $(files_objc)
+
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(libdir)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/libobjc.so
+ifeq ($(with_objc_gc),yes)
+	dh_link -p$(p_objc) \
+	  /$(PF)/$(libdir)/libobjc_gc.so.$(OBJC_SONAME) \
+	  /$(gcc_lib_dir)/libobjc_gc.so
+endif
+
+	debian/dh_doclink -p$(p_objc) $(p_base)
+	cp -p $(srcdir)/libobjc/{README*,THREADS*} \
+		$(d_objc)/$(docdir)/$(p_base)/ObjC/.
+
+	cp -p $(srcdir)/libobjc/ChangeLog \
+		$(d_objc)/$(docdir)/$(p_base)/ObjC/changelog.libobjc
+
+	debian/dh_rmemptydirs -p$(p_objc)
+
+	dh_strip -p$(p_objc)
+	dh_compress -p$(p_objc)
+
+	dh_fixperms -p$(p_objc)
+	dh_shlibdeps -p$(p_objc)
+	dh_gencontrol -p$(p_objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objc)
+	dh_md5sums -p$(p_objc)
+	dh_builddeb -p$(p_objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+$(binary_stamp)-objc-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_objc_m)
+	dh_installdirs -p$(p_objc_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir)
+
+ifeq ($(biarch),yes)
+	rm -f $(d)/$(PF)/lib64/libobjc*.{la,so}
+	mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(PF)/lib64/libobjc*.a $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc_m) \
+	  /$(PF)/lib64/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+  ifeq ($(with_objc_gc),yes)
+	dh_link -p$(p_objc_m) \
+	  /$(PF)/lib64/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc_gc.so
+  endif
+endif
+ifeq ($(biarch32),yes)
+	rm -f $(d)/$(lib32)/libobjc*.{la,so}
+	mkdir -p $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)
+	mv $(d)/$(lib32)/libobjc*.a $(d_objc_m)/$(gcc_lib_dir)/$(biarchsubdir)/
+	dh_link -p$(p_objc_m) \
+	  /$(lib32)/libobjc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc.so
+  ifeq ($(with_objc_gc),yes)
+	dh_link -p$(p_objc_m) \
+	  /$(lib32)/libobjc_gc.so.$(OBJC_SONAME) /$(gcc_lib_dir)/$(biarchsubdir)/libobjc_gc.so
+  endif
+endif
+
+	debian/dh_doclink -p$(p_objc_m) $(p_base)
+
+	dh_strip -p$(p_objc_m)
+	dh_compress -p$(p_objc_m)
+
+	dh_fixperms -p$(p_objc_m)
+	dh_shlibdeps -p$(p_objc_m)
+	dh_gencontrol -p$(p_objc_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_objc_m)
+	dh_md5sums -p$(p_objc_m)
+	dh_builddeb -p$(p_objc_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libgccmath.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libgccmath.mk
@@ -0,0 +1,141 @@
+ifeq ($(with_libgmath),yes)
+  arch_binaries  := $(arch_binaries) libgmath
+endif
+#ifeq ($(with_libgmathdev),yes)
+#  arch_binaries  := $(arch_binaries) libgmathdev
+#endif
+ifeq ($(with_lib64gmath),yes)
+  arch_binaries  := $(arch_binaries) lib64gmath
+endif
+ifeq ($(with_lib32gmath),yes)
+  arch_binaries	:= $(arch_binaries) lib32gmath
+endif
+
+p_gmath		= libgccmath$(GCCMATH_SONAME)
+p_l32gmath	= lib32gccmath$(GCCMATH_SONAME)
+p_l64gmath	= lib64gccmath$(GCCMATH_SONAME)
+p_gmathd	= libgccmath$(GCCMATH_SONAME)-dev
+
+d_gmath		= debian/$(p_gmath)
+d_l32gmath	= debian/$(p_l32gmath)
+d_l64gmath	= debian/$(p_l64gmath)
+d_gmathd	= debian/$(p_gmathd)
+
+dirs_gmath = \
+	$(docdir) \
+	$(PF)/$(libdir)
+files_gmath = \
+	$(PF)/$(libdir)/libgcc-math.so.*
+
+dirs_gmathd = \
+	$(docdir)/$(p_base)
+ifeq ($(with_libgmath),yes)
+files_gmathd = \
+	$(PF)/$(libdir)/libgcc-math.{a,so,la}
+endif
+
+ifeq ($(with_lib32gmath),yes)
+	dirs_gmathd  += $(lib32)
+	files_gmathd += $(lib32)/libgcc-math.{a,so,la}
+endif
+ifeq ($(with_lib64gmath),yes)
+	dirs_gmathd  += $(PF)/lib64
+	files_gmathd += $(PF)/lib64/libgcc-math.{a,so,la}
+endif
+
+$(binary_stamp)-libgmath: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+	rm -rf $(d_gmath)
+	dh_installdirs -p$(p_gmath) $(dirs_gmath)
+	DH_COMPAT=2 dh_movefiles -p$(p_gmath) $(files_gmath)
+	debian/dh_doclink -p$(p_gmath) $(p_base)
+	debian/dh_rmemptydirs -p$(p_gmath)
+	dh_strip -p$(p_gmath)
+	dh_compress -p$(p_gmath)
+	dh_fixperms -p$(p_gmath)
+	dh_makeshlibs -p$(p_gmath) -V '$(p_gmath) (>= $(DEB_GCCMATH_SOVERSION))'
+	dh_shlibdeps -p$(p_gmath)
+	dh_gencontrol -p$(p_gmath) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gmath)
+	dh_md5sums -p$(p_gmath)
+	dh_builddeb -p$(p_gmath)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgmathdev: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gmathd)
+	dh_installdirs -p$(p_gmathd) $(dirs_gmathd)
+	DH_COMPAT=2 dh_movefiles -p$(p_gmathd) $(files_gmathd)
+	debian/dh_doclink -p$(p_gmathd) $(p_base)
+	cp -p $(srcdir)/libgcc-math/ChangeLog \
+		$(d_gmathd)/$(docdir)/$(p_base)/changelog.libgcc-math
+	debian/dh_rmemptydirs -p$(p_gmathd)
+	dh_strip -p$(p_gmathd)
+	dh_compress -p$(p_gmathd)
+	dh_fixperms -p$(p_gmathd)
+	dh_shlibdeps -p$(p_gmathd)
+	dh_gencontrol -p$(p_gmathd) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gmathd)
+	dh_md5sums -p$(p_gmathd)
+	dh_builddeb -p$(p_gmathd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gmath: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64gmath)
+	dh_installdirs -p$(p_l64gmath) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64gmath) \
+		$(PF)/lib64/libgcc-math.so.*
+
+	debian/dh_doclink -p$(p_l64gmath) $(p_base)
+
+	dh_strip -p$(p_l64gmath)
+	dh_compress -p$(p_l64gmath)
+	dh_fixperms -p$(p_l64gmath)
+	dh_makeshlibs -p$(p_l64gmath) -V '$(p_l64gmath) (>= $(DEB_GCCMATH_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64gmath)
+	dh_gencontrol -p$(p_l64gmath) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64gmath)
+	dh_md5sums -p$(p_l64gmath)
+	dh_builddeb -p$(p_l64gmath)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32gmath: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32gmath)
+	dh_installdirs -p$(p_l32gmath) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32gmath) \
+		$(lib32)/libgcc-math.so.*
+
+	debian/dh_doclink -p$(p_l32gmath) $(p_base)
+
+	dh_strip -p$(p_l32gmath)
+	dh_compress -p$(p_l32gmath)
+	dh_fixperms -p$(p_l32gmath)
+	dh_makeshlibs -p$(p_l32gmath) -V '$(p_l32gmath) (>= $(DEB_GCCMATH_SOVERSION))'
+	dh_shlibdeps -p$(p_l32gmath)
+	dh_gencontrol -p$(p_l32gmath) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32gmath)
+	dh_md5sums -p$(p_l32gmath)
+	dh_builddeb -p$(p_l32gmath)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-ada.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-ada.mk
@@ -0,0 +1,319 @@
+arch_binaries := $(arch_binaries) gnatbase ada
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  indep_binaries := $(indep_binaries) ada-doc
+endif
+
+ifeq ($(with_libgnat),yes)
+  arch_binaries := $(arch_binaries) libgnat
+endif
+
+p_gbase	= gnat-$(GNAT_VERSION)-base
+p_gnat	= gnat-$(GNAT_VERSION)
+p_lgnat	= libgnat-$(GNAT_VERSION)
+p_lgnat_dbg = $(p_lgnat)-dbg
+p_lgnatvsn = libgnatvsn$(GNAT_VERSION)
+p_lgnatvsn_dev = $(p_lgnatvsn)-dev
+p_lgnatvsn_dbg = $(p_lgnatvsn)-dbg
+p_lgnatprj = libgnatprj$(GNAT_VERSION)
+p_lgnatprj_dev = $(p_lgnatprj)-dev
+p_lgnatprj_dbg = $(p_lgnatprj)-dbg
+p_gnatd	= $(p_gnat)-doc
+
+d_gbase	= debian/$(p_gbase)
+d_gnat	= debian/$(p_gnat)
+d_lgnat	= debian/$(p_lgnat)
+d_lgnatvsn = debian/$(p_lgnatvsn)
+d_lgnatprj = debian/$(p_lgnatprj)
+d_gnatd	= debian/$(p_gnatd)
+
+GNAT_TOOLS = gnat gnatbind gnatbl gnatchop gnatclean gnatfind gnatkr gnatlink \
+		gnatls gnatmake gnatname gnatprep gnatxref \
+		gprmake
+
+dirs_gnat = \
+	$(docdir)/$(p_base) \
+	$(PF)/bin \
+	$(PF)/share/man/man1 \
+	$(gcc_lib_dir) \
+	$(gcc_lexec_dir)
+
+files_gnat = \
+	$(gcc_lexec_dir)/gnat1 \
+	$(gcc_lib_dir)/{adalib,adainclude} \
+	$(gcc_lib_dir)/rts-native \
+	$(gcc_lib_dir)/rts-sjlj \
+	$(foreach i,$(GNAT_TOOLS),$(PF)/bin/$(i))
+
+dirs_lgnat = \
+	$(docdir) \
+	$(PF)/lib
+files_lgnat = \
+	$(PF)/$(libdir)/lib{gnat,gnarl}-$(GNAT_SONAME).so.1
+
+$(binary_stamp)-gnatbase: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	dh_installdocs -p$(p_gbase) debian/README.gnat debian/README.maintainers
+ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+  ifeq ($(with_check),yes)
+	dh_installdocs -p$(p_gbase) test-summary
+  endif
+endif
+ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+	mkdir -p $(d_gbase)/$(docdir)/$(p_base)
+	ln -sf ../$(p_gbase) $(d_gbase)/$(docdir)/$(p_base)/Ada
+endif
+	dh_installchangelogs -p$(p_gbase) src/gcc/ada/ChangeLog
+	dh_compress -p$(p_gbase)
+	dh_fixperms -p$(p_gbase)
+	dh_gencontrol -p$(p_gbase) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gbase)
+	dh_md5sums -p$(p_gbase)
+	dh_builddeb -p$(p_gbase)
+	touch $@
+
+
+$(binary_stamp)-libgnat: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	: # libgnat
+	rm -rf $(d_lgnat)
+	dh_installdirs -p$(p_lgnat) $(dirs_lgnat)
+
+	for lib in lib{gnat,gnarl}; do \
+	  vlib=$$lib-$(GNAT_SONAME); \
+	  mv $(d)/$(gcc_lib_dir)/adalib/$$vlib.so.1 $(d)/$(PF)/$(libdir)/. ; \
+	  rm -f $(d)/$(gcc_lib_dir)/adalib/$$lib.so.1; \
+	done
+	dh_movefiles -p$(p_lgnat) $(files_lgnat)
+
+	debian/dh_doclink -p$(p_lgnat) $(p_gbase)
+
+	debian/dh_rmemptydirs -p$(p_lgnat)
+
+	dh_strip -p$(p_lgnat) --dbg-package=$(p_lgnat_dbg)
+	dh_compress -p$(p_lgnat)
+	dh_fixperms -p$(p_lgnat)
+	b=libgnat; \
+	v=$(GNAT_VERSION); \
+	for ext in preinst postinst prerm postrm; do \
+	  for t in '' -dev -dbg; do \
+	    if [ -f debian/$$b$$t.$$ext ]; then \
+	      cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	    fi; \
+	  done; \
+	done
+	dh_makeshlibs -p$(p_lgnat) -V '$(p_lgnat) (>= $(DEB_VERSION))'
+	cat debian/$(p_lgnat)/DEBIAN/shlibs >> debian/shlibs.local
+
+	mkdir -p $(d_lgnat)/usr/share/lintian/overrides
+	cp -p debian/$(p_lgnat).overrides \
+		$(d_lgnat)/usr/share/lintian/overrides/$(p_lgnat)
+
+	dh_shlibdeps -p$(p_lgnat)
+	dh_gencontrol -p$(p_lgnat) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnat)
+	dh_md5sums -p$(p_lgnat)
+	dh_builddeb -p$(p_lgnat)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+
+$(binary_stamp)-libgnatdbg: $(binary_stamp)-libgnat
+	debian/dh_doclink -p$(p_lgnat_dbg) $(p_gbase)
+	dh_compress -p$(p_lgnat_dbg)
+	dh_fixperms -p$(p_lgnat_dbg)
+	dh_gencontrol -p$(p_lgnat_dbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnat_dbg)
+	dh_md5sums -p$(p_lgnat_dbg)
+	dh_builddeb -p$(p_lgnat_dbg)
+	touch $@
+
+$(binary_stamp)-libgnatvsn: $(binary_stamp)-libgnat
+	: # libgnatvsn-dev
+	dh_movefiles -p$(p_lgnatvsn_dev) usr/lib/ada/adalib/gnatvsn
+	dh_movefiles -p$(p_lgnatvsn_dev) usr/share/ada/adainclude/gnatvsn
+	dh_install -p$(p_lgnatvsn_dev) \
+	   debian/gnatvsn.gpr usr/share/ada/adainclude
+	dh_movefiles -p$(p_lgnatvsn_dev) usr/lib/libgnatvsn.a
+	dh_link -p$(p_lgnatvsn_dev) \
+	   usr/lib/libgnatvsn.so.$(GNAT_VERSION) \
+	   usr/lib/libgnatvsn.so
+	dh_strip -p$(p_lgnatvsn_dev) -X.a --keep-debug
+	dh_fixperms -p$(p_lgnatvsn_dev)
+	debian/dh_doclink -p$(p_lgnatvsn_dev) $(p_gbase)
+	dh_gencontrol -p$(p_lgnatvsn_dev) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_lgnatvsn_dev)
+	dh_builddeb -p$(p_lgnatvsn_dev)
+
+	: # libgnatvsn
+	dh_movefiles -p$(p_lgnatvsn) usr/lib/libgnatvsn.so.$(GNAT_VERSION)
+	debian/dh_doclink -p$(p_lgnatvsn) $(p_gbase)
+	dh_strip -p$(p_lgnatvsn) --dbg-package=$(p_lgnatvsn_dbg)
+	dh_makeshlibs -p$(p_lgnatvsn) -V '$(p_lgnatvsn) (>= $(DEB_VERSION))'
+	cat debian/$(p_lgnatvsn)/DEBIAN/shlibs >> debian/shlibs.local
+	dh_shlibdeps -p$(p_lgnatvsn) -L$(p_lgnat)
+	dh_gencontrol -p$(p_lgnatvsn) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatvsn)
+	dh_md5sums -p$(p_lgnatvsn)
+	dh_builddeb -p$(p_lgnatvsn)
+
+	touch $@
+
+$(binary_stamp)-libgnatvsndbg: $(binary_stamp)-libgnatvsn
+	debian/dh_doclink -p$(p_lgnatvsn_dbg) $(p_gbase)
+	dh_compress -p$(p_lgnatvsn_dbg)
+	dh_fixperms -p$(p_lgnatvsn_dbg)
+	dh_gencontrol -p$(p_lgnatvsn_dbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatvsn_dbg)
+	dh_md5sums -p$(p_lgnatvsn_dbg)
+	dh_builddeb -p$(p_lgnatvsn_dbg)
+	touch $@
+
+$(binary_stamp)-libgnatprj: $(binary_stamp)-libgnat $(binary_stamp)-libgnatvsn
+	: # libgnatprj-dev
+	dh_movefiles -p$(p_lgnatprj_dev) usr/lib/ada/adalib/gnatprj
+	dh_movefiles -p$(p_lgnatprj_dev) usr/share/ada/adainclude/gnatprj
+	dh_install -p$(p_lgnatprj_dev) \
+	   debian/gnatprj.gpr usr/share/ada/adainclude
+	dh_movefiles -p$(p_lgnatprj_dev) usr/lib/libgnatprj.a
+	dh_link -p$(p_lgnatprj_dev) \
+	   usr/lib/libgnatprj.so.$(GNAT_VERSION) \
+	   usr/lib/libgnatprj.so
+	dh_strip -p$(p_lgnatprj_dev) -X.a --keep-debug
+	dh_fixperms -p$(p_lgnatprj_dev)
+	debian/dh_doclink -p$(p_lgnatprj_dev) $(p_gbase)
+	dh_gencontrol -p$(p_lgnatprj_dev) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_lgnatprj_dev)
+	dh_builddeb -p$(p_lgnatprj_dev)
+	: # libgnatprj
+	dh_movefiles -p$(p_lgnatprj) usr/lib/libgnatprj.so.$(GNAT_VERSION)
+	debian/dh_doclink -p$(p_lgnatprj) $(p_gbase)
+	dh_strip -p$(p_lgnatprj) --dbg-package=$(p_lgnatprj_dbg)
+	dh_makeshlibs -p$(p_lgnatprj) -V '$(p_lgnatprj) (>= $(DEB_VERSION))'
+	cat debian/$(p_lgnatprj)/DEBIAN/shlibs >> debian/shlibs.local
+	dh_shlibdeps -p$(p_lgnatprj) -L$(p_lgnat) -L$(p_lgnatvsn)
+	dh_gencontrol -p$(p_lgnatprj) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatprj)
+	dh_md5sums -p$(p_lgnatprj)
+	dh_builddeb -p$(p_lgnatprj)
+
+	touch $@
+
+$(binary_stamp)-libgnatprjdbg: $(binary_stamp)-libgnatprj
+	debian/dh_doclink -p$(p_lgnatprj_dbg) $(p_gbase)
+	dh_compress -p$(p_lgnatprj_dbg)
+	dh_fixperms -p$(p_lgnatprj_dbg)
+	dh_gencontrol -p$(p_lgnatprj_dbg) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_lgnatprj_dbg)
+	dh_md5sums -p$(p_lgnatprj_dbg)
+	dh_builddeb -p$(p_lgnatprj_dbg)
+	touch $@
+
+ifeq ($(with_libgnat),yes)
+$(binary_stamp)-ada: $(install_stamp) $(binary_stamp)-libgnat $(binary_stamp)-libgnatdbg
+$(binary_stamp)-ada: $(binary_stamp)-libgnatvsn $(binary_stamp)-libgnatvsndbg
+$(binary_stamp)-ada: $(binary_stamp)-libgnatprj $(binary_stamp)-libgnatprjdbg
+else
+$(binary_stamp)-ada: $(install_stamp)
+endif
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+	: # gnat
+	rm -rf $(d_gnat)
+	dh_installdirs -p$(p_gnat) $(dirs_gnat)
+	dh_movefiles -p$(p_gnat) $(files_gnat)
+	dh_link -p$(p_gnat) \
+	   $(gcc_lib_dir)/rts-sjlj usr/share/ada/adainclude/rts-sjlj
+	dh_link -p$(p_gnat) \
+	   $(gcc_lib_dir)/rts-sjlj/adalib/libgnat.a \
+	   $(gcc_lib_dir)/rts-sjlj/adalib/libgnat-4.2.a
+	dh_link -p$(p_gnat) \
+	   $(gcc_lib_dir)/rts-sjlj/adalib/libgnarl.a \
+	   $(gcc_lib_dir)/rts-sjlj/adalib/libgnarl-4.2.a
+
+ifeq (0,1)
+ifeq ($(PKGSOURCE),gnat-$(BASE_VERSION))
+	mkdir -p $(d_gnat)/$(libexecdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+	ln -sf ../$(GCC_VERSION)/gnat1 \
+	  $(d_gnat)/$(libexecdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)/gnat1
+	mkdir -p $(d_gnat)/$(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)
+	ln -sf ../$(GCC_VERSION)/adalib \
+	  $(d_gnat)/$(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)/adalib
+	ln -sf ../$(GCC_VERSION)/adainclude \
+	  $(d_gnat)/$(PF)/$(libdir)/gcc/$(TARGET_ALIAS)/$(BASE_VERSION)/adainclude
+endif
+endif
+
+ifeq ($(with_libgnat),yes)
+	for lib in lib{gnat,gnarl}; do \
+	  vlib=$$lib-$(GNAT_SONAME); \
+	  dh_link -p$(p_gnat) \
+	    /$(PF)/$(libdir)/$$vlib.so.1 /$(PF)/$(libdir)/$$vlib.so \
+	    /$(PF)/$(libdir)/$$vlib.so.1 /$(PF)/$(libdir)/$$lib.so; \
+	done
+endif
+	debian/dh_doclink -p$(p_gnat) $(p_gbase)
+	for i in $(GNAT_TOOLS); do \
+	  case "$$i" in \
+	    gnat) cp -p debian/gnat.1 $(d_gnat)/$(PF)/share/man/man1/ ;; \
+	    *) ln -sf gnat.1 $(d_gnat)/$(PF)/share/man/man1/$$i.1; \
+	  esac; \
+	done
+
+	debian/dh_rmemptydirs -p$(p_gnat)
+
+	dh_strip -p$(p_gnat)
+	dh_compress -p$(p_gnat)
+	dh_fixperms -p$(p_gnat)
+	find $(d_gnat) -name '*.ali' | xargs chmod 444
+	dh_shlibdeps -p$(p_gnat)
+	dh_gencontrol -p$(p_gnat) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_gnat)
+	dh_md5sums -p$(p_gnat)
+	dh_builddeb -p$(p_gnat)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+
+ada_info_dir = $(d_gnatd)/$(PF)/share/info
+
+$(binary_stamp)-ada-doc: $(build_html_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_gnatd)
+	dh_installdirs -p$(p_gnatd) \
+		$(PF)/share/info
+
+	cd $(ada_info_dir) && \
+	    makeinfo -I $(srcdir)/gcc/doc/include -I $(srcdir)/gcc/ada \
+		-I $(builddir)/gcc \
+		-o gnat_ugn_unw-$(GNAT_VERSION).info \
+		$(builddir)/gcc/doc/gnat_ugn_unw.texi
+	cd $(ada_info_dir) && \
+	    makeinfo -I $(srcdir)/gcc/doc/include -I $(srcdir)/gcc/ada \
+		-I $(builddir)/gcc \
+		-o gnat_rm-$(GNAT_VERSION).info \
+		$(srcdir)/gcc/ada/gnat_rm.texi
+	cd $(ada_info_dir) && \
+	    makeinfo -I $(srcdir)/gcc/doc/include -I $(srcdir)/gcc/ada \
+		-I $(builddir)/gcc \
+		-o gnat-style-$(GNAT_VERSION).info \
+		$(srcdir)/gcc/ada/gnat-style.texi
+
+	dh_installdocs -p$(p_gnatd) \
+	    html/gnat_ugn_unw.html html/gnat_rm.html html/gnat-style.html
+	dh_installchangelogs -p$(p_gnatd)
+	dh_compress -p$(p_gnatd)
+	dh_fixperms -p$(p_gnatd)
+	dh_installdeb -p$(p_gnatd)
+	dh_gencontrol -p$(p_gnatd) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_md5sums -p$(p_gnatd)
+	dh_builddeb -p$(p_gnatd)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libstdcxx-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libstdcxx-cross.mk
@@ -0,0 +1,351 @@
+ifeq ($(with_libcxx),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx
+endif
+ifeq ($(with_lib64cxx),yes)
+  arch_binaries  := $(arch_binaries) lib64stdcxx
+endif
+ifeq ($(biarch32),yes)
+  arch_binaries	:= $(arch_binaries) lib32stdcxx
+endif
+
+ifeq ($(with_cxxdev),yes)
+  arch_binaries  := $(arch_binaries) libstdcxx-dev
+endif
+
+# see #483906
+ifeq ($(biarch),yes)
+  AUX_DEB_TARGET_GNU_TYPE := $(DEB_TARGET_GNU_TYPE)
+  ifeq ($(DEB_TARGET_GNU_TYPE),powerpc-linux-gnu)
+    AUX_DEB_TARGET_GNU_TYPE := powerpc64-linux-gnu
+  endif
+  ifeq ($(DEB_TARGET_GNU_TYPE),i486-linux-gnu) 
+    AUX_DEB_TARGET_GNU_TYPE := x86_64-linux-gnu 
+  endif 
+endif
+
+libstdc_ext = -$(BASE_VERSION)
+
+p_lib	= libstdc++$(CXX_SONAME)$(cross_lib_arch)
+p_lib64	= lib64stdc++$(CXX_SONAME)$(cross_lib_arch)
+p_lib32	= lib32stdc++$(CXX_SONAME)$(cross_lib_arch)
+p_dev	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dev$(cross_lib_arch)
+p_pic	= libstdc++$(CXX_SONAME)$(libstdc_ext)-pic$(cross_lib_arch)
+p_dbg	= libstdc++$(CXX_SONAME)$(libstdc_ext)-dbg$(cross_lib_arch)
+p_dbg64	= lib64stdc++$(CXX_SONAME)$(libstdc_ext)-dbg$(cross_lib_arch)
+p_dbg32	= lib32stdc++$(CXX_SONAME)$(libstdc_ext)-dbg$(cross_lib_arch)
+
+d_lib	= debian/$(p_lib)
+d_lib64	= debian/$(p_lib64)
+d_lib32	= debian/$(p_lib32)
+d_dev	= debian/$(p_dev)
+d_pic	= debian/$(p_pic)
+d_dbg	= debian/$(p_dbg)
+d_dbg64	= debian/$(p_dbg64)
+d_dbg32	= debian/$(p_dbg32)
+
+dirs_lib = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib
+
+dirs_lib64 = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64
+
+dirs_lib32 = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32
+
+files_lib = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libstdc++.so.*
+
+files_lib64 = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libstdc++.so.*
+
+files_lib32 = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libstdc++.so.*
+
+dirs_dev = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib \
+	$(gcc_lib_dir)/include \
+	$(cxx_inc_dir)
+
+files_dev = \
+	$(cxx_inc_dir)/ \
+	$(gcc_lib_dir)/libstdc++.{a,so} \
+	$(gcc_lib_dir)/libsupc++.a
+# Not yet...
+#	$(PF)/$(libdir)/lib{supc,stdc}++.la
+
+dirs_dbg = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/debug \
+	$(gcc_lib_dir)
+files_dbg = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/debug/libstdc++.*
+
+dirs_pic = \
+	$(docdir) \
+	$(gcc_lib_dir)
+files_pic = \
+	$(gcc_lib_dir)/libstdc++_pic.a
+
+ifeq ($(biarch),yes)
+    dirs_dev += $(gcc_lib_dir)/$(biarchsubdir)
+    files_dev += \
+	$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.{a,so} \
+        $(gcc_lib_dir)/$(biarchsubdir)/libsupc++.a
+    dirs_pic += $(gcc_lib_dir)
+    files_pic += $(gcc_lib_dir)/$(biarchsubdir)/libstdc++_pic.a
+endif
+ifeq ($(biarch32),yes)
+    dirs_dev += $(gcc_lib_dir)/$(biarchsubdir)/
+    files_dev += \
+	$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.{a,so} \
+        $(gcc_lib_dir)/$(biarchsubdir)/libsupc++.a
+    dirs_pic += $(gcc_lib_dir)
+    files_pic += $(gcc_lib_dir)/$(biarchsubdir)/libstdc++_pic.a
+endif
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-libstdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib)
+	dh_installdirs -p$(p_lib) $(dirs_lib)
+	DH_COMPAT=2 dh_movefiles -p$(p_lib) $(files_lib)
+
+	dh_installdocs -p$(p_lib)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lib)/$(docdir)/$(p_lib)/README.Debian
+
+	dh_installchangelogs -p$(p_lib)
+	debian/dh_rmemptydirs -p$(p_lib)
+
+	mkdir -p $(d_dbg)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lib) --keep-debug
+	# The above line puts debugging information into some strange location
+	# that is hardcoded into dh_strip. Move it from there.
+	mkdir -p $(d_lib)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug
+	mv $(d_lib)/usr/lib/debug/usr/$(DEB_TARGET_GNU_TYPE)/lib/* $(d_lib)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug/
+	rm -rf $(d_lib)/usr/lib
+	# End workaround
+	find $(d_dbg)
+	tar -C $(d_lib) -c -f - usr/$(DEB_TARGET_GNU_TYPE)/lib/debug | tar -v -C $(d_dbg) -x -f -
+	rm -rf $(d_lib)/usr/$(DEB_TARGET_GNU_TYPE)/lib/debug
+
+	dh_compress -p$(p_lib)
+	dh_fixperms -p$(p_lib)
+	dh_makeshlibs -p$(p_lib) -V '$(p_lib) (>= $(DEB_STDCXX_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lib)/DEBIAN/shlibs > debian/$(p_lib)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lib)/DEBIAN/shlibs.fixed debian/$(p_lib)/DEBIAN/shlibs
+	mkdir debian/$(p_lib)-deps
+	ln -s "`readlink -e /usr/$(DEB_TARGET_GNU_TYPE)/lib`" debian/$(p_lib)-deps/lib
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib) -L$(p_lib)-deps
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib).substvars > debian/$(p_lib).substvars.new
+	mv debian/$(p_lib).substvars.new debian/$(p_lib).substvars
+	dh_gencontrol -p$(p_lib) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib)
+	dh_md5sums -p$(p_lib)
+	dh_builddeb -p$(p_lib)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib64stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib64)
+	dh_installdirs -p$(p_lib64) $(dirs_lib64)
+	DH_COMPAT=2 dh_movefiles -p$(p_lib64) $(files_lib64)
+
+	dh_installdirs -p$(p_dbg64) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/debug $(d_dbg64)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/.
+
+	mkdir -p $(d_dbg64)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lib64) --keep-debug
+	# The above line puts debugging information into some strange location
+	# that is hardcoded into dh_strip. Move it from there.
+	mkdir -p $(d_lib64)/usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug
+	mv $(d_lib64)/usr/lib/debug/usr/$(DEB_TARGET_GNU_TYPE)/lib64/* $(d_lib64)/usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug/
+	rm -rf $(d_lib64)/usr/lib64
+	# End workaround
+	find $(d_lib64)
+	tar -C $(d_lib64) -c -f - usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug | tar -v -C $(d_dbg64) -x -f -
+	rm -rf $(d_lib64)/usr/$(DEB_TARGET_GNU_TYPE)/lib64/debug
+
+	dh_installdocs -p$(p_lib64)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lib64)/$(docdir)/$(p_lib64)/README.Debian
+	dh_installchangelogs -p$(p_lib64)
+	debian/dh_doclink -p$(p_dbg64) $(p_lib64)
+
+	debian/dh_rmemptydirs -p$(p_lib64)
+	dh_compress -p$(p_lib64)
+	dh_fixperms -p$(p_lib64)
+	dh_makeshlibs -p$(p_lib64) -V '$(p_lib64) (>= $(DEB_STDCXX_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lib64)/DEBIAN/shlibs > debian/$(p_lib64)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lib64)/DEBIAN/shlibs.fixed debian/$(p_lib64)/DEBIAN/shlibs
+	mkdir debian/$(p_lib64)-deps
+	ln -s "`readlink -e /usr/$(DEB_TARGET_GNU_TYPE)/lib64`" debian/$(p_lib64)-deps/lib
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib64) -L$(p_lib64)-deps
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib64).substvars > debian/$(p_lib64).substvars.new
+	mv debian/$(p_lib64).substvars.new debian/$(p_lib64).substvars
+	dh_gencontrol -p$(p_lib64) -- -v$(DEB_VERSION) $(common_substvars)
+	#dh_gencontrol -p$(p_dbg64) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib64)
+	dh_md5sums -p$(p_lib64)
+	dh_builddeb -p$(p_lib64)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib32stdcxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lib32)
+	dh_installdirs -p$(p_lib32) $(dirs_lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_lib32) $(files_lib32)
+
+	dh_installdirs -p$(p_dbg32) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/debug $(d_dbg32)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/.
+
+	mkdir -p $(d_dbg32)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lib32) --keep-debug
+	# The above line puts debugging information into some strange location
+	# that is hardcoded into dh_strip. Move it from there.
+	mkdir -p $(d_lib32)/usr/$(DEB_TARGET_GNU_TYPE)/lib32/debug
+	mv $(d_lib32)/usr/lib/debug/usr/$(DEB_TARGET_GNU_TYPE)/lib32/* $(d_lib32)/usr/$(DEB_TARGET_GNU_TYPE)/lib32/debug/
+	rm -rf $(d_lib32)/usr/lib32
+	# End workaround
+	find $(d_lib32)
+	tar -C $(d_lib32) -c -f - usr/$(DEB_TARGET_GNU_TYPE)/lib32/debug | tar -v -C $(d_dbg32) -x -f -
+	rm -rf $(d_lib32)/usr/$(DEB_TARGET_GNU_TYPE)/lib32/debug
+
+	dh_installdocs -p$(p_lib32)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lib32)/$(docdir)/$(p_lib32)/README.Debian
+	dh_installchangelogs -p$(p_lib32)
+	debian/dh_doclink -p$(p_dbg32) $(p_lib32)
+
+	debian/dh_rmemptydirs -p$(p_lib32)
+	dh_compress -p$(p_lib32)
+	dh_fixperms -p$(p_lib32)
+	dh_makeshlibs -p$(p_lib32) -V '$(p_lib32) (>= $(DEB_STDCXX_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lib32)/DEBIAN/shlibs > debian/$(p_lib32)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lib32)/DEBIAN/shlibs.fixed debian/$(p_lib32)/DEBIAN/shlibs
+	mkdir debian/$(p_lib32)-deps
+	ln -s "`readlink -e /usr/$(DEB_TARGET_GNU_TYPE)/lib32`" debian/$(p_lib32)-deps/lib
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lib32) -L$(p_lib32)-deps
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lib32).substvars > debian/$(p_lib32).substvars.new
+	mv debian/$(p_lib32).substvars.new debian/$(p_lib32).substvars
+	dh_gencontrol -p$(p_lib32) -- -v$(DEB_VERSION) $(common_substvars)
+	#dh_gencontrol -p$(p_dbg32) -- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_lib32)
+	dh_md5sums -p$(p_lib32)
+	dh_builddeb -p$(p_lib32)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+libcxxdev_deps = $(install_stamp)
+ifeq ($(with_libcxx),yes)
+  libcxxdev_deps += $(binary_stamp)-libstdcxx
+endif
+$(binary_stamp)-libstdcxx-dev: $(libcxxdev_deps) \
+    $(binary_stamp)-libstdcxx
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_dev) $(d_pic)
+	dh_installdirs -p$(p_dev) $(dirs_dev)
+	dh_installdirs -p$(p_pic) $(dirs_pic)
+	dh_installdirs -p$(p_dbg) $(dirs_dbg)
+
+	: # - correct libstdc++-v3 file locations
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libsupc++.a $(d)/$(gcc_lib_dir)/
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libstdc++.{a,so} $(d)/$(gcc_lib_dir)/
+	ln -sf ../../../../$(DEB_TARGET_GNU_TYPE)/lib/libstdc++.so.$(CXX_SONAME) $(d)/$(gcc_lib_dir)/libstdc++.so
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libstdc++_pic.a \
+		$(d)/$(gcc_lib_dir)/
+
+	rm -f $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/debug/libstdc++_pic.a
+	rm -f $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/debug/libstdc++_pic.a
+
+	: # remove precompiled headers
+	-find $(d) -type d -name '*.gch' | xargs rm -rf
+
+ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/$(AUX_DEB_TARGET_GNU_TYPE)/lib64/lib*c++*.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+	ln -sf ../../../../../lib64/libstdc++.so.$(CXX_SONAME) \
+		$(d)/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+ifeq ($(biarch32),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/lib*c++*.a $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+	ln -sf ../../../../../lib64/libstdc++.so.$(CXX_SONAME) \
+		$(d)/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+
+	for i in $(d)/$(PF)/include/c++/$(GCC_VERSION)/*-linux; do \
+	  if [ -d $$i ]; then mv $$i $$i-gnu; fi; \
+	done
+
+	DH_COMPAT=2 dh_movefiles -p$(p_dev) $(files_dev)
+	DH_COMPAT=2 dh_movefiles -p$(p_pic) $(files_pic)
+	DH_COMPAT=2 dh_movefiles -p$(p_dbg) $(files_dbg)
+
+	dh_link -p$(p_dev) \
+		/$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/libstdc++.so \
+		/$(cxx_inc_dir) /$(PF)/$(DEB_TARGET_GNU_TYPE)/include/c++/$(BASE_VERSION)
+
+ifeq ($(biarch),yes)
+	dh_link -p$(p_dev) \
+		/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+ifeq ($(biarch32),yes)
+	dh_link -p$(p_dev) \
+		/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+
+	debian/dh_doclink -p$(p_dev) $(p_lib)
+	debian/dh_doclink -p$(p_pic) $(p_lib)
+	debian/dh_doclink -p$(p_dbg) $(p_lib)
+	cp -p $(srcdir)/libstdc++-v3/config/abi/pre/gnu.ver \
+		$(d_pic)/$(gcc_lib_dir)/libstdc++_pic.map
+
+ifeq ($(with_cxxdev),yes)
+	debian/dh_rmemptydirs -p$(p_dev)
+	debian/dh_rmemptydirs -p$(p_pic)
+	debian/dh_rmemptydirs -p$(p_dbg)
+endif
+
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_dev) --dbg-package=$(p_lib)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_pic)
+	dh_compress -p$(p_dev) -p$(p_pic) -p$(p_dbg) -X.txt
+	dh_fixperms -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_gencontrol -p$(p_dev) -p$(p_pic) -p$(p_dbg) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+
+	dh_installdeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_md5sums -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+	dh_builddeb -p$(p_dev) -p$(p_pic) -p$(p_dbg)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-d-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-d-cross.mk
@@ -0,0 +1,16 @@
+arch_binaries := $(arch_binaries) gdc
+
+ifeq ($(with_libphobos),yes)
+  arch_binaries += libphobos
+endif
+
+p_gdc		= gdc$(pkg_ver)$(cross_bin_arch)
+d_gdc		= debian/$(p_objc)
+
+# no shared lib for now
+p_libphobos 	= libphobos$(libphobos_version)$(pkg_ver)$(cross_bin_arch)-dev
+d_libphobis	= debian/$(p_libphobos)
+
+
+# TODO
+
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-snapshot.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-snapshot.mk
@@ -0,0 +1,83 @@
+arch_binaries  := $(arch_binaries) snapshot
+
+p_snap	= gcc-snapshot
+d_snap	= debian/$(p_snap)
+
+dirs_snap = \
+	$(docdir)/$(p_snap) \
+	usr/lib
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-snapshot: $(install_snap_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_snap_stamp) $(install_snap_stamp)-tmp
+
+	rm -rf $(d_snap)
+	dh_installdirs -p$(p_snap) $(dirs_snap)
+
+	-find $(d) -name '*.gch' -type d | xargs rm -rf
+
+	mv $(d)/$(PF) $(d_snap)/usr/lib/
+
+	rm -rf $(d_snap)/$(PF)/lib/nof
+
+ifeq ($(with_hppa64),yes)
+	: # provide as and ld links
+	dh_link -p $(p_snap) \
+		/usr/bin/hppa64-linux-gnu-as \
+		/$(PF)/libexec/gcc/hppa64-linux-gnu/$(GCC_VERSION)/as \
+		/usr/bin/hppa64-linux-gnu-ld \
+		/$(PF)/libexec/gcc/hppa64-linux-gnu/$(GCC_VERSION)/ld
+endif
+
+ifeq ($(with_check),yes)
+	dh_installdocs -p$(p_snap) test-summary
+  ifeq ($(with_pascal),yes)
+	cp -p gpc-test-summary $(d_snap)/$(docdir)/$(p_snap)/
+  endif
+else
+	dh_installdocs -p$(p_snap)
+endif
+	if [ -f $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt ]; \
+	then \
+	  cp -p $(buildlibdir)/libstdc++-v3/testsuite/current_symbols.txt \
+	    $(d_snap)/$(docdir)/$(p_snap)/libstdc++6_symbols.txt; \
+	fi
+	cp -p debian/README.snapshot \
+		$(d_snap)/$(docdir)/$(p_snap)/README.Debian
+	dh_installchangelogs -p$(p_snap)
+ifeq ($(DEB_TARGET_ARCH),hppa)
+	dh_strip -p$(p_snap) -Xdebug -X.o -X.a
+else
+	dh_strip -p$(p_snap) -Xdebug
+endif
+	dh_compress -p$(p_snap)
+	-find $(d_snap) -type d ! -perm 755 -exec chmod 755 {} \;
+	dh_fixperms -p$(p_snap)
+
+ifeq (0,1)
+ifeq ($(biarch),yes)
+	mv $(d_snap)/$(PF)/lib64 .
+endif
+ifeq ($(biarch32),yes)
+	mv $(d_snap)/$(PF)/lib32 .
+endif
+	dh_shlibdeps -p$(p_snap) \
+		-l$(d_snap)/$(PF)/lib:$(d_snap)/$(gcc_lib_dir)
+ifeq ($(biarch),yes)
+	mv lib64 $(d_snap)/$(PF)/
+endif
+ifeq ($(biarch32),yes)
+	mv lib32 $(d_snap)/$(PF)/
+endif
+endif
+	-dh_shlibdeps -p$(p_snap) \
+		-l$(d_snap)/$(PF)/lib:$(d_snap)/$(gcc_lib_dir)
+
+	dh_gencontrol -p$(p_snap) -- $(common_substvars)
+	dh_installdeb -p$(p_snap)
+	dh_md5sums -p$(p_snap)
+	dh_builddeb -p$(p_snap)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_snap_stamp)-tmp $(install_snap_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libgcc-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libgcc-cross.mk
@@ -0,0 +1,158 @@
+ifeq ($(with_libgcc),yes)
+  arch_binaries	:= $(arch_binaries) libgcc
+endif
+ifeq ($(with_lib64gcc),yes)
+  arch_binaries	:= $(arch_binaries) lib64gcc
+endif
+ifeq ($(biarch32),yes)
+  arch_binaries	:= $(arch_binaries) lib32gcc
+endif
+
+p_lgcc		= libgcc$(GCC_SONAME)$(cross_lib_arch)
+d_lgcc		= debian/$(p_lgcc)
+
+p_l64gcc	= lib32gcc$(GCC_SONAME)$(cross_lib_arch)
+d_l64gcc	= debian/$(p_l32gcc)
+
+p_l64gcc	= lib64gcc$(GCC_SONAME)$(cross_lib_arch)
+d_l64gcc	= debian/$(p_l64gcc)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-libgcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lgcc)
+	dh_installdirs -p$(p_lgcc) \
+		$(docdir)/$(p_lgcc) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/libgcc_s.so.$(GCC_SONAME) $(d_lgcc)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib/.
+endif
+
+	dh_installdocs -p$(p_lgcc)
+	dh_installchangelogs -p$(p_lgcc)
+
+	debian/dh_rmemptydirs -p$(p_lgcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lgcc)
+	dh_compress -p$(p_lgcc)
+	dh_fixperms -p$(p_lgcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_lgcc) -V '$(p_lgcc) (>= $(DEB_LIBGCC_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lgcc)/DEBIAN/shlibs > debian/$(p_lgcc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lgcc)/DEBIAN/shlibs.fixed debian/$(p_lgcc)/DEBIAN/shlibs
+	cat debian/$(p_lgcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lgcc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lgcc).substvars > debian/$(p_lgcc).substvars.new
+	mv debian/$(p_lgcc).substvars.new debian/$(p_lgcc).substvars
+	dh_gencontrol -p$(p_lgcc) \
+		-- -v$(DEB_LIBGCC_VERSION) $(common_substvars)
+	b=libgcc; v=$(GCC_SONAME); \
+	for ext in preinst postinst prerm postrm; do \
+	  if [ -f debian/$$b$$t.$$ext ]; then \
+	    cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	  fi; \
+	done
+	dh_installdeb -p$(p_lgcc)
+	dh_md5sums -p$(p_lgcc)
+	dh_builddeb -p$(p_lgcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64gcc)
+	dh_installdirs -p$(p_l64gcc) \
+		$(docdir)/$(p_l64gcc) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/libgcc_s.so.$(GCC_SONAME) $(d_l64gcc)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib64/.
+endif
+
+	dh_installdocs -p$(p_l64gcc)
+	dh_installchangelogs -p$(p_l64gcc)
+
+	debian/dh_rmemptydirs -p$(p_l64gcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_l64gcc)
+	dh_compress -p$(p_l64gcc)
+	dh_fixperms -p$(p_l64gcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_l64gcc) \
+		-V '$(p_l64gcc) (>= $(DEB_LIBGCC_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_l64gcc)/DEBIAN/shlibs > debian/$(p_l64gcc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_l64gcc)/DEBIAN/shlibs.fixed debian/$(p_l64gcc)/DEBIAN/shlibs
+	cat debian/$(p_l64gcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_l64gcc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_l64gcc).substvars > debian/$(p_l64gcc).substvars.new
+	mv debian/$(p_l64gcc).substvars.new debian/$(p_l64gcc).substvars
+	dh_gencontrol -p$(p_l64gcc) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	b=libgcc; v=$(GCC_SONAME); \
+	for ext in preinst postinst prerm postrm; do \
+	  if [ -f debian/$$b$$t.$$ext ]; then \
+	    cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	  fi; \
+	done
+	dh_installdeb -p$(p_l64gcc)
+	dh_md5sums -p$(p_l64gcc)
+	dh_builddeb -p$(p_l64gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+
+$(binary_stamp)-lib32gcc: $(install_dependencies)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32gcc)
+	dh_installdirs -p$(p_l32gcc) \
+		$(docdir)/$(p_l32gcc) \
+		$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32
+
+ifeq ($(with_shared_libgcc),yes)
+	mv $(d)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/libgcc_s.so.$(GCC_SONAME) $(d_l32gcc)/$(PF)/$(DEB_TARGET_GNU_TYPE)/lib32/.
+endif
+
+	dh_installdocs -p$(p_l32gcc)
+	dh_installchangelogs -p$(p_l32gcc)
+
+	debian/dh_rmemptydirs -p$(p_l32gcc)
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_l32gcc)
+	dh_compress -p$(p_l32gcc)
+	dh_fixperms -p$(p_l32gcc)
+ifeq ($(with_shared_libgcc),yes)
+	dh_makeshlibs -p$(p_l32gcc) \
+		-V '$(p_l32gcc) (>= $(DEB_LIBGCC_SOVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_l32gcc)/DEBIAN/shlibs > debian/$(p_l32gcc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_l32gcc)/DEBIAN/shlibs.fixed debian/$(p_l32gcc)/DEBIAN/shlibs
+	cat debian/$(p_l32gcc)/DEBIAN/shlibs >> debian/shlibs.local
+endif
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_l32gcc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_l32gcc).substvars > debian/$(p_l32gcc).substvars.new
+	mv debian/$(p_l32gcc).substvars.new debian/$(p_l32gcc).substvars
+	dh_gencontrol -p$(p_l32gcc) \
+		-- -v$(DEB_VERSION) $(common_substvars)
+	b=libgcc; v=$(GCC_SONAME); \
+	for ext in preinst postinst prerm postrm; do \
+	  if [ -f debian/$$b$$t.$$ext ]; then \
+	    cp -pf debian/$$b$$t.$$ext debian/$$b$$v$$t.$$ext; \
+	  fi; \
+	done
+	dh_installdeb -p$(p_l32gcc)
+	dh_md5sums -p$(p_l32gcc)
+	dh_builddeb -p$(p_l32gcc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-libobjc-cross.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-libobjc-cross.mk
@@ -0,0 +1,117 @@
+ifeq ($(with_objcdev),yes)
+  arch_binaries := $(arch_binaries) libobjc
+endif
+ifeq ($(with_lib64objc),yes)
+  arch_binaries  := $(arch_binaries) lib64objc
+endif
+ifeq ($(with_lib32objc),yes)
+  arch_binaries	:= $(arch_binaries) lib32objc
+endif
+
+p_lobjc		= libobjc$(OBJC_SONAME)$(cross_lib_arch)
+p_l32objc	= lib32objc$(OBJC_SONAME)$(cross_lib_arch)
+p_l64objc	= lib64objc$(OBJC_SONAME)$(cross_lib_arch)
+
+d_lobjc		= debian/$(p_lobjc)
+d_l32objc	= debian/$(p_l32objc)
+d_l64objc	= debian/$(p_l64objc)
+
+dirs_lobjc = \
+	$(docdir) \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)
+files_lobjc = \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc.so.*
+ifeq ($(with_objc_gc),yes)
+  files_lobjc += \
+	$(PF)/$(DEB_TARGET_GNU_TYPE)/$(libdir)/libobjc_gc.so.*
+endif
+
+
+$(binary_stamp)-libobjc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_lobjc)
+	dh_installdirs -p$(p_lobjc) $(dirs_lobjc)
+#	mv $(d)/$(gcc_lib_dir)/libobjc.so.* $(d)/$(PF)/$(libdir)/.
+#ifeq ($(with_objc_gc),yes)
+#	mv $(d)/$(gcc_lib_dir)/libobjc_gc.so.* $(d)/$(PF)/$(libdir)/.
+#endif
+	DH_COMPAT=2 dh_movefiles -p$(p_lobjc) $(files_lobjc)
+
+	dh_installdocs -p$(p_lobjc)
+	echo "See /$(docdir)/$(p_base) for more information" \
+		> $(d_lobjc)/$(docdir)/$(p_lobjc)/README.Debian
+	dh_installchangelogs -p$(p_lobjc)
+
+	debian/dh_rmemptydirs -p$(p_lobjc)
+
+	PATH=/usr/share/dpkg-cross:$$PATH dh_strip -p$(p_lobjc)
+	dh_compress -p$(p_lobjc)
+
+	dh_fixperms -p$(p_lobjc)
+	dh_makeshlibs -p$(p_lobjc) -V '$(p_lobjc) (>= $(DEB_SOEVERSION))' -n
+	sed s/$(cross_lib_arch)//g < debian/$(p_lobjc)/DEBIAN/shlibs > debian/$(p_lobjc)/DEBIAN/shlibs.fixed
+	mv debian/$(p_lobjc)/DEBIAN/shlibs.fixed debian/$(p_lobjc)/DEBIAN/shlibs
+	ARCH=$(DEB_TARGET_ARCH) MAKEFLAGS="CC=something" dh_shlibdeps -p$(p_lobjc)
+	sed 's/\(lib[^ ]*\) /\1$(cross_lib_arch) /g' < debian/$(p_lobjc).substvars > debian/$(p_lobjc).substvars.new
+	mv debian/$(p_lobjc).substvars.new debian/$(p_lobjc).substvars
+	dh_gencontrol -p$(p_lobjc) -- -v$(DEB_EVERSION) $(common_substvars)
+	dh_installdeb -p$(p_lobjc)
+	dh_md5sums -p$(p_lobjc)
+	dh_builddeb -p$(p_lobjc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib64objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l64objc)
+	dh_installdirs -p$(p_l64objc) \
+		$(PF)/lib64
+	DH_COMPAT=2 dh_movefiles -p$(p_l64objc) \
+		$(PF)/lib64/libobjc.so.*
+
+	debian/dh_doclink -p$(p_l64objc) $(p_base)
+
+	dh_strip -p$(p_l64objc)
+	dh_compress -p$(p_l64objc)
+	dh_fixperms -p$(p_l64objc)
+	dh_makeshlibs -p$(p_l64objc) -V '$(p_l64objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l64objc)
+	dh_gencontrol -p$(p_l64objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l64objc)
+	dh_md5sums -p$(p_l64objc)
+	dh_builddeb -p$(p_l64objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-lib32objc: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_l32objc)
+	dh_installdirs -p$(p_l32objc) \
+		$(lib32)
+	DH_COMPAT=2 dh_movefiles -p$(p_l32objc) \
+		$(lib32)/libobjc.so.*
+
+	debian/dh_doclink -p$(p_l32objc) $(p_base)
+
+	dh_strip -p$(p_l32objc)
+	dh_compress -p$(p_l32objc)
+	dh_fixperms -p$(p_l32objc)
+	dh_makeshlibs -p$(p_l32objc) -V '$(p_l32objc) (>= $(DEB_SOVERSION))'
+#	dh_shlibdeps -p$(p_l32objc)
+	dh_gencontrol -p$(p_l32objc) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_l32objc)
+	dh_md5sums -p$(p_l32objc)
+	dh_builddeb -p$(p_l32objc)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/rules.d/binary-cxx.mk
+++ gcj-4.2-4.2.4/debian/rules.d/binary-cxx.mk
@@ -0,0 +1,112 @@
+ifneq (,$(filter yes, $(biarch) $(biarch32)))
+  arch_binaries  := $(arch_binaries) cxx-multi
+endif
+arch_binaries  := $(arch_binaries) cxx
+
+dirs_cxx = \
+	$(docdir)/$(p_base)/C++ \
+	$(PF)/bin \
+	$(PF)/share/info \
+	$(gcc_lexec_dir) \
+	$(PF)/share/man/man1
+files_cxx = \
+	$(PF)/bin/g++$(pkg_ver) \
+	$(gcc_lexec_dir)/cc1plus
+
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+  files_cxx += \
+	$(PF)/share/man/man1/g++$(pkg_ver).1
+endif
+
+p_cxx_m	= g++$(pkg_ver)-multilib
+d_cxx_m	= debian/$(p_cxx_m)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cxx: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cxx)
+	dh_installdirs -p$(p_cxx) $(dirs_cxx)
+	DH_COMPAT=2 dh_movefiles -p$(p_cxx) $(files_cxx)
+
+	ln -sf g++$(pkg_ver) \
+	    $(d_cxx)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver)
+	ln -sf g++$(pkg_ver) \
+	    $(d_cxx)/$(PF)/bin/$(TARGET_ALIAS)-g++$(pkg_ver)
+ifneq ($(GFDL_INVARIANT_FREE),yes)
+# g++ man page is a .so link
+	rm -f $(d_cxx)/$(PF)/share/man/man1/g++$(pkg_ver).1
+	ln -sf gcc$(pkg_ver).1.gz \
+		$(d_cxx)/$(PF)/share/man/man1/g++$(pkg_ver).1.gz
+	ln -sf g++$(pkg_ver).1.gz \
+	    $(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1.gz
+	ln -sf g++$(pkg_ver).1.gz \
+	    $(d_cxx)/$(PF)/share/man/man1/$(TARGET_ALIAS)-g++$(pkg_ver).1.gz
+endif
+
+	debian/dh_doclink -p$(p_cxx) $(p_base)
+	cp -p debian/README.C++ $(d_cxx)/$(docdir)/$(p_base)/C++/
+	cp -p $(srcdir)/gcc/cp/ChangeLog \
+		$(d_cxx)/$(docdir)/$(p_base)/C++/changelog
+	debian/dh_rmemptydirs -p$(p_cxx)
+
+	dh_strip -p$(p_cxx)
+	dh_compress -p$(p_cxx)
+	dh_fixperms -p$(p_cxx)
+	dh_shlibdeps -p$(p_cxx)
+	dh_gencontrol -p$(p_cxx) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cxx)
+	dh_md5sums -p$(p_cxx)
+	dh_builddeb -p$(p_cxx)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
+
+# ----------------------------------------------------------------------
+$(binary_stamp)-cxx-multi: $(install_stamp)
+	dh_testdir
+	dh_testroot
+	mv $(install_stamp) $(install_stamp)-tmp
+
+	rm -rf $(d_cxx_m)
+	dh_installdirs -p$(p_cxx_m) \
+		$(docdir) \
+		$(gcc_lib_dir)/$(biarchsubdir)
+
+ifeq ($(biarch),yes)
+	mv $(d)/$(PF)/lib64/lib*c++*.{a,so} $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+endif
+ifeq ($(biarch32),yes)
+	mv $(d)/$(lib32)/lib*c++*.{a,so} $(d)/$(gcc_lib_dir)/$(biarchsubdir)/.
+endif
+
+	DH_COMPAT=2 dh_movefiles -p$(p_cxx_m) \
+		$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.{a,so} \
+	        $(gcc_lib_dir)/$(biarchsubdir)/libsupc++.a \
+		$(gcc_lib_dir)/$(biarchsubdir)/libstdc++_pic.a
+
+ifeq ($(biarch),yes)
+	dh_link -p$(p_cxx_m) \
+		/$(PF)/lib64/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+ifeq ($(biarch32),yes)
+	dh_link -p$(p_cxx_m) \
+		/$(lib32)/libstdc++.so.$(CXX_SONAME) \
+		/$(gcc_lib_dir)/$(biarchsubdir)/libstdc++.so
+endif
+
+	debian/dh_doclink -p$(p_cxx_m) $(p_base)
+	debian/dh_rmemptydirs -p$(p_cxx_m)
+
+	dh_strip -p$(p_cxx_m)
+	dh_compress -p$(p_cxx_m)
+	dh_fixperms -p$(p_cxx_m)
+	dh_shlibdeps -p$(p_cxx_m)
+	dh_gencontrol -p$(p_cxx_m) -- -v$(DEB_VERSION) $(common_substvars)
+	dh_installdeb -p$(p_cxx_m)
+	dh_md5sums -p$(p_cxx_m)
+	dh_builddeb -p$(p_cxx_m)
+
+	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)
--- gcj-4.2-4.2.4.orig/debian/patches/gpc-gcc-4.1.diff
+++ gcj-4.2-4.2.4/debian/patches/gpc-gcc-4.1.diff
@@ -0,0 +1,1472 @@
+diff -urN gcc.orig/config/i386/i386.c gcc/config/i386/i386.c
+--- gcc.orig/config/i386/i386.c	2006-11-17 08:01:22.000000000 +0100
++++ gcc/config/i386/i386.c	2007-08-26 20:40:16.000949869 +0200
+@@ -2738,6 +2738,30 @@
+ 	    }
+ 	  break;
+ 
++	case SET_TYPE:
++          if (bytes <= 4)
++            {
++              classes[0] = X86_64_INTEGERSI_CLASS;
++              return 1;
++            }
++          else if (bytes <= 8)
++            {
++              classes[0] = X86_64_INTEGER_CLASS;
++              return 1;
++            }
++          else if (bytes <= 12)
++            {
++              classes[0] = X86_64_INTEGER_CLASS;
++              classes[1] = X86_64_INTEGERSI_CLASS;
++              return 2;
++            }
++          else
++            {
++              classes[0] = X86_64_INTEGER_CLASS;
++              classes[1] = X86_64_INTEGER_CLASS;
++              return 2;
++            }
++
+ 	default:
+ 	  gcc_unreachable ();
+ 	}
+diff -urN gcc.orig/config/ia64/ia64.c gcc/config/ia64/ia64.c
+--- gcc.orig/config/ia64/ia64.c	2006-12-21 14:06:37.000000000 +0100
++++ gcc/config/ia64/ia64.c	2007-08-26 20:40:16.010950020 +0200
+@@ -3842,6 +3842,7 @@
+     case BOOLEAN_TYPE:	case CHAR_TYPE:		case POINTER_TYPE:
+     case OFFSET_TYPE:	case REFERENCE_TYPE:	case METHOD_TYPE:
+     case LANG_TYPE:		case FUNCTION_TYPE:
++    case SET_TYPE:
+       return VOIDmode;
+ 
+       /* Fortran complex types are supposed to be HFAs, so we need to handle
+diff -urN gcc.orig/config/sparc/sparc.c gcc/config/sparc/sparc.c
+--- gcc.orig/config/sparc/sparc.c	2006-04-14 09:02:43.000000000 +0200
++++ gcc/config/sparc/sparc.c	2007-08-26 20:40:16.010950020 +0200
+@@ -7019,6 +7019,7 @@
+ 	case VECTOR_TYPE:
+ 	case CHAR_TYPE:		/* GNU Pascal CHAR type.  Not used in C.  */
+ 	case BOOLEAN_TYPE:	/* GNU Fortran BOOLEAN type.  */
++        case SET_TYPE:          /* GNU Pascal SET type.  */
+ 	case LANG_TYPE:		/* ? */
+ 	  return qualifiers;
+   
+diff -urN gcc.orig/dbxout.c gcc/dbxout.c
+--- gcc.orig/dbxout.c	2005-10-06 02:47:21.000000000 +0200
++++ gcc/dbxout.c	2007-08-26 20:40:16.010950020 +0200
+@@ -1916,7 +1916,7 @@
+ 	{
+ 	  stabstr_S ("@s");
+ 	  stabstr_D (BITS_PER_UNIT * int_size_in_bytes (type));
+-	  stabstr_S (";-20;");
++	  stabstr_S (";-20");
+ 	}
+       else
+ 	{
+@@ -1933,7 +1933,7 @@
+ 	{
+ 	  stabstr_S ("@s");
+ 	  stabstr_D (BITS_PER_UNIT * int_size_in_bytes (type));
+-	  stabstr_S (";-16;");
++	  stabstr_S (";-16");
+ 	}
+       else /* Define as enumeral type (False, True) */
+ 	stabstr_S ("eFalse:0,True:1,;");
+@@ -1972,6 +1972,22 @@
+ 	}
+       break;
+ 
++    case SET_TYPE:
++      if (use_gnu_debug_info_extensions)
++	{
++	  stabstr_S ("@s");
++          stabstr_D (BITS_PER_UNIT * int_size_in_bytes (type));
++          stabstr_C (';');
++
++	  /* Check if a bitstring type, which in Chill is
++	     different from a [power]set.  */
++	  if (TYPE_STRING_FLAG (type))
++	    stabstr_S ("@S;");
++	}
++      stabstr_C ('S');
++      dbxout_type (TYPE_DOMAIN (type), 0);
++      break;
++
+     case ARRAY_TYPE:
+       /* Make arrays of packed bits look like bitstrings for chill.  */
+       if (TYPE_PACKED (type) && use_gnu_debug_info_extensions)
+@@ -2435,7 +2451,7 @@
+          we see following the TREE_TYPE chain.  */
+ 
+       t = type;
+-      while (POINTER_TYPE_P (t))
++      while (POINTER_TYPE_P (t) && !TYPE_NAME (t))
+         t = TREE_TYPE (t);
+ 
+       /* RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE, and ENUMERAL_TYPE
+diff -urN gcc.orig/dwarf2out.c gcc/dwarf2out.c
+--- gcc.orig/dwarf2out.c	2006-12-27 23:23:55.000000000 +0100
++++ gcc/dwarf2out.c	2007-08-26 20:40:16.020950171 +0200
+@@ -8230,6 +8230,7 @@
+     case OFFSET_TYPE:
+     case LANG_TYPE:
+     case VECTOR_TYPE:
++    case SET_TYPE:
+       return 0;
+ 
+     default:
+@@ -9036,9 +9037,12 @@
+ {
+   dw_loc_descr_ref ret, ret1;
+   int have_address = 0;
+-  int unsignedp = TYPE_UNSIGNED (TREE_TYPE (loc));
++  int unsignedp /* = TYPE_UNSIGNED (TREE_TYPE (loc)) */;
+   enum dwarf_location_atom op;
+ 
++  gcc_assert (TREE_TYPE (loc));
++  unsignedp = TYPE_UNSIGNED (TREE_TYPE (loc));
++
+   /* ??? Most of the time we do not take proper care for sign/zero
+      extending the values properly.  Hopefully this won't be a real
+      problem...  */
+@@ -9413,6 +9417,19 @@
+       }
+       break;
+ 
++#ifdef GPC
++    case REAL_CST:
++    case FLOAT_EXPR:
++    case RDIV_EXPR:
++    case STRING_CST:
++      /* In Pascal it's possible for array bounds to contain floating point
++         expressions (e.g., p/test/emil11c.pas). I don't know if it's
++         possible to represent them in dwarf2, but it doesn't seem terribly
++         important since this occurs quite rarely. -- Frank */
++      return 0;
++#endif
++
++
+     case FIX_TRUNC_EXPR:
+     case FIX_CEIL_EXPR:
+     case FIX_FLOOR_EXPR:
+@@ -11166,6 +11183,16 @@
+   add_type_attribute (array_die, element_type, 0, 0, context_die);
+ }
+ 
++static void
++gen_set_type_die (tree type, dw_die_ref context_die)
++{
++  dw_die_ref type_die
++    = new_die (DW_TAG_set_type, scope_die_for (type, context_die), type);
++
++  equate_type_number_to_die (type, type_die);
++  add_type_attribute (type_die, TREE_TYPE (type), 0, 0, context_die);
++}
++
+ #if 0
+ static void
+ gen_entry_point_die (tree decl, dw_die_ref context_die)
+@@ -12523,6 +12550,11 @@
+       gen_ptr_to_mbr_type_die (type, context_die);
+       break;
+ 
++    case SET_TYPE:
++      gen_type_die (TYPE_DOMAIN (type), context_die);
++      gen_set_type_die (type, context_die);
++      break;
++
+     case FUNCTION_TYPE:
+       /* Force out return type (in case it wasn't forced out already).  */
+       gen_type_die (TREE_TYPE (type), context_die);
+diff -urN gcc.orig/expr.c gcc/expr.c
+--- gcc.orig/expr.c	2006-11-02 18:18:52.000000000 +0100
++++ gcc/expr.c	2007-08-26 20:40:16.030950322 +0200
+@@ -4639,6 +4639,10 @@
+     case REFERENCE_TYPE:
+       return 1;
+ 
++    case SET_TYPE:
++      /* @@@@@@ return something more accurate ... */
++      return -1;
++
+     case VOID_TYPE:
+     case METHOD_TYPE:
+     case FUNCTION_TYPE:
+@@ -4659,6 +4663,10 @@
+       HOST_WIDE_INT nz_elts, nc_elts, count, elts;
+       bool must_clear;
+ 
++      if (TREE_TYPE (exp) && TREE_CODE (TREE_TYPE (exp)) == SET_TYPE)
++      /* If there are no ranges of true bits, it is all zero.  */
++        return CONSTRUCTOR_ELTS (exp) == NULL_TREE;
++
+       categorize_ctor_elements (exp, &nz_elts, &nc_elts, &count, &must_clear);
+       if (must_clear)
+ 	return 1;
+@@ -5293,6 +5301,229 @@
+ 		      gen_rtx_PARALLEL (GET_MODE (target), vector)));
+ 	break;
+       }
++
++    case SET_TYPE:
++    {
++      tree elt = CONSTRUCTOR_ELTS (exp);
++      unsigned HOST_WIDE_INT nbytes = int_size_in_bytes (type), nbits;
++      tree domain = TYPE_DOMAIN (type);
++      tree domain_min, domain_max, bitlength;
++
++      /* The default implementation strategy is to extract the constant
++         parts of the constructor, use that to initialize the target,
++         and then "or" in whatever non-constant ranges we need in addition.
++
++         If a large set is all zero or all ones, it is
++         probably better to set it using memset (if available) or bzero.
++         Also, if a large set has just a single range, it may also be
++         better to first clear all the first clear the set (using
++         bzero/memset), and set the bits we want.  */
++
++      /* Check for all zeros.  */
++      if (elt == NULL_TREE && size > 0)
++        {
++          if (!cleared)
++            clear_storage (target, GEN_INT (size), BLOCK_OP_NORMAL);
++          return;
++        }
++
++#ifndef GPC
++      domain_min = convert (sizetype, TYPE_MIN_VALUE (domain));
++      domain_max = convert (sizetype, TYPE_MAX_VALUE (domain));
++#else /* GPC */
++      domain_min = convert (sbitsizetype, TYPE_MIN_VALUE (domain));
++      domain_max = convert (sbitsizetype, TYPE_MAX_VALUE (domain));
++
++      /* Align the set.  */
++      if (set_alignment)
++        domain_min = size_binop (BIT_AND_EXPR, domain_min, sbitsize_int (-(int)
++set_alignment));
++
++#endif /* GPC */
++      bitlength = size_binop (PLUS_EXPR,
++                              size_binop (MINUS_EXPR, domain_max, domain_min),
++#ifndef GPC
++                              ssize_int (1));
++#else /* GPC */
++                              sbitsize_int (1));
++#endif /* GPC */
++
++#ifdef GPC
++      if (TREE_INT_CST_HIGH (bitlength)) {
++        error ("set size too big for host integers");
++        return;
++      }
++#endif /* GPC */
++      nbits = tree_low_cst (bitlength, 1);
++#ifdef GPC
++      bitlength = convert (sizetype, bitlength);
++#endif /* GPC */
++
++      /* For "small" sets, or "medium-sized" (up to 32 bytes) sets that
++         are "complicated" (more than one range), initialize (the
++         constant parts) by copying from a constant.  */
++      if (GET_MODE (target) != BLKmode || nbits <= 2 * BITS_PER_WORD
++          || (nbytes <= 32 && TREE_CHAIN (elt) != NULL_TREE))
++        {
++#ifndef GPC
++          unsigned int set_word_size = TYPE_ALIGN (TREE_TYPE (exp));
++#endif /* not GPC */
++          enum machine_mode mode = mode_for_size (set_word_size, MODE_INT, 1);
++          char *bit_buffer = alloca (nbits);
++          HOST_WIDE_INT word = 0;
++          unsigned int bit_pos = 0;
++          unsigned int ibit = 0;
++          unsigned int offset = 0;  /* In bytes from beginning of set.  */
++
++          elt = get_set_constructor_bits (exp, bit_buffer, nbits);
++          for (;;)
++            {
++              if (bit_buffer[ibit])
++                {
++#ifndef GPC
++                  if (BYTES_BIG_ENDIAN)
++#else /* GPC */
++                  if (set_words_big_endian)
++#endif /* GPC */
++                    word |= (((HOST_WIDE_INT)1) << (set_word_size - 1 - bit_pos));
++                  else
++                    word |= ((HOST_WIDE_INT)1) << bit_pos;
++                }
++
++              bit_pos++;  ibit++;
++              if (bit_pos >= set_word_size || ibit == nbits)
++                {
++                  if (word != 0 || ! cleared)
++                    {
++                      rtx datum = gen_int_mode (word, mode);
++                      rtx to_rtx;
++
++                      /* The assumption here is that it is safe to use
++                         XEXP if the set is multi-word, but not if
++                         it's single-word.  */
++                      if (GET_CODE (target) == MEM)
++                        to_rtx = adjust_address (target, mode, offset);
++                      else if (offset == 0)
++                        to_rtx = target;
++                      else
++                        abort ();
++                      emit_move_insn (to_rtx, datum);
++                    }
++
++                  if (ibit == nbits)
++                    break;
++                  word = 0;
++                  bit_pos = 0;
++                  offset += set_word_size / BITS_PER_UNIT;
++                }
++            }
++        }
++      else if (!cleared)
++   /* GPC expects bits outside the range to be cleared. (fjf1010.pas)
++      Though this check might be "dead" in this GCC version since it only
++      applies to single ranges with constant bounds, and those are apparently
++      always stored as constants anyway, not initialized via `__setbits'. */
++#ifndef GPC
++        /* Don't bother clearing storage if the set is all ones.  */
++        if (TREE_CHAIN (elt) != NULL_TREE
++            || (TREE_PURPOSE (elt) == NULL_TREE
++                ? nbits != 1
++                : ( ! host_integerp (TREE_VALUE (elt), 0)
++                   || ! host_integerp (TREE_PURPOSE (elt), 0)
++                   || (tree_low_cst (TREE_VALUE (elt), 0)
++                       - tree_low_cst (TREE_PURPOSE (elt), 0) + 1
++                       != (HOST_WIDE_INT) nbits))))
++#endif
++          clear_storage (target, expr_size (exp), BLOCK_OP_NORMAL);
++
++      for (; elt != NULL_TREE; elt = TREE_CHAIN (elt))
++        {
++          /* Start of range of element or NULL.  */
++          tree startbit = TREE_PURPOSE (elt);
++          /* End of range of element, or element value.  */
++          tree endbit   = TREE_VALUE (elt);
++          HOST_WIDE_INT startb, endb;
++          rtx bitlength_rtx, startbit_rtx, endbit_rtx, targetx;
++
++          bitlength_rtx = expand_expr (bitlength,
++                                       NULL_RTX, MEM, EXPAND_CONST_ADDRESS);
++
++          /* Handle non-range tuple element like [ expr ].  */
++          if (startbit == NULL_TREE)
++            {
++              startbit = save_expr (endbit);
++              endbit = startbit;
++            }
++
++#ifndef GPC
++          startbit = convert (sizetype, startbit);
++          endbit = convert (sizetype, endbit);
++#endif /* not GPC */
++          if (! integer_zerop (domain_min))
++            {
++#ifdef GPC
++              startbit = convert (sbitsizetype, startbit);
++              endbit = convert (sbitsizetype, endbit);
++#endif /* GPC */
++              startbit = size_binop (MINUS_EXPR, startbit, domain_min);
++              endbit = size_binop (MINUS_EXPR, endbit, domain_min);
++            }
++#ifdef GPC
++          startbit = convert (sizetype, startbit);
++          endbit = convert (sizetype, endbit);
++#endif /* GPC */
++          startbit_rtx = expand_expr (startbit, NULL_RTX, MEM,
++                                      EXPAND_CONST_ADDRESS);
++          endbit_rtx = expand_expr (endbit, NULL_RTX, MEM,
++                                    EXPAND_CONST_ADDRESS);
++
++          if (REG_P (target))
++            {
++              targetx
++                = assign_temp
++                  ((build_qualified_type ((*lang_hooks.types.type_for_mode)
++                                          (GET_MODE (target), 0),
++                                          TYPE_QUAL_CONST)),
++                   0, 1, 1);
++              emit_move_insn (targetx, target);
++            }
++
++          else if (GET_CODE (target) == MEM)
++            targetx = target;
++          else
++            abort ();
++
++          /* Optimization:  If startbit and endbit are constants divisible
++             by BITS_PER_UNIT, call memset instead.  */
++          if (
++              TREE_CODE (startbit) == INTEGER_CST
++              && TREE_CODE (endbit) == INTEGER_CST
++              && (startb = TREE_INT_CST_LOW (startbit)) % BITS_PER_UNIT == 0
++              && (endb = TREE_INT_CST_LOW (endbit) + 1) % BITS_PER_UNIT == 0)
++            {
++              emit_library_call (memset_libfunc, LCT_NORMAL,
++                                 VOIDmode, 3,
++                                 plus_constant (XEXP (targetx, 0),
++                                                startb / BITS_PER_UNIT),
++                                 Pmode,
++                                 constm1_rtx, TYPE_MODE (integer_type_node),
++                                 GEN_INT ((endb - startb) / BITS_PER_UNIT),
++                                 TYPE_MODE (sizetype));
++            }
++          else
++            emit_library_call (setbits_libfunc, LCT_NORMAL,
++                               VOIDmode, 4, XEXP (targetx, 0),
++                               Pmode, bitlength_rtx, TYPE_MODE (sizetype),
++                               startbit_rtx, TYPE_MODE (sizetype),
++                               endbit_rtx, TYPE_MODE (sizetype));
++
++          if (REG_P (target))
++          if (REG_P (target))
++            emit_move_insn (target, targetx);
++        }
++
++        break;
++    }
+       
+     default:
+       gcc_unreachable ();
+@@ -5592,9 +5823,19 @@
+ 	       index, then convert to sizetype and multiply by the size of
+ 	       the array element.  */
+ 	    if (! integer_zerop (low_bound))
++#ifdef GPC
++            /* I think that address arithmetic should always be done on
++               sizetype or its variants -- for Pascal signed seems to be the
++               correct choice (and generates slightly better code). -- Waldek */
++              index = convert (sizetype, convert (bitsizetype,
++                      size_binop (MINUS_EXPR,
++                        convert (sbitsizetype, index),
++                        convert (sbitsizetype, low_bound))));
++#else
++
+ 	      index = fold_build2 (MINUS_EXPR, TREE_TYPE (index),
+ 				   index, low_bound);
+-
++#endif
+ 	    offset = size_binop (PLUS_EXPR, offset,
+ 			         size_binop (MULT_EXPR,
+ 					     convert (sizetype, index),
+@@ -6704,11 +6945,18 @@
+       /* Variables inherited from containing functions should have
+ 	 been lowered by this point.  */
+       context = decl_function_context (exp);
+-      gcc_assert (!context
++//      gcc_assert 
++      if (!context
+ 		  || context == current_function_decl
+ 		  || TREE_STATIC (exp)
+ 		  /* ??? C++ creates functions that are not TREE_STATIC.  */
+-		  || TREE_CODE (exp) == FUNCTION_DECL);
++		  || TREE_CODE (exp) == FUNCTION_DECL)
++        ;
++      else
++        {
++          debug_tree (exp);
++          gcc_unreachable ();
++        }
+ 
+       /* This is the case of an array whose size is to be determined
+ 	 from its initializer, while the initializer is still being parsed.
+@@ -8642,7 +8890,7 @@
+ tree
+ string_constant (tree arg, tree *ptr_offset)
+ {
+-  tree array, offset;
++  tree array, offset, lb = size_zero_node;
+   STRIP_NOPS (arg);
+ 
+   if (TREE_CODE (arg) == ADDR_EXPR)
+@@ -8656,6 +8904,7 @@
+ 	{
+ 	  array = TREE_OPERAND (arg, 0);
+ 	  offset = size_zero_node;
++          goto do_lb;
+ 	}
+       else if (TREE_CODE (TREE_OPERAND (arg, 0)) == ARRAY_REF)
+ 	{
+@@ -8664,6 +8913,7 @@
+ 	  if (TREE_CODE (array) != STRING_CST
+ 	      && TREE_CODE (array) != VAR_DECL)
+ 	    return 0;
++          lb = array_ref_low_bound (TREE_OPERAND (arg, 0));
+ 	}
+       else
+ 	return 0;
+@@ -8692,10 +8942,26 @@
+ 	}
+       else
+ 	return 0;
++  do_lb:    
++      if (TREE_TYPE (array) && TREE_CODE (TREE_TYPE (array)) == ARRAY_TYPE)
++        {
++          tree domain_type = TYPE_DOMAIN (TREE_TYPE (array));
++          if (domain_type && TYPE_MIN_VALUE (domain_type))
++#if 0
++            lb = SUBSTITUTE_PLACEHOLDER_IN_EXPR (
++                   TYPE_MIN_VALUE (domain_type), array);
++#else
++          lb = TYPE_MIN_VALUE (domain_type);
++#endif
++        }
+     }
+   else
+     return 0;
+ 
++  if (! integer_zerop (lb))
++    offset = size_diffop (fold_convert (sizetype, offset),
++                          fold_convert (sizetype, lb));
++
+   if (TREE_CODE (array) == STRING_CST)
+     {
+       *ptr_offset = convert (sizetype, offset);
+diff -urN gcc.orig/fold-const.c gcc/fold-const.c
+--- gcc.orig/fold-const.c	2007-01-03 09:15:24.000000000 +0100
++++ gcc/fold-const.c	2007-08-26 20:40:16.030950322 +0200
+@@ -5960,6 +5960,10 @@
+   bool unsigned_p = TYPE_UNSIGNED (TREE_TYPE (arg0));
+   int overflow;
+ 
++  /* Overflow check does not work for unsigned numbers */
++  if (TYPE_UNSIGNED (TREE_TYPE (arg0)))
++    return NULL_TREE;
++
+   /* We have to do this the hard way to detect unsigned overflow.
+      prod = int_const_binop (MULT_EXPR, arg01, arg1, 0);  */
+   overflow = mul_double_with_sign (TREE_INT_CST_LOW (arg01),
+diff -urN gcc.orig/function.c gcc/function.c
+--- gcc.orig/function.c	2006-11-28 13:01:45.000000000 +0100
++++ gcc/function.c	2007-08-26 20:40:16.040950472 +0200
+@@ -3118,7 +3118,11 @@
+   if (TYPE_P (t))
+     {
+       if (POINTER_TYPE_P (t))
++#ifndef GPC
+ 	*walk_subtrees = 1;
++#else
++        *walk_subtrees = 0;
++#endif
+       else if (TYPE_SIZE (t) && !TREE_CONSTANT (TYPE_SIZE (t))
+ 	       && !TYPE_SIZES_GIMPLIFIED (t))
+ 	{
+diff -urN gcc.orig/gcc.c gcc/gcc.c
+--- gcc.orig/gcc.c	2006-11-07 15:26:21.000000000 +0100
++++ gcc/gcc.c	2007-08-26 20:40:16.040950472 +0200
+@@ -794,8 +794,8 @@
+ "%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}}\
+  %1 %{!Q:-quiet} -dumpbase %B %{d*} %{m*} %{a*}\
+  %{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}%{!c:%{!S:-auxbase %b}}\
+- %{g*} %{O*} %{W*&pedantic*} %{w} %{std*&ansi&trigraphs}\
+- %{v:-version} %{pg:-p} %{p} %{f*} %{undef}\
++ %{g*} %{O*} %{f*&W*&pedantic*&w} %{std*&ansi&trigraphs}\
++ %{v:-version} %{pg:-p} %{p} %{undef}\
+  %{Qn:-fno-ident} %{--help:--help}\
+  %{--target-help:--target-help}\
+  %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
+diff -urN gcc.orig/gimplify.c gcc/gimplify.c
+--- gcc.orig/gimplify.c	2006-11-19 17:15:47.000000000 +0100
++++ gcc/gimplify.c	2007-08-26 20:40:16.040950472 +0200
+@@ -342,7 +342,7 @@
+ 
+ /* Create a new temporary name with PREFIX.  Returns an identifier.  */
+ 
+-static GTY(()) unsigned int tmp_var_id_num;
++static GTY(()) unsigned int tmp_var_id_num = 155419;
+ 
+ tree
+ create_tmp_var_name (const char *prefix)
+@@ -2710,15 +2710,35 @@
+ 	  cref = build (ARRAY_REF, array_elt_type, unshare_expr (object),
+ 			purpose, NULL_TREE, NULL_TREE);
+ 	}
++#if 0
++      else if (DECL_BIT_FIELD (purpose))
++        {
++          tree bioff = size_binop (PLUS_EXPR, 
++            DECL_FIELD_BIT_OFFSET (purpose),
++            size_binop (MULT_EXPR, 
++              bitsize_int (BITS_PER_UNIT),
++              convert (bitsizetype, DECL_FIELD_OFFSET (purpose))));
++          cref = build3 (BIT_FIELD_REF, TREE_TYPE (purpose),
++                      unshare_expr (object), bioff, 
++                      DECL_SIZE (purpose));
++          BIT_FIELD_REF_UNSIGNED (cref) = TYPE_UNSIGNED (TREE_TYPE (purpose));
++        }
++#endif
+       else
+ 	{
+-	  gcc_assert (TREE_CODE (purpose) == FIELD_DECL);
++//	  gcc_assert (TREE_CODE (purpose) == FIELD_DECL);
++          if (TREE_CODE (purpose) != FIELD_DECL)
++            {
++              debug_tree (purpose);
++              gcc_unreachable ();
++            }
+ 	  cref = build (COMPONENT_REF, TREE_TYPE (purpose),
+ 			unshare_expr (object), purpose, NULL_TREE);
+ 	}
+ 
+       if (TREE_CODE (value) == CONSTRUCTOR
+-	  && TREE_CODE (TREE_TYPE (value)) != VECTOR_TYPE)
++	  && TREE_CODE (TREE_TYPE (value)) != VECTOR_TYPE
++          && TREE_CODE (TREE_TYPE (value)) != SET_TYPE)
+ 	gimplify_init_ctor_eval (cref, CONSTRUCTOR_ELTS (value),
+ 				 pre_p, cleared);
+       else
+@@ -2749,6 +2769,10 @@
+   if (TREE_CODE (ctor) != CONSTRUCTOR)
+     return GS_UNHANDLED;
+ 
++  ret = lang_hooks.gimplify_expr (&TREE_OPERAND (*expr_p, 1), pre_p, post_p);
++  if (ret != GS_UNHANDLED)
++    return ret;
++  
+   ret = gimplify_expr (&TREE_OPERAND (*expr_p, 0), pre_p, post_p,
+ 		       is_gimple_lvalue, fb_lvalue);
+   if (ret == GS_ERROR)
+@@ -2790,7 +2814,7 @@
+ 	    DECL_INITIAL (object) = ctor;
+ 	    TREE_STATIC (object) = 1;
+ 	    if (!DECL_NAME (object))
+-	      DECL_NAME (object) = create_tmp_var_name ("C");
++	      DECL_NAME (object) = create_tmp_var_name ("c_C");
+ 	    walk_tree (&DECL_INITIAL (object), force_labels_r, NULL, NULL);
+ 
+ 	    /* ??? C++ doesn't automatically append a .<number> to the
+@@ -2863,7 +2887,7 @@
+ 
+ 	    if (size > 0 && !can_move_by_pieces (size, align))
+ 	      {
+-		tree new = create_tmp_var_raw (type, "C");
++		tree new = create_tmp_var_raw (type, "r_C");
+ 
+ 		gimple_add_tmp_var (new);
+ 		TREE_STATIC (new) = 1;
+@@ -4514,6 +4538,10 @@
+ 	      goto dont_recalculate;
+ 
+ 	    default:
++              if (!(TREE_CODE (*expr_p) == TRUTH_AND_EXPR
++                          || TREE_CODE (*expr_p) == TRUTH_OR_EXPR
++                          || TREE_CODE (*expr_p) == TRUTH_XOR_EXPR))
++                debug_tree (*expr_p);
+ 	      gcc_assert (TREE_CODE (*expr_p) == TRUTH_AND_EXPR
+ 			  || TREE_CODE (*expr_p) == TRUTH_OR_EXPR
+ 			  || TREE_CODE (*expr_p) == TRUTH_XOR_EXPR);
+@@ -4704,6 +4732,10 @@
+   return ret;
+ }
+ 
++extern void (*lang_remember_gimplified_type)(tree);
++
++void (*lang_remember_gimplified_type)(tree) = 0;
++
+ /* Look through TYPE for variable-sized objects and gimplify each such
+    size that we find.  Add to LIST_P any statements generated.  */
+ 
+@@ -4724,6 +4756,12 @@
+ 
+   TYPE_SIZES_GIMPLIFIED (type) = 1;
+ 
++  if (lang_remember_gimplified_type)
++    lang_remember_gimplified_type (type);
++  
++  gimplify_one_sizepos (&TYPE_SIZE (type), list_p);
++  gimplify_one_sizepos (&TYPE_SIZE_UNIT (type), list_p);
++
+   switch (TREE_CODE (type))
+     {
+     case INTEGER_TYPE:
+@@ -4754,12 +4792,16 @@
+ 	if (TREE_CODE (field) == FIELD_DECL)
+ 	  {
+ 	    gimplify_one_sizepos (&DECL_FIELD_OFFSET (field), list_p);
+-	    gimplify_type_sizes (TREE_TYPE (field), list_p);
+ 	  }
++      for (field = TYPE_FIELDS (type); field; field = TREE_CHAIN (field))
++        if (TREE_CODE (field) == FIELD_DECL)
++          gimplify_type_sizes (TREE_TYPE (field), list_p);
+       break;
+ 
+     case POINTER_TYPE:
+     case REFERENCE_TYPE:
++      break;
++
+       gimplify_type_sizes (TREE_TYPE (type), list_p);
+       break;
+ 
+@@ -4767,9 +4809,6 @@
+       break;
+     }
+ 
+-  gimplify_one_sizepos (&TYPE_SIZE (type), list_p);
+-  gimplify_one_sizepos (&TYPE_SIZE_UNIT (type), list_p);
+-
+   for (t = TYPE_NEXT_VARIANT (type); t; t = TYPE_NEXT_VARIANT (t))
+     {
+       TYPE_SIZE (t) = TYPE_SIZE (type);
+@@ -4778,6 +4817,11 @@
+     }
+ }
+ 
++
++extern void (*lang_remember_gimplified_sizepos)(tree *);
++
++void (*lang_remember_gimplified_sizepos)(tree *) = 0;
++
+ /* A subroutine of gimplify_type_sizes to make sure that *EXPR_P,
+    a size or position, has had all of its SAVE_EXPRs evaluated.
+    We add any required statements to STMT_P.  */
+@@ -4787,6 +4831,12 @@
+ {
+   tree type, expr = *expr_p;
+ 
++  if (expr == NULL_TREE || TREE_CODE (expr) == INTEGER_CST)
++    return;
++
++  if (lang_remember_gimplified_sizepos)
++    lang_remember_gimplified_sizepos(expr_p);
++
+   /* We don't do anything if the value isn't there, is constant, or contains
+      A PLACEHOLDER_EXPR.  We also don't want to do anything if it's already
+      a VAR_DECL.  If it's a VAR_DECL from another function, the gimplifier
+@@ -4890,9 +4940,18 @@
+ 	     a pointer to the array type.  We must allow this in order to
+ 	     properly represent assigning the address of an array in C into
+ 	     pointer to the element type.  */
++/*
+ 	  gcc_assert (TREE_CODE (otype) == ARRAY_TYPE
+ 		      && POINTER_TYPE_P (ptype)
+ 		      && cpt_same_type (TREE_TYPE (otype), dtype));
++*/
++          if (!(TREE_CODE (otype) == ARRAY_TYPE
++                      && POINTER_TYPE_P (ptype)
++                      && cpt_same_type (TREE_TYPE (otype), dtype)))
++            {
++              debug_tree (t);
++              gcc_unreachable ();
++            }
+ 	  break;
+ 	}
+       break;
+diff -urN gcc.orig/ipa-type-escape.c gcc/ipa-type-escape.c
+--- gcc.orig/ipa-type-escape.c	2005-09-25 07:28:01.000000000 +0200
++++ gcc/ipa-type-escape.c	2007-08-26 20:40:16.040950472 +0200
+@@ -260,9 +260,23 @@
+ type_to_consider (tree type)
+ {
+   /* Strip the *'s off.  */
++  tree otype = type;
++  long cnt = 0;
++  long ocnt = 0;
+   type = TYPE_MAIN_VARIANT (type);
+   while (POINTER_TYPE_P (type) || TREE_CODE (type) == ARRAY_TYPE)
+-    type = TYPE_MAIN_VARIANT (TREE_TYPE (type));
++    {
++      type = TYPE_MAIN_VARIANT (TREE_TYPE (type));
++      if (type == otype)
++        return false;
++      if (cnt > ocnt)
++        {
++          ocnt += cnt;
++          otype = type;
++        }
++      else
++        cnt ++;
++    }
+ 
+   switch (TREE_CODE (type))
+     {
+diff -urN gcc.orig/print-tree.c gcc/print-tree.c
+--- gcc.orig/print-tree.c	2005-10-13 01:34:09.000000000 +0200
++++ gcc/print-tree.c	2007-08-26 20:40:16.050950623 +0200
+@@ -580,7 +580,7 @@
+ 
+       if (TREE_CODE (node) == ENUMERAL_TYPE)
+ 	print_node (file, "values", TYPE_VALUES (node), indent + 4);
+-      else if (TREE_CODE (node) == ARRAY_TYPE)
++      else if (TREE_CODE (node) == ARRAY_TYPE || TREE_CODE (node) == SET_TYPE)
+ 	print_node (file, "domain", TYPE_DOMAIN (node), indent + 4);
+       else if (TREE_CODE (node) == VECTOR_TYPE)
+ 	fprintf (file, " nunits %d", (int) TYPE_VECTOR_SUBPARTS (node));
+diff -urN gcc.orig/reload1.c gcc/reload1.c
+--- gcc.orig/reload1.c	2006-06-14 11:24:44.000000000 +0200
++++ gcc/reload1.c	2007-08-26 20:40:16.050950623 +0200
+@@ -1254,7 +1254,10 @@
+   reg_equiv_memory_loc = 0;
+ 
+   if (offsets_known_at)
+-    free (offsets_known_at);
++    {
++//      free (offsets_known_at);
++      offsets_known_at = 0;
++    }
+   if (offsets_at)
+     free (offsets_at);
+ 
+diff -urN gcc.orig/stor-layout.c gcc/stor-layout.c
+--- gcc.orig/stor-layout.c	2006-10-04 09:01:27.000000000 +0200
++++ gcc/stor-layout.c	2007-08-26 20:40:16.050950623 +0200
+@@ -19,6 +19,7 @@
+ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA.  */
+ 
++/* @@ PATCHED FOR GPC 20060322 @@ */
+ 
+ #include "config.h"
+ #include "system.h"
+@@ -53,6 +54,21 @@
+    called only by a front end.  */
+ static int reference_types_internal = 0;
+ 
++/* If nonzero, the alignment of a bitstring or (power-)set value, in bits.
++   May be overridden by front-ends.  */
++unsigned int set_alignment = 0;
++
++/* The word size of a bitstring or (power-)set value, in bits.
++   Must be non-zero.
++   May be overridden by front-ends.  */
++unsigned int set_word_size = BITS_PER_UNIT;
++
++/* If non-zero, bits in (power-)sets start with the highest bit.
++   May be overridden by front-ends.
++   In order to be backward-compatible, the Chill frontend should
++   initialize this to BYTES_BIG_ENDIAN.  */
++unsigned int set_words_big_endian = 0;
++
+ static void finalize_record_size (record_layout_info);
+ static void finalize_type_size (tree);
+ static void place_union_field (record_layout_info, tree);
+@@ -1899,6 +1915,50 @@
+       }
+       break;
+ 
++    case SET_TYPE:  /* Used by Chill and Pascal.  */
++      if (TREE_CODE (TYPE_MAX_VALUE (TYPE_DOMAIN (type))) != INTEGER_CST
++          || TREE_CODE (TYPE_MIN_VALUE (TYPE_DOMAIN (type))) != INTEGER_CST)
++        abort ();
++      else
++        {
++          int alignment = set_alignment ? set_alignment : set_word_size;
++          tree lower_bound = convert (sbitsizetype,
++                        TYPE_MIN_VALUE (TYPE_DOMAIN (type)));
++          tree upper_bound = convert (sbitsizetype,
++                        TYPE_MAX_VALUE (TYPE_DOMAIN (type)));
++          tree size_in_bits, rounded_size;
++          if (set_alignment)
++            {
++              lower_bound = round_down (lower_bound, alignment);
++            }
++          size_in_bits = size_binop (PLUS_EXPR,
++                                size_binop (MINUS_EXPR,
++                                        upper_bound,
++                                        lower_bound),
++                                sbitsize_int(1));
++          rounded_size = round_up (size_in_bits, alignment);
++
++          if ( TREE_INT_CST_HIGH (rounded_size)
++                || TREE_INT_CST_LOW (rounded_size) > (unsigned) alignment)
++            {
++                TYPE_MODE (type) = BLKmode;
++            }
++          else
++            {
++                TYPE_MODE (type) = mode_for_size (alignment, MODE_INT, 1);
++            }
++
++          TYPE_SIZE (type) = convert (bitsizetype, rounded_size);
++          TYPE_SIZE_UNIT (type) = convert (sizetype,
++                                size_binop ( CEIL_DIV_EXPR,
++                                        rounded_size,
++                                        sbitsize_int (BITS_PER_UNIT)));
++          TYPE_ALIGN (type) = alignment;
++          TYPE_USER_ALIGN (type) = 0;
++          TYPE_PRECISION (type) = TREE_INT_CST_LOW (size_in_bits);
++        }
++      break;
++
+     default:
+       gcc_unreachable ();
+     }
+@@ -1995,9 +2055,9 @@
+   t = build_distinct_type_copy (type);
+   /* We do want to use sizetype's cache, as we will be replacing that
+      type.  */
+-  TYPE_CACHED_VALUES (t) = TYPE_CACHED_VALUES (sizetype);
+-  TYPE_CACHED_VALUES_P (t) = TYPE_CACHED_VALUES_P (sizetype);
+-  TREE_TYPE (TYPE_CACHED_VALUES (t)) = type;
++  TYPE_CACHED_VALUES (t) = NULL_TREE /* TYPE_CACHED_VALUES (sizetype) */;
++  TYPE_CACHED_VALUES_P (t) = 0 ; /* TYPE_CACHED_VALUES_P (sizetype);
++  TREE_TYPE (TYPE_CACHED_VALUES (t)) = type; */
+   TYPE_UID (t) = TYPE_UID (sizetype);
+   TYPE_IS_SIZETYPE (t) = 1;
+   
+@@ -2009,8 +2069,8 @@
+   TYPE_NAME (t) = get_identifier ("bit_size_type");
+   /* We do want to use bitsizetype's cache, as we will be replacing that
+      type.  */
+-  TYPE_CACHED_VALUES (t) = TYPE_CACHED_VALUES (bitsizetype);
+-  TYPE_CACHED_VALUES_P (t) = TYPE_CACHED_VALUES_P (bitsizetype);
++  TYPE_CACHED_VALUES (t) = NULL_TREE /* TYPE_CACHED_VALUES (bitsizetype) */;
++  TYPE_CACHED_VALUES_P (t) = 0 /* TYPE_CACHED_VALUES_P (bitsizetype) */;
+   TYPE_PRECISION (t) = precision;
+   TYPE_UID (t) = TYPE_UID (bitsizetype);
+   TYPE_IS_SIZETYPE (t) = 1;
+diff -urN gcc.orig/toplev.c gcc/toplev.c
+--- gcc.orig/toplev.c	2006-08-03 13:33:49.000000000 +0200
++++ gcc/toplev.c	2007-08-26 20:40:16.050950623 +0200
+@@ -803,9 +803,13 @@
+ /* A subroutine of check_global_declarations.  Issue appropriate warnings
+    for the global declaration DECL.  */
+ 
++volatile int dump_global_decl_trees = 0;
+ void
+ check_global_declaration_1 (tree decl)
+ {
++  if (dump_global_decl_trees)
++    debug_tree (decl);
++
+   /* Warn about any function declared static but not defined.  We don't
+      warn about variables, because many programs have static variables
+      that exist only to get some text into the object file.  */
+@@ -1110,6 +1114,27 @@
+ void
+ print_version (FILE *file, const char *indent)
+ {
++#ifdef GPC
++  extern const char *lang_version_string;
++  static const char fmt1[] =
++#ifdef __GNUC__
++    N_("%s%s%s version %s%s (%s)\n%s\tcompiled by GNU C version %s.\n")
++#else
++    N_("%s%s%s version %s%s (%s) compiled by CC.\n")
++#endif
++    ;
++  static const char fmt2[] =
++    N_("%s%sGGC heuristics: --param ggc-min-expand=%d --param ggc-min-heapsize=%d\n");
++#ifndef __VERSION__
++#define __VERSION__ "[?]"
++#endif
++
++  fprintf (file,
++           file == stderr ? _(fmt1) : fmt1,
++           indent, *indent != 0 ? " " : "",
++           lang_hooks.name, lang_version_string, version_string, TARGET_NAME,
++           indent, __VERSION__);
++#else
+   static const char fmt1[] =
+ #ifdef __GNUC__
+     N_("%s%s%s version %s (%s)\n%s\tcompiled by GNU C version %s.\n")
+@@ -1122,11 +1147,13 @@
+ #ifndef __VERSION__
+ #define __VERSION__ "[?]"
+ #endif
++
+   fprintf (file,
+ 	   file == stderr ? _(fmt1) : fmt1,
+ 	   indent, *indent != 0 ? " " : "",
+ 	   lang_hooks.name, version_string, TARGET_NAME,
+ 	   indent, __VERSION__);
++#endif
+   fprintf (file,
+ 	   file == stderr ? _(fmt2) : fmt2,
+ 	   indent, *indent != 0 ? " " : "",
+diff -urN gcc.orig/tree.c gcc/tree.c
+--- gcc.orig/tree.c	2007-01-05 21:59:15.000000000 +0100
++++ gcc/tree.c	2007-08-26 20:40:16.070950925 +0200
+@@ -800,9 +800,16 @@
+       if (t)
+ 	{
+ 	  /* Make sure no one is clobbering the shared constant.  */
++          if (!(TREE_TYPE (t) == type))
++            debug_tree (t);
+ 	  gcc_assert (TREE_TYPE (t) == type);
++          if (!(TREE_INT_CST_LOW (t) == low))
++            debug_tree (t);
+ 	  gcc_assert (TREE_INT_CST_LOW (t) == low);
++          if (!(TREE_INT_CST_HIGH (t) == hi))
++            debug_tree (t);
+ 	  gcc_assert (TREE_INT_CST_HIGH (t) == hi);
++
+ 	}
+       else
+ 	{
+@@ -2131,6 +2138,7 @@
+ 	      || CONTAINS_PLACEHOLDER_P (TYPE_MAX_VALUE (type)));
+ 
+     case ARRAY_TYPE:
++    case SET_TYPE:
+       /* We're already checked the component type (TREE_TYPE), so just check
+ 	 the index type.  */
+       return type_contains_placeholder_p (TYPE_DOMAIN (type));
+@@ -3142,7 +3150,8 @@
+   if (EXPR_LOCUS (node)
+       && EXPR_LINENO (node) == line
+       && (EXPR_FILENAME (node) == file
+-	  || !strcmp (EXPR_FILENAME (node), file)))
++         || (EXPR_FILENAME (node) &&  file
++                && ! strcmp (EXPR_FILENAME (node), file))))
+     {
+       last_annotated_node = EXPR_LOCUS (node);
+       return;
+@@ -3154,7 +3163,8 @@
+   if (last_annotated_node
+       && last_annotated_node->line == line
+       && (last_annotated_node->file == file
+-	  || !strcmp (last_annotated_node->file, file)))
++         || (last_annotated_node->file &&  file
++                && ! strcmp (last_annotated_node->file, file))))
+     {
+       SET_EXPR_LOCUS (node, last_annotated_node);
+       return;
+@@ -5007,6 +5017,7 @@
+   TYPE_SIZE_UNIT (itype) = TYPE_SIZE_UNIT (type);
+   TYPE_ALIGN (itype) = TYPE_ALIGN (type);
+   TYPE_USER_ALIGN (itype) = TYPE_USER_ALIGN (type);
++  TYPE_UNSIGNED (itype) = TYPE_UNSIGNED (type);
+ 
+   if (host_integerp (lowval, 0) && highval != 0 && host_integerp (highval, 0))
+     return type_hash_canon (tree_low_cst (highval, 0)
+@@ -5970,6 +5981,137 @@
+   return get_file_function_name_long (p);
+ }
+ 
++/* Expand (the constant part of) a SET_TYPE CONSTRUCTOR node.
++   The result is placed in BUFFER (which has length BIT_SIZE),
++   with one bit in each char ('\000' or '\001').
++
++   If the constructor is constant, NULL_TREE is returned.
++   Otherwise, a TREE_LIST of the non-constant elements is emitted.  */
++
++tree
++get_set_constructor_bits (tree init, char *buffer, int bit_size)
++{
++  int i;
++  tree vals;
++  HOST_WIDE_INT domain_min
++    = tree_low_cst (TYPE_MIN_VALUE (TYPE_DOMAIN (TREE_TYPE (init))), 0);
++  HOST_WIDE_INT low_limit = domain_min;
++  tree non_const_bits = NULL_TREE;
++
++  if (set_alignment)
++    /* Note: `domain_min -= domain_min % set_alignment' would be wrong for negative
++       numbers (rounding towards 0, while we have to round towards -inf). */
++    domain_min &= -(int) set_alignment;
++
++  low_limit -= domain_min;
++
++  for (i = 0; i < bit_size; i++)
++    buffer[i] = 0;
++
++  for (vals = TREE_OPERAND (init, 0) /* CONSTRUCTOR_ELTS (init) */;
++       vals != NULL_TREE; vals = TREE_CHAIN (vals))
++    {
++      if (!host_integerp (TREE_VALUE (vals), 0)
++	  || (TREE_PURPOSE (vals) != NULL_TREE
++	      && !host_integerp (TREE_PURPOSE (vals), 0)))
++	non_const_bits
++	  = tree_cons (TREE_PURPOSE (vals), TREE_VALUE (vals), non_const_bits);
++      else if (TREE_PURPOSE (vals) != NULL_TREE)
++	{
++	  /* Set a range of bits to ones.  */
++	  HOST_WIDE_INT lo_index
++	    = tree_low_cst (TREE_PURPOSE (vals), 0) - domain_min;
++	  HOST_WIDE_INT hi_index
++	    = tree_low_cst (TREE_VALUE (vals), 0) - domain_min;
++
++          if (lo_index < low_limit || hi_index >= bit_size)
++            {
++              error ("invalid initializer for set");
++              return NULL_TREE;
++            }
++
++	  gcc_assert (lo_index >= 0);
++	  gcc_assert (lo_index < bit_size);
++	  gcc_assert (hi_index >= 0);
++	  gcc_assert (hi_index < bit_size);
++	  for (; lo_index <= hi_index; lo_index++)
++	    buffer[lo_index] = 1;
++	}
++      else
++	{
++	  /* Set a single bit to one.  */
++	  HOST_WIDE_INT index
++	    = tree_low_cst (TREE_VALUE (vals), 0) - domain_min;
++	  if (index < 0 || index >= bit_size)
++	    {
++	      error ("invalid initializer for set");
++	      return NULL_TREE;
++	    }
++	  buffer[index] = 1;
++	}
++    }
++  return non_const_bits;
++}
++
++/* Expand (the constant part of) a SET_TYPE CONSTRUCTOR node.
++   The result is placed in BUFFER (which is an array of bytes).
++   If the constructor is constant, NULL_TREE is returned.
++   Otherwise, a TREE_LIST of the non-constant elements is emitted.  */
++
++tree
++get_set_constructor_bytes (tree init, unsigned char *buffer, int wd_size)
++{
++  int i;
++#ifdef GPC
++  int bit_size = wd_size * BITS_PER_UNIT;
++  unsigned int bit_pos = 0;
++#else /* not GPC */
++  int set_word_size = BITS_PER_UNIT;
++  int bit_size = wd_size * set_word_size;
++  int bit_pos = 0;
++#endif /* not GPC */
++  unsigned char *bytep = buffer;
++  char *bit_buffer = alloca (bit_size);
++  tree non_const_bits = get_set_constructor_bits (init, bit_buffer, bit_size);
++
++  for (i = 0; i < wd_size; i++)
++    buffer[i] = 0;
++
++  for (i = 0; i < bit_size; i++)
++    {
++#ifdef GPC
++      if (bit_buffer[i])
++      {
++          int k = bit_pos / BITS_PER_UNIT;
++          if (WORDS_BIG_ENDIAN)
++            k = set_word_size / BITS_PER_UNIT - 1 - k;
++        if (set_words_big_endian)
++          bytep[k] |= (1 << (BITS_PER_UNIT - 1 - bit_pos % BITS_PER_UNIT));
++        else
++          bytep[k] |= (1 << (bit_pos % BITS_PER_UNIT));
++      }
++      bit_pos++;
++      if (bit_pos >= set_word_size)
++        {
++          bit_pos = 0;
++          bytep += set_word_size / BITS_PER_UNIT;
++        }
++#else /* not GPC */
++      if (bit_buffer[i])
++	{
++	  if (BYTES_BIG_ENDIAN)
++	    *bytep |= (1 << (set_word_size - 1 - bit_pos));
++	  else
++	    *bytep |= 1 << bit_pos;
++	}
++      bit_pos++;
++      if (bit_pos >= set_word_size)
++	bit_pos = 0, bytep++;
++#endif
++    }
++  return non_const_bits;
++}
++
+ #if defined ENABLE_TREE_CHECKING && (GCC_VERSION >= 2007)
+ 
+ /* Complain that the tree code of NODE does not match the expected 0
+@@ -6645,6 +6787,15 @@
+       {
+ 	unsigned HOST_WIDE_INT idx;
+ 
++#if 0
++      /* Set is empty if it has no elements.  */
++      if (TREE_CODE (TREE_TYPE (init)) == SET_TYPE && elt)
++        return false;
++#else
++      if (TREE_CODE (TREE_TYPE (init)) == SET_TYPE)
++        gcc_unreachable ();
++#endif
++        
+ 	FOR_EACH_CONSTRUCTOR_VALUE (CONSTRUCTOR_ELTS (init), idx, elt)
+ 	  if (!initializer_zerop (elt))
+ 	    return false;
+diff -urN gcc.orig/tree-cfg.c gcc/tree-cfg.c
+--- gcc.orig/tree-cfg.c	2006-11-19 17:09:19.000000000 +0100
++++ gcc/tree-cfg.c	2007-08-26 20:40:16.060950774 +0200
+@@ -3642,10 +3642,17 @@
+ 	  if (decl_function_context (LABEL_EXPR_LABEL (stmt))
+ 	      != current_function_decl)
+ 	    {
+-	      error ("label %s has incorrect context in bb %d",
+-		     IDENTIFIER_POINTER (DECL_NAME (LABEL_EXPR_LABEL (stmt))),
+-		     bb->index);
+-	      err = 1;
++              tree ldecl = DECL_NAME (LABEL_EXPR_LABEL (stmt));
++              const char * ln = ldecl ? IDENTIFIER_POINTER (ldecl): "????";
++#if 0
++              error ("label %s has incorrect context in bb %d\n",
++                     IDENTIFIER_POINTER (DECL_NAME (LABEL_EXPR_LABEL (stmt))),
++                     bb->index);
++#else
++              error ("label %s has incorrect context in bb %d\n", ln,
++                      bb->index);
++#endif
++              err = 1;
+ 	    }
+ 	}
+ 
+diff -urN gcc.orig/tree.def gcc/tree.def
+--- gcc.orig/tree.def	2006-02-10 18:32:10.000000000 +0100
++++ gcc/tree.def	2007-08-26 20:40:16.070950925 +0200
+@@ -254,6 +254,12 @@
+    includes the hidden argument for "self".  */
+ DEFTREECODE (METHOD_TYPE, "method_type", tcc_type, 0)
+ 
++/* Types of sets for Pascal.  Special fields are the same as
++   in an array type.  The target type is always a boolean type.
++   Used for both bitstrings and powersets in Chill;
++   TYPE_STRING_FLAG indicates a bitstring.  */
++DEFTREECODE (SET_TYPE, "set_type", tcc_type, 0)
++
+ /* This is a language-specific kind of type.
+    Its meaning is defined by the language front end.
+    layout_type does not know how to lay this out,
+diff -urN gcc.orig/tree-flow-inline.h gcc/tree-flow-inline.h
+--- gcc.orig/tree-flow-inline.h	2006-04-18 15:24:45.000000000 +0200
++++ gcc/tree-flow-inline.h	2007-08-26 20:40:16.060950774 +0200
+@@ -1470,7 +1470,8 @@
+     return false;
+ 
+   return (AGGREGATE_TYPE_P (TREE_TYPE (v)) &&
+-	  TREE_CODE (TREE_TYPE (v)) != ARRAY_TYPE);
++	  TREE_CODE (TREE_TYPE (v)) != ARRAY_TYPE
++          && TREE_CODE (TREE_TYPE (v)) != SET_TYPE);
+ }
+ 
+   
+diff -urN gcc.orig/tree.h gcc/tree.h
+--- gcc.orig/tree.h	2007-02-09 03:52:53.000000000 +0100
++++ gcc/tree.h	2007-08-26 20:40:16.070950925 +0200
+@@ -704,6 +704,9 @@
+ #define NOT_RECORD_OR_UNION_CHECK(T) \
+   TREE_NOT_CHECK3 (T, RECORD_TYPE, UNION_TYPE, QUAL_UNION_TYPE)
+ 
++#define ARRAY_OR_SET_CHECK(T)            \
++  TREE_CHECK2 (T, ARRAY_TYPE, SET_TYPE)
++
+ #define NUMERICAL_TYPE_CHECK(T)					\
+   TREE_CHECK5 (T, INTEGER_TYPE, ENUMERAL_TYPE, BOOLEAN_TYPE,	\
+ 	       CHAR_TYPE, REAL_TYPE)
+@@ -817,7 +820,8 @@
+ 
+ #define AGGREGATE_TYPE_P(TYPE) \
+   (TREE_CODE (TYPE) == ARRAY_TYPE || TREE_CODE (TYPE) == RECORD_TYPE \
+-   || TREE_CODE (TYPE) == UNION_TYPE || TREE_CODE (TYPE) == QUAL_UNION_TYPE)
++   || TREE_CODE (TYPE) == UNION_TYPE || TREE_CODE (TYPE) == QUAL_UNION_TYPE \
++   || TREE_CODE (TYPE) == SET_TYPE)
+ 
+ /* Nonzero if TYPE represents a pointer or reference type.
+    (It should be renamed to INDIRECT_TYPE_P.)  Keep these checks in
+@@ -1618,7 +1622,7 @@
+ #define TYPE_SIZE_UNIT(NODE) (TYPE_CHECK (NODE)->type.size_unit)
+ #define TYPE_MODE(NODE) (TYPE_CHECK (NODE)->type.mode)
+ #define TYPE_VALUES(NODE) (ENUMERAL_TYPE_CHECK (NODE)->type.values)
+-#define TYPE_DOMAIN(NODE) (ARRAY_TYPE_CHECK (NODE)->type.values)
++#define TYPE_DOMAIN(NODE) (ARRAY_OR_SET_CHECK (NODE)->type.values)
+ #define TYPE_FIELDS(NODE) (RECORD_OR_UNION_CHECK (NODE)->type.values)
+ #define TYPE_CACHED_VALUES(NODE) (TYPE_CHECK(NODE)->type.values)
+ #define TYPE_ORIG_SIZE_TYPE(NODE)			\
+@@ -3555,6 +3559,15 @@
+ /* and its original value in bytes, specified via -fpack-struct=<value>.  */
+ extern unsigned int initial_max_fld_align;
+ 
++/* If nonzero, the alignment of a bitstring or (power-)set value, in bits.  */
++extern unsigned int set_alignment;
++
++/* The word size of a bitstring or (power-)set value, in bits.  */
++extern unsigned int set_word_size;
++
++/* If non-zero, bits in (power-)sets start with the highest bit.  */
++extern unsigned int set_words_big_endian;
++
+ /* Concatenate two lists (chains of TREE_LIST nodes) X and Y
+    by making the last node in X point to Y.
+    Returns X, except if X is 0 returns Y.  */
+diff -urN gcc.orig/tree-nested.c gcc/tree-nested.c
+--- gcc.orig/tree-nested.c	2006-07-20 17:43:44.000000000 +0200
++++ gcc/tree-nested.c	2007-08-26 20:40:16.060950774 +0200
+@@ -1173,6 +1173,8 @@
+   if (!elt)
+     return NULL_TREE;
+   new_label = elt->new;
++  DECL_CONTEXT (new_label) = DECL_CONTEXT (label);
++//  mark_decl_referenced (new_label);
+ 
+   /* If there's any possibility that the previous statement falls through,
+      then we must branch around the new non-local label.  */
+diff -urN gcc.orig/tree-sra.c gcc/tree-sra.c
+--- gcc.orig/tree-sra.c	2005-11-21 01:55:57.000000000 +0100
++++ gcc/tree-sra.c	2007-08-26 20:40:16.060950774 +0200
+@@ -1368,6 +1368,9 @@
+ 	      && (!can_completely_scalarize_p (elt)
+ 		  || !type_can_instantiate_all_elements (elt->type)))
+ 	    use_block_copy = true;
++          if (TREE_TYPE (elt->type)
++              && full_size != full_count*TYPE_PRECISION (TREE_TYPE (elt->type)))
++            use_block_copy = true;
+ 	}
+       elt->use_block_copy = use_block_copy;
+ 
+diff -urN gcc.orig/tree-ssa-dom.c gcc/tree-ssa-dom.c
+--- gcc.orig/tree-ssa-dom.c	2006-11-17 10:01:31.000000000 +0100
++++ gcc/tree-ssa-dom.c	2007-08-26 20:40:16.060950774 +0200
+@@ -2804,12 +2804,26 @@
+       val_type = TREE_TYPE (val);
+ 
+       /* While both types are pointers, get the type of the object
+-	 pointed to.  */
+-      while (POINTER_TYPE_P (op_type) && POINTER_TYPE_P (val_type))
+-	{
+-	  op_type = TREE_TYPE (op_type);
+-	  val_type = TREE_TYPE (val_type);
+-	}
++	 pointed to. Do not get trapped in cycles.  */
++      {
++        long cnt = 0, maxcnt = 11;
++        tree op_type0 = op_type;
++        while (POINTER_TYPE_P (op_type) && POINTER_TYPE_P (val_type))
++	  {
++	    op_type = TREE_TYPE (op_type);
++	    val_type = TREE_TYPE (val_type);
++            if (op_type == op_type0)
++              return false;
++            cnt ++;
++            if (cnt > maxcnt)
++              {
++                op_type0 = op_type;
++                maxcnt += maxcnt;
++                if (maxcnt < 0)
++                  return false;
++              }
++	  }
++      }
+ 
+       /* Make sure underlying types match before propagating a constant by
+ 	 converting the constant to the proper type.  Note that convert may
+diff -urN gcc.orig/varasm.c gcc/varasm.c
+--- gcc.orig/varasm.c	2006-10-16 11:58:48.000000000 +0200
++++ gcc/varasm.c	2007-08-26 20:40:16.070950925 +0200
+@@ -2449,6 +2449,18 @@
+ 	      + const_hash_1 (TREE_IMAGPART (exp)));
+ 
+     case CONSTRUCTOR:
++      if (TREE_CODE (TREE_TYPE (exp)) == SET_TYPE)
++        {
++          char *tmp;
++
++          len = int_size_in_bytes (TREE_TYPE (exp));
++          tmp = alloca (len);
++          gcc_unreachable ();
++          get_set_constructor_bytes (exp, (unsigned char *) tmp, len);
++          p = tmp;
++          break;
++        }
++      else
+       {
+ 	unsigned HOST_WIDE_INT idx;
+ 	tree value;
+@@ -2576,6 +2588,30 @@
+ 	typecode = TREE_CODE (TREE_TYPE (t1));
+ 	if (typecode != TREE_CODE (TREE_TYPE (t2)))
+ 	  return 0;
++      if (typecode == SET_TYPE)
++        {
++          int len = int_size_in_bytes (TREE_TYPE (t2));
++          unsigned char *tmp1, *tmp2;
++
++          if (TYPE_MAIN_VARIANT (TREE_TYPE (t1)) !=
++                TYPE_MAIN_VARIANT (TREE_TYPE (t2)))
++            return 0;
++
++          if (int_size_in_bytes (TREE_TYPE (t1)) != len)
++            return 0;
++
++          tmp1 = alloca (len);
++          tmp2 = alloca (len);
++
++          gcc_unreachable ();
++          if (get_set_constructor_bytes (t1, tmp1, len) != NULL_TREE)
++            return 0;
++          if (get_set_constructor_bytes (t2, tmp2, len) != NULL_TREE)
++            return 0;
++
++          return memcmp (tmp1, tmp2, len) == 0;
++        }
++
+ 
+ 	if (typecode == ARRAY_TYPE)
+ 	  {
+@@ -2708,6 +2744,24 @@
+ 	VEC(constructor_elt, gc) *v;
+ 	unsigned HOST_WIDE_INT idx;
+ 	tree purpose, value;
++
++#if 0
++        tree list = copy_list (CONSTRUCTOR_ELTS (exp));
++        tree tail;
++
++        CONSTRUCTOR_ELTS (copy) = list;
++        for (tail = list; tail; tail = TREE_CHAIN (tail))
++          TREE_VALUE (tail) = copy_constant (TREE_VALUE (tail));
++
++        if (TREE_CODE (TREE_TYPE (exp)) == SET_TYPE)
++          for (tail = list; tail; tail = TREE_CHAIN (tail))
++            TREE_PURPOSE (tail) = copy_constant (TREE_PURPOSE (tail));
++
++        return copy;
++#else
++        if (TREE_CODE (TREE_TYPE (exp)) == SET_TYPE)
++          gcc_unreachable ();
++#endif
+ 	
+ 	v = VEC_alloc(constructor_elt, gc, VEC_length(constructor_elt,
+ 						      CONSTRUCTOR_ELTS (exp)));
+@@ -3748,7 +3802,12 @@
+ 	/* Allow conversions to struct or union types if the value
+ 	   inside is okay.  */
+ 	if (TREE_CODE (dest_type) == RECORD_TYPE
+-	    || TREE_CODE (dest_type) == UNION_TYPE)
++	    || TREE_CODE (dest_type) == UNION_TYPE
++#ifdef GPC
++            || TREE_CODE (TREE_TYPE (value)) == ARRAY_TYPE
++#endif
++           )
++
+ 	  return initializer_constant_valid_p (src, endtype);
+       }
+       break;
+@@ -4044,6 +4103,23 @@
+       output_constructor (exp, size, align);
+       return;
+ 
++    case SET_TYPE:
++      if (TREE_CODE (exp) == INTEGER_CST)
++        assemble_integer (expand_expr (exp, NULL_RTX,
++                                       VOIDmode, EXPAND_INITIALIZER),
++                          thissize, align, 1);
++      else if (TREE_CODE (exp) == CONSTRUCTOR)
++        {
++          unsigned char *buffer = alloca (thissize);
++          gcc_unreachable ();
++          if (get_set_constructor_bytes (exp, buffer, thissize))
++            abort ();
++          assemble_string ((char *) buffer, thissize);
++        }
++      else
++        error ("unknown set constructor type");
++      return;
++
+     case ERROR_MARK:
+       return;
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-symbolic-operand.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-symbolic-operand.dpatch
@@ -0,0 +1,47 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: better recognize symbolic operands in addresses
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.h |    4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.h
++++ gcc-4.2/gcc/config/m68k/m68k.h
+@@ -723,9 +723,7 @@ __transfer_from_trampoline ()					\
+        && (TARGET_68020							\
+ 	   || ((unsigned) INTVAL (XEXP (X, 1)) + 0x8000) < 0x10000))	\
+    || (GET_CODE (X) == PLUS && XEXP (X, 0) == pic_offset_table_rtx 	\
+-       && flag_pic && GET_CODE (XEXP (X, 1)) == SYMBOL_REF)		\
+-   || (GET_CODE (X) == PLUS && XEXP (X, 0) == pic_offset_table_rtx 	\
+-       && flag_pic && GET_CODE (XEXP (X, 1)) == LABEL_REF))
++       && flag_pic && symbolic_operand (XEXP (X, 1), VOIDmode)))	\
+ 
+ #define GO_IF_NONINDEXED_ADDRESS(X, ADDR)  \
+ { if (INDIRECTABLE_1_ADDRESS_P (X)) goto ADDR; }
--- gcj-4.2-4.2.4.orig/debian/patches/pr35020.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr35020.dpatch
@@ -0,0 +1,320 @@
+#! /bin/sh -e
+
+# DP: Fix PR libjava/35020, taken from the trunk.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	uudecode $0
+	tar -xv -f pr35020-classes.tgz -C ${dir}
+	rm -f pr35020-classes.tgz
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2008-05-22  Andrew Haley  <aph@redhat.com>
+
+	PR libgcj/35020
+	* java/lang/Class.java (getSimpleName): Replace incorrect use of
+	String.lastIndexOf(String, int) with String.substring.
+	* testsuite/libjava.lang/PR35020.java: New file.
+	* testsuite/libjava.lang/PR35020.out: New file.
+
+2008-05-22  Andrew Haley  <aph@redhat.com>
+
+	PR libgcj/35020
+	* java/lang/Class.java (getSimpleName): Import from GNU Classpath.
+
+Index: libjava/testsuite/libjava.lang/PR35020.java
+===================================================================
+--- libjava/testsuite/libjava.lang/PR35020.java	(revision 0)
++++ libjava/testsuite/libjava.lang/PR35020.java	(revision 135801)
+@@ -0,0 +1,21 @@
++public class PR35020
++{
++   class inner
++   {
++   }
++   public static void main(String[] args)
++   {
++      System.out.println(inner.class.getSimpleName());
++      System.out.println(PR35020.class.getSimpleName());
++      System.out.println(Class.class.getSimpleName());
++      System.out.println((new int[7]).getClass().getSimpleName());
++      System.out.println((new Object[1][1][1][1][1][1][1][1]).getClass().getSimpleName());
++      System.out.println((new java.security.PrivilegedAction() 
++	{
++	  public Object run() {
++	    return null;
++	  }
++	}).getClass().getSimpleName());
++   }
++}
++
+Index: libjava/testsuite/libjava.lang/PR35020.out
+===================================================================
+--- libjava/testsuite/libjava.lang/PR35020.out	(revision 0)
++++ libjava/testsuite/libjava.lang/PR35020.out	(revision 135801)
+@@ -0,0 +1,6 @@
++inner
++PR35020
++Class
++int[]
++Object[][][][][][][][]
++
+Index: libjava/java/lang/Class.java
+===================================================================
+--- libjava/java/lang/Class.java	(revision 135770)
++++ libjava/java/lang/Class.java	(revision 135801)
+@@ -1075,22 +1075,29 @@
+    */
+   public String getSimpleName()
+   {
+-    StringBuffer sb = new StringBuffer();
+-    Class klass = this;
+-    int arrayCount = 0;
+-    while (klass.isArray())
++    if (isAnonymousClass())
++      return "";
++    if (isArray())
+       {
+-	klass = klass.getComponentType();
+-	++arrayCount;
++	return getComponentType().getSimpleName() + "[]";
+       }
+-    if (! klass.isAnonymousClass())
++    String fullName = getName();
++    int pos = fullName.lastIndexOf("$");
++    if (pos == -1)
++      pos = 0;
++    else
+       {
+-	String fullName = klass.getName();
+-	sb.append(fullName, fullName.lastIndexOf(".") + 1, fullName.length());
++	++pos;
++	while (Character.isDigit(fullName.charAt(pos)))
++	  ++pos;
++	fullName = fullName.substring(pos);
+       }
+-    while (arrayCount-- > 0)
+-      sb.append("[]");
+-    return sb.toString();
++
++    int packagePos = fullName.lastIndexOf(".");
++    if (packagePos == -1)
++      return fullName;
++    else
++      return fullName.substring(packagePos + 1);
+   }
+ 
+   /**
+
+begin-base64 644 pr35020-classes.tgz

+LFiwYMHi7+APRvHkTwB4AAA=
+====
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-directives-only-doc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-directives-only-doc.dpatch
@@ -0,0 +1,60 @@
+#! /bin/sh -e
+
+# DP: Backport from trunk: -fdirectives-only (when preprocessing,
+# DP: handle directives, but do not expand macros).
+# DP: documentation changes
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: gcc/doc/cppopts.texi
+===================================================================
+--- gcc/doc/cppopts.texi	(revision 127246)
++++ gcc/doc/cppopts.texi	(working copy)
+@@ -508,6 +508,28 @@
+ @xref{Search Path}.
+ @end ifset
+ 
++@item -fdirectives-only
++@opindex fdirectives-only
++When preprocessing, handle directives, but do not expand macros.
++
++The option's behavior depends on the @option{-E} and @option{-fpreprocessed}
++options.
++
++With @option{-E}, preprocessing is limited to the handling of directives
++such as @code{#define}, @code{#ifdef}, and @code{#error}.  Other
++preprocessor operations, such as macro expansion and trigraph
++conversion are not performed.  In addition, the @option{-dD} option is
++implicitly enabled.
++
++With @option{-fpreprocessed}, predefinition of command line and most
++builtin macros is disabled.  Macros such as @code{__LINE__}, which are
++contextually dependent, are handled normally.  This enables compilation of
++files previously preprocessed with @code{-E -fdirectives-only}.
++
++With both @option{-E} and @option{-fpreprocessed}, the rules for
++@option{-fpreprocessed} take precedence.  This enables full preprocessing of
++files previously preprocessed with @code{-E -fdirectives-only}.
++
+ @item -fdollars-in-identifiers
+ @opindex fdollars-in-identifiers
+ @anchor{fdollars-in-identifiers}
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-dwarf2.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-dwarf2.dpatch
@@ -0,0 +1,144 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: Recognize stack adjustments also in the src of an instruction.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/dwarf2out.c |   83 +++++++++++++++++++++++++++++++-------------------------
+ 1 file changed, 47 insertions(+), 36 deletions(-)
+
+Index: gcc-4.2/gcc/dwarf2out.c
+===================================================================
+--- gcc-4.2.orig/gcc/dwarf2out.c
++++ gcc-4.2/gcc/dwarf2out.c
+@@ -1016,6 +1016,7 @@ stack_adjust_offset (rtx pattern)
+   rtx src = SET_SRC (pattern);
+   rtx dest = SET_DEST (pattern);
+   HOST_WIDE_INT offset = 0;
++  enum machine_mode mode;
+   enum rtx_code code;
+ 
+   if (dest == stack_pointer_rtx)
+@@ -1030,52 +1031,62 @@ stack_adjust_offset (rtx pattern)
+       offset = INTVAL (XEXP (src, 1));
+       if (code == PLUS)
+ 	offset = -offset;
++      return offset;
+     }
+-  else if (MEM_P (dest))
++  if (MEM_P (dest)
++      && GET_RTX_CLASS (GET_CODE (XEXP (dest, 0))))
+     {
+       /* (set (mem (pre_dec (reg sp))) (foo)) */
++      mode = GET_MODE (dest);
+       src = XEXP (dest, 0);
+-      code = GET_CODE (src);
++    }
++  else if (MEM_P (src)
++	   && GET_RTX_CLASS (GET_CODE (XEXP (src, 0))))
++    {
++      /* (set (foo) (mem (post_inc (reg sp)))) */
++      mode = GET_MODE (src);
++      src = XEXP (src, 0);
++    }
++  else
++    return 0;
+ 
+-      switch (code)
++  code = GET_CODE (src);
++  switch (code)
++    {
++    case PRE_MODIFY:
++    case POST_MODIFY:
++      if (XEXP (src, 0) == stack_pointer_rtx)
+ 	{
+-	case PRE_MODIFY:
+-	case POST_MODIFY:
+-	  if (XEXP (src, 0) == stack_pointer_rtx)
+-	    {
+-	      rtx val = XEXP (XEXP (src, 1), 1);
+-	      /* We handle only adjustments by constant amount.  */
+-	      gcc_assert (GET_CODE (XEXP (src, 1)) == PLUS
+-			  && GET_CODE (val) == CONST_INT);
+-	      offset = -INTVAL (val);
+-	      break;
+-	    }
+-	  return 0;
+-
+-	case PRE_DEC:
+-	case POST_DEC:
+-	  if (XEXP (src, 0) == stack_pointer_rtx)
+-	    {
+-	      offset = GET_MODE_SIZE (GET_MODE (dest));
+-	      break;
+-	    }
+-	  return 0;
++	  rtx val = XEXP (XEXP (src, 1), 1);
++	  /* We handle only adjustments by constant amount.  */
++	  gcc_assert (GET_CODE (XEXP (src, 1)) == PLUS
++		      && GET_CODE (val) == CONST_INT);
++	  offset = -INTVAL (val);
++	  break;
++	}
++      return 0;
+ 
+-	case PRE_INC:
+-	case POST_INC:
+-	  if (XEXP (src, 0) == stack_pointer_rtx)
+-	    {
+-	      offset = -GET_MODE_SIZE (GET_MODE (dest));
+-	      break;
+-	    }
+-	  return 0;
++    case PRE_DEC:
++    case POST_DEC:
++      if (XEXP (src, 0) == stack_pointer_rtx)
++	{
++	  offset = GET_MODE_SIZE (mode);
++	  break;
++	}
++      return 0;
+ 
+-	default:
+-	  return 0;
++    case PRE_INC:
++    case POST_INC:
++      if (XEXP (src, 0) == stack_pointer_rtx)
++	{
++	  offset = -GET_MODE_SIZE (mode);
++	  break;
+ 	}
++      return 0;
++
++    default:
++      return 0;
+     }
+-  else
+-    return 0;
+ 
+   return offset;
+ }
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-textdomain.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-textdomain.dpatch
@@ -0,0 +1,103 @@
+#! /bin/sh -e
+
+# DP: Set gettext's domain and textdomain to the versioned package name.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/Makefile.in.orig	2005-09-04 23:32:54.003440040 +0000
++++ gcc/Makefile.in	2005-09-04 23:40:10.954013456 +0000
+@@ -4565,8 +4565,8 @@
+ 	  dir=$(localedir)/$$lang/LC_MESSAGES; \
+ 	  echo $(mkinstalldirs) $(DESTDIR)$$dir; \
+ 	  $(mkinstalldirs) $(DESTDIR)$$dir || exit 1; \
+-	  echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
+-	  $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc.mo; \
++	  echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc-4.2.mo; \
++	  $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/gcc-4.2.mo; \
+ 	done
+ 
+ # Rule for regenerating the message template (gcc.pot).
+--- gcc/intl.c.orig	2005-09-04 23:32:54.006439584 +0000
++++ gcc/intl.c	2005-09-04 23:36:37.933397512 +0000
+@@ -51,8 +51,8 @@
+   setlocale (LC_ALL, "");
+ #endif
+ 
+-  (void) bindtextdomain ("gcc", LOCALEDIR);
+-  (void) textdomain ("gcc");
++  (void) bindtextdomain ("gcc-4.2", LOCALEDIR);
++  (void) textdomain ("gcc-4.2");
+ 
+   /* Opening quotation mark.  */
+   open_quote = _("`");
+--- libcpp/Makefile.in.orig	2005-09-04 23:32:54.009439128 +0000
++++ libcpp/Makefile.in	2005-09-04 23:33:24.607787472 +0000
+@@ -47,6 +47,7 @@
+ LIBICONV = @LIBICONV@
+ LIBINTL = @LIBINTL@
+ PACKAGE = @PACKAGE@
++PACKAGE_SUFFIX = -4.2
+ RANLIB = @RANLIB@
+ SHELL = @SHELL@
+ USED_CATALOGS = @USED_CATALOGS@
+@@ -66,6 +67,7 @@
+ 
+ INCLUDES = -I$(srcdir) -I. -I$(srcdir)/../include @INCINTL@ \
+ 	-I$(srcdir)/include
++CPPFLAGS += -DPACKAGE_SUFFIX=\"$(strip $(PACKAGE_SUFFIX))\"
+ 
+ ALL_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) $(INCLUDES) $(CPPFLAGS)
+ 
+@@ -156,8 +158,8 @@
+ 	  else continue; \
+ 	  fi; \
+ 	  dir=$(localedir)/$$lang/LC_MESSAGES; \
+-	  echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
+-	  $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
++	  echo $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE)$(PACKAGE_SUFFIX).mo; \
++	  $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE)$(PACKAGE_SUFFIX).mo; \
+ 	done
+ 
+ mostlyclean:
+--- libcpp/system.h.orig	2005-09-04 23:32:54.006439584 +0000
++++ libcpp/system.h	2005-09-04 23:33:24.606787624 +0000
+@@ -260,7 +260,7 @@
+ #endif
+ 
+ #ifndef _
+-# define _(msgid) dgettext (PACKAGE, msgid)
++# define _(msgid) dgettext (PACKAGE PACKAGE_SUFFIX, msgid)
+ #endif
+ 
+ #ifndef N_
+--- libcpp/init.c.orig	2005-09-04 23:32:54.008439280 +0000
++++ libcpp/init.c	2005-09-04 23:33:24.607787472 +0000
+@@ -122,7 +122,7 @@
+       init_trigraph_map ();
+ 
+ #ifdef ENABLE_NLS
+-       (void) bindtextdomain (PACKAGE, LOCALEDIR);
++       (void) bindtextdomain (PACKAGE PACKAGE_SUFFIX, LOCALEDIR);
+ #endif
+     }
+ }
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-extra-cflags.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-extra-cflags.dpatch
@@ -0,0 +1,817 @@
+#! /bin/sh -e
+
+# DP: libjava/classpath: Set and use EXTRA_CFLAGS.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libjava/classpath && aclocal -I m4 -I ../.. -I ../../config && autoconf -I m4
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        rm -f ${dir}libjava/classpath/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2008-06-11  Andrew Haley  <aph@redhat.com>
+
+	* native/jawt/Makefile.am,
+	native/fdlibm/Makefile.am,
+	native/jni/java-util/Makefile.am,
+	native/jni/gstreamer-peer/Makefile.am,
+	native/jni/native-lib/Makefile.am,
+	native/jni/gconf-peer/Makefile.am,
+	native/jni/gtk-peer/Makefile.am,
+	native/jni/xmlj/Makefile.am,
+	native/jni/midi-alsa/Makefile.am,
+	native/jni/java-nio/Makefile.am,
+	native/jni/midi-dssi/Makefile.am,
+	native/jni/classpath/Makefile.am,
+	native/jni/java-io/Makefile.am,
+	native/jni/java-lang/Makefile.am,
+	native/jni/java-net/Makefile.am (AM_CFLAGS): Add @EXTRA_CFLAGS@.
+	* configure.ac (EXTRA_CFLAGS): New macro.
+
+	* lib/Makefile.am (resources): Add .svn.
+
+Index: libjava/classpath/Makefile.in
+===================================================================
+--- libjava/classpath/Makefile.in	(revision 137051)
++++ libjava/classpath/Makefile.in	(working copy)
+@@ -178,6 +178,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/native/jni/gstreamer-peer/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/gstreamer-peer/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/gstreamer-peer/Makefile.in	(working copy)
+@@ -157,6 +157,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -345,7 +346,8 @@
+ # gstreamer contain broken prototypes (by design).
+ AM_CFLAGS = @WARNING_CFLAGS@ -Wno-write-strings -Wno-missing-field-initializers \
+             @ERROR_CFLAGS@ -Wno-unused-parameter @GSTREAMER_BASE_CFLAGS@ \
+-            @GDK_CFLAGS@ @GSTREAMER_CFLAGS@ @GSTREAMER_PLUGINS_BASE_CFLAGS@ 
++            @GDK_CFLAGS@ @GSTREAMER_CFLAGS@ @GSTREAMER_PLUGINS_BASE_CFLAGS@ \
++            @EXTRA_CFLAGS@
+ 
+ all: all-am
+ 
+Index: libjava/classpath/native/jni/gstreamer-peer/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/gstreamer-peer/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/gstreamer-peer/Makefile.am	(working copy)
+@@ -19,4 +19,5 @@
+ # gstreamer contain broken prototypes (by design).
+ AM_CFLAGS = @WARNING_CFLAGS@ -Wno-write-strings -Wno-missing-field-initializers \
+             @ERROR_CFLAGS@ -Wno-unused-parameter @GSTREAMER_BASE_CFLAGS@ \
+-            @GDK_CFLAGS@ @GSTREAMER_CFLAGS@ @GSTREAMER_PLUGINS_BASE_CFLAGS@ 
++            @GDK_CFLAGS@ @GSTREAMER_CFLAGS@ @GSTREAMER_PLUGINS_BASE_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/Makefile.in	(working copy)
+@@ -137,6 +137,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/native/jni/classpath/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/classpath/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/classpath/Makefile.in	(working copy)
+@@ -147,6 +147,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -326,7 +327,9 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_CONVENIENCE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/classpath/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/classpath/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/classpath/Makefile.am	(working copy)
+@@ -8,4 +8,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_CONVENIENCE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/midi-dssi/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/midi-dssi/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/midi-dssi/Makefile.in	(working copy)
+@@ -158,6 +158,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -340,7 +341,7 @@
+ # No STRICT_WARNING_CFLAGS here as we use dlsym to load the address of 
+ # a function,and ISO C prohibits casting void pointers, like those returned
+ # by dlsym, to function pointers.
+-AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ @EXTRA_CFLAGS@
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/midi-dssi/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/midi-dssi/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/midi-dssi/Makefile.am	(working copy)
+@@ -12,4 +12,4 @@
+ # No STRICT_WARNING_CFLAGS here as we use dlsym to load the address of 
+ # a function,and ISO C prohibits casting void pointers, like those returned
+ # by dlsym, to function pointers.
+-AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/gconf-peer/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/gconf-peer/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/gconf-peer/Makefile.in	(working copy)
+@@ -156,6 +156,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -332,7 +333,9 @@
+ libgconfpeer_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
+ AM_LDFLAGS = @CLASSPATH_MODULE@ @GCONF_LIBS@ @GDK_LIBS@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ @GCONF_CFLAGS@ @GDK_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ @GCONF_CFLAGS@ @GDK_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/gconf-peer/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/gconf-peer/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/gconf-peer/Makefile.am	(working copy)
+@@ -10,4 +10,5 @@
+ 
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+ 
+-AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ @GCONF_CFLAGS@ @GDK_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ @GCONF_CFLAGS@ @GDK_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/java-io/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/java-io/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/java-io/Makefile.in	(working copy)
+@@ -158,6 +158,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -338,7 +339,9 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/java-io/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/java-io/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/java-io/Makefile.am	(working copy)
+@@ -9,4 +9,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/native-lib/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/native-lib/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/native-lib/Makefile.in	(working copy)
+@@ -147,6 +147,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -328,7 +329,9 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/native-lib/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/native-lib/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/native-lib/Makefile.am	(working copy)
+@@ -9,4 +9,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/java-util/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/java-util/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/java-util/Makefile.in	(working copy)
+@@ -155,6 +155,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -329,7 +330,9 @@
+ libjavautil_la_SOURCES = java_util_VMTimeZone.c
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/java-util/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/java-util/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/java-util/Makefile.am	(working copy)
+@@ -4,4 +4,6 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+Index: libjava/classpath/native/jni/java-lang/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/java-lang/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/java-lang/Makefile.in	(working copy)
+@@ -172,6 +172,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -357,7 +358,9 @@
+ libjavalangmanagement_la_SOURCES = gnu_java_lang_management_VMOperatingSystemMXBeanImpl.c
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@ -I$(top_srcdir)/native/fdlibm
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/java-lang/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/java-lang/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/java-lang/Makefile.am	(working copy)
+@@ -16,4 +16,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@ -I$(top_srcdir)/native/fdlibm
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/midi-alsa/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/midi-alsa/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/midi-alsa/Makefile.in	(working copy)
+@@ -158,6 +158,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -337,7 +338,9 @@
+ libgjsmalsa_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@ `pkg-config  --cflags-only-I alsa`
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa`
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa` \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/midi-alsa/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/midi-alsa/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/midi-alsa/Makefile.am	(working copy)
+@@ -9,4 +9,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@ `pkg-config  --cflags-only-I alsa`
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa`
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ `pkg-config --cflags-only-other alsa` \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/java-nio/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/java-nio/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/java-nio/Makefile.in	(working copy)
+@@ -166,6 +166,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -357,7 +358,9 @@
+ EXTRA_DIST = javanio.c
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/java-nio/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/java-nio/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/java-nio/Makefile.am	(working copy)
+@@ -20,4 +20,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/java-net/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/java-net/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/java-net/Makefile.in	(working copy)
+@@ -168,6 +168,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -358,7 +359,9 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
++
+ all: all-am
+ 
+ .SUFFIXES:
+Index: libjava/classpath/native/jni/java-net/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/java-net/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/java-net/Makefile.am	(working copy)
+@@ -22,4 +22,5 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_MODULE@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @ERROR_CFLAGS@ \
++            @EXTRA_CFLAGS@
+Index: libjava/classpath/native/jni/xmlj/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/xmlj/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/xmlj/Makefile.in	(working copy)
+@@ -157,6 +157,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -349,7 +350,9 @@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+ 
+ # Don't enable ERROR flags. Code isn't warning free yet.
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @XML_CFLAGS@ @XSLT_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @XML_CFLAGS@ \
++            @XSLT_CFLAGS@ @EXTRA_CFLAGS@
++
+ EXTRA_DIST = BUGS
+ all: all-am
+ 
+Index: libjava/classpath/native/jni/xmlj/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/xmlj/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/xmlj/Makefile.am	(working copy)
+@@ -22,6 +22,7 @@
+ AM_CPPFLAGS = @CLASSPATH_INCLUDES@
+ 
+ # Don't enable ERROR flags. Code isn't warning free yet.
+-AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @XML_CFLAGS@ @XSLT_CFLAGS@
++AM_CFLAGS = @WARNING_CFLAGS@ @STRICT_WARNING_CFLAGS@ @XML_CFLAGS@ \
++            @XSLT_CFLAGS@ @EXTRA_CFLAGS@
+ 
+ EXTRA_DIST = BUGS
+Index: libjava/classpath/native/jni/qt-peer/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/qt-peer/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/qt-peer/Makefile.in	(working copy)
+@@ -173,6 +173,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/native/jni/gtk-peer/Makefile.in
+===================================================================
+--- libjava/classpath/native/jni/gtk-peer/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jni/gtk-peer/Makefile.in	(working copy)
+@@ -194,6 +194,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -424,7 +425,7 @@
+ # headers contain broken prototypes (by design, see gtkitemfactory.h).
+ AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ \
+             @GTK_CFLAGS@ @FREETYPE2_CFLAGS@ @PANGOFT2_CFLAGS@ \
+-            @X_CFLAGS@
++            @X_CFLAGS@ @EXTRA_CFLAGS@
+ 
+ all: all-am
+ 
+Index: libjava/classpath/native/jni/gtk-peer/Makefile.am
+===================================================================
+--- libjava/classpath/native/jni/gtk-peer/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jni/gtk-peer/Makefile.am	(working copy)
+@@ -58,4 +58,4 @@
+ # headers contain broken prototypes (by design, see gtkitemfactory.h).
+ AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ \
+             @GTK_CFLAGS@ @FREETYPE2_CFLAGS@ @PANGOFT2_CFLAGS@ \
+-            @X_CFLAGS@
++            @X_CFLAGS@ @EXTRA_CFLAGS@
+Index: libjava/classpath/native/Makefile.in
+===================================================================
+--- libjava/classpath/native/Makefile.in	(revision 137051)
++++ libjava/classpath/native/Makefile.in	(working copy)
+@@ -137,6 +137,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/native/jawt/Makefile.in
+===================================================================
+--- libjava/classpath/native/jawt/Makefile.in	(revision 137051)
++++ libjava/classpath/native/jawt/Makefile.in	(working copy)
+@@ -156,6 +156,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -336,7 +337,7 @@
+ # Just the WARNING_CFLAGS. We cannot use the strict flags since the gtk
+ # headers contain broken prototypes (by design, see gtkitemfactory.h).
+ AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ \
+-            @GTK_CFLAGS@ @PANGOFT2_CFLAGS@
++            @GTK_CFLAGS@ @PANGOFT2_CFLAGS@ @EXTRA_CFLAGS@
+ 
+ all: all-am
+ 
+Index: libjava/classpath/native/jawt/Makefile.am
+===================================================================
+--- libjava/classpath/native/jawt/Makefile.am	(revision 137051)
++++ libjava/classpath/native/jawt/Makefile.am	(working copy)
+@@ -10,4 +10,4 @@
+ # Just the WARNING_CFLAGS. We cannot use the strict flags since the gtk
+ # headers contain broken prototypes (by design, see gtkitemfactory.h).
+ AM_CFLAGS = @WARNING_CFLAGS@ @ERROR_CFLAGS@ \
+-            @GTK_CFLAGS@ @PANGOFT2_CFLAGS@
++            @GTK_CFLAGS@ @PANGOFT2_CFLAGS@ @EXTRA_CFLAGS@
+Index: libjava/classpath/native/fdlibm/Makefile.in
+===================================================================
+--- libjava/classpath/native/fdlibm/Makefile.in	(revision 137051)
++++ libjava/classpath/native/fdlibm/Makefile.in	(working copy)
+@@ -156,6 +156,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -386,6 +387,7 @@
+ 			namespace.h
+ 
+ AM_LDFLAGS = @CLASSPATH_CONVENIENCE@ 
++AM_CFLAGS = @EXTRA_CFLAGS@
+ all: all-am
+ 
+ .SUFFIXES:
+@@ -688,9 +690,7 @@
+ 	uninstall-info-am
+ 
+ 
+-# We just want the standard flags for fdlibm since it is an upstream lib
+-# and our normal -pedantic -Wall -Werror breaks this lib. So no AM_CFLAGS.
+-# We also don't need extra includes, so no AM_CPPFLAGS either.
++# We don't need extra includes, so no AM_CPPFLAGS.
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
+Index: libjava/classpath/native/fdlibm/Makefile.am
+===================================================================
+--- libjava/classpath/native/fdlibm/Makefile.am	(revision 137051)
++++ libjava/classpath/native/fdlibm/Makefile.am	(working copy)
+@@ -60,6 +60,6 @@
+ 
+ AM_LDFLAGS = @CLASSPATH_CONVENIENCE@ 
+ 
+-# We just want the standard flags for fdlibm since it is an upstream lib
+-# and our normal -pedantic -Wall -Werror breaks this lib. So no AM_CFLAGS.
+-# We also don't need extra includes, so no AM_CPPFLAGS either.
++AM_CFLAGS = @EXTRA_CFLAGS@
++
++# We don't need extra includes, so no AM_CPPFLAGS.
+Index: libjava/classpath/native/plugin/Makefile.in
+===================================================================
+--- libjava/classpath/native/plugin/Makefile.in	(revision 137051)
++++ libjava/classpath/native/plugin/Makefile.in	(working copy)
+@@ -155,6 +155,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/resource/Makefile.in
+===================================================================
+--- libjava/classpath/resource/Makefile.in	(revision 137051)
++++ libjava/classpath/resource/Makefile.in	(working copy)
+@@ -140,6 +140,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/scripts/Makefile.in
+===================================================================
+--- libjava/classpath/scripts/Makefile.in	(revision 137051)
++++ libjava/classpath/scripts/Makefile.in	(working copy)
+@@ -130,6 +130,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/tools/Makefile.in
+===================================================================
+--- libjava/classpath/tools/Makefile.in	(revision 137051)
++++ libjava/classpath/tools/Makefile.in	(working copy)
+@@ -232,6 +232,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/configure.ac
+===================================================================
+--- libjava/classpath/configure.ac	(revision 137051)
++++ libjava/classpath/configure.ac	(working copy)
+@@ -503,6 +503,12 @@
+     WARNING_CFLAGS='-W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long'
+     AC_SUBST(WARNING_CFLAGS)
+ 
++    dnl CFLAGS that are used for all native code.  We want to compile
++    dnl everything with unwinder data so that backtrace() will always
++    dnl work.
++    EXTRA_CFLAGS='-fexceptions -fasynchronous-unwind-tables'
++    AC_SUBST(EXTRA_CFLAGS)
++
+     dnl Strict warning flags which not every module uses.
+     dnl Should probably be configurable.
+     STRICT_WARNING_CFLAGS='-Wstrict-prototypes -pedantic'
+Index: libjava/classpath/doc/Makefile.in
+===================================================================
+--- libjava/classpath/doc/Makefile.in	(revision 137051)
++++ libjava/classpath/doc/Makefile.in	(working copy)
+@@ -154,6 +154,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/doc/api/Makefile.in
+===================================================================
+--- libjava/classpath/doc/api/Makefile.in	(revision 137051)
++++ libjava/classpath/doc/api/Makefile.in	(working copy)
+@@ -131,6 +131,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/lib/Makefile.in
+===================================================================
+--- libjava/classpath/lib/Makefile.in	(revision 137051)
++++ libjava/classpath/lib/Makefile.in	(working copy)
+@@ -134,6 +134,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+@@ -541,7 +542,7 @@
+           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
+ 	  cp $(top_srcdir)/resource/$$p $$p; \
+ 	done
+-	@list=`cd $(top_srcdir)/resource && $(FIND) META-INF -name CVS -prune -o -name \*\.in -prune -o -type f -print`; for p in $$list; do \
++	@list=`cd $(top_srcdir)/resource && $(FIND) META-INF -name CVS -prune -o -name .svn -prune -o -name \*\.in -prune -o -type f -print`; for p in $$list; do \
+           dirname=`dirname $$p`; \
+           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
+ 	  cp $(top_srcdir)/resource/$$p $$p; \
+Index: libjava/classpath/lib/Makefile.am
+===================================================================
+--- libjava/classpath/lib/Makefile.am	(revision 137051)
++++ libjava/classpath/lib/Makefile.am	(working copy)
+@@ -96,7 +96,7 @@
+           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
+ 	  cp $(top_srcdir)/resource/$$p $$p; \
+ 	done
+-	@list=`cd $(top_srcdir)/resource && $(FIND) META-INF -name CVS -prune -o -name \*\.in -prune -o -type f -print`; for p in $$list; do \
++	@list=`cd $(top_srcdir)/resource && $(FIND) META-INF -name CVS -prune -o -name .svn -prune -o -name \*\.in -prune -o -type f -print`; for p in $$list; do \
+           dirname=`dirname $$p`; \
+           if ! test -d "$$dirname"; then mkdir -p "$$dirname"; fi; \
+ 	  cp $(top_srcdir)/resource/$$p $$p; \
+Index: libjava/classpath/external/Makefile.in
+===================================================================
+--- libjava/classpath/external/Makefile.in	(revision 137051)
++++ libjava/classpath/external/Makefile.in	(working copy)
+@@ -138,6 +138,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/external/jsr166/Makefile.in
+===================================================================
+--- libjava/classpath/external/jsr166/Makefile.in	(revision 137051)
++++ libjava/classpath/external/jsr166/Makefile.in	(working copy)
+@@ -129,6 +129,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/external/sax/Makefile.in
+===================================================================
+--- libjava/classpath/external/sax/Makefile.in	(revision 137051)
++++ libjava/classpath/external/sax/Makefile.in	(working copy)
+@@ -129,6 +129,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/external/w3c_dom/Makefile.in
+===================================================================
+--- libjava/classpath/external/w3c_dom/Makefile.in	(revision 137051)
++++ libjava/classpath/external/w3c_dom/Makefile.in	(working copy)
+@@ -129,6 +129,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/external/relaxngDatatype/Makefile.in
+===================================================================
+--- libjava/classpath/external/relaxngDatatype/Makefile.in	(revision 137051)
++++ libjava/classpath/external/relaxngDatatype/Makefile.in	(working copy)
+@@ -129,6 +129,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/include/Makefile.in
+===================================================================
+--- libjava/classpath/include/Makefile.in	(revision 137051)
++++ libjava/classpath/include/Makefile.in	(working copy)
+@@ -130,6 +130,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
+Index: libjava/classpath/examples/Makefile.in
+===================================================================
+--- libjava/classpath/examples/Makefile.in	(revision 137051)
++++ libjava/classpath/examples/Makefile.in	(working copy)
+@@ -140,6 +140,7 @@
+ ERROR_CFLAGS = @ERROR_CFLAGS@
+ EXAMPLESDIR = @EXAMPLESDIR@
+ EXEEXT = @EXEEXT@
++EXTRA_CFLAGS = @EXTRA_CFLAGS@
+ FASTJAR = @FASTJAR@
+ FIND = @FIND@
+ FOUND_ECJ_FALSE = @FOUND_ECJ_FALSE@
--- gcj-4.2-4.2.4.orig/debian/patches/ada-symbolic-tracebacks.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-symbolic-tracebacks.dpatch
@@ -0,0 +1,335 @@
+#! /bin/sh -e
+
+# DP: - Enable support for symbolic tracebacks in exceptions (delete the dummy
+# DP:   convert_addresses from adaint.c, and provide a real one separately.)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Ported Jürgen Pfeifer's patch to enable symbolic tracebacks on Debian
+GNU/Linux.
+
+The binary distribution of GNAT 3.15p comes with an old version of
+binutils that includes a library, libaddr2line.a.  This library does
+not exist in recent versions of binutils.  The patch works around this
+by calling /usr/bin/addr2line (still part of binutils) and parsing the
+output.  See debian/convert_addresses.c for the gory details.
+
+I have modified convert_addresses.c to not use a shell script anymore;
+Debian controls the version of binutils which is installed.  Also, I
+use execve instead of execle.
+
+-- 
+Ludovic Brenta.
+
+# ' make emacs highlighting happy
+
+--- gcc/ada/g-trasym.adb~      Thu Oct 24 11:02:18 2002
++++ gcc/ada/g-trasym.adb       Fri Jul  4 16:16:30 2003
+@@ -33,16 +33,16 @@
+ ------------------------------------------------------------------------------
+ 
+ --  Run-time symbolic traceback support
++--  This file has been modified by Juergen Pfeifer (31-Dec-1999) for
++--  the purpose to support the Ada for Linux Team implementation of
++--  convert_addresses. This implementation has the advantage to run
++--  on the binutils as they are deployed on Linux.
+ 
+ with System.Soft_Links;
+ with Ada.Exceptions.Traceback; use Ada.Exceptions.Traceback;
+ 
+ package body GNAT.Traceback.Symbolic is
+ 
+-   pragma Linker_Options ("-laddr2line");
+-   pragma Linker_Options ("-lbfd");
+-   pragma Linker_Options ("-liberty");
+-
+    package TSL renames System.Soft_Links;
+ 
+    ------------------------
+@@ -56,16 +56,19 @@
+          buf      : System.Address;
+          len      : System.Address);
+       pragma Import (C, convert_addresses, "convert_addresses");
+-      --  This is the procedure version of the Ada aware addr2line that will
+-      --  use argv[0] as the executable containing the debug information.
+-      --  This procedure is provided by libaddr2line on targets that support
+-      --  it. A dummy version is in a-adaint.c for other targets so that build
+-      --  of shared libraries doesn't generate unresolved symbols.
++      --  This is the ALT Linux specific version adapted to the binutils
++      --  deployed with most Linuxes. These binutils already have an
++      --  addr2line tool that demangles Ada symbolic names, but there are
++      --  version dependant variants for the option names. Therefore our
++      --  implementation spawns a shell script that does normalization of
++      --  the option and then executes addr2line and communicates with it
++      --  through a bidirectional pipe.
+       --
+       --  Note that this procedure is *not* thread-safe.
+ 
+-      Res : String (1 .. 256 * Traceback'Length);
+-      Len : Integer;
++      B_Size : constant Integer := 256 * Traceback'Length;
++      Len    : Integer := B_Size;
++      Res    : String (1 .. B_Size);
+ 
+    begin
+       if Traceback'Length > 0 then
+--- gcc/ada/convert_addresses.c~       1970-01-01 01:00:00.000000000 +0100
++++ gcc/ada/convert_addresses.c        2005-04-27 15:06:51.000000000 +0200
+@@ -0,0 +1,157 @@
++/*
++  Copyright (C) 1999 by Juergen Pfeifer <juergen.pfeifer@gmx.net>
++  Ada for Linux Team (ALT)
++
++  Permission is hereby granted, free of charge, to any person obtaining a
++  copy of this software and associated documentation files (the
++  "Software"), to deal in the Software without restriction, including
++  without limitation the rights to use, copy, modify, merge, publish,
++  distribute, distribute with modifications, sublicense, and/or sell
++  copies of the Software, and to permit persons to whom the Software is
++  furnished to do so, subject to the following conditions:
++
++  The above copyright notice and this permission notice shall be included
++  in all copies or substantial portions of the Software.
++
++  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
++  OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
++  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
++  IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
++  DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
++  OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
++  THE USE OR OTHER DEALINGS IN THE SOFTWARE.
++
++  Except as contained in this notice, the name(s) of the above copyright
++  holders shall not be used in advertising or otherwise to promote the
++  sale, use or other dealings in this Software without prior written
++  authorization.
++*/
++#include <sys/types.h>
++#include <stdlib.h>
++#include <stdio.h>
++#include <unistd.h>
++#include <string.h>
++#include <signal.h>
++
++#define STDIN_FILENO  0
++#define STDOUT_FILENO 1
++#define MAX_LINE      1024
++
++#define CLOSE1  close(fd1[0]); close(fd1[1])
++#define CLOSE2  close(fd2[0]); close(fd2[1])
++#define RESTSIG sigaction(SIGPIPE,&oact,NULL)
++
++void convert_addresses
++( void* addrs[],
++  int   n_addr,
++  char* buf,
++  int*  len)
++{
++  int max_len = *len;
++  pid_t pid = getpid();
++  pid_t child;
++
++  struct sigaction act, oact;
++
++  int fd1[2], fd2[2];
++  char exe_name[128];
++
++  *buf = 0; *len = 0;
++  /* Thanx to the /proc filesystem we can very easily reference our own
++     executable image:-)*/
++  snprintf(exe_name,sizeof(exe_name),"--exe=/proc/%ld/exe", (long)pid);
++
++  act.sa_handler = SIG_IGN;
++  sigemptyset(&act.sa_mask);
++  act.sa_flags = 0;
++  if (sigaction(SIGPIPE,&act,&oact) < 0)
++    return;
++
++  if (pipe(fd1) >= 0) {
++    if (pipe(fd2)>=0) {
++      if ((child = fork()) < 0) {
++      CLOSE1; CLOSE2; RESTSIG;
++      return;
++      }
++      else {
++      if (0==child) {
++        close(fd1[1]);
++        close(fd2[0]);
++        if (fd1[0] != STDIN_FILENO) {
++          if (dup2(fd1[0],STDIN_FILENO) != STDIN_FILENO) {
++            CLOSE1; CLOSE2;
++          }
++          close(fd1[0]);
++        }
++        if (fd2[1] != STDOUT_FILENO) {
++          if (dup2(fd2[1],STDOUT_FILENO) != STDOUT_FILENO) {
++            CLOSE1; CLOSE2;
++          }
++          close(fd2[1]);
++        }
++        {
++          /* As pointed out by Florian Weimer to me, it is a
++             security threat to call the script with a user defined
++             environment and using the path. That would be Trojans
++             pleasure.  Therefore we use the absolute path to
++             addr2line and an empty environment. That should be
++             safe.
++          */
++          char *const argv[] = { "addr2line",
++                                 exe_name,
++                                 "--demangle=gnat",
++                                 "--functions",
++                                 "--basenames",
++                                 NULL };
++          char *const envp[] = { NULL };
++          if (execve("/usr/bin/addr2line", argv, envp) < 0) {
++            CLOSE1; CLOSE2;
++          }
++        }
++      }
++      else {
++        int i, n;
++        char hex[16];
++        char line[MAX_LINE + 1];
++        char *p;
++        char *s = buf;
++
++        /* Parent context */
++        close(fd1[0]);
++        close(fd2[1]);
++
++        for(i=0; i < n_addr; i++) {
++          snprintf(hex,sizeof(hex),"%p\n",addrs[i]);
++          write(fd1[1],hex,strlen(hex));
++          n = read(fd2[0],line,MAX_LINE);
++          if (n<=0)
++            break;
++          line[n]=0;
++          /* We have approx. 16 additional chars for "%p in " clause.
++             We use this info to prevent a buffer overrun.
++          */
++          if (n + 16 + (*len) > max_len)
++            break;
++          p = strchr(line,'\n');
++          if (p) {
++            if (*(p+1)) {
++              *p = 0;
++              *len += snprintf(s, (max_len - (*len)), "%p in %s at %s",addrs[i], line, p+1);
++            }
++            else {
++              *len += snprintf(s, (max_len - (*len)), "%p at %s",addrs[i], line);
++            }
++            s = buf + (*len);
++          }
++        }
++        close(fd1[1]);
++        close(fd2[0]);
++      }
++      }
++    }
++    else {
++      CLOSE1;
++    }
++  }
++  RESTSIG;
++}
+--- gcc/ada/Makefile.in.orig	2006-04-17 19:39:15.848644432 +0000
++++ gcc/ada/Makefile.in	2006-04-17 19:43:14.794319168 +0000
+@@ -1352,7 +1352,7 @@
+ include $(fsrcdir)/Makefile.rtl
+ 
+ GNATRTL_OBJS = $(GNATRTL_NONTASKING_OBJS) $(GNATRTL_TASKING_OBJS) \
+-  g-trasym.o memtrack.o
++  g-trasym.o memtrack.o convert_addresses.o
+ 
+ # Default run time files
+ 
+@@ -1507,7 +1507,6 @@
+ 	for file in rts/*.ali; do \
+ 	    $(INSTALL_DATA_DATE) $$file $(DESTDIR)$(ADA_RTL_OBJ_DIR); \
+ 	done
+-	-$(INSTALL_DATA) rts/g-trasym$(objext) $(DESTDIR)$(ADA_RTL_OBJ_DIR)
+ 	-cd rts; for file in *$(arext);do \
+ 	    $(INSTALL_DATA) $$file $(DESTDIR)$(ADA_RTL_OBJ_DIR); \
+ 	    $(RANLIB_FOR_TARGET) $(DESTDIR)$(ADA_RTL_OBJ_DIR)/$$file; \
+@@ -1607,7 +1606,7 @@
+ 	        $(GNATRTL_OBJS)
+ 	$(RM) rts/libgnat$(arext) rts/libgnarl$(arext)
+ 	$(AR_FOR_TARGET) $(AR_FLAGS) rts/libgnat$(arext) \
+-	   $(addprefix rts/,$(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS))
++	   $(addprefix rts/,$(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS) g-trasym.o convert_addresses.o)
+         ifneq ($(PREFIX_OBJS),)
+ 		$(AR_FOR_TARGET) $(AR_FLAGS) rts/libgccprefix$(arext) \
+ 		  $(PREFIX_OBJS);
+@@ -1637,6 +1636,7 @@
+ 		$(TARGET_LIBGCC2_CFLAGS) \
+ 		-o libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
+ 		$(GNATRTL_NONTASKING_OBJS) $(LIBGNAT_OBJS) \
++		g-trasym.o convert_addresses.o \
+ 		$(SO_OPTS)libgnat$(hyphen)$(LIBRARY_VERSION)$(soext) \
+ 		$(MISCLIB) -lm
+ 	cd rts; ../../xgcc -B../../ -shared $(GNATLIBCFLAGS) \
+@@ -1859,6 +1859,7 @@
+ sysdep.o  : sysdep.c
+ raise-gcc.o : raise-gcc.c raise.h
+ raise.o   : raise.c raise.h
++convert_addresses.o : convert_addresses.c
+ 
+ gen-soccon: gen-soccon.c gsocket.h
+ 	$(CC) $(ALL_CFLAGS) $(ADA_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
+--- gcc/ada/adaint.c~
++++ gcc/ada/adaint.c	2007-07-16 22:33:04.996106519 +0200
+@@ -2571,34 +2571,6 @@
+ }
+ #endif
+ 
+-#if defined (CROSS_COMPILE)  \
+-  || (! ((defined (sparc) || defined (i386)) && defined (sun) \
+-      && defined (__SVR4)) \
+-      && ! (defined (linux) && (defined (i386) || defined (__x86_64__))) \
+-      && ! (defined (linux) && defined (__ia64__)) \
+-      && ! defined (__FreeBSD__) \
+-      && ! defined (__hpux__) \
+-      && ! defined (__APPLE__) \
+-      && ! defined (_AIX) \
+-      && ! (defined (__alpha__)  && defined (__osf__)) \
+-      && ! defined (VMS) \
+-      && ! defined (__MINGW32__) \
+-      && ! (defined (__mips) && defined (__sgi)))
+-
+-/* Dummy function to satisfy g-trasym.o. See the preprocessor conditional
+-   just above for a list of native platforms that provide a non-dummy
+-   version of this procedure in libaddr2line.a.  */
+-
+-void
+-convert_addresses (void *addrs ATTRIBUTE_UNUSED,
+-		   int n_addr ATTRIBUTE_UNUSED,
+-		   void *buf ATTRIBUTE_UNUSED,
+-		   int *len ATTRIBUTE_UNUSED)
+-{
+-  *len = 0;
+-}
+-#endif
+-
+ #if defined (_WIN32)
+ int __gnat_argument_needs_quote = 1;
+ #else
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-align-stack.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-align-stack.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: try to keep the stack word aligned
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.h |    1 +
+ 1 file changed, 1 insertion(+)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.h
++++ gcc-4.2/gcc/config/m68k/m68k.h
+@@ -148,6 +148,7 @@ along with GCC; see the file COPYING3.  
+ 
+ #define PARM_BOUNDARY (TARGET_SHORT ? 16 : 32)
+ #define STACK_BOUNDARY 16
++#define PREFERRED_STACK_BOUNDARY 32
+ #define FUNCTION_BOUNDARY 16
+ #define EMPTY_FIELD_BOUNDARY 16
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/powerpc-biarch.dpatch
+++ gcj-4.2-4.2.4/debian/patches/powerpc-biarch.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+ 
+# DP: enable biarch for 32 bit compiler
+ 
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- ./gcc/config/rs6000/t-linux64	(revision 133025)
++++ ./gcc/config/rs6000/t-linux64	(working copy)
+@@ -13,13 +13,10 @@
+ # it doesn't tell anything about the 32bit libraries on those systems.  Set
+ # MULTILIB_OSDIRNAMES according to what is found on the target.
+ 
+-MULTILIB_OPTIONS        = m64/m32 msoft-float
+-MULTILIB_DIRNAMES       = 64 32 nof
++MULTILIB_OPTIONS        = m64/m32
++MULTILIB_DIRNAMES       = 64 32
+ MULTILIB_EXTRA_OPTS     = fPIC mstrict-align
+-MULTILIB_EXCEPTIONS     = m64/msoft-float
+-MULTILIB_EXCLUSIONS     = m64/!m32/msoft-float
+-MULTILIB_OSDIRNAMES	= ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
+-MULTILIB_MATCHES        = $(MULTILIB_MATCHES_FLOAT)
++MULTILIB_OSDIRNAMES	= ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
+ 
+ # We want fine grained libraries, so use the new code to build the
+ # floating point emulation libraries.
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-ice-hack.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-ice-hack.dpatch
@@ -0,0 +1,320 @@
+#! /bin/sh -e
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# DP: 2004-01-23  Jakub Jelinek  <jakub@redhat.com>
+# DP: 
+# DP: 	* system.h (ICE_EXIT_CODE): Define.
+# DP: 	* gcc.c (execute): Don't free first string early, but at the end
+# DP: 	of the function.  Call retry_ice if compiler exited with
+# DP: 	ICE_EXIT_CODE.
+# DP: 	(retry_ice): New function.
+# DP: 	* diagnostic.c (diagnostic_count_diagnostic,
+# DP: 	diagnostic_action_after_output, error_recursion): Exit with
+# DP: 	ICE_EXIT_CODE instead of FATAL_EXIT_CODE.
+
+--- gcc/diagnostic.c~	2006-04-02 00:43:34.347240936 +0200
++++ gcc/diagnostic.c	2006-04-02 00:54:47.676879272 +0200
+@@ -265,7 +265,7 @@
+ 	       "See %s for instructions.\n", bug_report_url);
+       fnotice (stderr, "For Debian GNU/Linux specific bug reporting instructions,\n"
+ 	       "see %s.\n", debian_bug_report_url);
+-      exit (ICE_EXIT_CODE);
++      exit (FATAL_EXIT_CODE);
+ 
+     case DK_FATAL:
+       if (context->abort_on_error)
+--- gcc/gcc.c~	2006-04-02 01:07:37.323875144 +0200
++++ gcc/gcc.c	2006-04-02 01:11:15.310736104 +0200
+@@ -348,6 +348,9 @@
+ #if defined(HAVE_TARGET_OBJECT_SUFFIX) || defined(HAVE_TARGET_EXECUTABLE_SUFFIX)
+ static const char *convert_filename (const char *, int, int);
+ #endif
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS))
++static void retry_ice (const char *prog, const char **argv);
++#endif
+ 
+ static const char *if_exists_spec_function (int, const char **);
+ static const char *if_exists_else_spec_function (int, const char **);
+@@ -2951,7 +2954,7 @@
+ 	    }
+ 	}
+ 
+-      if (string != commands[i].prog)
++      if (i && string != commands[i].prog)
+ 	free ((void *) string);
+     }
+ 
+@@ -3010,6 +3013,16 @@
+ 	else if (WIFEXITED (status)
+ 		 && WEXITSTATUS (status) >= MIN_FATAL_STATUS)
+ 	  {
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS))
++	    /* For ICEs in cc1, cc1obj, cc1plus see if it is
++	       reproducible or not.  */
++	    char *p;
++	    if (WEXITSTATUS (status) == ICE_EXIT_CODE
++		&& i == 0
++		&& (p = strrchr (commands[0].argv[0], DIR_SEPARATOR))
++		&& ! strncmp (p + 1, "cc1", 3))
++	      retry_ice (commands[0].prog, commands[0].argv);
++#endif
+ 	    if (WEXITSTATUS (status) > greatest_status)
+ 	      greatest_status = WEXITSTATUS (status);
+ 	    ret_code = -1;
+@@ -3030,6 +3043,9 @@
+ 	  }
+       }
+ 
++    if (commands[0].argv[0] != commands[0].prog)
++      free ((PTR) commands[0].argv[0]);
++
+     return ret_code;
+   }
+ }
+@@ -5963,6 +5979,224 @@
+   switches[switchnum].validated = 1;
+ }
+ 
++#if !(defined (__MSDOS__) || defined (OS2) || defined (VMS))
++#define RETRY_ICE_ATTEMPTS 2
++
++static void
++retry_ice (const char *prog, const char **argv)
++{
++  int nargs, out_arg = -1, quiet = 0, attempt;
++  int pid, retries, sleep_interval;
++  const char **new_argv;
++  char *temp_filenames[RETRY_ICE_ATTEMPTS * 2 + 2];
++
++  if (input_filename == NULL || ! strcmp (input_filename, "-"))
++    return;
++
++  for (nargs = 0; argv[nargs] != NULL; ++nargs)
++    /* Only retry compiler ICEs, not preprocessor ones.  */
++    if (! strcmp (argv[nargs], "-E"))
++      return;
++    else if (argv[nargs][0] == '-' && argv[nargs][1] == 'o')
++      {
++	if (out_arg == -1)
++	  out_arg = nargs;
++	else
++	  return;
++      }
++    /* If the compiler is going to output any time information,
++       it might vary between invocations.  */
++    else if (! strcmp (argv[nargs], "-quiet"))
++      quiet = 1;
++    else if (! strcmp (argv[nargs], "-ftime-report"))
++      return;
++
++  if (out_arg == -1 || !quiet)
++    return;
++
++  memset (temp_filenames, '\0', sizeof (temp_filenames));
++  new_argv = alloca ((nargs + 3) * sizeof (const char *));
++  memcpy (new_argv, argv, (nargs + 1) * sizeof (const char *));
++  new_argv[nargs++] = "-frandom-seed=0";
++  new_argv[nargs] = NULL;
++  if (new_argv[out_arg][2] == '\0')
++    new_argv[out_arg + 1] = "-";
++  else
++    new_argv[out_arg] = "-o-";
++
++  for (attempt = 0; attempt < RETRY_ICE_ATTEMPTS + 1; ++attempt)
++    {
++      int fd = -1;
++      int status;
++
++      temp_filenames[attempt * 2] = make_temp_file (".out");
++      temp_filenames[attempt * 2 + 1] = make_temp_file (".err");
++
++      if (attempt == RETRY_ICE_ATTEMPTS)
++        {
++	  int i;
++	  int fd1, fd2;
++	  struct stat st1, st2;
++	  size_t n, len;
++	  char *buf;
++
++	  buf = xmalloc (8192);
++
++	  for (i = 0; i < 2; ++i)
++	    {
++	      fd1 = open (temp_filenames[i], O_RDONLY);
++	      fd2 = open (temp_filenames[2 + i], O_RDONLY);
++
++	      if (fd1 < 0 || fd2 < 0)
++		{
++		  i = -1;
++		  close (fd1);
++		  close (fd2);
++		  break;
++		}
++
++	      if (fstat (fd1, &st1) < 0 || fstat (fd2, &st2) < 0)
++		{
++		  i = -1;
++		  close (fd1);
++		  close (fd2);
++		  break;
++		}
++
++	      if (st1.st_size != st2.st_size)
++		{
++		  close (fd1);
++		  close (fd2);
++		  break;
++		}
++
++	      len = 0;
++	      for (n = st1.st_size; n; n -= len)
++		{
++		  len = n;
++		  if (len > 4096)
++		    len = 4096;
++
++		  if (read (fd1, buf, len) != (int) len
++		      || read (fd2, buf + 4096, len) != (int) len)
++		    {
++		      i = -1;
++		      break;
++		    }
++
++		  if (memcmp (buf, buf + 4096, len) != 0)
++		    break;
++		}
++
++	      close (fd1);
++	      close (fd2);
++
++	      if (n)
++		break;
++	    }
++
++	  free (buf);
++	  if (i == -1)
++	    break;
++
++	  if (i != 2)
++	    {
++	      notice ("The bug is not reproducible, so it is likely a hardware or OS problem.\n");
++	      break;
++	    }
++
++          fd = open (temp_filenames[attempt * 2], O_RDWR);
++	  if (fd < 0)
++	    break;
++	  write (fd, "//", 2);
++	  for (i = 0; i < nargs; i++)
++	    {
++	      write (fd, " ", 1);
++	      write (fd, new_argv[i], strlen (new_argv[i]));
++	    }
++	  write (fd, "\n", 1);
++	  new_argv[nargs] = "-E";
++	  new_argv[nargs + 1] = NULL;
++        }
++
++      /* Fork a subprocess; wait and retry if it fails.  */
++      sleep_interval = 1;
++      pid = -1;
++      for (retries = 0; retries < 4; retries++)
++	{
++	  pid = fork ();
++	  if (pid >= 0)
++	    break;
++	  sleep (sleep_interval);
++	  sleep_interval *= 2;
++	}
++
++      if (pid < 0)
++	break;
++      else if (pid == 0)
++	{
++	  if (attempt != RETRY_ICE_ATTEMPTS)
++	    fd = open (temp_filenames[attempt * 2], O_RDWR);
++	  if (fd < 0)
++	    exit (-1);
++	  if (fd != 1)
++	    {
++	      close (1);
++	      dup (fd);
++	      close (fd);
++	    }
++
++	  fd = open (temp_filenames[attempt * 2 + 1], O_RDWR);
++	  if (fd < 0)
++	    exit (-1);
++	  if (fd != 2)
++	    {
++	      close (2);
++	      dup (fd);
++	      close (fd);
++	    }
++
++	  if (prog == new_argv[0])
++	    execvp (prog, (char *const *) new_argv);
++	  else
++	    execv (new_argv[0], (char *const *) new_argv);
++	  exit (-1);
++	}
++
++      if (waitpid (pid, &status, 0) < 0)
++	break;
++
++      if (attempt < RETRY_ICE_ATTEMPTS
++	  && (! WIFEXITED (status) || WEXITSTATUS (status) != ICE_EXIT_CODE))
++	{
++	  notice ("The bug is not reproducible, so it is likely a hardware or OS problem.\n");
++	  break;
++	}
++      else if (attempt == RETRY_ICE_ATTEMPTS)
++	{
++	  close (fd);
++	  if (WIFEXITED (status)
++	      && WEXITSTATUS (status) == SUCCESS_EXIT_CODE)
++	    {
++	      notice ("Preprocessed source stored into %s file, please attach this to your bugreport.\n",
++		      temp_filenames[attempt * 2]);
++	      /* Make sure it is not deleted.  */
++	      free (temp_filenames[attempt * 2]);
++	      temp_filenames[attempt * 2] = NULL;
++	      break;
++	    }
++	}
++    }
++
++  for (attempt = 0; attempt < RETRY_ICE_ATTEMPTS * 2 + 2; attempt++)
++    if (temp_filenames[attempt])
++      {
++	unlink (temp_filenames[attempt]);
++	free (temp_filenames[attempt]);
++      }
++}
++#endif
++
+ /* Search for a file named NAME trying various prefixes including the
+    user's -B prefix and some standard ones.
+    Return the absolute file name found.  If nothing is found, return NAME.  */
--- gcj-4.2-4.2.4.orig/debian/patches/link-libs.dpatch
+++ gcj-4.2-4.2.4/debian/patches/link-libs.dpatch
@@ -0,0 +1,157 @@
+#! /bin/sh -e
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/config/t-slibgcc-elf-ver.orig	2006-10-03 18:16:53.094898500 +0200
++++ gcc/config/t-slibgcc-elf-ver	2006-10-03 18:17:40.061833750 +0200
+@@ -14,6 +14,7 @@
+ SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
+ 	-Wl,--soname=$(SHLIB_SONAME) \
+ 	-Wl,--version-script=$(SHLIB_MAP) \
++	-Wl,-O1 \
+ 	-o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
+ 	$(SHLIB_OBJS) $(SHLIB_LC) && \
+ 	rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \
+--- libstdc++-v3/src/Makefile.am.orig	2006-10-03 18:16:53.186904250 +0200
++++ libstdc++-v3/src/Makefile.am	2006-10-03 18:17:40.121837500 +0200
+@@ -185,6 +185,7 @@
+ libstdc___la_DEPENDENCIES = ${version_dep} $(libstdc___la_LIBADD)
+ 
+ libstdc___la_LDFLAGS = \
++	-Wl,-O1 \
+ 	-version-info $(libtool_VERSION) ${version_arg} -lm 
+ 
+ # Use special rules for the deprecated source files so that they find
+--- libstdc++-v3/src/Makefile.in.orig	2006-10-03 18:16:53.206905500 +0200
++++ libstdc++-v3/src/Makefile.in	2006-10-03 18:17:40.137838500 +0200
+@@ -387,6 +387,7 @@
+ 
+ libstdc___la_DEPENDENCIES = ${version_dep} $(libstdc___la_LIBADD)
+ libstdc___la_LDFLAGS = \
++	-Wl,-O1 \
+ 	-version-info $(libtool_VERSION) ${version_arg} -lm 
+ 
+ 
+--- libobjc/Makefile.in.orig	2006-10-03 18:16:53.098898750 +0200
++++ libobjc/Makefile.in	2006-10-03 18:17:40.061833750 +0200
+@@ -276,11 +276,13 @@
+ libobjc$(libext).la: $(OBJS)
+ 	$(LIBTOOL_LINK) $(CC) -o $@ $(OBJS) \
+ 		-rpath $(toolexeclibdir) \
++		-Wl,-O1 \
+ 		-version-info $(LIBOBJC_VERSION) $(extra_ldflags_libobjc)
+ 
+ libobjc_gc$(libext).la: $(OBJS_GC)
+ 	$(LIBTOOL_LINK) $(CC) -o $@ $(OBJS_GC) \
+ 		-rpath $(toolexeclibdir) \
++		-Wl,-O1 \
+ 		-version-info $(LIBOBJC_GC_VERSION) $(extra_ldflags_libobjc)
+ 
+ #
+--- libgfortran/Makefile.am.orig	2006-10-03 18:16:53.102899000 +0200
++++ libgfortran/Makefile.am	2006-10-03 18:18:59.566802500 +0200
+@@ -7,7 +7,7 @@
+ gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
+ 
+ toolexeclib_LTLIBRARIES = libgfortran.la
+-libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lm $(extra_ldflags_libgfortran)
++libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lm $(extra_ldflags_libgfortran) -Wl,-O1
+ 
+ myexeclib_LTLIBRARIES = libgfortranbegin.la
+ myexeclibdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)$(MULTISUBDIR)
+--- libgfortran/Makefile.in.orig	2006-10-03 18:16:53.106899250 +0200
++++ libgfortran/Makefile.in	2006-10-03 18:19:17.543926000 +0200
+@@ -359,7 +359,7 @@
+ ACLOCAL_AMFLAGS = -I ../config
+ gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
+ toolexeclib_LTLIBRARIES = libgfortran.la
+-libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lm $(extra_ldflags_libgfortran)
++libgfortran_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -lm $(extra_ldflags_libgfortran) -Wl,-O1
+ myexeclib_LTLIBRARIES = libgfortranbegin.la
+ myexeclibdir = $(libdir)/gcc/$(target_alias)/$(gcc_version)$(MULTISUBDIR)
+ libgfortranbegin_la_SOURCES = fmain.c
+--- libmudflap/Makefile.am.orig	2006-10-03 18:16:53.182904000 +0200
++++ libmudflap/Makefile.am	2006-10-03 18:17:40.117837250 +0200
+@@ -34,7 +34,7 @@
+ 	mf-hooks2.c
+ libmudflap_la_LIBADD = 
+ libmudflap_la_DEPENDENCIES = $(libmudflap_la_LIBADD)
+-libmudflap_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
++libmudflap_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -Wl,-O1
+ 
+ clean-local:
+ 	rm -f pth/*.o pth/*.lo
+--- libmudflap/Makefile.in.orig	2006-10-03 18:16:53.182904000 +0200
++++ libmudflap/Makefile.in	2006-10-03 18:17:40.121837500 +0200
+@@ -241,7 +241,7 @@
+ 
+ libmudflap_la_LIBADD = 
+ libmudflap_la_DEPENDENCIES = $(libmudflap_la_LIBADD)
+-libmudflap_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
++libmudflap_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -Wl,-O1
+ libmudflapth_la_SOURCES = 
+ libmudflapth_la_LIBADD = \
+ 	pth/mf-runtime.lo \
+--- libffi/Makefile.am.orig	2006-10-03 18:16:53.098898750 +0200
++++ libffi/Makefile.am	2006-10-03 18:17:40.061833750 +0200
+@@ -154,7 +154,7 @@
+ 
+ AM_CFLAGS = -Wall -g -fexceptions
+ 
+-libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
++libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -Wl,-O1
+ 
+ AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
+ AM_CCASFLAGS = $(AM_CPPFLAGS)
+--- libffi/Makefile.in.orig	2006-10-03 18:16:53.102899000 +0200
++++ libffi/Makefile.in	2006-10-03 18:17:40.065834000 +0200
+@@ -436,7 +436,7 @@
+ libffi_convenience_la_SOURCES = $(libffi_la_SOURCES)
+ nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES)
+ AM_CFLAGS = -Wall -g -fexceptions
+-libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
++libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` -Wl,-O1
+ AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
+ AM_CCASFLAGS = $(AM_CPPFLAGS)
+ all: fficonfig.h
+--- libjava/Makefile.am.orig	2006-10-03 18:16:53.130900750 +0200
++++ libjava/Makefile.am	2006-10-03 18:17:40.093835750 +0200
+@@ -97,7 +97,7 @@
+ GCJLINK = $(LIBTOOL) --tag=GCJ --mode=link $(GCJ) -L$(here) $(JC1FLAGS) \
+           $(LDFLAGS) -o $@
+ LIBLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXX) -L$(here) $(JC1FLAGS) \
+-          $(LDFLAGS) $(extra_ldflags_libjava) -o $@
++          $(LDFLAGS) $(extra_ldflags_libjava) -Wl,-O1 -o $@
+ 
+ GCC_UNWIND_INCLUDE = @GCC_UNWIND_INCLUDE@
+ 
+--- libjava/Makefile.in.orig	2006-10-03 18:16:53.162902750 +0200
++++ libjava/Makefile.in	2006-10-03 18:17:40.117837250 +0200
+@@ -733,7 +733,7 @@
+           $(LDFLAGS) -o $@
+ 
+ LIBLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXX) -L$(here) $(JC1FLAGS) \
+-          $(LDFLAGS) $(extra_ldflags_libjava) -o $@
++          $(LDFLAGS) $(extra_ldflags_libjava) -Wl,-O1 -o $@
+ 
+ WARNINGS = -Wextra -Wall
+ AM_CXXFLAGS = \
--- gcj-4.2-4.2.4.orig/debian/patches/arm-pr30486.dpatch
+++ gcj-4.2-4.2.4/debian/patches/arm-pr30486.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+
+# DP: Fix 30486 on ARM
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: trunk/gcc/fortran/trans-types.c
+===================================================================
+--- trunk/gcc/fortran/trans-types.c	(revision 170435)
++++ trunk/gcc/fortran/trans-types.c	(working copy)
+@@ -1800,6 +1800,13 @@ gfc_type_for_size (unsigned bits, int un
+ 	  if (type && bits == TYPE_PRECISION (type))
+ 	    return type;
+ 	}
++
++      /* Handle TImode as a special case because it is used by some backends
++         (eg. ARM) even though it is not available for normal use.  */
++#if HOST_BITS_PER_WIDE_INT >= 64
++      if (bits == TYPE_PRECISION (intTI_type_node))
++	return intTI_type_node;
++#endif
+     }
+   else
+     {
+
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-d-lang.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-d-lang.dpatch
@@ -0,0 +1,246 @@
+#! /bin/sh -e
+
+# DP: Add D options and specs for the gcc driver.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -urN gcc.orig/d/lang.opt gcc/d/lang.opt
+--- gcc.orig/d/lang.opt	1970-01-01 01:00:00.000000000 +0100
++++ gcc/d/lang.opt	2007-03-04 16:29:47.000000000 +0100
+@@ -0,0 +1,160 @@
++; GDC -- D front-end for GCC
++; Copyright (C) 2004 David Friedman
++;   
++; This program is free software; you can redistribute it and/or modify
++; it under the terms of the GNU General Public License as published by
++; the Free Software Foundation; either version 2 of the License, or
++; (at your option) any later version.
++; 
++; This program is distributed in the hope that it will be useful,
++; but WITHOUT ANY WARRANTY; without even the implied warranty of
++; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++; GNU General Public License for more details.
++; 
++; You should have received a copy of the GNU General Public License
++; along with this program; if not, write to the Free Software
++; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
++
++; This is used in GCC 3.4+
++
++Language
++D
++
++I
++D Joined Separate
++-I <dir>	Add <dir> to the end of the main include path.
++
++J
++D Joined Separate
++-J <dir>	Add <dir> to the end of the string import path.
++
++fdeprecated
++D
++Allow use of deprecated features
++
++fassert
++D
++Generate runtime code for assert()'s
++
++frelease
++D
++Compile release version
++
++funittest
++D
++Compile in unittest code
++
++fversion=
++D Joined RejectNegative
++-fversion=<level|ident> Compile in version code >= <level> or identified by <ident>
++
++fdebug=
++D Joined RejectNegative
++-fdebug,-fdebug=<level>,-fdebug=<ident> Compile in debug code, code <= level, or code identified by ident
++
++fdebug
++D
++Compile in debug code
++
++fdebug-c
++D
++With -g, generate C debug information for debugger compatibility
++
++fd-verbose
++D
++Print information about D language processing to stdout
++
++fd-version=1
++D RejectNegative
++Compile as D language version 1
++
++femit-templates=
++D Joined RejectNegative
++-femit-templates=[normal|private|all|none|auto]	Control template emission
++
++femit-templates
++D
++-femit-templates Emit templates code and data even if the linker cannot merge multiple copies
++
++nostdinc
++D
++Do not search standard system include directories
++
++fonly=
++D Joined RejectNegative
++Process all modules specified on the command line, but only generate code for the module specified by the argument.
++
++fod=
++D Joined RejectNegative
++-fod=<directory> Specify the object output directory. Note: this is actually a driver option; the backend ignores it.
++
++fop
++D
++Specify that the source file's parent directories should be appended to the object output directory. Note: this is actually a driver option; the backend ignores it.
++
++fintfc
++Generate D interface files
++
++fintfc-dir=
++D Joined RejectNegative
++-fintfc-dir=<dir> Write D interface files to directory <dir>
++
++fintfc-file=
++D Joined RejectNegative
++-fintfc-file=<filename> Write D interface file to <filename>
++
++fdoc
++D
++Generate documentation
++
++fdoc-dir=
++D Joined RejectNegative
++-fdoc-dir=<docdir> Write documentation file to docdir directory
++
++fdoc-file=
++D Joined RejectNegative
++-fdoc-file=<filename> Write documentation file to filename
++
++fdoc-inc=
++D Joined RejectNegative
++-fdoc-inc=<filename> Include a Ddoc macro file
++
++fmultilib-dir=
++D Joined RejectNegative
++-fmultilib-dir=<dir> Select header multilib subdirectory
++
++Wsign-compare
++D
++Warn about signed-unsigned comparisons
++
++fdump-source
++D RejectNegative
++Dump decoded UTF-8 text and source from HTML
++
++fbuiltin
++D
++Recognize built-in functions
++
++funsigned-char
++D
++Make \"char\" unsigned by default (silently ignored in D)
++
++fsigned-char
++D
++Make \"char\" signed by default (silently ignored in D)
++
++iprefix
++D Joined Separate
++-iprefix <path>	Specify <path> as a prefix for next two options
++
++isysroot
++D Joined Separate
++-isysroot <dir>	Set <dir> to be the system root directory
++
++isystem
++D Joined Separate
++-isystem <dir>	Add <dir> to the start of the system include path
++
++Wall
++D
++Enable most warning messages
+diff -urN gcc.orig/d/lang-specs.h gcc/d/lang-specs.h
+--- gcc.orig/d/lang-specs.h	1970-01-01 01:00:00.000000000 +0100
++++ gcc/d/lang-specs.h	2007-03-04 16:36:44.000000000 +0100
+@@ -0,0 +1,53 @@
++/* GDC -- D front-end for GCC
++   Copyright (C) 2004 David Friedman
++   
++   This program is free software; you can redistribute it and/or modify
++   it under the terms of the GNU General Public License as published by
++   the Free Software Foundation; either version 2 of the License, or
++   (at your option) any later version.
++ 
++   This program is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU General Public License for more details.
++ 
++   You should have received a copy of the GNU General Public License
++   along with this program; if not, write to the Free Software
++   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
++*/
++
++#ifndef D_D_SPEC
++#define D_D_SPEC 0
++#endif
++
++/* %{!M} probably doesn't make sense because we would need
++   to do that -- -MD and -MMD doesn't sound like a plan for D.... */
++
++/* %(d_options) ? */
++
++#if GCC_SPEC_FORMAT_4
++#define D_D_SPEC_REST 0, 1, 0
++#else
++#define D_D_SPEC_REST 0
++#endif
++
++#if D_DRIVER_ONLY
++{".html", "@d", D_D_SPEC_REST },
++{".HTML", "@d", D_D_SPEC_REST },
++{".htm", "@d", D_D_SPEC_REST },
++{".HTM", "@d", D_D_SPEC_REST },
++{".xhtml", "@d", D_D_SPEC_REST },
++{".XHTML", "@d", D_D_SPEC_REST },
++{".d", "@d", D_D_SPEC_REST },
++{".D", "@d", D_D_SPEC_REST },
++{"@d",
++     "%{!E:cc1d %i %:d-all-sources() %(cc1_options) %I %N %{nostdinc*} %{+e*} %{I*} %{J*}\
++      %{M} %{MM} %{!fsyntax-only:%(invoke_as)}}", D_D_SPEC_REST },
++#else
++{".d", "@d", D_D_SPEC_REST },
++{".D", "@d", D_D_SPEC_REST },
++{"@d",
++     "%{!E:cc1d %i %(cc1_options) %I %N %{nostdinc*} %{+e*} %{I*} %{J*}\
++      %{M} %{MM} %{!fsyntax-only:%(invoke_as)}}", D_D_SPEC_REST },
++#endif
++
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-allow-gnu99.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-allow-gnu99.dpatch
@@ -0,0 +1,51 @@
+#! /bin/sh -e
+
+# DP: patch to allow gnu99 mode on m68k
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+On m68k, gnu99 mode doesn't work correctly out of the box due to our
+woefully outdated glibc (we're currently stuck at 2.5-1). This is
+because the inline schematics changed between glibc 2.5 and 2.7, and
+gcc 4.2 to 4.3.  This patch configures the built in spec file to pass
+-fgnu89-inline, and thus allowing proper compilation and linking with
+the older glibc on m68k. This patch should not be merged upstream, and
+it should be removed once a newer glibc is available for our
+architecture.
+
+Index: gcc/config/m68k/linux.h
+===================================================================
+--- gcc/config/m68k/linux.h	(revision 137501)
++++ gcc/config/m68k/linux.h	(working copy)
+@@ -37,6 +37,12 @@
+ #undef M68K_HONOR_TARGET_STRICT_ALIGNMENT
+ #define M68K_HONOR_TARGET_STRICT_ALIGNMENT 0
+ 
++/* on m68k, we always need to use gnu89 inlining because we're 
++   still limited to glibc 2.5. This should be removed after 
++   a newer glibc is available */ 
++#undef CC1_SPEC 
++#define CC1_SPEC "%{profile:-p} %{std=gnu99:-fgnu89-inline}" 
++
+ /* Here are four prefixes that are used by asm_fprintf to
+    facilitate customization for alternate assembler syntaxes.
+    Machines with no likelihood of an alternate syntax need not
--- gcj-4.2-4.2.4.orig/debian/patches/libgcj-bc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libgcj-bc.dpatch
@@ -0,0 +1,58 @@
+#! /bin/sh -e
+
+# DP: libgcj_bc
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2008-04-16  Andrew Haley  <aph@littlepinkcloud.com>
+
+	* libgcj_bc.c: (_Jv_LookupInterfaceMethod, _Jv_MonitorExit,
+	_Jv_RegisterResource, _Jv_JNI_PopSystemFrame): Add.
+
+--- libjava/libgcj_bc.c~	2008-04-18 09:50:42.194121373 +0200
++++ libjava/libgcj_bc.c	2008-04-18 09:53:17.936470710 +0200
+@@ -33,7 +33,9 @@
+ void _Jv_ResolvePoolEntry () {}
+ void _Jv_Throw () {}
+ void _Jv_MonitorEnter () {}
++void _Jv_MonitorExit () {}
+ void _Jv_NewPrimArray () {}
++void _Jv_RegisterResource () {}
+ void _Jv_NewObjectArray () {}
+ void _Jv_NewMultiArray () {}
+ void _Jv_ThrowBadArrayIndex () {}
+@@ -43,6 +45,7 @@
+ void _Jv_CheckCast () {}
+ void _Jv_IsInstanceOf () {}
+ void _Jv_CheckArrayStore () {}
++void _Jv_LookupInterfaceMethod () {}
+ void _Jv_LookupInterfaceMethodIdx () {}
+ 
+ void _Jv_RegisterClasses () 
+@@ -66,6 +69,7 @@
+ void _Jv_LookupJNIMethod () {}
+ void _Jv_GetJNIEnvNewFrame () {}
+ void _Jv_UnwrapJNIweakReference () {}
++void _Jv_JNI_PopSystemFrame () {}
+ 
+ 
+ /* Checked divide (-fuse-divide-subroutine).  */
--- gcj-4.2-4.2.4.orig/debian/patches/pr28322.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr28322.dpatch
@@ -0,0 +1,241 @@
+#! /bin/sh -e
+
+# DP: Fix PR other/28322, GCC new warnings and compatibility.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+gcc/
+
+2008-02-26  Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+	PR other/28322
+	* toplev.c (toplev_main): If there are warnings or error, print
+	errors for ignored options.
+	* opts.c (ignored_options): New static variable.
+	(postpone_unknown_option_error): New.
+	(print_ignored_options): New.
+	(handle_option): Postpone errors for unknown -Wno-* options.
+	* opts.h (print_ignored_options): Declare.
+
+2008-06-03  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+	PR other/28322
+	* opts.c (print_ignored_options): report postponed diagnostics for
+	unknown	-Wno-* options as warnings, not errors.
+	(postpone_unknown_option_error): renamed to
+	postpone_unknown_option_warning.
+
+gcc/testsuite/
+
+2008-02-26  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+	PR other/28322
+	* gcc.dg/pr28322.c: New.
+	* gcc.dg/pr28322-2.c: New.
+	* lib/prune.exp: Ignore "At top level" even if there is no ':'
+	preceding it.
+	* gcc.dg/pr28322-3.c: New.
+
+2008-06-03  Peter Maydell  <pmaydell@chiark.greenend.org.uk>
+
+	* gcc.dg/pr28322-2.c: check that emitted diagnostic for -Wno-foobar
+	is a warning and not an error.
+
+
+Index: gcc/toplev.c
+===================================================================
+--- gcc/toplev.c	(revision 134648)
++++ gcc/toplev.c	(working copy)
+@@ -2036,6 +2036,9 @@
+   if (!exit_after_options)
+     do_compile ();
+ 
++  if (warningcount || errorcount) 
++    print_ignored_options ();
++
+   if (errorcount || sorrycount)
+     return (FATAL_EXIT_CODE);
+ 
+Index: gcc/opts.c
+===================================================================
+--- gcc/opts.c	(revision 134648)
++++ gcc/opts.c	(working copy)
+@@ -97,6 +97,12 @@
+ static bool flag_value_profile_transformations_set;
+ static bool flag_peel_loops_set, flag_branch_probabilities_set;
+ 
++typedef const char *const_char_p; /* For DEF_VEC_P.  */
++DEF_VEC_P(const_char_p);
++DEF_VEC_ALLOC_P(const_char_p,heap);
++
++static VEC(const_char_p,heap) *ignored_options;
++
+ /* Input file names.  */
+ const char **in_fnames;
+ unsigned num_in_fnames;
+@@ -181,6 +187,33 @@
+   free (bad_lang);
+ }
+ 
++/* Buffer the unknown option described by the string OPT.  Currently,
++   we only complain about unknown -Wno-* options if they may have
++   prevented a diagnostic. Otherwise, we just ignore them.  */
++
++static void postpone_unknown_option_error(const char *opt)
++{
++  VEC_safe_push (const_char_p, heap, ignored_options, opt);
++}
++
++/* Produce an error for each option previously buffered.  */
++
++void print_ignored_options (void)
++{
++  location_t saved_loc = input_location;
++
++  input_location = UNKNOWN_LOCATION;
++
++  while (!VEC_empty (const_char_p, ignored_options))
++    {
++      const char *opt;
++      opt = VEC_pop (const_char_p, ignored_options);
++      error ("unrecognized command line option \"%s\"", opt);
++    }
++
++  input_location = saved_loc;
++}
++
+ /* Handle the switch beginning at ARGV for the language indicated by
+    LANG_MASK.  Returns the number of switches consumed.  */
+ static unsigned int
+@@ -210,6 +243,14 @@
+       opt = dup;
+       value = 0;
+       opt_index = find_opt (opt + 1, lang_mask | CL_COMMON | CL_TARGET);
++      if (opt_index == cl_options_count && opt[1] == 'W')
++	{
++	  /* We don't generate errors for unknown -Wno-* options
++             unless we issue diagnostics.  */
++	  postpone_unknown_option_error (argv[0]);
++	  result = 1;
++	  goto done;
++	}
+     }
+ 
+   if (opt_index == cl_options_count)
+Index: gcc/opts.h
+===================================================================
+--- gcc/opts.h	(revision 134648)
++++ gcc/opts.h	(working copy)
+@@ -91,4 +91,5 @@
+ extern int option_enabled (int opt_idx);
+ extern bool get_option_state (int, struct cl_option_state *);
+ 
++extern void print_ignored_options (void);
+ #endif
+Index: gcc/testsuite/gcc.dg/pr28322-2.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr28322-2.c	(revision 0)
++++ gcc/testsuite/gcc.dg/pr28322-2.c	(revision 0)
+@@ -0,0 +1,24 @@
++/* PR28322: ignore unknown -Wno-* if no warning is emitted.  */
++/* { dg-do compile } */
++/* { dg-options "-Wall -Wextra -Wno-foobar" } */
++
++int foo (void) 
++{
++  int i = 1/0;  /* { dg-warning "division by zero" } */
++  return i;
++}
++
++/* { dg-message "unrecognized command line option .-Wno-foobar." "" { target *-*-* } 0 } */
++
++/* PR28322: ignore unknown -Wno-* if no warning is emitted.  */
++/* { dg-do compile } */
++/* { dg-options "-Wall -Wextra -Wno-foobar" } */
++
++int foo (void) 
++{
++  int i = 1/0;  /* { dg-warning "division by zero" } */
++  return i;
++}
++
++/* { dg-warning "unrecognized command line option .-Wno-foobar." "" { target *-*-* } 0 } */
++
+Index: gcc/testsuite/gcc.dg/pr28322.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr28322.c	(revision 0)
++++ gcc/testsuite/gcc.dg/pr28322.c	(revision 0)
+@@ -0,0 +1,16 @@
++/* PR28322: ignore unknown -Wno-* if no warning is emitted.  */
++/* { dg-do compile } */
++/* { dg-options " -Wno-foobar -Wno-div-by-zero" } */
++
++void foo(void)
++{
++  int i =  1/0;
++}
++/* PR28322: ignore unknown -Wno-* if no warning is emitted.  */
++/* { dg-do compile } */
++/* { dg-options " -Wno-foobar -Wno-div-by-zero" } */
++
++void foo(void)
++{
++  int i =  1/0;
++}
+Index: gcc/testsuite/gcc.dg/pr28322-3.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr28322-3.c	(revision 0)
++++ gcc/testsuite/gcc.dg/pr28322-3.c	(revision 0)
+@@ -0,0 +1,20 @@
++/* PR28322: ignore unknown -Wno-* if no warning is emitted.  */
++/* { dg-do compile } */
++/* { dg-options " -fno-foobar -mno-foobar" } */
++
++void foo(void)
++{
++  int i =  1;
++}
++/* { dg-message "unrecognized command line option .-fno-foobar." "" { target *-*-* } 0 } */
++/* { dg-message "unrecognized command line option .-mno-foobar." "" { target *-*-* } 0 } */
++/* PR28322: ignore unknown -Wno-* if no warning is emitted.  */
++/* { dg-do compile } */
++/* { dg-options " -fno-foobar -mno-foobar" } */
++
++void foo(void)
++{
++  int i =  1;
++}
++/* { dg-warning "unrecognized command line option .-fno-foobar." "" { target *-*-* } 0 } */
++/* { dg-warning "unrecognized command line option .-mno-foobar." "" { target *-*-* } 0 } */
+Index: gcc/testsuite/lib/prune.exp
+===================================================================
+--- gcc/testsuite/lib/prune.exp	(revision 134648)
++++ gcc/testsuite/lib/prune.exp	(working copy)
+@@ -21,7 +21,7 @@
+     #send_user "Before:$text\n"
+ 
+     regsub -all "(^|\n)\[^\n\]*: In ((static member )?function|member|method|(copy )?constructor|destructor|instantiation|program|subroutine|block-data) \[^\n\]*" $text "" text
+-    regsub -all "(^|\n)\[^\n\]*: At (top level|global scope):\[^\n\]*" $text "" text
++    regsub -all "(^|\n)\[^\n\]*(: )?At (top level|global scope):\[^\n\]*" $text "" text
+     regsub -all "(^|\n)\[^\n\]*:   instantiated from \[^\n\]*" $text "" text
+     regsub -all "(^|\n)collect2: ld returned \[^\n\]*" $text "" text
+     regsub -all "(^|\n)collect: re(compiling|linking)\[^\n\]*" $text "" text
--- gcj-4.2-4.2.4.orig/debian/patches/autoreconf.dpatch
+++ gcj-4.2-4.2.4/debian/patches/autoreconf.dpatch
@@ -0,0 +1,26 @@
+#! /bin/sh -e
+
+# DP: autoreconf several directories for proper mipsen libtool support
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	for i in libstdc++-v3 zlib; do
+		(cd ${dir}/${i} ; autoreconf --force)
+	done
+        ;;
+    -unpatch)
+	echo unable to unpatch autoreconf.
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-xulrunner1.9.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-xulrunner1.9.dpatch
@@ -0,0 +1,41 @@
+#! /bin/sh -e
+
+# DP: Add configure check for xulrunner-1.9.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libjava/classpath && aclocal -I m4 -I ../.. -I ../../config && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        rm -f ${dir}libjava/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libjava/classpath/configure.ac~	2008-02-22 08:37:10.356094701 +0100
++++ libjava/classpath/configure.ac	2008-02-22 08:38:49.397588719 +0100
+@@ -702,7 +702,10 @@
+ 
+   dnl Check for plugin support headers and libraries.
+   if test "x${COMPILE_PLUGIN}" = xyes; then
+-    PKG_CHECK_MODULES(MOZILLA, mozilla-plugin, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
++    PKG_CHECK_MODULES(MOZILLA, mozilla-plugin libxul-unstable, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
++    if test "x${MOZILLA_FOUND}" = xno; then
++      PKG_CHECK_MODULES(MOZILLA, mozilla-plugin, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
++    fi
+     if test "x${MOZILLA_FOUND}" = xno; then
+       PKG_CHECK_MODULES(MOZILLA, firefox-plugin firefox-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
+     fi
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-save_pic.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-save_pic.dpatch
@@ -0,0 +1,49 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: gcc/config/m68k/m68k.c:
+# DP: correctly save the pic register, when not done by reload()
+# DP: (fixes _Unwind_RaiseException and thus exception handling)
+# DP: fixes 345574
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -471,7 +471,8 @@ m68k_save_reg (unsigned int regno, bool 
+ {
+   if (flag_pic && regno == PIC_OFFSET_TABLE_REGNUM)
+     {
+-      if (current_function_uses_pic_offset_table)
++      if (current_function_uses_pic_offset_table ||
++	  current_function_has_nonlocal_label)
+ 	return true;
+       if (!current_function_is_leaf && TARGET_ID_SHARED_LIBRARY)
+ 	return true;
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-directives-only.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-directives-only.dpatch
@@ -0,0 +1,844 @@
+#! /bin/sh -e
+
+# DP: Backport from trunk: -fdirectives-only (when preprocessing,
+# DP: handle directives, but do not expand macros).
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Backport to 4.2, revert libcpp/macro.c
+
+gcc/
+
+2007-07-30  Ollie Wild  <aaw@google.com>
+
+	* c-ppoutput.c (print_lines_directives_only): New function.
+	(scan_translation_unit_directives_only): New function.
+	(preprocess_file): Add call to scan_translation_unit_directives_only.
+	* c-opts.c (c_common_handle_option): Add OPT_fdirectives_only.
+	(sanitize_cpp_opts): Add default flag_dump_macros setting for
+	-fdirectives-only.  Add errors for -fdirectives-only conflict with
+	-Wunused-macros and -traditional.
+	(finish_options): Add builtin macro initialization for
+	-fdirectives-only + -fpreprocessed.
+	* c.opt (fdirectives-only): New.
+	* doc/cppopts.texi (fdirectives-only): New.
+
+2007-08-23  Ollie Wild  <aaw@google.com> 
+ 
+	* c-opts.c (c_common_handle_option): Support -fno-directives-only. 
+	* gcc.c (default_compilers): Add -fno-directives-only to 
+	@assembler-with-cpp. 
+
+libcpp/
+
+2007-07-30  Ollie Wild  <aaw@google.com>
+
+	* directives-only.c: New file.
+	* internal.h (struct _cpp_dir_only_callbacks): New.
+	(_cpp_preprocess_dir_only): New function.
+	* directives.c (_cpp_handle_directive): Check directives_only before
+	disabling execution of indented directives.
+	* files.c (_cpp_stack_file): Add directives_only check.
+	* include/cpplib.h (struct cpp_options): Add directives_only.
+	(cpp_init_special_builtins): New function.
+	* init.c (cpp_init_special_builtins): New function.
+	(cpp_init_builtins): Move builtin_array initialization to
+	cpp_init_special_builtins.
+	(post_options): Check directives_only before setting
+	pfile->state.prevent_expansion = 1.
+	* macro.c (_cpp_builtin_macro_text): Print an error if __COUNTER__
+	is expanded inside a directive while -fdirectives-only is enabled.
+	* Makefile.in (libcpp_a_OBJS): Add directives-only.o.
+	(libcpp_a_SOURCES): Add directives-only.c.
+
+gcc/testsuite/
+
+2007-07-30  Ollie Wild  <aaw@google.com>
+
+	* gcc.dg/cpp/dir-only-1.c: New test.
+	* gcc.dg/cpp/dir-only-1.h: New file.
+	* gcc.dg/cpp/dir-only-2.c: New test.
+	* gcc.dg/cpp/dir-only-3.c: New test.
+	* gcc.dg/cpp/dir-only-3a.h: New file.
+	* gcc.dg/cpp/dir-only-3b.h: New file.
+	* gcc.dg/cpp/dir-only-4.c: New test.
+	* gcc.dg/cpp/dir-only-5.c: New test.
+	* gcc.dg/cpp/dir-only-6.c: New test.
+
+2007-05-22  Janis Johnson  <janis187@us.ibm.com>
+	    Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
+
+	* lib/gcc-dg.exp(process_message): New proc.
+	(dg-message): New test directive.
+
+
+diff -urN src.orig/gcc/c-opts.c src/gcc/c-opts.c
+--- src.orig/gcc/c-opts.c	2008-02-01 20:24:27.000000000 +0100
++++ src/gcc/c-opts.c	2008-02-01 21:38:28.189614530 +0100
+@@ -604,6 +604,10 @@
+ 	disable_builtin_function (arg);
+       break;
+ 
++    case OPT_fdirectives_only:
++      cpp_opts->directives_only = value;
++      break;
++
+     case OPT_fdollars_in_identifiers:
+       cpp_opts->dollars_in_ident = value;
+       break;
+@@ -1319,6 +1323,11 @@
+   if (flag_dump_macros == 'M')
+     flag_no_output = 1;
+ 
++  /* By default, -fdirectives-only implies -dD.  This allows subsequent phases
++     to perform proper macro expansion.  */
++  if (cpp_opts->directives_only && !cpp_opts->preprocessed && !flag_dump_macros)
++    flag_dump_macros = 'D';
++
+   /* Disable -dD, -dN and -dI if normal output is suppressed.  Allow
+      -dM since at least glibc relies on -M -dM to work.  */
+   /* Also, flag_no_output implies flag_no_line_commands, always.  */
+@@ -1349,6 +1358,14 @@
+      actually output the current directory?  */
+   if (flag_working_directory == -1)
+     flag_working_directory = (debug_info_level != DINFO_LEVEL_NONE);
++
++  if (cpp_opts->directives_only)
++    {
++      if (warn_unused_macros)
++	error ("-fdirectives-only is incompatible with -Wunused_macros");
++      if (cpp_opts->traditional)
++	error ("-fdirectives-only is incompatible with -traditional");
++    }
+ }
+ 
+ /* Add include path with a prefix at the front of its name.  */
+@@ -1432,6 +1449,8 @@
+ 	    }
+ 	}
+     }
++  else if (cpp_opts->directives_only)
++    cpp_init_special_builtins (parse_in);
+ 
+   include_cursor = 0;
+   push_command_line_include ();
+diff -urN src.orig/gcc/c-ppoutput.c src/gcc/c-ppoutput.c
+--- src.orig/gcc/c-ppoutput.c	2007-09-02 16:02:13.000000000 +0200
++++ src/gcc/c-ppoutput.c	2008-02-01 21:30:28.562379462 +0100
+@@ -41,6 +41,8 @@
+ 
+ /* General output routines.  */
+ static void scan_translation_unit (cpp_reader *);
++static void print_lines_directives_only (int, const void *, size_t);
++static void scan_translation_unit_directives_only (cpp_reader *);
+ static void scan_translation_unit_trad (cpp_reader *);
+ static void account_for_newlines (const unsigned char *, size_t);
+ static int dump_macro (cpp_reader *, cpp_hashnode *, void *);
+@@ -75,6 +77,9 @@
+     }
+   else if (cpp_get_options (pfile)->traditional)
+     scan_translation_unit_trad (pfile);
++  else if (cpp_get_options (pfile)->directives_only
++	   && !cpp_get_options (pfile)->preprocessed)
++    scan_translation_unit_directives_only (pfile);
+   else
+     scan_translation_unit (pfile);
+ 
+@@ -179,6 +184,26 @@
+     }
+ }
+ 
++static void
++print_lines_directives_only (int lines, const void *buf, size_t size)
++{
++  print.src_line += lines;
++  fwrite (buf, 1, size, print.outf);
++}
++
++/* Writes out the preprocessed file, handling spacing and paste
++   avoidance issues.  */
++static void
++scan_translation_unit_directives_only (cpp_reader *pfile)
++{
++  struct _cpp_dir_only_callbacks cb;
++
++  cb.print_lines = print_lines_directives_only;
++  cb.maybe_print_line = maybe_print_line;
++
++  _cpp_preprocess_dir_only (pfile, &cb);
++}
++
+ /* Adjust print.src_line for newlines embedded in output.  */
+ static void
+ account_for_newlines (const unsigned char *str, size_t len)
+diff -urN src.orig/gcc/c.opt src/gcc/c.opt
+--- src.orig/gcc/c.opt	2007-09-02 16:02:13.000000000 +0200
++++ src/gcc/c.opt	2008-02-01 21:30:11.502122112 +0100
+@@ -484,6 +484,10 @@
+ C++ ObjC++
+ Inline member functions by default
+ 
++fdirectives-only
++C ObjC C++ ObjC++
++Preprocess directives only.
++
+ fdollars-in-identifiers
+ C ObjC C++ ObjC++
+ Permit '$' as an identifier character
+diff -urN src.orig/gcc/gcc.c src/gcc/gcc.c
+--- src.orig/gcc/gcc.c	2007-09-02 16:02:13.000000000 +0200
++++ src/gcc/gcc.c	2008-02-01 21:30:28.572379613 +0100
+@@ -998,12 +998,12 @@
+   {".S", "@assembler-with-cpp", 0, 1, 0},
+   {"@assembler-with-cpp",
+ #ifdef AS_NEEDS_DASH_FOR_PIPED_INPUT
+-   "%(trad_capable_cpp) -lang-asm %(cpp_options)\
++   "%(trad_capable_cpp) -lang-asm %(cpp_options) -fno-directives-only\
+       %{E|M|MM:%(cpp_debug_options)}\
+       %{!M:%{!MM:%{!E:%{!S:-o %|.s |\n\
+        as %(asm_debug) %(asm_options) %|.s %A }}}}"
+ #else
+-   "%(trad_capable_cpp) -lang-asm %(cpp_options)\
++   "%(trad_capable_cpp) -lang-asm %(cpp_options) -fno-directives-only\
+       %{E|M|MM:%(cpp_debug_options)}\
+       %{!M:%{!MM:%{!E:%{!S:-o %|.s |\n\
+        as %(asm_debug) %(asm_options) %m.s %A }}}}"
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-1.c src/gcc/testsuite/gcc.dg/cpp/dir-only-1.c
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-1.c	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-1.c	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,73 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++/* { dg-do preprocess } */
++/* { dg-options -fdirectives-only } */
++
++/* Tests scan_translation_unit_directives_only()'s handling of corner cases. */
++
++/* Ignore directives inside block comments...
++#error directive inside block comment
++*/
++
++// Escaped newline doesn't terminate line comment \
++#error directive inside line comment
++
++/* A comment canot start inside a string. */
++const char *c1 = "/*";
++#define NOT_IN_COMMENT
++const char *c2 = "*/";
++#ifndef NOT_IN_COMMENT
++#error Comment started inside a string literal
++#endif
++
++/* Escaped newline handling. */
++int i; \
++#error ignored escaped newline
++  \
++  \
++#define BOL
++#ifndef BOL
++#error escaped newline did not preserve beginning of line
++#endif
++
++/* Handles \\ properly at the end of a string. */
++"string ends in \\"/*
++#error Missed string terminator.
++*/
++
++/* Handles macro expansion in preprocessing directives. */
++#define HEADER "dir-only-1.h"
++#include HEADER
++#ifndef GOT_HEADER
++#error Failed to include header.
++#endif
++
++/\
++*
++#define IN_COMMENT
++*/
++#ifdef IN_COMMENT
++#error Escaped newline breaks block comment initiator.
++#endif
++
++/*
++*\
++/
++#define NOT_IN_COMMENT2
++/**/
++#ifndef NOT_IN_COMMENT2
++#error Escaped newline breaks block comment terminator.
++#endif
++
++/* Test escaped newline inside character escape sequence. */
++"\\
++\"/*
++#error Missed string terminator
++*/
++
++/* Block comments don't mask trailing preprocessing
++   directive. */ #define NOT_MASKED
++#ifndef NOT_MASKED
++#error Comment masks trailing directive.
++#endif
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-1.h src/gcc/testsuite/gcc.dg/cpp/dir-only-1.h
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-1.h	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-1.h	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,3 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++#define GOT_HEADER
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-2.c src/gcc/testsuite/gcc.dg/cpp/dir-only-2.c
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-2.c	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-2.c	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,12 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++/* { dg-do preprocess } */
++/* { dg-options "-fpreprocessed -fdirectives-only -DNOT_SET" } */
++
++/* Tests -fdirectives-only + -fpreprocessed. */
++
++/* Check this is not defined. */
++#ifdef NOT_SET
++#error Command line macro not disabled.
++#endif
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-3.c src/gcc/testsuite/gcc.dg/cpp/dir-only-3.c
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-3.c	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-3.c	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,13 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++/* { dg-do preprocess } */
++/* { dg-options "-fdirectives-only -H" } */
++/* { dg-message "dir-only-3a\.h\n\[^\n\]*dir-only-3b\.h\n\[^\n\]*dir-only-3a\.h\n" "include guard check" { target *-*-* } 0 } */
++
++/* Tests include guards. */
++
++#include "dir-only-3a.h"
++#include "dir-only-3b.h"
++#include "dir-only-3b.h"
++#include "dir-only-3a.h"
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-3a.h src/gcc/testsuite/gcc.dg/cpp/dir-only-3a.h
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-3a.h	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-3a.h	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,8 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++extern int outside_guard
++
++#ifndef DIR_ONLY_3A_H
++#define DIR_ONLY_3A_H
++#endif
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-3b.h src/gcc/testsuite/gcc.dg/cpp/dir-only-3b.h
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-3b.h	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-3b.h	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,9 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++#ifndef DIR_ONLY_3B_H
++#define DIR_ONLY_3B_H
++
++extern int inside guard;
++
++#endif
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-4.c src/gcc/testsuite/gcc.dg/cpp/dir-only-4.c
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-4.c	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-4.c	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,6 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++/* { dg-do preprocess } */
++/* { dg-options "-fdirectives-only -Wunused-macros" } */
++/* { dg-error "-fdirectives-only is incompatible with -Wunused_macros\n" "-Wunused-macros check" { target *-*-* } 0 } */
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-5.c src/gcc/testsuite/gcc.dg/cpp/dir-only-5.c
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-5.c	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-5.c	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,6 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++/* { dg-do preprocess } */
++/* { dg-options "-fdirectives-only -traditional" } */
++/* { dg-error "-fdirectives-only is incompatible with -traditional\n" "-traditional check" { target *-*-* } 0 } */
+diff -urN src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-6.c src/gcc/testsuite/gcc.dg/cpp/dir-only-6.c
+--- src.orig/gcc/testsuite/gcc.dg/cpp/dir-only-6.c	1970-01-01 01:00:00.000000000 +0100
++++ src/gcc/testsuite/gcc.dg/cpp/dir-only-6.c	2008-02-01 21:30:11.502122112 +0100
+@@ -0,0 +1,7 @@
++/* Copyright 2007 Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.  */
++
++/* { dg-do preprocess } */
++/* { dg-options -fdirectives-only } */
++
++/* { dg-error "unterminated comment" }
+diff -urN src.orig/gcc/testsuite/lib/gcc-dg.exp src/gcc/testsuite/lib/gcc-dg.exp
+--- src.orig/gcc/testsuite/lib/gcc-dg.exp	2007-09-02 16:02:00.000000000 +0200
++++ src/gcc/testsuite/lib/gcc-dg.exp	2008-02-01 21:30:11.502122112 +0100
+@@ -532,4 +532,40 @@
+     }
+ }
+ 
++# Modify the regular expression saved by a DejaGnu message directive to
++# include a prefix and to force the expression to match a single line.
++# MSGPROC is the procedure to call.
++# MSGPREFIX is the prefix to prepend.
++# DGARGS is the original argument list.
++
++proc process-message { msgproc msgprefix dgargs } {
++    upvar dg-messages dg-messages
++
++    # Process the dg- directive, including adding the regular expression
++    # to the new message entry in dg-messages.
++    set msgcnt [llength ${dg-messages}]
++    catch { eval $msgproc $dgargs }
++
++    # If the target expression wasn't satisfied there is no new message.
++    if { [llength ${dg-messages}] == $msgcnt } {
++	return;
++    }
++
++    # Prepend the message prefix to the regular expression and make
++    # it match a single line.
++    set newentry [lindex ${dg-messages} end]
++    set expmsg [lindex $newentry 2]
++    set expmsg "$msgprefix\[^\n]*$expmsg"
++    set newentry [lreplace $newentry 2 2 $expmsg]
++    set dg-messages [lreplace ${dg-messages} end end $newentry]
++    verbose "process-message:\n${dg-messages}" 2
++}
++
++# Look for messages that don't have standard prefixes.
++
++proc dg-message { args } {
++    upvar dg-messages dg-messages
++    process-message dg-warning "" $args
++}
++
+ set additional_prunes ""
+diff -urN src.orig/libcpp/Makefile.in src/libcpp/Makefile.in
+--- src.orig/libcpp/Makefile.in	2008-02-01 21:51:16.901210369 +0100
++++ src/libcpp/Makefile.in	2008-02-01 21:30:28.562379462 +0100
+@@ -71,14 +71,14 @@
+ 
+ ALL_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) $(INCLUDES) $(CPPFLAGS)
+ 
+-libcpp_a_OBJS = charset.o directives.o errors.o expr.o files.o \
+-	identifiers.o init.o lex.o line-map.o macro.o mkdeps.o \
+-	pch.o symtab.o traditional.o
++libcpp_a_OBJS = charset.o directives.o directives-only.o errors.o \
++	expr.o files.o identifiers.o init.o lex.o line-map.o macro.o \
++	mkdeps.o pch.o symtab.o traditional.o
+ makedepend_OBJS = makedepend.o
+ 
+-libcpp_a_SOURCES = charset.c directives.c errors.c expr.c files.c \
+-	identifiers.c init.c lex.c line-map.c macro.c mkdeps.c \
+-	pch.c symtab.c traditional.c
++libcpp_a_SOURCES = charset.c directives.c directives-only.c errors.c \
++	expr.c files.c identifiers.c init.c lex.c line-map.c macro.c \
++	mkdeps.c pch.c symtab.c traditional.c
+ 
+ all: libcpp.a makedepend$(EXEEXT) $(USED_CATALOGS)
+ 
+diff -urN src.orig/libcpp/directives-only.c src/libcpp/directives-only.c
+--- src.orig/libcpp/directives-only.c	1970-01-01 01:00:00.000000000 +0100
++++ src/libcpp/directives-only.c	2008-02-01 21:30:28.562379462 +0100
+@@ -0,0 +1,240 @@
++/* CPP Library - directive only preprocessing for distributed compilation.
++   Copyright (C) 2007
++   Free Software Foundation, Inc.
++   Contributed by Ollie Wild <aaw@google.com>.
++
++This program is free software; you can redistribute it and/or modify it
++under the terms of the GNU General Public License as published by the
++Free Software Foundation; either version 2, or (at your option) any
++later version.
++
++This program is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with this program; if not, write to the Free Software
++Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
++
++#include "config.h"
++#include "system.h"
++#include "cpplib.h"
++#include "internal.h"
++
++/* DO (Directive only) flags. */
++#define DO_BOL		 (1 << 0) /* At the beginning of a logical line. */
++#define DO_STRING	 (1 << 1) /* In a string constant. */
++#define DO_CHAR		 (1 << 2) /* In a character constant. */
++#define DO_BLOCK_COMMENT (1 << 3) /* In a block comment. */
++#define DO_LINE_COMMENT	 (1 << 4) /* In a single line "//-style" comment. */
++
++#define DO_LINE_SPECIAL (DO_STRING | DO_CHAR | DO_LINE_COMMENT)
++#define DO_SPECIAL	(DO_LINE_SPECIAL | DO_BLOCK_COMMENT)
++
++/* Writes out the preprocessed file, handling spacing and paste
++   avoidance issues.  */
++void
++_cpp_preprocess_dir_only (cpp_reader *pfile,
++			  const struct _cpp_dir_only_callbacks *cb)
++{
++  struct cpp_buffer *buffer;
++  const unsigned char *cur, *base, *next_line, *rlimit;
++  cppchar_t c, last_c;
++  unsigned flags;
++  int lines, col;
++  source_location loc;
++
++ restart:
++  /* Buffer initialization ala _cpp_clean_line(). */
++  buffer = pfile->buffer;
++  buffer->cur_note = buffer->notes_used = 0;
++  buffer->cur = buffer->line_base = buffer->next_line;
++  buffer->need_line = false;
++
++  /* This isn't really needed.  It prevents a compiler warning, though. */
++  loc = pfile->line_table->highest_line;
++
++  /* Scan initialization. */
++  next_line = cur = base = buffer->cur;
++  rlimit = buffer->rlimit;
++  flags = DO_BOL;
++  lines = 0;
++  col = 1;
++
++  for (last_c = '\n', c = *cur; cur < rlimit; last_c = c, c = *++cur, ++col)
++    {
++      /* Skip over escaped newlines. */
++      if (__builtin_expect (c == '\\', false))
++	{
++	  const unsigned char *tmp = cur + 1;
++
++	  while (is_nvspace (*tmp) && tmp < rlimit)
++	    tmp++;
++	  if (*tmp == '\r')
++	    tmp++;
++	  if (*tmp == '\n' && tmp < rlimit)
++	    {
++	      CPP_INCREMENT_LINE (pfile, 0);
++	      lines++;
++	      col = 0;
++	      cur = tmp;
++	      c = last_c;
++	      continue;
++	    }
++	}
++
++      if (__builtin_expect (last_c == '#', false) && !(flags & DO_SPECIAL))
++	{
++	  if (c != '#' && (flags & DO_BOL))
++	  {
++	    struct line_maps *line_table;
++
++	    if (!pfile->state.skipping && next_line != base)
++	      cb->print_lines (lines, base, next_line - base);
++
++	    /* Prep things for directive handling. */
++	    buffer->next_line = cur;
++	    buffer->need_line = true;
++	    _cpp_get_fresh_line (pfile);
++
++	    /* Ensure proper column numbering for generated error messages. */
++	    buffer->line_base -= col - 1;
++
++	    _cpp_handle_directive (pfile, 0 /* ignore indented */);
++
++	    /* Sanitize the line settings.  Duplicate #include's can mess
++	       things up. */
++	    line_table = pfile->line_table;
++	    line_table->highest_location = line_table->highest_line;
++
++	    /* The if block prevents us from outputing line information when
++	       the file ends with a directive and no newline.  Note that we
++	       must use pfile->buffer, not buffer. */
++	    if (pfile->buffer->next_line < pfile->buffer->rlimit)
++	      cb->maybe_print_line (pfile->line_table->highest_line);
++
++	    goto restart;
++	  }
++
++	  flags &= ~DO_BOL;
++	  pfile->mi_valid = false;
++	}
++      else if (__builtin_expect (last_c == '/', false) \
++	       && !(flags & DO_SPECIAL) && c != '*' && c != '/')
++	{
++	  /* If a previous slash is not starting a block comment, clear the
++	     DO_BOL flag.  */
++	  flags &= ~DO_BOL;
++	  pfile->mi_valid = false;
++	}
++
++      switch (c)
++	{
++	case '/':
++	  if ((flags & DO_BLOCK_COMMENT) && last_c == '*')
++	    {
++	      flags &= ~DO_BLOCK_COMMENT;
++	      c = 0;
++	    }
++	  else if (!(flags & DO_SPECIAL) && last_c == '/')
++	    flags |= DO_LINE_COMMENT;
++	  else if (!(flags & DO_SPECIAL))
++	    /* Mark the position for possible error reporting. */
++	    LINEMAP_POSITION_FOR_COLUMN (loc, pfile->line_table, col);
++
++	  break;
++
++	case '*':
++	  if (!(flags & DO_SPECIAL))
++	    {
++	      if (last_c == '/')
++		flags |= DO_BLOCK_COMMENT;
++	      else
++		{
++		  flags &= ~DO_BOL;
++		  pfile->mi_valid = false;
++		}
++	    }
++
++	  break;
++
++	case '\'':
++	case '"':
++	  {
++	    unsigned state = (c == '"') ? DO_STRING : DO_CHAR;
++
++	    if (!(flags & DO_SPECIAL))
++	      {
++		flags |= state;
++		flags &= ~DO_BOL;
++		pfile->mi_valid = false;
++	      }
++	    else if ((flags & state) && last_c != '\\')
++	      flags &= ~state;
++
++	    break;
++	  }
++
++	case '\\':
++	  {
++	    if ((flags & (DO_STRING | DO_CHAR)) && last_c == '\\')
++	      c = 0;
++
++	    if (!(flags & DO_SPECIAL))
++	      {
++		flags &= ~DO_BOL;
++		pfile->mi_valid = false;
++	      }
++
++	    break;
++	  }
++
++	case '\n':
++	  CPP_INCREMENT_LINE (pfile, 0);
++	  lines++;
++	  col = 0;
++	  flags &= ~DO_LINE_SPECIAL;
++	  if (!(flags & DO_SPECIAL))
++	    flags |= DO_BOL;
++	  break;
++
++	case '#':
++	  next_line = cur;
++	  /* Don't update DO_BOL yet. */
++	  break;
++
++	case ' ': case '\t': case '\f': case '\v': case '\0':
++	  break;
++
++	default:
++	  if (!(flags & DO_SPECIAL))
++	    {
++	      flags &= ~DO_BOL;
++	      pfile->mi_valid = false;
++	    }
++	  break;
++	}
++    }
++
++  if (flags & DO_BLOCK_COMMENT)
++    cpp_error_with_line (pfile, CPP_DL_ERROR, loc, 0, "unterminated comment");
++
++  if (!pfile->state.skipping && cur != base)
++    {
++      /* If the file was not newline terminated, add rlimit, which is
++         guaranteed to point to a newline, to the end of our range.  */
++      if (cur[-1] != '\n')
++	{
++	  cur++;
++	  CPP_INCREMENT_LINE (pfile, 0);
++	  lines++;
++	}
++
++      cb->print_lines (lines, base, cur - base);
++    }
++
++  _cpp_pop_buffer (pfile);
++  if (pfile->buffer)
++    goto restart;
++}
+diff -urN src.orig/libcpp/directives.c src/libcpp/directives.c
+--- src.orig/libcpp/directives.c	2007-08-09 20:56:37.000000000 +0200
++++ src/libcpp/directives.c	2008-02-01 21:30:28.562379462 +0100
+@@ -423,8 +423,13 @@
+ 	 does not cause '#define foo bar' to get executed when
+ 	 compiled with -save-temps, we recognize directives in
+ 	 -fpreprocessed mode only if the # is in column 1.  macro.c
+-	 puts a space in front of any '#' at the start of a macro.  */
++	 puts a space in front of any '#' at the start of a macro.
++	 
++	 We exclude the -fdirectives-only case because macro expansion
++	 has not been performed yet, and block comments can cause spaces
++	 to preceed the directive.  */
+       if (CPP_OPTION (pfile, preprocessed)
++	  && !CPP_OPTION (pfile, directives_only)
+ 	  && (indented || !(dir->flags & IN_I)))
+ 	{
+ 	  skip = 0;
+diff -urN src.orig/libcpp/files.c src/libcpp/files.c
+--- src.orig/libcpp/files.c	2007-08-09 20:56:37.000000000 +0200
++++ src/libcpp/files.c	2008-02-01 21:30:28.562379462 +0100
+@@ -722,7 +722,8 @@
+ 
+   /* Stack the buffer.  */
+   buffer = cpp_push_buffer (pfile, file->buffer, file->st.st_size,
+-			    CPP_OPTION (pfile, preprocessed));
++			    CPP_OPTION (pfile, preprocessed)
++			    && !CPP_OPTION (pfile, directives_only));
+   buffer->file = file;
+   buffer->sysp = sysp;
+ 
+diff -urN src.orig/libcpp/include/cpplib.h src/libcpp/include/cpplib.h
+--- src.orig/libcpp/include/cpplib.h	2007-08-09 20:56:37.000000000 +0200
++++ src/libcpp/include/cpplib.h	2008-02-01 21:30:28.562379462 +0100
+@@ -440,6 +440,9 @@
+ 
+   /* True means error callback should be used for diagnostics.  */
+   bool client_diagnostic;
++
++  /* True disables tokenization outside of preprocessing directives. */
++  bool directives_only;
+ };
+ 
+ /* Callback for header lookup for HEADER, which is the name of a
+@@ -643,6 +646,10 @@
+    too.  If there was an error opening the file, it returns NULL.  */
+ extern const char *cpp_read_main_file (cpp_reader *, const char *);
+ 
++/* Set up built-ins with special behavior.  Use cpp_init_builtins()
++   instead unless your know what you are doing.  */
++extern void cpp_init_special_builtins (cpp_reader *);
++
+ /* Set up built-ins like __FILE__.  */
+ extern void cpp_init_builtins (cpp_reader *, int);
+ 
+diff -urN src.orig/libcpp/init.c src/libcpp/init.c
+--- src.orig/libcpp/init.c	2008-02-01 21:51:16.901210369 +0100
++++ src/libcpp/init.c	2008-02-01 21:30:28.562379462 +0100
+@@ -347,11 +347,8 @@
+     }
+ }
+ 
+-/* Read the builtins table above and enter them, and language-specific
+-   macros, into the hash table.  HOSTED is true if this is a hosted
+-   environment.  */
+ void
+-cpp_init_builtins (cpp_reader *pfile, int hosted)
++cpp_init_special_builtins (cpp_reader *pfile)
+ {
+   const struct builtin *b;
+   size_t n = ARRAY_SIZE (builtin_array);
+@@ -360,10 +357,7 @@
+     n -= 2;
+   else if (! CPP_OPTION (pfile, stdc_0_in_system_headers)
+ 	   || CPP_OPTION (pfile, std))
+-    {
+-      n--;
+-      _cpp_define_builtin (pfile, "__STDC__ 1");
+-    }
++    n--;
+ 
+   for (b = builtin_array; b < builtin_array + n; b++)
+     {
+@@ -372,6 +366,20 @@
+       hp->flags |= NODE_BUILTIN | NODE_WARN;
+       hp->value.builtin = (enum builtin_type) b->value;
+     }
++}
++
++/* Read the builtins table above and enter them, and language-specific
++   macros, into the hash table.  HOSTED is true if this is a hosted
++   environment.  */
++void
++cpp_init_builtins (cpp_reader *pfile, int hosted)
++{
++  cpp_init_special_builtins (pfile);
++
++  if (!CPP_OPTION (pfile, traditional)
++      && (! CPP_OPTION (pfile, stdc_0_in_system_headers)
++	  || CPP_OPTION (pfile, std)))
++    _cpp_define_builtin (pfile, "__STDC__ 1");
+ 
+   if (CPP_OPTION (pfile, cplusplus))
+     _cpp_define_builtin (pfile, "__cplusplus 1");
+@@ -619,7 +627,8 @@
+      preprocessed text.  Read preprocesed source in ISO mode.  */
+   if (CPP_OPTION (pfile, preprocessed))
+     {
+-      pfile->state.prevent_expansion = 1;
++      if (!CPP_OPTION (pfile, directives_only))
++	pfile->state.prevent_expansion = 1;
+       CPP_OPTION (pfile, traditional) = 0;
+     }
+ 
+diff -urN src.orig/libcpp/internal.h src/libcpp/internal.h
+--- src.orig/libcpp/internal.h	2007-08-09 20:56:37.000000000 +0200
++++ src/libcpp/internal.h	2008-02-01 21:30:28.562379462 +0100
+@@ -561,6 +561,17 @@
+ 				 unsigned int, unsigned int);
+ extern void _cpp_pop_buffer (cpp_reader *);
+ 
++/* In directives.c */
++struct _cpp_dir_only_callbacks
++{
++  /* Called to print a block of lines. */
++  void (*print_lines) (int, const void *, size_t);
++  void (*maybe_print_line) (source_location);
++};
++
++extern void _cpp_preprocess_dir_only (cpp_reader *,
++				      const struct _cpp_dir_only_callbacks *);
++
+ /* In traditional.c.  */
+ extern bool _cpp_scan_out_logical_line (cpp_reader *, cpp_macro *);
+ extern bool _cpp_read_logical_line_trad (cpp_reader *);
--- gcj-4.2-4.2.4.orig/debian/patches/sparc-niagara2.dpatch
+++ gcj-4.2-4.2.4/debian/patches/sparc-niagara2.dpatch
@@ -0,0 +1,440 @@
+#! /bin/sh -e
+
+# DP: Add niagara2 optimization support
+
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+
+exit 0
+
+--- gcc/config.gcc.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config.gcc	2007-09-26 17:52:35.000000000 -0700
+@@ -2945,7 +2945,7 @@ case "${target}" in
+ 			"" | sparc | sparcv9 | sparc64 | sparc86x \
+ 			| v7 | cypress | v8 | supersparc | sparclite | f930 \
+ 			| f934 | hypersparc | sparclite86x | sparclet | tsc701 \
+-			| v9 | ultrasparc | ultrasparc3 | niagara)
++			| v9 | ultrasparc | ultrasparc3 | niagara | niagara2)
+ 				# OK
+ 				;;
+ 			*)
+--- gcc/config/sparc/linux64.h.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config/sparc/linux64.h	2007-09-26 17:52:35.000000000 -0700
+@@ -43,7 +43,8 @@ along with GCC; see the file COPYING3.  
+ #if TARGET_CPU_DEFAULT == TARGET_CPU_v9 \
+     || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc \
+     || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3 \
+-    || TARGET_CPU_DEFAULT == TARGET_CPU_niagara
++    || TARGET_CPU_DEFAULT == TARGET_CPU_niagara \
++    || TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
+ /* A 64 bit v9 compiler with stack-bias,
+    in a Medium/Low code model environment.  */
+ 
+--- gcc/config/sparc/niagara2.md.~1~	2007-09-26 17:51:45.000000000 -0700
++++ gcc/config/sparc/niagara2.md	2007-09-26 17:52:35.000000000 -0700
+@@ -0,0 +1,91 @@
++;; Scheduling description for Niagara-2.
++;;   Copyright (C) 2007 Free Software Foundation, Inc.
++;;
++;; This file is part of GCC.
++;;
++;; GCC is free software; you can redistribute it and/or modify
++;; it under the terms of the GNU General Public License as published by
++;; the Free Software Foundation; either version 2, or (at your option)
++;; any later version.
++;;
++;; GCC is distributed in the hope that it will be useful,
++;; but WITHOUT ANY WARRANTY; without even the implied warranty of
++;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++;; GNU General Public License for more details.
++;;
++;; You should have received a copy of the GNU General Public License
++;; along with GCC; see the file COPYING.  If not, write to
++;; the Free Software Foundation, 51 Franklin Street, Fifth Floor,
++;; Boston, MA 02110-1301, USA.
++
++;; Niagara-2 is a single-issue processor.
++
++(define_automaton "niagara2_0")
++
++(define_cpu_unit "niag2_pipe" "niagara2_0")
++
++(define_insn_reservation "niag2_25cycle" 25
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "flushw"))
++  "niag2_pipe*25")
++
++(define_insn_reservation "niag2_5cycle" 5
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "multi,flushw,iflush,trap"))
++  "niag2_pipe*5")
++
++(define_insn_reservation "niag2_6cycle" 4
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "savew"))
++  "niag2_pipe*4")
++
++/* Most basic operations are single-cycle. */
++(define_insn_reservation "niag2_ialu" 1
++ (and (eq_attr "cpu" "niagara2")
++   (eq_attr "type" "ialu,shift,compare,cmove"))
++ "niag2_pipe")
++
++(define_insn_reservation "niag2_imul" 5
++ (and (eq_attr "cpu" "niagara2")
++   (eq_attr "type" "imul"))
++ "niag2_pipe*5")
++
++(define_insn_reservation "niag2_idiv" 31
++ (and (eq_attr "cpu" "niagara2")
++   (eq_attr "type" "idiv"))
++ "niag2_pipe*31")
++
++(define_insn_reservation "niag2_branch" 5
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "call,sibcall,call_no_delay_slot,uncond_branch,branch"))
++  "niag2_pipe*5")
++
++(define_insn_reservation "niag2_3cycle_load" 3
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "load,fpload"))
++  "niag2_pipe*3")
++
++(define_insn_reservation "niag2_1cycle_store" 1
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "store,fpstore"))
++  "niag2_pipe")
++
++(define_insn_reservation "niag2_fp" 3
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fpmove,fpcmove,fpcrmove,fpcmp,fpmul"))
++  "niag2_pipe*3")
++
++(define_insn_reservation "niag2_fdivs" 19
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fpdivs"))
++  "niag2_pipe*19")
++
++(define_insn_reservation "niag2_fdivd" 33
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fpdivd"))
++  "niag2_pipe*33")
++
++(define_insn_reservation "niag2_vis" 6
++  (and (eq_attr "cpu" "niagara2")
++    (eq_attr "type" "fga,fgm_pack,fgm_mul,fgm_cmp,fgm_pdist"))
++  "niag2_pipe*6")
+--- gcc/config/sparc/sol2-bi.h.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config/sparc/sol2-bi.h	2007-09-26 17:52:35.000000000 -0700
+@@ -48,6 +48,15 @@
+ #define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
+ #endif
+ 
++#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
++#undef CPP_CPU64_DEFAULT_SPEC
++#define CPP_CPU64_DEFAULT_SPEC ""
++#undef ASM_CPU32_DEFAULT_SPEC
++#define ASM_CPU32_DEFAULT_SPEC "-xarch=v8plusb"
++#undef ASM_CPU64_DEFAULT_SPEC
++#define ASM_CPU64_DEFAULT_SPEC AS_SPARC64_FLAG "b"
++#endif
++
+ #if DEFAULT_ARCH32_P
+ #define DEF_ARCH32_SPEC(__str) "%{!m64:" __str "}"
+ #define DEF_ARCH64_SPEC(__str) "%{m64:" __str "}"
+@@ -66,7 +75,7 @@
+ %{mcpu=sparclite|mcpu-f930|mcpu=f934:-D__sparclite__} \
+ %{mcpu=v8:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+ %{mcpu=supersparc:-D__supersparc__ " DEF_ARCH32_SPEC("-D__sparcv8") "} \
+-%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3|mcpu=niagara:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
++%{mcpu=v9|mcpu=ultrasparc|mcpu=ultrasparc3|mcpu=niagara|mcpu=niagara2:" DEF_ARCH32_SPEC("-D__sparcv8") "} \
+ %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} \
+ "
+ 
+@@ -76,7 +85,8 @@
+ %{mcpu=ultrasparc:" DEF_ARCH32_SPEC("-xarch=v8plusa") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "a") "} \
+ %{mcpu=ultrasparc3:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+ %{mcpu=niagara:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
+-%{!mcpu=niagara:%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}}} \
++%{mcpu=niagara2:" DEF_ARCH32_SPEC("-xarch=v8plusb") DEF_ARCH64_SPEC(AS_SPARC64_FLAG "b") "} \
++%{!mcpu=niagara2:%{!mcpu=niagara:%{!mcpu=ultrasparc3:%{!mcpu=ultrasparc:%{!mcpu=v9:%{mcpu*:" DEF_ARCH32_SPEC("-xarch=v8") DEF_ARCH64_SPEC(AS_SPARC64_FLAG) "}}}}}} \
+ %{!mcpu*:%(asm_cpu_default)} \
+ "
+ 
+--- gcc/config/sparc/sol2.h.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config/sparc/sol2.h	2007-09-26 17:52:35.000000000 -0700
+@@ -45,12 +45,18 @@ along with GCC; see the file COPYING3.  
+ #define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
+ #endif
+ 
++#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
++#undef ASM_CPU_DEFAULT_SPEC
++#define ASM_CPU_DEFAULT_SPEC "-xarch=v8plusb"
++#endif
++
+ #undef ASM_CPU_SPEC
+ #define ASM_CPU_SPEC "\
+ %{mcpu=v9:-xarch=v8plus} \
+ %{mcpu=ultrasparc:-xarch=v8plusa} \
+ %{mcpu=ultrasparc3:-xarch=v8plusb} \
+ %{mcpu=niagara:-xarch=v8plusb} \
++%{mcpu=niagara2:-xarch=v8plusb} \
+ %{!mcpu*:%(asm_cpu_default)} \
+ "
+ 
+--- gcc/config/sparc/sparc.c.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config/sparc/sparc.c	2007-09-26 17:52:35.000000000 -0700
+@@ -220,6 +220,30 @@ struct processor_costs niagara_costs = {
+   0, /* shift penalty */
+ };
+ 
++static const
++struct processor_costs niagara2_costs = {
++  COSTS_N_INSNS (3), /* int load */
++  COSTS_N_INSNS (3), /* int signed load */
++  COSTS_N_INSNS (3), /* int zeroed load */
++  COSTS_N_INSNS (3), /* float load */
++  COSTS_N_INSNS (6), /* fmov, fneg, fabs */
++  COSTS_N_INSNS (6), /* fadd, fsub */
++  COSTS_N_INSNS (6), /* fcmp */
++  COSTS_N_INSNS (6), /* fmov, fmovr */
++  COSTS_N_INSNS (6), /* fmul */
++  COSTS_N_INSNS (19), /* fdivs */
++  COSTS_N_INSNS (33), /* fdivd */
++  COSTS_N_INSNS (19), /* fsqrts */
++  COSTS_N_INSNS (33), /* fsqrtd */
++  COSTS_N_INSNS (5), /* imul */
++  COSTS_N_INSNS (5), /* imulX */
++  0, /* imul bit factor */
++  COSTS_N_INSNS (31), /* idiv, average of 12 - 41 cycle range */
++  COSTS_N_INSNS (31), /* idivX, average of 12 - 41 cycle range */
++  COSTS_N_INSNS (1), /* movcc/movr */
++  0, /* shift penalty */
++};
++
+ const struct processor_costs *sparc_costs = &cypress_costs;
+ 
+ #ifdef HAVE_AS_RELAX_OPTION
+@@ -621,6 +645,7 @@ sparc_override_options (void)
+     { TARGET_CPU_ultrasparc, "ultrasparc" },
+     { TARGET_CPU_ultrasparc3, "ultrasparc3" },
+     { TARGET_CPU_niagara, "niagara" },
++    { TARGET_CPU_niagara2, "niagara2" },
+     { 0, 0 }
+   };
+   const struct cpu_default *def;
+@@ -658,6 +683,7 @@ sparc_override_options (void)
+     { "ultrasparc3", PROCESSOR_ULTRASPARC3, MASK_ISA, MASK_V9|MASK_DEPRECATED_V8_INSNS},
+     /* UltraSPARC T1 */
+     { "niagara", PROCESSOR_NIAGARA, MASK_ISA, MASK_V9|MASK_DEPRECATED_V8_INSNS},
++    { "niagara2", PROCESSOR_NIAGARA, MASK_ISA, MASK_V9},
+     { 0, 0, 0, 0 }
+   };
+   const struct cpu_table *cpu;
+@@ -768,7 +794,8 @@ sparc_override_options (void)
+   if (align_functions == 0
+       && (sparc_cpu == PROCESSOR_ULTRASPARC
+ 	  || sparc_cpu == PROCESSOR_ULTRASPARC3
+-	  || sparc_cpu == PROCESSOR_NIAGARA))
++	  || sparc_cpu == PROCESSOR_NIAGARA
++	  || sparc_cpu == PROCESSOR_NIAGARA2))
+     align_functions = 32;
+ 
+   /* Validate PCC_STRUCT_RETURN.  */
+@@ -820,6 +847,9 @@ sparc_override_options (void)
+     case PROCESSOR_NIAGARA:
+       sparc_costs = &niagara_costs;
+       break;
++    case PROCESSOR_NIAGARA2:
++      sparc_costs = &niagara2_costs;
++      break;
+     };
+ 
+ #ifdef TARGET_DEFAULT_LONG_DOUBLE_128
+@@ -7179,7 +7209,8 @@ sparc_initialize_trampoline (rtx tramp, 
+   emit_insn (gen_flush (validize_mem (gen_rtx_MEM (SImode, tramp))));
+   if (sparc_cpu != PROCESSOR_ULTRASPARC
+       && sparc_cpu != PROCESSOR_ULTRASPARC3
+-      && sparc_cpu != PROCESSOR_NIAGARA)
++      && sparc_cpu != PROCESSOR_NIAGARA
++      && sparc_cpu != PROCESSOR_NIAGARA2)
+     emit_insn (gen_flush (validize_mem (gen_rtx_MEM (SImode,
+ 						     plus_constant (tramp, 8)))));
+ 
+@@ -7222,7 +7253,8 @@ sparc64_initialize_trampoline (rtx tramp
+ 
+   if (sparc_cpu != PROCESSOR_ULTRASPARC
+       && sparc_cpu != PROCESSOR_ULTRASPARC3
+-      && sparc_cpu != PROCESSOR_NIAGARA)
++      && sparc_cpu != PROCESSOR_NIAGARA
++      && sparc_cpu != PROCESSOR_NIAGARA2)
+     emit_insn (gen_flushdi (validize_mem (gen_rtx_MEM (DImode, plus_constant (tramp, 8)))));
+ 
+   /* Call __enable_execute_stack after writing onto the stack to make sure
+@@ -7402,7 +7434,8 @@ sparc_sched_init (FILE *dump ATTRIBUTE_U
+ static int
+ sparc_use_sched_lookahead (void)
+ {
+-  if (sparc_cpu == PROCESSOR_NIAGARA)
++  if (sparc_cpu == PROCESSOR_NIAGARA
++      || sparc_cpu == PROCESSOR_NIAGARA2)
+     return 0;
+   if (sparc_cpu == PROCESSOR_ULTRASPARC
+       || sparc_cpu == PROCESSOR_ULTRASPARC3)
+@@ -7420,6 +7453,7 @@ sparc_issue_rate (void)
+   switch (sparc_cpu)
+     {
+     case PROCESSOR_NIAGARA:
++    case PROCESSOR_NIAGARA2:
+     default:
+       return 1;
+     case PROCESSOR_V9:
+--- gcc/config/sparc/sparc.h.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config/sparc/sparc.h	2007-09-26 17:52:35.000000000 -0700
+@@ -205,7 +205,8 @@ extern enum cmodel sparc_cmodel;
+    which requires the following macro to be true if enabled.  Prior to V9,
+    there are no instructions to even talk about memory synchronization.
+    Note that the UltraSPARC III processors don't implement RMO, unlike the
+-   UltraSPARC II processors.  Niagara does not implement RMO either.
++   UltraSPARC II processors.  Niagara and Niagara-2 do not implement RMO
++   either.
+ 
+    Default to false; for example, Solaris never enables RMO, only ever uses
+    total memory ordering (TMO).  */
+@@ -238,11 +239,13 @@ extern enum cmodel sparc_cmodel;
+ #define TARGET_CPU_ultrasparc	8
+ #define TARGET_CPU_ultrasparc3	9
+ #define TARGET_CPU_niagara	10
++#define TARGET_CPU_niagara2	11
+ 
+ #if TARGET_CPU_DEFAULT == TARGET_CPU_v9 \
+  || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc \
+  || TARGET_CPU_DEFAULT == TARGET_CPU_ultrasparc3 \
+- || TARGET_CPU_DEFAULT == TARGET_CPU_niagara
++ || TARGET_CPU_DEFAULT == TARGET_CPU_niagara \
++ || TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
+ 
+ #define CPP_CPU32_DEFAULT_SPEC ""
+ #define ASM_CPU32_DEFAULT_SPEC ""
+@@ -267,6 +270,10 @@ extern enum cmodel sparc_cmodel;
+ #define CPP_CPU64_DEFAULT_SPEC "-D__sparc_v9__"
+ #define ASM_CPU64_DEFAULT_SPEC "-Av9b"
+ #endif
++#if TARGET_CPU_DEFAULT == TARGET_CPU_niagara2
++#define CPP_CPU64_DEFAULT_SPEC "-D__sparc_v9__"
++#define ASM_CPU64_DEFAULT_SPEC "-Av9b"
++#endif
+ 
+ #else
+ 
+@@ -358,6 +365,7 @@ extern enum cmodel sparc_cmodel;
+ %{mcpu=ultrasparc:-D__sparc_v9__} \
+ %{mcpu=ultrasparc3:-D__sparc_v9__} \
+ %{mcpu=niagara:-D__sparc_v9__} \
++%{mcpu=niagara2:-D__sparc_v9__} \
+ %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(cpp_cpu_default)}}}}}}} \
+ "
+ #define CPP_ARCH32_SPEC ""
+@@ -408,6 +416,7 @@ extern enum cmodel sparc_cmodel;
+ %{mcpu=ultrasparc:%{!mv8plus:-Av9a}} \
+ %{mcpu=ultrasparc3:%{!mv8plus:-Av9b}} \
+ %{mcpu=niagara:%{!mv8plus:-Av9b}} \
++%{mcpu=niagara2:%{!mv8plus:-Av9b}} \
+ %{!mcpu*:%{!mcypress:%{!msparclite:%{!mf930:%{!mf934:%{!mv8:%{!msupersparc:%(asm_cpu_default)}}}}}}} \
+ "
+ 
+@@ -532,7 +541,8 @@ enum processor_type {
+   PROCESSOR_V9,
+   PROCESSOR_ULTRASPARC,
+   PROCESSOR_ULTRASPARC3,
+-  PROCESSOR_NIAGARA
++  PROCESSOR_NIAGARA,
++  PROCESSOR_NIAGARA2
+ };
+ 
+ /* This is set from -m{cpu,tune}=xxx.  */
+@@ -2150,7 +2160,8 @@ do {                                    
+     || (CLASS1) == FPCC_REGS || (CLASS2) == FPCC_REGS)		\
+    ? ((sparc_cpu == PROCESSOR_ULTRASPARC \
+        || sparc_cpu == PROCESSOR_ULTRASPARC3 \
+-       || sparc_cpu == PROCESSOR_NIAGARA) ? 12 : 6) : 2)
++       || sparc_cpu == PROCESSOR_NIAGARA \
++       || sparc_cpu == PROCESSOR_NIAGARA2) ? 12 : 6) : 2)
+ 
+ /* Provide the cost of a branch.  For pre-v9 processors we use
+    a value of 3 to take into account the potential annulling of
+@@ -2163,7 +2174,10 @@ do {                                    
+    mispredicted branch.
+ 
+    On Niagara, normal branches insert 3 bubbles into the pipe
+-   and annulled branches insert 4 bubbles.  */
++   and annulled branches insert 4 bubbles.
++
++   On Niagara-2, a not-taken branch costs 1 cycle whereas a taken
++   branch costs 6 cycles.  */
+ 
+ #define BRANCH_COST \
+ 	((sparc_cpu == PROCESSOR_V9 \
+@@ -2173,17 +2187,21 @@ do {                                    
+             ? 9 \
+ 	 : (sparc_cpu == PROCESSOR_NIAGARA \
+ 	    ? 4 \
+-	 : 3)))
++	 : (sparc_cpu == PROCESSOR_NIAGARA2 \
++	    ? 5 \
++	 : 3))))
+ 
+ #define PREFETCH_BLOCK \
+ 	((sparc_cpu == PROCESSOR_ULTRASPARC \
+           || sparc_cpu == PROCESSOR_ULTRASPARC3 \
+-	  || sparc_cpu == PROCESSOR_NIAGARA) \
++	  || sparc_cpu == PROCESSOR_NIAGARA \
++	  || sparc_cpu == PROCESSOR_NIAGARA2) \
+          ? 64 : 32)
+ 
+ #define SIMULTANEOUS_PREFETCHES \
+ 	((sparc_cpu == PROCESSOR_ULTRASPARC \
+-	  || sparc_cpu == PROCESSOR_NIAGARA) \
++	  || sparc_cpu == PROCESSOR_NIAGARA \
++	  || sparc_cpu == PROCESSOR_NIAGARA2) \
+          ? 2 \
+          : (sparc_cpu == PROCESSOR_ULTRASPARC3 \
+             ? 8 : 3))
+--- gcc/config/sparc/sparc.md.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/config/sparc/sparc.md	2007-09-26 17:52:35.000000000 -0700
+@@ -94,7 +94,8 @@
+    v9,
+    ultrasparc,
+    ultrasparc3,
+-   niagara"
++   niagara,
++   niagara2"
+   (const (symbol_ref "sparc_cpu_attr")))
+ 
+ ;; Attribute for the instruction set.
+@@ -316,6 +317,7 @@
+ (include "ultra1_2.md")
+ (include "ultra3.md")
+ (include "niagara.md")
++(include "niagara2.md")
+ 
+ 
+ ;; Operand and operator predicates.
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-subdir.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-subdir.dpatch
@@ -0,0 +1,246 @@
+#! /bin/sh -e
+
+# DP: - Set the libjava sublibdir to /usr/lib/gcj-4.2
+# DP: - Set the default libgcj database dir to /var/lib/gcj-4.2
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	cd ${dir}libjava && aclocal -I ../config -I .. -I . && autoconf -I ../config -I .. -I .
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+	rm -f ${dir}libjava/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/java/Make-lang.in.orig	2007-09-06 21:19:09.582719152 +0200
++++ gcc/java/Make-lang.in	2007-09-06 21:20:32.543970604 +0200
+@@ -313,12 +313,13 @@
+ 	$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ZLIBINC) \
+ 		$(srcdir)/java/jcf-io.c $(OUTPUT_OPTION)
+ 
++short_version := $(shell echo $(version) | sed -r 's/([0-9]+\.[0-9]+).*/\1/')
+ # jcf-path.o needs a -D.
+ java/jcf-path.o: java/jcf-path.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
+   java/jcf.h
+ 	$(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
+-	  -DLIBGCJ_ZIP_FILE='"$(datadir)/java/libgcj-$(version).jar"' \
+-	  -DDEFAULT_TARGET_VERSION=\"$(version)\" \
++	  -DLIBGCJ_ZIP_FILE='"$(datadir)/java/libgcj-$(short_version).jar"' \
++	  -DDEFAULT_TARGET_VERSION=\"$(short_version)\" \
+ 	  $(srcdir)/java/jcf-path.c $(OUTPUT_OPTION)
+ 
+ TEXI_JAVA_FILES = java/gcj.texi $(gcc_docdir)/include/fdl.texi		\
+--- libjava/classpath/configure.ac.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/classpath/configure.ac	2008-01-13 17:10:09.000000000 +0100
+@@ -301,7 +301,7 @@
+ 	     nativeexeclibdir=${withval}
+ 	    ],
+ 	    [
+-	     nativeexeclibdir='${toolexeclibdir}/gcj-'`cat ${srcdir}/../../gcc/BASE-VER`-`awk -F: '/^[[^#]].*:/ { print $1 }' ${srcdir}/../libtool-version`
++	     nativeexeclibdir='${toolexeclibdir}/gcj-'`sed -r 's/([[0-9]]+\.[[0-9]]+).*/\1/' ${srcdir}/../../gcc/BASE-VER`-`awk -F: '/^[[^#]].*:/ { print $1 }' ${srcdir}/../libtool-version`
+ 	    ])
+ 
+ AC_SUBST(nativeexeclibdir)
+--- libjava/classpath/configure.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/classpath/configure	2008-01-13 17:10:09.000000000 +0100
+@@ -4617,7 +4617,7 @@
+ 
+ else
+ 
+-	     nativeexeclibdir='${toolexeclibdir}/gcj-'`cat ${srcdir}/../../gcc/BASE-VER`-`awk -F: '/^[^#].*:/ { print $1 }' ${srcdir}/../libtool-version`
++	     nativeexeclibdir='${toolexeclibdir}/gcj-'`sed -r 's/([0-9]+\.[0-9]+).*/\1/' ${srcdir}/../../gcc/BASE-VER`-`awk -F: '/^[^#].*:/ { print $1 }' ${srcdir}/../libtool-version`
+ 
+ fi;
+ 
+--- libjava/testsuite/lib/libjava.exp.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/testsuite/lib/libjava.exp	2008-01-13 17:10:09.000000000 +0100
+@@ -169,6 +169,7 @@
+     set text [eval exec "$GCJ_UNDER_TEST -B$specdir -v 2>@ stdout"]
+     regexp " version \[^\n\r\]*" $text version
+     set libjava_version [lindex $version 1]
++    set libjava_version "4.2"
+ 
+     verbose "version: $libjava_version"
+ 
+--- libjava/testsuite/Makefile.am.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/testsuite/Makefile.am	2008-01-13 17:10:09.000000000 +0100
+@@ -4,6 +4,7 @@
+ 
+ # May be used by various substitution variables.
+ gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
++gcc_short_version := $(shell sed -r 's/([0-9]+\.[0-9]+).*/\1/' $(top_srcdir)/../gcc/BASE-VER)
+ 
+ # autoconf2.13's target_alias
+ target_noncanonical = @target_noncanonical@
+@@ -59,11 +60,11 @@
+ 	  rm -rf $$testtmpdir; $(mkdir_p) $$testtmpdir; \
+ 	  if test -n "$$testdep"; then \
+ 	    $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+-	      $(top_builddir)/libgcj-$(gcc_version).jar::$$testtmpdir \
++	      $(top_builddir)/libgcj-$(gcc_short_version).jar::$$testtmpdir \
+ 	      -d $$testtmpdir $(srcdir)/$$testdep || exit; \
+ 	  fi; \
+ 	  $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+-	    $(top_builddir)/libgcj-$(gcc_version).jar:$$testtmpdir \
++	    $(top_builddir)/libgcj-$(gcc_short_version).jar:$$testtmpdir \
+ 	    -d $$testtmpdir $(srcdir)/$$test || exit; \
+ 	  case "$$test" in \
+ 	    libjava.loader/dummy.java) \
+@@ -75,7 +76,7 @@
+ 	  esac; \
+ 	  if test -n "$$genheader"; then \
+ 	    $(MYGCJH) $$genheader $$testtmpdir/*.class \
+-	      -bootclasspath $(top_builddir)/libgcj-$(gcc_version).jar \
++	      -bootclasspath $(top_builddir)/libgcj-$(gcc_short_version).jar \
+ 	      -d $$testtmpdir/ || exit; \
+ 	    mv $$testtmpdir/*.h $(srcdir)/`dirname $$test`/ 2>/dev/null; \
+ 	  fi; \
+--- libjava/testsuite/Makefile.in.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/testsuite/Makefile.in	2008-01-13 17:10:09.000000000 +0100
+@@ -320,6 +320,7 @@
+ 
+ # May be used by various substitution variables.
+ gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
++gcc_short_version := $(shell sed -r 's/([0-9]+\.[0-9]+).*/\1/' $(top_srcdir)/../gcc/BASE-VER)
+ 
+ # Setup the testing framework, if you have one
+ EXPECT = `if [ -f $(top_builddir)/../expect/expect ] ; then \
+@@ -569,11 +570,11 @@
+ @JAVA_MAINTAINER_MODE_TRUE@	  rm -rf $$testtmpdir; $(mkdir_p) $$testtmpdir; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  if test -n "$$testdep"; then \
+ @JAVA_MAINTAINER_MODE_TRUE@	    $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+-@JAVA_MAINTAINER_MODE_TRUE@	      $(top_builddir)/libgcj-$(gcc_version).jar::$$testtmpdir \
++@JAVA_MAINTAINER_MODE_TRUE@	      $(top_builddir)/libgcj-$(gcc_short_version).jar::$$testtmpdir \
+ @JAVA_MAINTAINER_MODE_TRUE@	      -d $$testtmpdir $(srcdir)/$$testdep || exit; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  fi; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+-@JAVA_MAINTAINER_MODE_TRUE@	    $(top_builddir)/libgcj-$(gcc_version).jar:$$testtmpdir \
++@JAVA_MAINTAINER_MODE_TRUE@	    $(top_builddir)/libgcj-$(gcc_short_version).jar:$$testtmpdir \
+ @JAVA_MAINTAINER_MODE_TRUE@	    -d $$testtmpdir $(srcdir)/$$test || exit; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  case "$$test" in \
+ @JAVA_MAINTAINER_MODE_TRUE@	    libjava.loader/dummy.java) \
+@@ -585,7 +586,7 @@
+ @JAVA_MAINTAINER_MODE_TRUE@	  esac; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  if test -n "$$genheader"; then \
+ @JAVA_MAINTAINER_MODE_TRUE@	    $(MYGCJH) $$genheader $$testtmpdir/*.class \
+-@JAVA_MAINTAINER_MODE_TRUE@	      -bootclasspath $(top_builddir)/libgcj-$(gcc_version).jar \
++@JAVA_MAINTAINER_MODE_TRUE@	      -bootclasspath $(top_builddir)/libgcj-$(gcc_short_version).jar \
+ @JAVA_MAINTAINER_MODE_TRUE@	      -d $$testtmpdir/ || exit; \
+ @JAVA_MAINTAINER_MODE_TRUE@	    mv $$testtmpdir/*.h $(srcdir)/`dirname $$test`/ 2>/dev/null; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  fi; \
+--- libjava/Makefile.am.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/Makefile.am	2008-01-13 17:10:53.000000000 +0100
+@@ -5,7 +5,8 @@
+ ACLOCAL_AMFLAGS = -I . -I .. -I ../config
+ 
+ # May be used by various substitution variables.
+-gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
++gcc_full_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
++gcc_version := $(shell sed -r 's/([0-9]+\.[0-9]+).*/\1/' $(top_srcdir)/../gcc/BASE-VER)
+ 
+ SUBDIRS = $(DIRLTDL) gcj include classpath
+ if TESTSUBDIR
+@@ -27,9 +28,9 @@
+ target_noncanonical = @target_noncanonical@
+ 
+ # This is required by TL_AC_GXX_INCLUDE_DIR.
+-libsubdir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)
++libsubdir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_full_version)
+ 
+-libexecsubdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
++libexecsubdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_full_version)
+ 
+ ##
+ ## What gets installed, and where.
+@@ -141,7 +142,7 @@
+ 	-DGCJ_VERSIONED_LIBDIR="\"$(dbexecdir)\"" \
+ 	-DPATH_SEPARATOR="\"$(CLASSPATH_SEPARATOR)\"" \
+ 	-DECJ_JAR_FILE="\"$(ECJ_JAR)\"" \
+-	-DLIBGCJ_DEFAULT_DATABASE="\"$(dbexecdir)/$(db_name)\"" \
++	-DLIBGCJ_DEFAULT_DATABASE="\"/var/lib/gcj-4.2/$(db_name)\"" \
+ 	-DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL="\"$(db_pathtail)\""
+ 
+ AM_GCJFLAGS = \
+--- libjava/Makefile.in.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/Makefile.in	2008-01-13 17:11:23.000000000 +0100
+@@ -806,7 +806,8 @@
+ ACLOCAL_AMFLAGS = -I . -I .. -I ../config
+ 
+ # May be used by various substitution variables.
+-gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
++gcc_full_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
++gcc_version := $(shell sed -r 's/([0-9]+\.[0-9]+).*/\1/' $(top_srcdir)/../gcc/BASE-VER)
+ SUBDIRS = $(DIRLTDL) gcj include classpath $(am__append_1)
+ 
+ # write_entries_to_file - writes each entry in a list
+@@ -819,8 +820,8 @@
+ write_entries_to_file = $(shell rm -f $(2) || :) $(shell touch $(2)) $(foreach object,$(1),$(shell echo $(object) >> $(2)))
+ 
+ # This is required by TL_AC_GXX_INCLUDE_DIR.
+-libsubdir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_version)
+-libexecsubdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_version)
++libsubdir = $(libdir)/gcc/$(target_noncanonical)/$(gcc_full_version)
++libexecsubdir = $(libexecdir)/gcc/$(target_noncanonical)/$(gcc_full_version)
+ toolexeclib_LTLIBRARIES = libgcj.la libgij.la libgcj-tools.la \
+ 	$(am__append_2) $(am__append_3)
+ toolexecmainlib_DATA = libgcj.spec
+@@ -865,7 +866,7 @@
+ 	-DGCJ_VERSIONED_LIBDIR="\"$(dbexecdir)\"" \
+ 	-DPATH_SEPARATOR="\"$(CLASSPATH_SEPARATOR)\"" \
+ 	-DECJ_JAR_FILE="\"$(ECJ_JAR)\"" \
+-	-DLIBGCJ_DEFAULT_DATABASE="\"$(dbexecdir)/$(db_name)\"" \
++	-DLIBGCJ_DEFAULT_DATABASE="\"/var/lib/gcj-4.2/$(db_name)\"" \
+ 	-DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL="\"$(db_pathtail)\""
+ 
+ AM_GCJFLAGS = \
+--- libjava/configure.ac.orig	2008-01-13 17:09:53.000000000 +0100
++++ libjava/configure.ac	2008-01-13 17:10:09.000000000 +0100
+@@ -511,6 +511,9 @@
+   AS_HELP_STRING([--with-java-home=DIRECTORY],
+                  [value of java.home system property]),
+ 		 [JAVA_HOME="${withval}"], [JAVA_HOME=""])
++if test -n "$with_multisubdir"; then
++  JAVA_HOME=`echo $JAVA_HOME | sed "s,/usr/lib/,/usr/lib$with_multisubdir/,"`
++fi
+ AM_CONDITIONAL(JAVA_HOME_SET, test ! -z "$JAVA_HOME")
+ AC_SUBST(JAVA_HOME)
+ 
+@@ -1385,6 +1388,7 @@
+     multi_os_directory=`$CC -print-multi-os-directory`
+     case $multi_os_directory in
+       .) toolexeclibdir=$toolexecmainlibdir ;; # Avoid trailing /.
++      ../lib*) toolexeclibdir='$(subst /lib/../lib,/lib,'$toolexecmainlibdir/$multi_os_directory')' ;;
+       *) toolexeclibdir=$toolexecmainlibdir/$multi_os_directory ;;
+     esac
+     ;;
+@@ -1395,6 +1399,7 @@
+ 
+ # Determine gcj and libgcj version number.
+ gcjversion=`cat "$srcdir/../gcc/BASE-VER"`
++short_version=`sed -r 's/([[0-9]]+\.[[0-9]]+).*/\1/' $srcdir/../gcc/BASE-VER`
+ libgcj_soversion=`awk -F: '/^[[^#]].*:/ { print $1 }' $srcdir/libtool-version`
+ GCJVERSION=$gcjversion
+ AC_SUBST(GCJVERSION)
+@@ -1402,7 +1407,7 @@
+ 
+ # Determine where the standard .db file and GNU Classpath JNI
+ # libraries are found.
+-gcjsubdir=gcj-$gcjversion-$libgcj_soversion
++gcjsubdir=gcj-$short_version-$libgcj_soversion
+ multi_os_directory=`$CC -print-multi-os-directory`
+ case $multi_os_directory in
+   .)
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-jar.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-jar.dpatch
@@ -0,0 +1,227 @@
+#! /bin/sh -e
+
+# DP: gjar: support @ arguments.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	uudecode $0
+	tar -xv -f jar-main-classes.tar.bz2 -C ${dir}libjava
+	rm -f jar-main-classes.tar.bz2*
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+From: Christian Thalinger <twisti@complang.tuwien.ac.at>
+
+While building OpenJDK b16 I noticed that jar does not support @
+arguments.  OpenJDK e.g. uses it to import the binary plug files.
+
+This patch adds support for @filelist, where the file filelist may only
+contain files and not options, as the spec says.
+
+Index: libjava/classpath/tools/gnu/classpath/tools/jar/Main.java
+===================================================================
+RCS file: /cvsroot/classpath/classpath/tools/gnu/classpath/tools/jar/Main.java,v
+retrieving revision 1.9
+diff -u -3 -p -r1.9 Main.java
+--- libjava/classpath/tools/gnu/classpath/tools/jar/Main.java     31 Jan 2007 17:05:34 -0000     1.9
++++ libjava/classpath/tools/gnu/classpath/tools/jar/Main.java     23 Jul 2007 18:31:19 -0000
+@@ -47,6 +47,8 @@ import gnu.classpath.tools.getopt.Parser
+ 
+ import java.io.BufferedReader;
+ import java.io.File;
++import java.io.FileNotFoundException;
++import java.io.FileReader;
+ import java.io.InputStreamReader;
+ import java.io.IOException;
+ import java.text.MessageFormat;
+@@ -102,14 +104,51 @@ public class Main
+     public void notifyFile(String fileArgument)
+     {
+       Entry entry;
++
++      if (fileArgument.charAt(0) == '@')
++        {
++          BufferedReader br = null;
++          String filename;
++
++          try
++            {
++              br =
++                new BufferedReader(new FileReader(fileArgument.substring(1)));
++            }
++          catch (FileNotFoundException fnfe)
++            {
++              System.err.println(fnfe);
++              System.exit(1);
++            }
++
++          try
++            {
++              while ((filename = br.readLine()) != null)
++                addEntry(filename);
++            }
++          catch (IOException ioe)
++            {
++              ioe.printStackTrace();
++            }
++        }
++      else
++        {
++          addEntry(fileArgument);
++        }
++    }
++
++    private final void addEntry(String filename)
++    {
++      Entry entry;
++
+       if (changedDirectory != null)
+         {
+-          entry = new Entry(new File(changedDirectory, fileArgument),
+-                            fileArgument);
++          entry = new Entry(new File(changedDirectory, filename),
++                            filename);
+           changedDirectory = null;
+         }
+       else
+-        entry = new Entry(new File(fileArgument));
++        entry = new Entry(new File(filename));
+       entries.add(entry);
+     }
+   }
+
+
+begin-base64 644 jar-main-classes.tar.bz2

+bRjmandQWPSGJJY/Y4gC5ZRiEXiQ17x/4u5IpwoSDcH1+IA=
+====
--- gcj-4.2-4.2.4.orig/debian/patches/sparc-niagara2-doc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/sparc-niagara2-doc.dpatch
@@ -0,0 +1,66 @@
+#! /bin/sh -e
+
+# DP: Add niagara2 optimization support
+
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+
+exit 0
+
+--- gcc/doc/invoke.texi.~1~	2007-09-26 17:51:32.000000000 -0700
++++ gcc/doc/invoke.texi	2007-09-26 17:52:35.000000000 -0700
+@@ -12683,7 +12683,7 @@ for machine type @var{cpu_type}.  Suppor
+ @samp{v7}, @samp{cypress}, @samp{v8}, @samp{supersparc}, @samp{sparclite},
+ @samp{f930}, @samp{f934}, @samp{hypersparc}, @samp{sparclite86x},
+ @samp{sparclet}, @samp{tsc701}, @samp{v9}, @samp{ultrasparc},
+-@samp{ultrasparc3}, and @samp{niagara}.
++@samp{ultrasparc3}, @samp{niagara} and @samp{niagara2}.
+ 
+ Default instruction scheduling parameters are used for values that select
+ an architecture and not an implementation.  These are @samp{v7}, @samp{v8},
+@@ -12697,7 +12697,7 @@ implementations.
+     v8:             supersparc, hypersparc
+     sparclite:      f930, f934, sparclite86x
+     sparclet:       tsc701
+-    v9:             ultrasparc, ultrasparc3, niagara
++    v9:             ultrasparc, ultrasparc3, niagara, niagara2
+ @end smallexample
+ 
+ By default (unless configured otherwise), GCC generates code for the V7
+@@ -12735,7 +12735,8 @@ optimizes it for the Sun UltraSPARC I/II
+ @option{-mcpu=ultrasparc3}, the compiler additionally optimizes it for the
+ Sun UltraSPARC III/III+/IIIi/IIIi+/IV/IV+ chips.  With
+ @option{-mcpu=niagara}, the compiler additionally optimizes it for
+-Sun UltraSPARC T1 chips.
++Sun UltraSPARC T1 chips.  With @option{-mcpu=niagara2}, the compiler
++additionally optimizes it for Sun UltraSPARC T2 chips.
+ 
+ @item -mtune=@var{cpu_type}
+ @opindex mtune
+@@ -12748,7 +12749,7 @@ The same values for @option{-mcpu=@var{c
+ that select a particular cpu implementation.  Those are @samp{cypress},
+ @samp{supersparc}, @samp{hypersparc}, @samp{f930}, @samp{f934},
+ @samp{sparclite86x}, @samp{tsc701}, @samp{ultrasparc},
+-@samp{ultrasparc3}, and @samp{niagara}.
++@samp{ultrasparc3}, @samp{niagara}, and @samp{niagara2}.
+ 
+ @item -mv8plus
+ @itemx -mno-v8plus
--- gcj-4.2-4.2.4.orig/debian/patches/reporting.dpatch
+++ gcj-4.2-4.2.4/debian/patches/reporting.dpatch
@@ -0,0 +1,122 @@
+#! /bin/sh -e
+
+# DP: Add Debian URL for bug reporting instructions.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir=$3/
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	if grep -q debian_bug_report_url ${dir}gcc/version.c; then
+	  :
+	else
+	  echo 'const char debian_bug_report_url[] = "<URL:file:///usr/share/doc/gcc-4.2/README.Bugs>";' >> ${dir}gcc/version.c
+	fi
+	;;
+    -unpatch)
+	grep -v debian_bug_report_url ${dir}gcc/version.c > ${dir}gcc/version.c.new
+	${dir}move-if-change ${dir}gcc/version.c.new ${dir}gcc/version.c
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1
+esac
+exit 0
+
+--- gcc/java/jcf-dump.c.old	2006-04-02 00:23:43.052345288 +0200
++++ gcc/java/jcf-dump.c	2006-04-02 00:24:17.571097640 +0200
+@@ -921,6 +921,8 @@
+   printf ("\n");
+   printf (_("For bug reporting instructions, please see:\n"
+ 	    "%s.\n"), bug_report_url);
++  printf (_("For Debian GNU/Linux specific bug reporting instructions, please see:\n"
++	    "%s.\n"), debian_bug_report_url);
+   exit (0);
+ }
+ 
+--- gcc/diagnostic.c.old	2006-04-02 00:23:43.053345136 +0200
++++ gcc/diagnostic.c	2006-04-02 00:27:15.732013064 +0200
+@@ -263,6 +263,8 @@
+       fnotice (stderr, "Please submit a full bug report,\n"
+ 	       "with preprocessed source if appropriate.\n"
+ 	       "See %s for instructions.\n", bug_report_url);
++      fnotice (stderr, "For Debian GNU/Linux specific bug reporting instructions,\n"
++	       "see %s.\n", debian_bug_report_url);
+       exit (ICE_EXIT_CODE);
+ 
+     case DK_FATAL:
+--- gcc/gcc.c.old	2006-04-02 00:23:43.068342856 +0200
++++ gcc/gcc.c	2006-04-02 00:26:35.020202200 +0200
+@@ -3001,9 +3001,11 @@
+ 	      fatal_ice ("\
+ Internal error: %s (program %s)\n\
+ Please submit a full bug report.\n\
+-See %s for instructions.",
++See %s for instructions.\n\
++For Debian GNU/Linux specific bug reporting instructions, see\n\
++%s.\n",
+ 		 	strsignal (WTERMSIG (status)), commands[i].prog,
+-		 	bug_report_url);
++			bug_report_url, debian_bug_report_url);
+ 	  }
+ 	else if (WIFEXITED (status)
+ 		 && WEXITSTATUS (status) >= MIN_FATAL_STATUS)
+@@ -6421,6 +6423,8 @@
+ 	{
+ 	  printf (_("\nFor bug reporting instructions, please see:\n"));
+ 	  printf ("%s.\n", bug_report_url);
++	  printf ("For Debian GNU/Linux specific bug reporting instructions, please see:\n");
++	  printf ("%s.\n", debian_bug_report_url);
+ 
+ 	  return (0);
+ 	}
+@@ -6713,6 +6717,8 @@
+     {
+       printf (("\nFor bug reporting instructions, please see:\n"));
+       printf ("%s\n", bug_report_url);
++      printf ("For Debian GNU/Linux specific bug reporting instructions, please see:\n");
++      printf ("%s\n", debian_bug_report_url);
+     }
+ 
+   return (signal_count != 0 ? 2
+--- gcc/gccbug.in.old	2006-04-02 00:23:43.069342704 +0200
++++ gcc/gccbug.in	2006-04-02 00:24:17.588095056 +0200
+@@ -25,10 +25,10 @@
+ VERSION=3.113
+ 
+ # The submitter-id for your site.
+-SUBMITTER=net
++SUBMITTER=net # net-debian
+ 
+ # The default mail address for PR submissions. 
+-GNATS_ADDR=gcc-gnats@gcc.gnu.org
++GNATS_ADDR="gcc-gnats@gcc.gnu.org,debian-gcc@lists.debian.org"
+ 
+ # The default release for this host.
+ # We have to guess at what program_transform_name might have done.
+--- gcc/gcov.c.old	2006-04-02 00:23:43.070342552 +0200
++++ gcc/gcov.c	2006-04-02 00:24:17.589094904 +0200
+@@ -402,6 +402,8 @@
+   fnotice (file, "  -u, --unconditional-branches    Show unconditional branch counts too\n");
+   fnotice (file, "\nFor bug reporting instructions, please see:\n%s.\n",
+ 	   bug_report_url);
++  fnotice (file, "\nFor Debian GNU/Linux specific bug reporting instructions, please see:\n%s.\n",
++	   debian_bug_report_url);
+   exit (status);
+ }
+ 
+--- gcc/version.h.old	2006-04-02 00:23:43.071342400 +0200
++++ gcc/version.h	2006-04-02 00:24:17.589094904 +0200
+@@ -2,4 +2,5 @@
+ #define GCC_VERSION_H
+ extern const char version_string[];
+ extern const char bug_report_url[];
++extern const char debian_bug_report_url[];
+ #endif /* ! GCC_VERSION_H */
--- gcj-4.2-4.2.4.orig/debian/patches/netbsd-dynlinker.dpatch
+++ gcj-4.2-4.2.4/debian/patches/netbsd-dynlinker.dpatch
@@ -0,0 +1,47 @@
+#! /bin/sh -e
+ 
+# JB: Dynamic linker patches for netbsd.
+ 
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -ur src.orig/gcc/config/i386/netbsd-elf.h src/gcc/config/i386/netbsd-elf.h
+--- src.orig/gcc/config/i386/netbsd-elf.h	2002-03-01 23:38:15.000000000 +0000
++++ src/gcc/config/i386/netbsd-elf.h	2003-01-21 19:44:46.000000000 +0000
+@@ -35,7 +35,7 @@
+ 	%{!e*:-e __start}}}						\
+     %{!static:								\
+       %{rdynamic:-export-dynamic}					\
+-      %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}}	\
++      %{!dynamic-linker:-dynamic-linker /lib/ld.elf_so}}		\
+     %{static:-static}}"
+ 
+ /* Names to predefine in the preprocessor for this target machine.  */
+diff -ur src.orig/gcc/config/netbsd-elf.h src/gcc/config/netbsd-elf.h
+--- src.orig/gcc/config/netbsd-elf.h	2002-01-22 04:23:02.000000000 +0000
++++ src/gcc/config/netbsd-elf.h	2003-01-21 19:44:27.000000000 +0000
+@@ -72,5 +72,5 @@
+ 	 %{!e*:-e __start}}}						\
+      %{!static:								\
+        %{rdynamic:-export-dynamic}					\
+-       %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.elf_so}}	\
++       %{!dynamic-linker:-dynamic-linker /lib/ld.elf_so}}		\
+      %{static:-static}}"
--- gcj-4.2-4.2.4.orig/debian/patches/i386-biarch.dpatch
+++ gcj-4.2-4.2.4/debian/patches/i386-biarch.dpatch
@@ -0,0 +1,230 @@
+#! /bin/sh -e
+ 
+# DP: biarch patches for i386/x86_64
+ 
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        (cd ${dir}libcpp && autoconf)
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+From: "Joseph S. Myers" <joseph@codesourcery.com>
+Sender: gcc-patches-owner@gcc.gnu.org
+To: gcc-patches@gcc.gnu.org, bkorb@gnu.org
+Subject: Patch to support x86-linux --enable-targets=all
+Date: Sun, 22 Oct 2006 19:57:53 +0000 (UTC)
+
+This patch allows i?86-*-linux* configurations to be built with 64-bit
+support, using the same --enable-targets=all option that enables this
+for powerpc-linux configurations.  (Using this feature needs my recent
+binutils patch
+<http://sourceware.org/ml/binutils/2006-10/msg00156.html>.)
+
+Bootstrapped with no regressions on i686-pc-linux-gnu (without the new
+option) and tested on i686-pc-linux-gnu with the new option.  OK to
+commit?
+
+The fixincludes change is because such biarch configurations have
+wrapper files <asm/*.h> that look something like
+
+#ifndef __ASM_STUB_POSIX_TYPES_H__
+# define __ASM_STUB_POSIX_TYPES_H__
+# if defined __x86_64__
+#  include <asm-x86_64/posix_types.h>
+# endif
+# if defined __i386__
+#  include <asm-i386/posix_types.h>
+# endif
+#endif
+
+and this wrongly matches a fix for an old pre-x86_64 i386
+<asm/posix_types.h> file.
+
+gcc:
+2006-10-22  Joseph Myers  <joseph@codesourcery.com>
+
+	* config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
+	Handle tuning for bi-arch i[34567]86-*-linux* like that for
+	i[34567]86-*-solaris2.1[0-9]*.
+	* config/i386/linux64.h (TARGET_VERSION, MULTILIB_DEFAULTS):
+	Define conditionally depending on TARGET_64BIT_DEFAULT.
+	(SPEC_32, SPEC_64): Define.
+	(LINK_SPEC): Use them.
+	* doc/install.texi (--enable-targets=all): Document for x86-linux.
+
+libcpp:
+2006-10-22  Joseph Myers  <joseph@codesourcery.com>
+
+	* configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*
+	depending on --enable-targets=all.
+	* configure: Regenerate.
+
+fixincludes:
+2006-10-22  Joseph Myers  <joseph@codesourcery.com>
+
+	* inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on x86_64.
+	* fixincl.x: Regenerate.
+
+2006-12-12  Matthias Klose  <doko@debian.org>
+
+        * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
+        flags if not building with -m64.
+        * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
+        flag for i?86-*-* targets, if current target matches -m64.
+
+--- libgomp/configure.tgt.orig	2007-07-04 16:19:19.000000000 +0200
++++ libgomp/configure.tgt	2008-02-25 23:17:21.589254540 +0100
+@@ -49,9 +49,14 @@
+     # Note that bare i386 is not included here.  We need cmpxchg.
+     i[456]86-*-linux*)
+ 	config_path="linux/x86 linux posix"
+-	if test -z "$with_arch"; then
+-	  XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}"
+-	fi
++	case " ${CC} ${CFLAGS} " in
++	  *" -m64 "*)
++	    ;;
++	  *)
++	    if test -z "$with_arch"; then
++	      XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}"
++	    fi
++	esac
+ 	;;
+ 
+     # Similar jiggery-pokery for x86_64 multilibs, except here we
+--- gcc/config/i386/linux64.h.orig	2008-02-25 23:14:33.216714679 +0100
++++ gcc/config/i386/linux64.h	2008-02-25 23:17:21.589254540 +0100
+@@ -18,7 +18,11 @@
+ along with GCC; see the file COPYING3.  If not see
+ <http://www.gnu.org/licenses/>.  */
+ 
++#if TARGET_64BIT_DEFAULT
+ #define TARGET_VERSION fprintf (stderr, " (x86-64 Linux/ELF)");
++#else
++#define TARGET_VERSION fprintf (stderr, " (i386 Linux/ELF)");
++#endif
+ 
+ #define TARGET_OS_CPP_BUILTINS()				\
+   do								\
+@@ -51,14 +55,22 @@
+ #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+ #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+ 
++#if TARGET_64BIT_DEFAULT
++#define SPEC_32 "m32"
++#define SPEC_64 "!m32"
++#else
++#define SPEC_32 "!m64"
++#define SPEC_64 "m64"
++#endif
++
+ #undef	LINK_SPEC
+-#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} --hash-style=both \
++#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} --hash-style=both \
+   %{shared:-shared} \
+   %{!shared: \
+     %{!static: \
+       %{rdynamic:-export-dynamic} \
+-      %{m32:%{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER32 "}} \
+-      %{!m32:%{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}} \
++      %{" SPEC_32 ":%{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER32 "}} \
++      %{" SPEC_64 ":%{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}} \
+     %{static:-static}}"
+ 
+ /* Similar to standard Linux, but adding -ffast-math support.  */
+@@ -67,7 +79,11 @@
+   "%{ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \
+    %{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
+ 
++#if TARGET_64BIT_DEFAULT
+ #define MULTILIB_DEFAULTS { "m64" }
++#else
++#define MULTILIB_DEFAULTS { "m32" }
++#endif
+ 
+ #undef NEED_INDICATE_EXEC_STACK
+ #define NEED_INDICATE_EXEC_STACK 1
+--- gcc/config.gcc.orig	2008-02-25 23:15:02.637158479 +0100
++++ gcc/config.gcc	2008-02-25 23:21:25.132928341 +0100
+@@ -1096,10 +1096,34 @@
+ i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu | i[34567]86-*-knetbsd*-gnu)
+ 			# Intel 80386's running GNU/*
+ 			# with ELF format using glibc 2
+-	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h i386/linux.h"
++	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h"
+ 	case ${target} in
+-	i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h i386/knetbsd-gnu.h" ;;
+-	i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
++	i[34567]86-*-linux*)
++		if test x$enable_targets = xall; then
++			tm_file="${tm_file} i386/x86-64.h i386/linux64.h"
++			tm_defines="${tm_defines} TARGET_BI_ARCH=1"
++			tmake_file="${tmake_file} i386/t-linux64"
++			need_64bit_hwint=yes
++			# FIXME: -m64 for i[34567]86-*-* should be allowed just
++			# like -m32 for x86_64-*-*.
++			case X"${with_cpu}" in
++			Xgeneric|Xnocona|Xx86-64|Xk8|Xopteron|Xathlon64|Xathlon-fx)
++				;;
++			X)
++				with_cpu=generic
++				;;
++			*)
++				echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2
++				echo "generic nocona x86-64 k8 opteron athlon64 athlon-fx" 1>&2
++				exit 1
++				;;
++			esac
++		else
++			tm_file="${tm_file} i386/linux.h"
++		fi
++		;;
++	i[34567]86-*-knetbsd*-gnu) tm_file="${tm_file} i386/linux.h knetbsd-gnu.h i386/knetbsd-gnu.h" ;;
++	i[34567]86-*-kfreebsd*-gnu) tm_file="${tm_file} i386/linux.h kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
+ 	esac
+ 	tmake_file="${tmake_file} i386/t-crtstuff i386/t-crtfm t-dfprules"
+ 	;;
+--- libcpp/configure.ac.orig	2007-07-04 16:25:47.000000000 +0200
++++ libcpp/configure.ac	2008-02-25 23:17:21.589254540 +0100
+@@ -130,6 +130,13 @@
+ 	sparc-*-solaris2.[789] | sparc-*-solaris2.1[0-9]* | \
+ 	sh[123456789l]*-*-*)
+ 		need_64bit_hwint=yes ;;
++	i[34567]86-*-linux*)
++		if test "x$enable_targets" = xall; then
++			need_64bit_hwint=yes
++		else
++			need_64bit_hwint=no
++		fi
++		;;
+ 	*)
+ 		need_64bit_hwint=no ;;
+ esac
+--- fixincludes/inclhack.def.orig	2008-02-25 23:14:32.686706684 +0100
++++ fixincludes/inclhack.def	2008-02-25 23:17:21.589254540 +0100
+@@ -140,6 +140,7 @@
+     files    = asm/posix_types.h;
+     mach     = 'i[34567]86-*-linux*';
+     bypass   = '} while';
++    bypass   = 'x86_64';
+ 
+     /*
+      * Define _POSIX_TYPES_H_WRAPPER at the end of the wrapper, not
--- gcj-4.2-4.2.4.orig/debian/patches/alpha-ieee-doc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/alpha-ieee-doc.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+
+# DP: #212912
+# DP: on alpha-linux, make -mieee default and add -mieee-disable switch
+# DP: to turn default off (doc patch)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- src/gcc/doc/invoke.texi~	2005-09-29 20:00:57.638380128 +0200
++++ src/gcc/doc/invoke.texi	2005-09-30 22:23:22.922502992 +0200
+@@ -7670,6 +7670,13 @@
+ values such as not-a-number and plus/minus infinity.  Other Alpha
+ compilers call this option @option{-ieee_with_no_inexact}.
+ 
++DEBIAN SPECIFIC: This option is on by default, unless
++@option{-ffinite-math-only} (which is part of the @option{-ffast-math}
++set) is specified, because the software functions in the GNU libc math
++libraries generate denormalized numbers, NaNs, and infs (all of which
++will cause a programs to SIGFPE when it attempts to use the results without
++@option{-mieee}).
++
+ @item -mieee-with-inexact
+ @opindex mieee-with-inexact
+ This is like @option{-mieee} except the generated code also maintains
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-prevent-qipush.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-prevent-qipush.dpatch
@@ -0,0 +1,48 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: prevent combine from creating a byte push on the stack (invalid on m68k)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.md |    5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -747,7 +747,10 @@
+ (define_insn ""
+   [(set (match_operand:QI 0 "nonimmediate_operand" "=d,*a,m")
+ 	(match_operand:QI 1 "general_src_operand" "dmSi*a,di*a,dmSi"))]
+-  "!TARGET_COLDFIRE"
++  "!TARGET_COLDFIRE
++   && (!MEM_P (operands[0])
++       || GET_CODE (XEXP (operands[0], 0)) != PRE_DEC
++       || XEXP (XEXP (operands[0], 0), 0) != stack_pointer_rtx)"
+   "* return output_move_qimode (operands);")
+ 
+ (define_insn ""
--- gcj-4.2-4.2.4.orig/debian/patches/pr32889.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr32889.dpatch
@@ -0,0 +1,72 @@
+#! /bin/sh -e
+
+# DP: Proposed patch to fix root cause for PR middle-end/32889.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/reload.c	2008-02-18 09:59:15.000000000 -0800
++++ gcc/reload.c	2008-02-18 10:05:47.000000000 -0800
+@@ -4789,7 +4789,7 @@ find_reloads_address (enum machine_mode 
+ 		  find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0),
+ 					&XEXP (tem, 0), opnum,
+ 					ADDR_TYPE (type), ind_levels, insn);
+-		  if (tem != orig)
++	          if (!rtx_equal_p (tem, orig))
+ 		    push_reg_equiv_alt_mem (regno, tem);
+ 		}
+ 	      /* We can avoid a reload if the register's equivalent memory
+@@ -5589,7 +5589,7 @@ find_reloads_address_1 (enum machine_mod
+ 				      RELOAD_OTHER,
+ 				      ind_levels, insn);
+ 
+-		if (tem != orig)
++	        if (!rtx_equal_p (tem, orig))
+ 		  push_reg_equiv_alt_mem (regno, tem);
+ 
+ 		/* Then reload the memory location into a base
+@@ -5656,7 +5656,7 @@ find_reloads_address_1 (enum machine_mod
+ 		  find_reloads_address (GET_MODE (tem), &tem, XEXP (tem, 0),
+ 					&XEXP (tem, 0), opnum, type,
+ 					ind_levels, insn);
+-		  if (tem != orig)
++	          if (!rtx_equal_p (tem, orig))
+ 		    push_reg_equiv_alt_mem (regno, tem);
+ 		  /* Put this inside a new increment-expression.  */
+ 		  x = gen_rtx_fmt_e (GET_CODE (x), GET_MODE (x), tem);
+@@ -5848,7 +5848,7 @@ find_reloads_address_1 (enum machine_mod
+ 		find_reloads_address (GET_MODE (x), &x, XEXP (x, 0),
+ 				      &XEXP (x, 0), opnum, ADDR_TYPE (type),
+ 				      ind_levels, insn);
+-		if (x != tem)
++	        if (!rtx_equal_p (x, tem))
+ 		  push_reg_equiv_alt_mem (regno, x);
+ 	      }
+ 	  }
+@@ -6076,7 +6076,7 @@ find_reloads_subreg_address (rtx x, int 
+ 					       XEXP (tem, 0), &XEXP (tem, 0),
+ 					       opnum, type, ind_levels, insn);
+ 	      /* ??? Do we need to handle nonzero offsets somehow?  */
+-	      if (!offset && tem != orig)
++	      if (!offset && !rtx_equal_p (tem, orig))
+ 		push_reg_equiv_alt_mem (regno, tem);
+ 
+ 	      /* For some processors an address may be valid in the
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-driver-nophobos.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-driver-nophobos.dpatch
@@ -0,0 +1,78 @@
+#! /bin/sh -e
+
+# gdc-nolibphobos-driver.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Modify gdc driver to have no libphobos by default.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+diff -ruN gcc/d/d-lang.cc gcc/d/d-lang.cc
+--- gcc/d/d-lang.cc	2007-09-27 17:33:09.000000000 +0200
++++ gcc/d/d-lang.cc	2007-09-27 17:39:49.000000000 +0200
+@@ -159,7 +159,7 @@
+     global.params.fileImppath = new Array();
+ 
+     // GCC options
+-    flag_exceptions = 1;
++    flag_exceptions = 0;
+ 
+     // extra D-specific options
+     gen.splitDynArrayVarArgs = true;
+diff -ruN gcc/d/dmain.d gcc/d/dmain.d
+--- gcc/d/dmain.d	1970-01-01 01:00:00.000000000 +0100
++++ gcc/d/dmain.d	2007-09-27 20:57:55.000000000 +0200
+@@ -0,0 +1,21 @@
++extern (C) size_t strlen(const char* s);
++extern (C) void* malloc(size_t s);
++
++int main(char[][] args); // U _Dmain
++
++extern (C) int main(int argc, char** argv) {
++	char[][] args;
++	char[] *am;
++	int i;
++
++	am = cast(char[] *) malloc(argc * (char[]).sizeof);
++
++	for(i = 0; i < argc; i++) {
++		am[i] = argv[i][0 .. strlen(argv[i])];
++	}
++
++	args = am[0 .. argc];
++
++	return main(args);
++}
++
+diff -ruN gcc/d/d-spec.c gcc/d/d-spec.c
+--- gcc/d/d-spec.c	2007-09-27 17:34:51.000000000 +0200
++++ gcc/d/d-spec.c	2007-09-28 09:54:34.000000000 +0200
+@@ -82,7 +82,7 @@
+ 
+     /* If nonzero, use the standard D runtime library when linking with
+        stanard libraries. */
+-    int phobos = 1;
++    int phobos = 0;
+ 
+     /* The number of arguments being added to what's in argv, other than
+        libraries.  We use this to track the number of times we've inserted
--- gcj-4.2-4.2.4.orig/debian/patches/svn-class-updates.dpatch
+++ gcj-4.2-4.2.4/debian/patches/svn-class-updates.dpatch
@@ -0,0 +1,55 @@
+#! /bin/sh -e
+
+# DP: updated class files from the 4.2 branch upto 20081008.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	set -x
+	uudecode class-files.tar.bz2.uue
+	tar -xv -f class-files.tar.bz2 -C $dir
+	rm -f class-files.tar.bz2
+        ;;
+    -unpatch)
+	echo "cannot undo patch $(basename $0)"
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+#! /bin/sh
+
+dir=gcc-4_2-ubuntu-branch
+tag=ubuntu/gcc-4_2_4-release
+branch=ubuntu/gcc-4_2-branch
+
+tmplist=files$$
+
+svn diff --summarize \
+        svn://gcc.gnu.org/svn/gcc/tags/$tag \
+        svn://gcc.gnu.org/svn/gcc/branches/$branch \
+    | grep '\.class$' > $tmplist
+
+sed -n '/^[AM].*\.class$/s,.*/'$tag'/\(.*\),\1,p' $tmplist \
+    > neworchanged.list
+sed -n '/^[D].*\.class$/s,.*/'$tag'/\(.*\),\1,p' $tmplist \
+    > removed.list
+sed -n '/^[^ADM].*\.class$/s,.*/'$tag'/\(.*\),\1,p' $tmplist \
+    > unknown.list
+
+echo "new or changed: $(wc -l neworchanged.list | cut '-d ' -f1), removed $(wc -l removed.list | cut '-d ' -f1): , unknown: $(wc -l unknown.list | cut '-d ' -f1)"
+tar -c -j -f class-files.tar.bz2 -C $dir -T neworchanged.list
+uuencode class-files.tar.bz2 class-files.tar.bz2 > class-files.tar.bz2.uue
+
+rm -f $tmplist neworchanged.list removed.list unknown.list
+
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-fix-build.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-fix-build.dpatch
@@ -0,0 +1,343 @@
+#! /bin/sh -e
+
+# gdc-fix-build.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Fix libphobos build on non-biarched 64 bit systems.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/d/dmd/mtype.c	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd/mtype.c	2008-02-04 20:54:17.000000000 +0000
+@@ -247,7 +247,7 @@
+ 
+     tvoidptr = tvoid->pointerTo();
+ 
+-    if (global.params.isX86_64)
++    if (global.params.is64BIT)
+     {
+ 	PTRSIZE = 8;
+ 	if (global.params.isLinux)
+--- gcc/d/dmd/statement.c	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd/statement.c	2008-02-04 20:54:17.000000000 +0000
+@@ -1180,7 +1180,7 @@
+ 		    error("no storage class for key %s", arg->ident->toChars());
+ 		TY keyty = arg->type->ty;
+ 		if ((keyty != Tint32 && keyty != Tuns32) &&
+-		    (! global.params.isX86_64 ||
++		    (! global.params.is64BIT ||
+ 			(keyty != Tint64 && keyty != Tuns64))
+ 		   )
+ 		{
+@@ -1322,7 +1322,7 @@
+ 
+ 	    if (key &&
+ 		((key->type->ty != Tint32 && key->type->ty != Tuns32) &&
+-		 (! global.params.isX86_64 ||
++		 (! global.params.is64BIT ||
+ 		     (key->type->ty != Tint64 && key->type->ty != Tuns64))
+ 	        )
+ 	       )
+--- gcc/d/dmd/mars.h	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd/mars.h	2008-02-04 20:54:17.000000000 +0000
+@@ -54,7 +54,7 @@
+     char symdebug;	// insert debug symbolic information
+     char optimize;	// run optimizer
+     char cpu;		// target CPU
+-    char isX86_64;	// generate X86_64 bit code
++    char is64BIT;	// generate 64 bit code
+     char isLinux;	// generate code for linux
+     char isWindows;	// generate code for Windows
+     char scheduler;	// which scheduler to use
+--- gcc/d/dmd/func.c	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd/func.c	2008-02-04 20:54:17.000000000 +0000
+@@ -2570,7 +2570,7 @@
+     {
+ 	Argument *a = Argument::getNth(tf->parameters, 0);
+ 	if (!a->type->equals(Type::tuns32)  &&
+-	    (! global.params.isX86_64 || !a->type->equals(Type::tuns64)))
++	    (! global.params.is64BIT || !a->type->equals(Type::tuns64)))
+ 	    error("first argument must be type uint, not %s", a->type->toChars());
+     }
+ 
+--- gcc/d/dmd2/mtype.c	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd2/mtype.c	2008-02-04 20:54:17.000000000 +0000
+@@ -274,7 +274,7 @@
+ 
+     tvoidptr = tvoid->pointerTo();
+ 
+-    if (global.params.isX86_64)
++    if (global.params.is64BIT)
+     {
+ 	PTRSIZE = 8;
+ 	if (global.params.isLinux)
+--- gcc/d/dmd2/statement.c	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd2/statement.c	2008-02-04 20:54:17.000000000 +0000
+@@ -1180,7 +1180,7 @@
+ 		    error("no storage class for key %s", arg->ident->toChars());
+ 		TY keyty = arg->type->ty;
+ 		if ((keyty != Tint32 && keyty != Tuns32) &&
+-		    (! global.params.isX86_64 ||
++		    (! global.params.is64BIT ||
+ 			(keyty != Tint64 && keyty != Tuns64))
+ 		   )
+ 		{
+@@ -1325,7 +1325,7 @@
+ 
+ 	    if (key &&
+ 		((key->type->ty != Tint32 && key->type->ty != Tuns32) &&
+-		 (! global.params.isX86_64 ||
++		 (! global.params.is64BIT ||
+ 		     (key->type->ty != Tint64 && key->type->ty != Tuns64))
+ 	        )
+ 	       )
+--- gcc/d/dmd2/mars.h	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd2/mars.h	2008-02-04 20:54:17.000000000 +0000
+@@ -54,7 +54,7 @@
+     char symdebug;	// insert debug symbolic information
+     char optimize;	// run optimizer
+     char cpu;		// target CPU
+-    char isX86_64;	// generate X86_64 bit code
++    char is64BIT;	// generate 64 bit code
+     char isLinux;	// generate code for linux
+     char isWindows;	// generate code for Windows
+     char scheduler;	// which scheduler to use
+--- gcc/d/dmd2/func.c	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/dmd2/func.c	2008-02-04 20:54:17.000000000 +0000
+@@ -2507,7 +2507,7 @@
+     {
+ 	Argument *a = Argument::getNth(tf->parameters, 0);
+ 	if (!a->type->equals(Type::tuns32)  &&
+-	    (! global.params.isX86_64 || !a->type->equals(Type::tuns64)))
++	    (! global.params.is64BIT || !a->type->equals(Type::tuns64)))
+ 	    error("first argument must be type uint, not %s", a->type->toChars());
+     }
+ 
+--- gcc/d/d-glue.cc	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/d-glue.cc	2008-02-04 20:54:17.000000000 +0000
+@@ -2874,7 +2874,7 @@
+ 
+ 	/* On PowerPC 64, GCC may not always clear the padding at the end
+ 	   of the struct. Adding 32-bit words at the end helps. */
+-	if (global.params.isX86_64 && ! sym->isUnionDeclaration() && sym->fields.dim)
++	if (global.params.is64BIT && ! sym->isUnionDeclaration() && sym->fields.dim)
+ 	{
+ 	    target_size_t ofs;
+ 	    {
+--- gcc/d/d-lang.cc	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/d-lang.cc	2008-02-04 20:54:17.000000000 +0000
+@@ -275,10 +275,38 @@
+ {
+     const char * cpu_versym = NULL;
+     
+-    /* Currently, isX86_64 indicates a 64-bit target in general and is not
+-       Intel-specific. */
++    /* isX86_64 has been renamed to is64BIT since it was not Intel-specific. */
+ #ifdef TARGET_64BIT
+-    global.params.isX86_64 = TARGET_64BIT ? 1 : 0;
++    global.params.is64BIT = TARGET_64BIT ? 1 : 0;
++#else
++    /* TARGET_64BIT is only defined on biarched defaulted to 64bits archs
++     * (as amd64 or s390x) so for full 64 bits archs (as ia64 or alpha) we
++     * need to test it more. */
++#  ifdef D_CPU_VERSYM64
++	/* We are "defaulting" to 32bits, which mean that if both D_CPU_VERSYM
++	 * and D_CPU_VERSYM64 are defined, and not TARGET_64BIT, we will use
++	 * 32 bits. This will be overidden for full 64 bits archs */
++	global.params.is64BIT = 0;
++#    ifndef D_CPU_VERSYM
++	/* So this is typically for alpha and ia64 */
++	global.params.is64BIT = 1;
++#    endif
++#  else
++#    ifdef D_CPU_VERSYM /* D_CPU_VERSYM is defined and D_CPU_VERSYM64 is not. */
++	global.params.is64BIT = 0;
++#    else
++	/* If none of D_CPU_VERSYM and D_CPU_VERSYM64 defined check size_t
++	 * length instead. */
++	switch (sizeof(size_t)) {
++	    case 4:
++	    	global.params.is64BIT = 0;
++		break;
++	    case 8:
++	        global.params.is64BIT = 1;
++		break;
++	}
++#    endif
++#  endif
+ #endif
+     
+     Type::init();
+@@ -294,11 +322,9 @@
+ #ifdef D_CPU_VERSYM
+     cpu_versym = D_CPU_VERSYM;
+ #endif
+-#ifdef TARGET_64BIT
+-#  ifdef D_CPU_VERSYM64
+-    if (TARGET_64BIT)
+-	cpu_versym = D_CPU_VERSYM64;
+-#  endif
++#ifdef D_CPU_VERSYM64
++    if (global.params.is64BIT == 1)
++    	cpu_versym = D_CPU_VERSYM64;
+ #endif
+     if (cpu_versym)
+ 	VersionCondition::addPredefinedGlobalIdent((char*) cpu_versym);
+--- gcc/d/target-ver-syms.sh	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/target-ver-syms.sh	2008-02-04 20:54:17.000000000 +0000
+@@ -47,14 +47,19 @@
+ esac
+ 
+ case "$target_cpu" in
+-alpha*)  d_cpu_versym=Alpha ; d_cpu_versym64=Alpha64 ;;
++alpha*)                       d_cpu_versym64=Alpha ;;
+ arm*)    d_cpu_versym=ARM ;;
++hppa*)   d_cpu_versym=HPPA  ; d_cpu_versym64=HPPA64 ;;
+ i*86)    d_cpu_versym=X86   ; d_cpu_versym64=X86_64 ;;
++ia64*)                        d_cpu_versym64=IA64 ;;
+ mips*)   d_cpu_versym=MIPS  ; d_cpu_versym64=MIPS64 ;;
++parisc*) d_cpu_versym=HPPA  ; d_cpu_versym64=HPPA64 ;;
+ *ppc*)   d_cpu_versym=PPC   ; d_cpu_versym64=PPC64 ;;
+ powerpc*)d_cpu_versym=PPC   ; d_cpu_versym64=PPC64 ;;
++s390*)   d_cpu_versym=S390  ; d_cpu_versym64=S390X ;;
+ sparc*)  d_cpu_versym=SPARC ; d_cpu_versym64=SPARC64 ;;
+ x86_64)  d_cpu_versym=X86   ; d_cpu_versym64=X86_64 ;;
++sh*)     d_cpu_versym=SH    ; d_cpu_versym64=SH64 ;;
+ esac
+ 
+ if test -n "$d_cpu_versym"; then
+--- gcc/d/d-gcc-includes.h	2008-02-04 20:54:14.000000000 +0000
++++ gcc/d/d-gcc-includes.h	2008-02-04 20:54:46.000000000 +0000
+@@ -31,6 +31,23 @@
+ #include "config.h"
+ #include "system.h"
+ 
++/* Those are used in TARGET_OS_CPP_BUILTINS in some gcc/config/<arch>/<arch>.c
++ * (alpha, mips, arm and a few others) for some builtin_defines such
++ * __LAGUAGE_C_PLUS_PLUS but are defined in c-common.h. */
++#ifndef c_dialect_cxx
++#  define c_dialect_cxx()      0
++#endif
++#ifndef c_dialect_objc
++#  define c_dialect_objc()     0
++#endif
++
++/* Even if they are defined in d-apple-gcc.c and d-c-stubs.c, they are also
++ * used in config/mips (as in config/darwin), so as we don't /need/ them,
++ * better to define an empty macro here. */
++#ifndef builtin_define_with_value
++#  define builtin_define_with_value(macro, expansion, is_str)
++#endif
++
+ /* Before gcc 4.0, <stdbool.h> was included before defining bool.  In 4.0,
+    it is always defined as "unsigned char" unless __cplusplus.  Have to make
+    sure the "bool" under c++ is the same so that structs are laid out
+--- gcc/config/rs6000/rs6000.h	2008-02-04 20:56:08.000000000 +0000
++++ gcc/config/rs6000/rs6000.h	2008-02-04 22:40:58.000000000 +0000
+@@ -357,10 +357,6 @@
+   targetm.resolve_overloaded_builtin = altivec_resolve_overloaded_builtin; \
+ } while (0)
+ 
+-/* Target #defines.  */
+-#define TARGET_CPU_CPP_BUILTINS() \
+-  rs6000_cpu_cpp_builtins (pfile)
+-
+ /* This is used by rs6000_cpu_cpp_builtins to indicate the byte order
+    we're compiling for.  Some configurations may need to override it.  */
+ #define RS6000_CPU_CPP_ENDIAN_BUILTINS()	\
+@@ -380,6 +376,76 @@
+ 	}					\
+     }						\
+   while (0)
++
++/* Target #defines.  */
++#define TARGET_CPU_CPP_BUILTINS() do {				\
++  if (TARGET_POWER2)						\
++      builtin_define ("_ARCH_PWR2");				\
++  else if (TARGET_POWER)					\
++      builtin_define ("_ARCH_PWR");				\
++  if (TARGET_POWERPC)						\
++      builtin_define ("_ARCH_PPC");				\
++  if (TARGET_PPC_GPOPT)						\
++      builtin_define ("_ARCH_PPCSQ");				\
++  if (TARGET_PPC_GFXOPT)					\
++      builtin_define ("_ARCH_PPCGR");				\
++  if (TARGET_POWERPC64)						\
++      builtin_define ("_ARCH_PPC64");				\
++  if (TARGET_MFCRF)						\
++      builtin_define ("_ARCH_PWR4");				\
++  if (TARGET_POPCNTB)						\
++      builtin_define ("_ARCH_PWR5");				\
++  if (TARGET_FPRND)						\
++      builtin_define ("_ARCH_PWR5X");				\
++  if (! TARGET_POWER && ! TARGET_POWER2 && ! TARGET_POWERPC)	\
++      builtin_define ("_ARCH_COM");				\
++  if (TARGET_ALTIVEC)						\
++      {								\
++        builtin_define ("__ALTIVEC__");				\
++        builtin_define ("__VEC__=10206");			\
++								\
++        /* Define the AltiVec syntactic elements.  */		\
++        builtin_define ("__vector=__attribute__((altivec(vector__)))");			\
++        builtin_define ("__pixel=__attribute__((altivec(pixel__))) unsigned short");	\
++        builtin_define ("__bool=__attribute__((altivec(bool__))) unsigned");		\
++      }								\
++      if (TARGET_SPE)						\
++        builtin_define ("__SPE__");				\
++      if (TARGET_SOFT_FLOAT)					\
++        builtin_define ("_SOFT_FLOAT");				\
++      /* Used by lwarx/stwcx. errata work-around.  */		\
++      if (rs6000_cpu == PROCESSOR_PPC405)			\
++        builtin_define ("__PPC405__");				\
++      /* Used by libstdc++.  */					\
++      if (TARGET_NO_LWSYNC)					\
++        builtin_define ("__NO_LWSYNC__");			\
++      /* May be overridden by target configuration.  */		\
++      RS6000_CPU_CPP_ENDIAN_BUILTINS();				\
++								\
++      if (TARGET_LONG_DOUBLE_128)				\
++          builtin_define ("__LONG_DOUBLE_128__");		\
++								\
++      switch (rs6000_current_abi)				\
++        {							\
++          case ABI_V4:						\
++            builtin_define ("_CALL_SYSV");			\
++            break;						\
++          case ABI_AIX:						\
++            builtin_define ("_CALL_AIXDESC");			\
++            builtin_define ("_CALL_AIX");			\
++            break;						\
++          case ABI_DARWIN:					\
++            builtin_define ("_CALL_DARWIN");			\
++            break;						\
++          default:						\
++            break;						\
++         }							\
++								\
++        /* Let the compiled code know if 'f' class registers will not be available.  */	\
++	if (TARGET_SOFT_FLOAT || !TARGET_FPRS)			\
++          builtin_define ("__NO_FPRS__");			\
++} while(0)
++
+ 
+ /* Target machine storage layout.  */
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-libphobos-build.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-libphobos-build.dpatch
@@ -0,0 +1,663 @@
+#! /bin/sh -e
+
+# gdc-libphobos-build.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Setup gcc build system for libphobos.
+
+dir=
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+exit 0
+
+
+diff -Naur configure configure
+--- configure	2007-05-19 15:31:11.000000000 +0200
++++ configure	2007-05-19 19:39:23.000000000 +0200
+@@ -940,6 +940,7 @@
+ 		${libgcj} \
+ 		target-libobjc \
+ 		target-libada \
++		target-libphobos \
+ 		target-libgomp"
+ 
+ # these tools are built using the target libraries, and are intended to
+@@ -1848,6 +1849,7 @@
+   CXX=${CXX-${host_alias}-c++}
+   CXXFLAGS=${CXXFLAGS-"-g -O2"}
+   CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
++  CXX_FOR_BUILD=${CXX_FOR_BUILD-c++}
+ 
+ else
+   # Set reasonable default values for some tools even if not Canadian.
+@@ -1859,6 +1861,7 @@
+   # This is all going to change when we autoconfiscate...
+ 
+   CC_FOR_BUILD="\$(CC)"
++  CXX_FOR_BUILD="\$(CXX)"
+   # Extract the first word of "gcc", so it can be a program name with args.
+ set dummy gcc; ac_word=$2
+ echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+@@ -7622,6 +7625,7 @@
+ s%@configdirs@%$configdirs%g
+ s%@target_configargs@%$target_configargs%g
+ s%@CC_FOR_BUILD@%$CC_FOR_BUILD%g
++s%@CXX_FOR_BUILD@%$CXX_FOR_BUILD%g
+ s%@config_shell@%$config_shell%g
+ s%@YACC@%$YACC%g
+ s%@BISON@%$BISON%g
+diff -Naur configure.in configure.in
+--- configure.in	2007-05-19 15:32:04.000000000 +0200
++++ configure.in	2007-05-19 19:40:51.000000000 +0200
+@@ -152,6 +152,7 @@
+ 		${libgcj} \
+ 		target-libobjc \
+ 		target-libada \
++		target-libphobos \
+ 		target-libgomp"
+ 
+ # these tools are built using the target libraries, and are intended to
+@@ -1008,6 +1009,7 @@
+   CXX=${CXX-${host_alias}-c++}
+   CXXFLAGS=${CXXFLAGS-"-g -O2"}
+   CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
++  CXX_FOR_BUILD=${CXX_FOR_BUILD-c++}
+ 
+ else
+   # Set reasonable default values for some tools even if not Canadian.
+@@ -1019,6 +1021,7 @@
+   # This is all going to change when we autoconfiscate...
+ 
+   CC_FOR_BUILD="\$(CC)"
++  CXX_FOR_BUILD="\$(CXX)"
+   AC_PROG_CC
+ 
+   # We must set the default linker to the linker used by gcc for the correct
+@@ -2204,6 +2207,7 @@
+ 
+ # Build tools.
+ AC_SUBST(CC_FOR_BUILD)
++AC_SUBST(CXX_FOR_BUILD)
+ AC_SUBST(config_shell)
+ 
+ # Generate default definitions for YACC, M4, LEX and other programs that run
+diff -Naur Makefile.def Makefile.def
+--- Makefile.def	2007-05-19 15:32:04.000000000 +0200
++++ Makefile.def	2007-05-19 19:13:18.000000000 +0200
+@@ -138,6 +138,7 @@
+ target_modules = { module= qthreads; };
+ target_modules = { module= rda; };
+ target_modules = { module= libada; };
++target_modules = { module= libphobos; };
+ target_modules = { module= libgomp; lib_path=.libs; };
+ 
+ // These are (some of) the make targets to be done in each subdirectory.
+diff -Naur Makefile.in Makefile.in
+--- Makefile.in	2007-05-19 15:32:05.000000000 +0200
++++ Makefile.in	2007-05-19 19:37:14.000000000 +0200
+@@ -661,6 +661,7 @@
+     maybe-configure-target-qthreads \
+     maybe-configure-target-rda \
+     maybe-configure-target-libada \
++    maybe-configure-target-libphobos \
+     maybe-configure-target-libgomp
+ 
+ # The target built for a native non-bootstrap build.
+@@ -805,6 +806,7 @@
+ all-target: maybe-all-target-qthreads
+ all-target: maybe-all-target-rda
+ all-target: maybe-all-target-libada
++all-target: maybe-all-target-libphobos
+ all-target: maybe-all-target-libgomp
+ 
+ # Do a target for all the subdirectories.  A ``make do-X'' will do a
+@@ -913,6 +915,7 @@
+ info-target: maybe-info-target-qthreads
+ info-target: maybe-info-target-rda
+ info-target: maybe-info-target-libada
++info-target: maybe-info-target-libphobos
+ info-target: maybe-info-target-libgomp
+ 
+ .PHONY: do-dvi
+@@ -1016,6 +1019,7 @@
+ dvi-target: maybe-dvi-target-qthreads
+ dvi-target: maybe-dvi-target-rda
+ dvi-target: maybe-dvi-target-libada
++dvi-target: maybe-dvi-target-libphobos
+ dvi-target: maybe-dvi-target-libgomp
+ 
+ .PHONY: do-pdf
+@@ -1222,6 +1226,7 @@
+ html-target: maybe-html-target-qthreads
+ html-target: maybe-html-target-rda
+ html-target: maybe-html-target-libada
++html-target: maybe-html-target-libphobos
+ html-target: maybe-html-target-libgomp
+ 
+ .PHONY: do-TAGS
+@@ -1325,6 +1330,7 @@
+ TAGS-target: maybe-TAGS-target-qthreads
+ TAGS-target: maybe-TAGS-target-rda
+ TAGS-target: maybe-TAGS-target-libada
++TAGS-target: maybe-TAGS-target-libphobos
+ TAGS-target: maybe-TAGS-target-libgomp
+ 
+ .PHONY: do-install-info
+@@ -1428,6 +1434,7 @@
+ install-info-target: maybe-install-info-target-qthreads
+ install-info-target: maybe-install-info-target-rda
+ install-info-target: maybe-install-info-target-libada
++install-info-target: maybe-install-info-target-libphobos
+ install-info-target: maybe-install-info-target-libgomp
+ 
+ .PHONY: do-install-html
+@@ -1634,6 +1641,7 @@
+ installcheck-target: maybe-installcheck-target-qthreads
+ installcheck-target: maybe-installcheck-target-rda
+ installcheck-target: maybe-installcheck-target-libada
++installcheck-target: maybe-installcheck-target-libphobos
+ installcheck-target: maybe-installcheck-target-libgomp
+ 
+ .PHONY: do-mostlyclean
+@@ -1737,6 +1745,7 @@
+ mostlyclean-target: maybe-mostlyclean-target-qthreads
+ mostlyclean-target: maybe-mostlyclean-target-rda
+ mostlyclean-target: maybe-mostlyclean-target-libada
++mostlyclean-target: maybe-mostlyclean-target-libphobos
+ mostlyclean-target: maybe-mostlyclean-target-libgomp
+ 
+ .PHONY: do-clean
+@@ -1840,6 +1849,7 @@
+ clean-target: maybe-clean-target-qthreads
+ clean-target: maybe-clean-target-rda
+ clean-target: maybe-clean-target-libada
++clean-target: maybe-clean-target-libphobos
+ clean-target: maybe-clean-target-libgomp
+ 
+ .PHONY: do-distclean
+@@ -1943,6 +1953,7 @@
+ distclean-target: maybe-distclean-target-qthreads
+ distclean-target: maybe-distclean-target-rda
+ distclean-target: maybe-distclean-target-libada
++distclean-target: maybe-distclean-target-libphobos
+ distclean-target: maybe-distclean-target-libgomp
+ 
+ .PHONY: do-maintainer-clean
+@@ -2046,6 +2057,7 @@
+ maintainer-clean-target: maybe-maintainer-clean-target-qthreads
+ maintainer-clean-target: maybe-maintainer-clean-target-rda
+ maintainer-clean-target: maybe-maintainer-clean-target-libada
++maintainer-clean-target: maybe-maintainer-clean-target-libphobos
+ maintainer-clean-target: maybe-maintainer-clean-target-libgomp
+ 
+ 
+@@ -2205,6 +2217,7 @@
+     maybe-check-target-qthreads \
+     maybe-check-target-rda \
+     maybe-check-target-libada \
++    maybe-check-target-libphobos \
+     maybe-check-target-libgomp
+ 
+ do-check:
+@@ -2405,6 +2418,7 @@
+     maybe-install-target-qthreads \
+     maybe-install-target-rda \
+     maybe-install-target-libada \
++    maybe-install-target-libphobos \
+     maybe-install-target-libgomp
+ 
+ uninstall:
+@@ -41336,6 +41350,31 @@
+ 	  || exit 1
+ @endif target-libgomp
+ 
++.PHONY: configure-target-libphobos maybe-configure-target-libphobos
++maybe-configure-target-libphobos:
++@if target-libphobos
++maybe-configure-target-libphobos: configure-target-libphobos
++configure-target-libphobos: # $(TARGET_SUBDIR)/libphobos/multilib.out
++	@$(unstage)
++	@test ! -f $(TARGET_SUBDIR)/libphobos/Makefile || exit 0; \
++	$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libphobos ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo Configuring in $(TARGET_SUBDIR)/libphobos; \
++	cd "$(TARGET_SUBDIR)/libphobos" || exit 1; \
++	case $(srcdir) in \
++	  /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
++	  *) topdir=`echo $(TARGET_SUBDIR)/libphobos/ | \
++		sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
++	esac; \
++	srcdiroption="--srcdir=$${topdir}/libphobos"; \
++	libsrcdir="$$s/libphobos"; \
++	rm -f no-such-file || : ; \
++	CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
++	  $(TARGET_CONFIGARGS) $${srcdiroption}  \
++	  || exit 1
++@endif target-libphobos
+ 
+ 
+ 
+@@ -41357,6 +41396,19 @@
+ 	  $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libgomp))
+ @endif target-libgomp
+ 
++.PHONY: all-target-libphobos maybe-all-target-libphobos
++maybe-all-target-libphobos:
++@if target-libphobos
++TARGET-target-libphobos=all
++maybe-all-target-libphobos: all-target-libphobos
++all-target-libphobos: configure-target-libphobos
++	@$(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libphobos))
++@endif target-libphobos
+ 
+ 
+ 
+@@ -41376,6 +41428,21 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: check-target-libphobos maybe-check-target-libphobos
++maybe-check-target-libphobos:
++@if target-libphobos
++maybe-check-target-libphobos: check-target-libphobos
++
++check-target-libphobos:
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(TARGET_FLAGS_TO_PASS)   check)
++
++@endif target-libphobos
++
+ .PHONY: install-target-libgomp maybe-install-target-libgomp
+ maybe-install-target-libgomp:
+ @if target-libgomp
+@@ -41391,6 +41458,21 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: install-target-libphobos maybe-install-target-libphobos
++maybe-install-target-libphobos:
++@if target-libphobos
++maybe-install-target-libphobos: install-target-libphobos
++
++install-target-libphobos: installdirs
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
++
++@endif target-libphobos
++
+ # Other targets (info, dvi, pdf, etc.)
+ 
+ .PHONY: maybe-info-target-libgomp info-target-libgomp
+@@ -41419,6 +41501,32 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-info-target-libphobos info-target-libphobos
++maybe-info-target-libphobos:
++@if target-libphobos
++maybe-info-target-libphobos: info-target-libphobos
++
++info-target-libphobos: \
++    configure-target-libphobos 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing info in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           info) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-dvi-target-libgomp dvi-target-libgomp
+ maybe-dvi-target-libgomp:
+ @if target-libgomp
+@@ -41445,6 +41553,32 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-dvi-target-libphobos dvi-target-libphobos
++maybe-dvi-target-libphobos:
++@if target-libphobos
++maybe-dvi-target-libphobos: dvi-target-libphobos
++
++dvi-target-libphobos: \
++    configure-target-libphobos 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing dvi in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           dvi) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-pdf-target-libgomp pdf-target-libgomp
+ maybe-pdf-target-libgomp:
+ @if target-libgomp
+@@ -41497,6 +41631,32 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-html-target-libphobos html-target-libphobos
++maybe-html-target-libphobos:
++@if target-libphobos
++maybe-html-target-libphobos: html-target-libphobos
++
++html-target-libphobos: \
++    configure-target-libphobos 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing html in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           html) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-TAGS-target-libgomp TAGS-target-libgomp
+ maybe-TAGS-target-libgomp:
+ @if target-libgomp
+@@ -41523,6 +41683,32 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-TAGS-target-libphobos TAGS-target-libphobos
++maybe-TAGS-target-libphobos:
++@if target-libphobos
++maybe-TAGS-target-libphobos: TAGS-target-libphobos
++
++TAGS-target-libphobos: \
++    configure-target-libphobos 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing TAGS in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           TAGS) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-install-info-target-libgomp install-info-target-libgomp
+ maybe-install-info-target-libgomp:
+ @if target-libgomp
+@@ -41550,6 +41736,33 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-install-info-target-libphobos install-info-target-libphobos
++maybe-install-info-target-libphobos:
++@if target-libphobos
++maybe-install-info-target-libphobos: install-info-target-libphobos
++
++install-info-target-libphobos: \
++    configure-target-libphobos \
++    info-target-libphobos 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing install-info in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           install-info) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-install-html-target-libgomp install-html-target-libgomp
+ maybe-install-html-target-libgomp:
+ @if target-libgomp
+@@ -41603,6 +41816,32 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-installcheck-target-libphobos installcheck-target-libphobos
++maybe-installcheck-target-libphobos:
++@if target-libphobos
++maybe-installcheck-target-libphobos: installcheck-target-libphobos
++
++installcheck-target-libphobos: \
++    configure-target-libphobos 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing installcheck in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           installcheck) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-mostlyclean-target-libgomp mostlyclean-target-libgomp
+ maybe-mostlyclean-target-libgomp:
+ @if target-libgomp
+@@ -41628,6 +41867,31 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-mostlyclean-target-libphobos mostlyclean-target-libphobos
++maybe-mostlyclean-target-libphobos:
++@if target-libphobos
++maybe-mostlyclean-target-libphobos: mostlyclean-target-libphobos
++
++mostlyclean-target-libphobos: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing mostlyclean in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           mostlyclean) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-clean-target-libgomp clean-target-libgomp
+ maybe-clean-target-libgomp:
+ @if target-libgomp
+@@ -41653,6 +41917,31 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-clean-target-libphobos clean-target-libphobos
++maybe-clean-target-libphobos:
++@if target-libphobos
++maybe-clean-target-libphobos: clean-target-libphobos
++
++clean-target-libphobos: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing clean in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           clean) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-distclean-target-libgomp distclean-target-libgomp
+ maybe-distclean-target-libgomp:
+ @if target-libgomp
+@@ -41678,6 +41967,31 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-distclean-target-libphobos distclean-target-libphobos
++maybe-distclean-target-libphobos:
++@if target-libphobos
++maybe-distclean-target-libphobos: distclean-target-libphobos
++
++distclean-target-libphobos: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing distclean in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           distclean) \
++	  || exit 1
++
++@endif target-libphobos
++
+ .PHONY: maybe-maintainer-clean-target-libgomp maintainer-clean-target-libgomp
+ maybe-maintainer-clean-target-libgomp:
+ @if target-libgomp
+@@ -41703,7 +42017,30 @@
+ 
+ @endif target-libgomp
+ 
++.PHONY: maybe-maintainer-clean-target-libphobos maintainer-clean-target-libphobos
++maybe-maintainer-clean-target-libphobos:
++@if target-libphobos
++maybe-maintainer-clean-target-libphobos: maintainer-clean-target-libphobos
++
++maintainer-clean-target-libphobos: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libphobos/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libphobos" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libphobos && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           maintainer-clean) \
++	  || exit 1
+ 
++@endif target-libphobos
+ 
+ # ----------
+ # GCC module
+@@ -43189,6 +43526,7 @@
+ configure-target-qthreads: stage_last
+ configure-target-rda: stage_last
+ configure-target-libada: stage_last
++configure-target-libphobos: stage_last
+ configure-target-libgomp: stage_last
+ @endif gcc-bootstrap
+ 
+@@ -43212,6 +43550,7 @@
+ configure-target-qthreads: maybe-all-gcc
+ configure-target-rda: maybe-all-gcc
+ configure-target-libada: maybe-all-gcc
++configure-target-libphobos: maybe-all-gcc
+ configure-target-libgomp: maybe-all-gcc
+ @endif gcc-no-bootstrap
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/libstdc++-baseline.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libstdc++-baseline.dpatch
@@ -0,0 +1,42 @@
+#! /bin/sh -e
+
+# DP: overwrite baseline detection for i386: use the i486 headers
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libstdc++-v3/configure.target~	2003-06-19 19:55:35.000000000 +0200
++++ libstdc++-v3/configure.target	2003-06-20 09:15:08.000000000 +0200
+@@ -91,6 +91,14 @@
+     ;;
+ esac
+ 
++# Debian adjustments
++echo "LIBSTDCXX TARGET CPU: $target_cpu"
++case "${target_cpu}" in
++  i386)
++    # we use the i486 ABI ...
++    try_cpu=i486
++    ;;
++esac
+ 
+ # Now look for the file(s) usually tied to a CPU model, and make
+ # default choices for those if they haven't been explicitly set
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-ssp-default.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-ssp-default.dpatch
@@ -0,0 +1,209 @@
+#! /bin/sh -e
+
+# DP: Turn on -fstack-protector by default for C, C++, ObjC, ObjC++.
+# DP: Build libgcc using -fno-stack-protector.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/doc/invoke.texi.orig	2006-12-11 13:38:29.266229000 +0100
++++ gcc/doc/invoke.texi	2006-12-11 13:38:54.066229000 +0100
+@@ -5829,6 +5829,10 @@
+ when a function is entered and then checked when the function exits.
+ If a guard check fails, an error message is printed and the program exits.
+ 
++NOTE: In Ubuntu 6.10 and later versions this option is enabled by default
++for C, C++, ObjC, ObjC++, if neither @option{-fno-stack-protector}
++nor @option{-nostdlib} are found.
++
+ @item -fstack-protector-all
+ Like @option{-fstack-protector} except that all functions are protected.
+ 
+--- gcc/objc/lang-specs.h.orig	2006-12-11 13:38:28.986229000 +0100
++++ gcc/objc/lang-specs.h	2006-12-11 13:38:54.046229000 +0100
+@@ -30,13 +30,13 @@
+ 	%{traditional|ftraditional|traditional-cpp:\
+ %eGNU Objective C no longer supports traditional compilation}\
+ 	%{save-temps|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps:%b.mi} %{!save-temps:%g.mi} \n\
+-	    cc1obj -fpreprocessed %{save-temps:%b.mi} %{!save-temps:%g.mi} %(cc1_options) %{print-objc-runtime-info} %{gen-decls}}\
++	    cc1obj -fpreprocessed %{save-temps:%b.mi} %{!save-temps:%g.mi} %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}}\
+ 	%{!save-temps:%{!no-integrated-cpp:\
+-	    cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}}}\
++	    cc1obj %(cpp_unique_options) %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}}}\
+         %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+   {".mi", "@objc-cpp-output", 0, 0, 0},
+   {"@objc-cpp-output",
+-     "%{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
++     "%{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
+ 			     %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+   {"@objective-c-header",
+      "%{E|M|MM:cc1obj -E %{traditional|ftraditional|traditional-cpp:-traditional-cpp}\
+@@ -45,10 +45,10 @@
+ 	%{traditional|ftraditional|traditional-cpp:\
+ %eGNU Objective C no longer supports traditional compilation}\
+ 	%{save-temps|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps:%b.mi} %{!save-temps:%g.mi} \n\
+-	    cc1obj -fpreprocessed %b.mi %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
++	    cc1obj -fpreprocessed %b.mi %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
+                         -o %g.s %{!o*:--output-pch=%i.gch}\
+                         %W{o*:--output-pch=%*}%V}\
+ 	%{!save-temps:%{!no-integrated-cpp:\
+-	    cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\
++	    cc1obj %(cpp_unique_options) %(cc1_options) %(ssp_default) %{print-objc-runtime-info} %{gen-decls}\
+                         -o %g.s %{!o*:--output-pch=%i.gch}\
+                         %W{o*:--output-pch=%*}%V}}}}}", 0, 0, 0},
+--- gcc/objcp/lang-specs.h.orig	2006-12-11 13:38:29.046229000 +0100
++++ gcc/objcp/lang-specs.h	2006-12-11 13:38:54.046229000 +0100
+@@ -36,7 +36,7 @@
+ 		%(cpp_options) %2 -o %{save-temps:%b.mii} %{!save-temps:%g.mii} \n}\
+       cc1objplus %{save-temps|no-integrated-cpp:-fpreprocessed %{save-temps:%b.mii} %{!save-temps:%g.mii}}\
+ 	      %{!save-temps:%{!no-integrated-cpp:%(cpp_unique_options)}}\
+-	%(cc1_options) %2 %{+e1*}\
++	%(cc1_options) %(ssp_default) %2 %{+e1*}\
+         -o %g.s %{!o*:--output-pch=%i.gch} %W{o*:--output-pch=%*}%V}}}",
+      CPLUSPLUS_CPP_SPEC, 0, 0},
+   {"@objective-c++",
+@@ -46,15 +46,15 @@
+ 		%(cpp_options) %2 -o %{save-temps:%b.mii} %{!save-temps:%g.mii} \n}\
+       cc1objplus %{save-temps|no-integrated-cpp:-fpreprocessed %{save-temps:%b.mii} %{!save-temps:%g.mii}}\
+ 	      %{!save-temps:%{!no-integrated-cpp:%(cpp_unique_options)}}\
+-	%(cc1_options) %2 %{+e1*}\
++	%(cc1_options) %(ssp_default) %2 %{+e1*}\
+        %{!fsyntax-only:%(invoke_as)}}}}",
+      CPLUSPLUS_CPP_SPEC, 0, 0},
+   {".mii", "@objective-c++-cpp-output", 0, 0, 0},
+   {"@objective-c++-cpp-output",
+    "%{!M:%{!MM:%{!E:\
+-    cc1objplus -fpreprocessed %i %(cc1_options) %2 %{+e*}\
++    cc1objplus -fpreprocessed %i %(cc1_options) %(ssp_default) %2 %{+e*}\
+     %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+   {"@objc++-cpp-output",
+    "%{!M:%{!MM:%{!E:\
+-    cc1objplus -fpreprocessed %i %(cc1_options) %2 %{+e*}\
++    cc1objplus -fpreprocessed %i %(cc1_options) %(ssp_default) %2 %{+e*}\
+     %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+--- gcc/cp/lang-specs.h.orig	2006-12-11 13:38:28.986229000 +0100
++++ gcc/cp/lang-specs.h	2006-12-11 13:39:40.806229000 +0100
+@@ -42,7 +42,7 @@
+ 		%(cpp_options) %2 -o %{save-temps:%b.ii} %{!save-temps:%g.ii} \n}\
+       cc1plus %{save-temps|no-integrated-cpp:-fpreprocessed %{save-temps:%b.ii} %{!save-temps:%g.ii}}\
+ 	      %{!save-temps:%{!no-integrated-cpp:%(cpp_unique_options)}}\
+-	%(cc1_options) %2 %{+e1*}\
++	%(cc1_options) %(ssp_default) %2 %{+e1*}\
+ 	%{!fsyntax-only:-o %g.s %{!o*:--output-pch=%i.gch} %W{o*:--output-pch=%*}%V}}}}",
+      CPLUSPLUS_CPP_SPEC, 0, 0},
+   {"@c++",
+@@ -52,11 +52,11 @@
+ 		%(cpp_options) %2 -o %{save-temps:%b.ii} %{!save-temps:%g.ii} \n}\
+       cc1plus %{save-temps|no-integrated-cpp:-fpreprocessed %{save-temps:%b.ii} %{!save-temps:%g.ii}}\
+ 	      %{!save-temps:%{!no-integrated-cpp:%(cpp_unique_options)}}\
+-	%(cc1_options) %2 %{+e1*}\
++	%(cc1_options) %(ssp_default) %2 %{+e1*}\
+        %{!fsyntax-only:%(invoke_as)}}}}",
+      CPLUSPLUS_CPP_SPEC, 0, 0},
+   {".ii", "@c++-cpp-output", 0, 0, 0},
+   {"@c++-cpp-output",
+    "%{!M:%{!MM:%{!E:\
+-    cc1plus -fpreprocessed %i %(cc1_options) %2 %{+e*}\
++    cc1plus -fpreprocessed %i %(cc1_options) %(ssp_default) %2 %{+e*}\
+     %{!fsyntax-only:%(invoke_as)}}}}", 0, 0, 0},
+--- gcc/Makefile.in.orig	2006-12-11 13:38:29.076229000 +0100
++++ gcc/Makefile.in	2006-12-11 13:40:11.316229000 +0100
+@@ -555,6 +555,7 @@
+ LIBGCC2_CFLAGS = -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) $(TARGET_LIBGCC2_CFLAGS) \
+ 		 $(LIBGCC2_DEBUG_CFLAGS) $(GTHREAD_FLAGS) \
+ 		 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED \
++		 -fno-stack-protector \
+ 		 $(INHIBIT_LIBC_CFLAGS)
+ 
+ # Additional options to use when compiling libgcc2.a.
+@@ -568,6 +569,7 @@
+ CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \
+   -finhibit-size-directive -fno-inline-functions -fno-exceptions \
+   -fno-zero-initialized-in-bss -fno-toplevel-reorder \
++  -fno-stack-protector \
+   $(INHIBIT_LIBC_CFLAGS)
+ 
+ # Additional sources to handle exceptions; overridden by targets as needed.
+--- gcc/gcc.c.orig	2006-12-11 13:38:29.166229000 +0100
++++ gcc/gcc.c	2006-12-11 13:38:54.056229000 +0100
+@@ -682,6 +682,10 @@
+ #endif
+ #endif
+ 
++#ifndef SSP_DEFAULT_SPEC
++#define SSP_DEFAULT_SPEC "%{!fno-stack-protector:%{!nostdlib:-fstack-protector}}"
++#endif
++
+ #ifndef LINK_PIE_SPEC
+ #ifdef HAVE_LD_PIE
+ #define LINK_PIE_SPEC "%{pie:-pie} "
+@@ -735,6 +739,7 @@
+ static const char *cc1plus_spec = CC1PLUS_SPEC;
+ static const char *link_gcc_c_sequence_spec = LINK_GCC_C_SEQUENCE_SPEC;
+ static const char *link_ssp_spec = LINK_SSP_SPEC;
++static const char *ssp_default_spec = SSP_DEFAULT_SPEC;
+ static const char *asm_spec = ASM_SPEC;
+ static const char *asm_final_spec = ASM_FINAL_SPEC;
+ static const char *link_spec = LINK_SPEC;
+@@ -806,6 +811,7 @@
+  %{--target-help:--target-help}\
+  %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}}\
+  %{fsyntax-only:-o %j} %{-param*}\
++ %(ssp_default)\
+  %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants}\
+  %{coverage:-fprofile-arcs -ftest-coverage}";
+ 
+@@ -961,15 +967,15 @@
+ 	  %{save-temps|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \
+ 		%(cpp_options) -o %{save-temps:%b.i} %{!save-temps:%g.i} \n\
+ 		    cc1 -fpreprocessed %{save-temps:%b.i} %{!save-temps:%g.i} \
+-			%(cc1_options)}\
++			%(cc1_options) %(ssp_default)}\
+ 	  %{!save-temps:%{!traditional-cpp:%{!no-integrated-cpp:\
+-		cc1 %(cpp_unique_options) %(cc1_options)}}}\
++		cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}}\
+           %{!fsyntax-only:%(invoke_as)}} \
+       %{combine:\
+ 	  %{save-temps|traditional-cpp|no-integrated-cpp:%(trad_capable_cpp) \
+ 		%(cpp_options) -o %{save-temps:%b.i} %{!save-temps:%g.i}}\
+ 	  %{!save-temps:%{!traditional-cpp:%{!no-integrated-cpp:\
+-		cc1 %(cpp_unique_options) %(cc1_options)}}\
++		cc1 %(cpp_unique_options) %(cc1_options) %(ssp_default)}}\
+                 %{!fsyntax-only:%(invoke_as)}}}}}}", 0, 1, 1},
+   {"-",
+    "%{!E:%e-E or -x required when input is from standard input}\
+@@ -992,7 +998,7 @@
+                     %W{o*:--output-pch=%*}%V}}}}}}", 0, 0, 0},
+   {".i", "@cpp-output", 0, 1, 0},
+   {"@cpp-output",
+-   "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %{!fsyntax-only:%(invoke_as)}}}}", 0, 1, 0},
++   "%{!M:%{!MM:%{!E:cc1 -fpreprocessed %i %(cc1_options) %(ssp_default) %{!fsyntax-only:%(invoke_as)}}}}", 0, 1, 0},
+   {".s", "@assembler", 0, 1, 0},
+   {"@assembler",
+    "%{!M:%{!MM:%{!E:%{!S:as %(asm_debug) %(asm_options) %i %A }}}}", 0, 1, 0},
+@@ -1542,6 +1548,7 @@
+   INIT_STATIC_SPEC ("cc1plus",			&cc1plus_spec),
+   INIT_STATIC_SPEC ("link_gcc_c_sequence",	&link_gcc_c_sequence_spec),
+   INIT_STATIC_SPEC ("link_ssp",			&link_ssp_spec),
++  INIT_STATIC_SPEC ("ssp_default",		&ssp_default_spec),
+   INIT_STATIC_SPEC ("endfile",			&endfile_spec),
+   INIT_STATIC_SPEC ("link",			&link_spec),
+   INIT_STATIC_SPEC ("lib",			&lib_spec),
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-rpath.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-rpath.dpatch
@@ -0,0 +1,49 @@
+#! /bin/sh -e
+
+# DP: - Link ecjx and gij with -rpath $(dbexecdir)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	#cd ${dir}libjava && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+	#rm -f ${dir}libjava/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libjava/Makefile.am~	2007-03-04 18:50:01.000000000 +0100
++++ libjava/Makefile.am	2007-03-04 19:19:32.000000000 +0100
+@@ -683,7 +683,7 @@
+ ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+ endif !ENABLE_SHARED
+ 
+-ecjx_LDADD = -L$(here)/.libs libgcj.la
++ecjx_LDADD = -L$(here)/.libs libgcj.la -rpath $(dbexecdir)
+ ecjx_DEPENDENCIES = libgcj.la libgcj.spec
+ 
+ else !NATIVE
+--- libjava/Makefile.in~	2007-03-04 18:50:01.000000000 +0100
++++ libjava/Makefile.in	2007-03-04 19:21:22.000000000 +0100
+@@ -7787,7 +7787,7 @@
+ @ENABLE_SHARED_TRUE@@NATIVE_TRUE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) -Djava.class.path=$(ECJ_JAR)
+ @NATIVE_FALSE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+ @NATIVE_FALSE@ecjx_LDADD = 
+-@NATIVE_TRUE@ecjx_LDADD = -L$(here)/.libs libgcj.la
++@NATIVE_TRUE@ecjx_LDADD = -L$(here)/.libs libgcj.la -rpath $(dbexecdir)
+ @NATIVE_FALSE@ecjx_DEPENDENCIES = 
+ @NATIVE_TRUE@ecjx_DEPENDENCIES = libgcj.la libgcj.spec
+ gappletviewer_SOURCES = 
--- gcj-4.2-4.2.4.orig/debian/patches/pr22244.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr22244.dpatch
@@ -0,0 +1,128 @@
+#! /bin/sh -e
+
+# DP: Improve debug info for packed arrays with constant bounds (PR fortran/22244)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+From: Jakub Jelinek <jakub@redhat.com>
+Sender: gcc-patches-owner@gcc.gnu.org
+To: gcc-patches@gcc.gnu.org, fortran@gcc.gnu.org
+Cc: Alexandre Oliva <aoliva@redhat.com>, Jan Kratochvil <jkratoch@redhat.com>,         Daniel Jacobowitz <drow@false.org>
+Subject: [PATCH] Improve debug info for packed arrays with constant bounds (PR fortran/22244)
+Date: Tue, 14 Aug 2007 08:02:36 -0400
+
+Hi!
+
+The following patch certainly doesn't address all problems with debug info
+for arrays, but at least handles the most common easy case.
+
+In gimple the arrays are still represented as flat arrays with zero lower
+bound, but for debuginfo they are represented as multi-dimensional if rank >
+1 and with correct bounds, provided all bounds are constant and the array
+is packed.
+
+Tested on x86_64, both with normal make check and make check with
+RUNTESTFLAGS=--target_board=unix/-g
+and also with gdb on:
+        integer a(0:5,7:15)
+        double precision b(3)
+        real c(-3:12,1:3,0:6)
+        a(:,:) = 1
+        a(0,7) = 5
+        a(5,15) = 6
+        b(:) = 3
+        b(1) = 2.5
+        b(2) = 6
+        c(:,:,:) = 0.5
+        c(-3,1,0) = 1
+        c(12,3,6) = 2
+        c(0,1,0) = 0.5
+        end
+compiled with -g.
+
+Ok for 4.3/4.2/4.1?
+
+2007-08-14  Jakub Jelinek  <jakub@redhat.com>
+
+	PR fortran/22244
+	* Make-lang.in (fortran/trans-types.o): Depend on $(FLAGS_H).
+	* trans-types.c: Include flags.h.
+	(gfc_get_nodesc_array_type): Add TYPE_DECL TYPE_NAME with
+	correct bounds and dimensions for packed arrays.
+
+--- gcc/fortran/Make-lang.in	(revision 127395)
++++ gcc/fortran/Make-lang.in	(working copy)
+@@ -310,7 +310,7 @@ fortran/trans-decl.o: $(GFORTRAN_TRANS_D
+   $(CGRAPH_H) $(TARGET_H) $(FUNCTION_H) $(FLAGS_H) $(RTL_H) $(TREE_GIMPLE_H) \
+   $(TREE_DUMP_H)
+ fortran/trans-types.o: $(GFORTRAN_TRANS_DEPS) gt-fortran-trans-types.h \
+-  $(REAL_H) toplev.h $(TARGET_H)
++  $(REAL_H) toplev.h $(TARGET_H) $(FLAGS_H)
+ fortran/trans-const.o: $(GFORTRAN_TRANS_DEPS)
+ fortran/trans-expr.o: $(GFORTRAN_TRANS_DEPS) fortran/dependency.h
+ fortran/trans-stmt.o: $(GFORTRAN_TRANS_DEPS) fortran/dependency.h
+--- gcc/fortran/trans-types.c	(revision 127395)
++++ gcc/fortran/trans-types.c	(working copy)
+@@ -36,6 +36,7 @@ along with GCC; see the file COPYING3.  
+ #include "trans-types.h"
+ #include "trans-const.h"
+ #include "real.h"
++#include "flags.h"
+ 
+ 
+ #if (GFC_MAX_DIMENSIONS < 10)
+@@ -1232,7 +1233,7 @@ gfc_get_nodesc_array_type (tree etype, g
+     {
+       /* Fill in the stride and bound components of the type.  */
+       if (known_stride)
+-	tmp =  gfc_conv_mpz_to_tree (stride, gfc_index_integer_kind);
++	tmp = gfc_conv_mpz_to_tree (stride, gfc_index_integer_kind);
+       else
+         tmp = NULL_TREE;
+       GFC_TYPE_ARRAY_STRIDE (type, n) = tmp;
+@@ -1330,6 +1331,24 @@ gfc_get_nodesc_array_type (tree etype, g
+   mpz_clear (stride);
+   mpz_clear (delta);
+ 
++  /* In debug info represent packed arrays as multi-dimensional
++     if they have rank > 1 and with proper bounds, instead of flat
++     arrays.  */
++  if (known_stride && write_symbols != NO_DEBUG)
++    {
++      tree gtype = etype, rtype, type_decl;
++
++      for (n = as->rank - 1; n >= 0; n--)
++	{
++	  rtype = build_range_type (gfc_array_index_type,
++				    GFC_TYPE_ARRAY_LBOUND (type, n),
++				    GFC_TYPE_ARRAY_UBOUND (type, n));
++	  gtype = build_array_type (gtype, rtype);
++	}
++      TYPE_NAME (type) = type_decl = build_decl (TYPE_DECL, NULL, gtype);
++      DECL_ORIGINAL_TYPE (type_decl) = gtype;
++    }
++
+   if (packed < 3 || !known_stride)
+     {
+       /* For dummy arrays and automatic (heap allocated) arrays we
+
+	Jakub
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-secondary-addr-reload.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-secondary-addr-reload.dpatch
@@ -0,0 +1,94 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: add secondary reloads to allow reload to get byte values into addr regs
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.c  |    5 +----
+ gcc/config/m68k/m68k.h  |    6 ++++++
+ gcc/config/m68k/m68k.md |   16 ++++++++++++++++
+ 3 files changed, 23 insertions(+), 4 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -3660,10 +3660,7 @@ m68k_regno_mode_ok (int regno, enum mach
+     }
+   else if (regno < 16)
+     {
+-      /* Address Registers, can't hold bytes, can hold aggregate if
+-	 fits in.  */
+-      if (GET_MODE_SIZE (mode) == 1)
+-	return false;
++      /* Address Registers, can hold aggregate if fits in.  */
+       if (regno + GET_MODE_SIZE (mode) / 4 <= 16)
+ 	return true;
+     }
+Index: gcc-4.2/gcc/config/m68k/m68k.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.h
++++ gcc-4.2/gcc/config/m68k/m68k.h
+@@ -442,6 +442,12 @@ extern enum reg_class regno_reg_class[];
+    ? DATA_REGS					\
+    : (CLASS))
+ 
++/* Reloads of QImode memory subregs into address regs require a
++   secondary reload via a data reg.  */
++#define SECONDARY_RELOAD_CLASS(CLASS, MODE, X) \
++  (((CLASS) == ADDR_REGS && (MODE) == QImode && true_regnum(X) == -1) \
++   ? DATA_REGS : NO_REGS)
++
+ /* On the m68k, this is the size of MODE in words,
+    except in the FP regs, where a single reg is always enough.  */
+ #define CLASS_MAX_NREGS(CLASS, MODE)	\
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -806,6 +806,22 @@
+   DONE;
+ })
+ 
++(define_expand "reload_inqi"
++  [(set (match_operand:QI 2 "register_operand" "=&d")
++	(match_operand:QI 1 "general_operand" "g"))
++   (set (match_operand:QI 0 "register_operand" "=a")
++	(match_dup 2))]
++  ""
++  "")
++
++(define_expand "reload_outqi"
++  [(set (match_operand:QI 2 "register_operand" "=&d")
++	(match_operand:QI 1 "register_operand" "=a"))
++   (set (match_operand:QI 0 "general_operand" "g")
++	(match_dup 2))]
++  ""
++  "")
++
+ (define_expand "movsf"
+   [(set (match_operand:SF 0 "nonimmediate_operand" "")
+ 	(match_operand:SF 1 "general_operand" ""))]
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-bitfield.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-bitfield.dpatch
@@ -0,0 +1,53 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: Avoid propagation of mem expression past a zero_extract lvalue
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/gcse.c |   10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+Index: gcc-4.2/gcc/gcse.c
+===================================================================
+--- gcc-4.2.orig/gcc/gcse.c
++++ gcc-4.2/gcc/gcse.c
+@@ -5326,6 +5326,16 @@ compute_ld_motion_mems (void)
+ 		      else
+ 			ptr->invalid = 1;
+ 		    }
++		  else if (GET_CODE (dest) == ZERO_EXTRACT)
++		    {
++		      dest = XEXP (dest, 0);
++		      if (MEM_P (dest) && simple_mem (dest))
++			{
++			  ptr = ldst_entry (dest);
++			  ptr->invalid = 1;
++			}
++
++		    }
+ 		}
+ 	      else
+ 		invalidate_any_buried_refs (PATTERN (insn));
--- gcj-4.2-4.2.4.orig/debian/patches/libobjc-gc-link.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libobjc-gc-link.dpatch
@@ -0,0 +1,73 @@
+#! /bin/sh -e
+
+# DP: Link libobjc_gc with libgcjgc_convenience.la.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libobjc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        rm -f ${dir}libobjc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2008-02-06  Matthias Klose  <doko@ubuntu.com>
+
+	* configure.ac (OBJC_BOEHM_GC_LIBS): Link with libgcjgc_convenience.la.
+	* configure: Regenerate.
+	* Makefile.in (libobjc_gc$(libsuffix).la): Link with OBJC_BOEHM_GC_LIBS.
+
+--- libobjc/Makefile.in~	2007-07-05 10:18:52.000000000 +0200
++++ libobjc/Makefile.in	2008-02-07 17:17:17.243167905 +0100
+@@ -95,6 +95,7 @@
+ OBJC_THREAD_FILE=thr-objc
+ OBJC_BOEHM_GC=@OBJC_BOEHM_GC@
+ OBJC_BOEHM_GC_INCLUDES=@OBJC_BOEHM_GC_INCLUDES@
++OBJC_BOEHM_GC_LIBS=@OBJC_BOEHM_GC_LIBS@
+ 
+ INCLUDES = -I$(srcdir)/objc  -I$(srcdir)/$(MULTISRCTOP)../gcc \
+   -I$(srcdir)/$(MULTISRCTOP)../gcc/config \
+@@ -281,6 +282,7 @@
+ 
+ libobjc_gc$(libsuffix).la: $(OBJS_GC)
+ 	$(LIBTOOL_LINK) $(CC) -o $@ $(OBJS_GC) \
++		$(OBJC_BOEHM_GC_LIBS) \
+ 		-rpath $(toolexeclibdir) \
+ 		-version-info $(LIBOBJC_GC_VERSION) $(extra_ldflags_libobjc)
+ 
+--- libobjc/configure.ac~	2007-10-19 15:14:58.000000000 +0200
++++ libobjc/configure.ac	2008-02-07 17:25:15.750386077 +0100
+@@ -66,15 +66,18 @@
+   no)
+     OBJC_BOEHM_GC=''
+     OBJC_BOEHM_GC_INCLUDES=''
++    OBJC_BOEHM_GC_LIBS=''
+     ;;
+   *)
+     OBJC_BOEHM_GC=libobjc_gc.la
+     OBJC_BOEHM_GC_INCLUDES='-I$(top_srcdir)/../boehm-gc/include -I../boehm-gc/include'
++    OBJC_BOEHM_GC_LIBS='../boehm-gc/libgcjgc_convenience.la -pthread'
+     ;;
+ esac],
+ [OBJC_BOEHM_GC=''; OBJC_BOEHM_GC_INCLUDES=''])
+ AC_SUBST(OBJC_BOEHM_GC)
+ AC_SUBST(OBJC_BOEHM_GC_INCLUDES)
++AC_SUBST(OBJC_BOEHM_GC_LIBS)
+ 
+ # -----------
+ # Directories
+
--- gcj-4.2-4.2.4.orig/debian/patches/ignore-comp-fail.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ignore-comp-fail.dpatch
@@ -0,0 +1,38 @@
+#! /bin/sh -e
+
+# DP: Ignore the bootstrap comparision failure
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/Makefile.in~	2004-02-06 08:03:12.000000000 +0100
++++ gcc/Makefile.in	2004-02-14 10:27:19.000000000 +0100
+@@ -3567,7 +3567,9 @@
+ 	if [ -f .bad_compare ]; then \
+ 	  echo "Bootstrap comparison failure!"; \
+ 	  cat .bad_compare; \
+-	  exit 1; \
++	  echo ""; \
++	  echo "Ignore the comparision failure!"; \
++	  true; \
+ 	else \
+ 	  case "$@" in \
+ 	    *-lean ) rm -rf stage$$stage ;; \
--- gcj-4.2-4.2.4.orig/debian/patches/svn-gdc-updates.dpatch
+++ gcj-4.2-4.2.4/debian/patches/svn-gdc-updates.dpatch
@@ -0,0 +1,27 @@
+#! /bin/sh -e
+
+# svn-gdc-updates.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Update gdc to upstream SVN 2008xxxx
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-fjump.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-fjump.dpatch
@@ -0,0 +1,318 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: gcc/config/m68k/m68k.md:
+# DP: always use as fjcc pseudo op, we rely heavily on as 
+# DP: to generate the right size for the jump instructions
+# DP: fixes #359281
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.md |   90 ++++++++++++++----------------------------------
+ 1 file changed, 27 insertions(+), 63 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -5781,10 +5781,7 @@
+ 		      (pc)))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbeq %l0", "fbeq %l0", "jbeq %l0");
+-  else
+-    OUTPUT_JUMP ("jeq %l0", "fjeq %l0", "jeq %l0");
++  OUTPUT_JUMP ("jeq %l0", "fjeq %l0", "jeq %l0");
+ })
+ 
+ (define_insn "bne"
+@@ -5795,10 +5792,7 @@
+ 		      (pc)))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbne %l0", "fbne %l0", "jbne %l0");
+-  else
+-    OUTPUT_JUMP ("jne %l0", "fjne %l0", "jne %l0");
++  OUTPUT_JUMP ("jne %l0", "fjne %l0", "jne %l0");
+ })
+ 
+ (define_insn "bgt"
+@@ -5809,10 +5803,7 @@
+ 		      (pc)))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbgt %l0", "fbgt %l0", 0);
+-  else
+-    OUTPUT_JUMP ("jgt %l0", "fjgt %l0", 0);
++  OUTPUT_JUMP ("jgt %l0", "fjgt %l0", 0);
+ })
+ 
+ (define_insn "bgtu"
+@@ -5834,10 +5825,7 @@
+ 		      (pc)))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jblt %l0", "fblt %l0", "jbmi %l0");
+-  else
+-    OUTPUT_JUMP ("jlt %l0", "fjlt %l0", "jmi %l0");
++  OUTPUT_JUMP ("jlt %l0", "fjlt %l0", "jmi %l0");
+ })
+ 
+ (define_insn "bltu"
+@@ -5859,10 +5847,7 @@
+ 		      (pc)))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbge %l0", "fbge %l0", "jbpl %l0");
+-  else
+-    OUTPUT_JUMP ("jge %l0", "fjge %l0", "jpl %l0");
++  OUTPUT_JUMP ("jge %l0", "fjge %l0", "jpl %l0");
+ })
+ 
+ (define_insn "bgeu"
+@@ -5884,10 +5869,7 @@
+ 		      (pc)))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jble %l0", "fble %l0", 0);
+-  else
+-    OUTPUT_JUMP ("jle %l0", "fjle %l0", 0);
++  OUTPUT_JUMP ("jle %l0", "fjle %l0", 0);
+ })
+ 
+ (define_insn "bleu"
+@@ -5909,7 +5891,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbor %l0" : "fjor %l0";
++  return "fjor %l0";
+ })
+ 
+ (define_insn "bunordered"
+@@ -5920,7 +5902,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbun %l0" : "fjun %l0";
++  return "fjun %l0";
+ })
+ 
+ (define_insn "buneq"
+@@ -5931,7 +5913,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbueq %l0" : "fjueq %l0";
++  return "fjueq %l0";
+ })
+ 
+ (define_insn "bunge"
+@@ -5942,7 +5924,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbuge %l0" : "fjuge %l0";
++  return "fjuge %l0";
+ })
+ 
+ (define_insn "bungt"
+@@ -5953,7 +5935,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbugt %l0" : "fjugt %l0";
++  return "fjugt %l0";
+ })
+ 
+ (define_insn "bunle"
+@@ -5964,7 +5946,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbule %l0" : "fjule %l0";
++  return "fjule %l0";
+ })
+ 
+ (define_insn "bunlt"
+@@ -5975,7 +5957,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbult %l0" : "fjult %l0";
++  return "fjult %l0";
+ })
+ 
+ (define_insn "bltgt"
+@@ -5986,7 +5968,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbogl %l0" : "fjogl %l0";
++  return "fjogl %l0";
+ })
+ 
+ ;; Negated conditional jump instructions.
+@@ -5999,10 +5981,7 @@
+ 		      (label_ref (match_operand 0 "" ""))))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbne %l0", "fbne %l0", "jbne %l0");
+-  else
+-    OUTPUT_JUMP ("jne %l0", "fjne %l0", "jne %l0");
++  OUTPUT_JUMP ("jne %l0", "fjne %l0", "jne %l0");
+ })
+ 
+ (define_insn ""
+@@ -6013,10 +5992,7 @@
+ 		      (label_ref (match_operand 0 "" ""))))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbeq %l0", "fbeq %l0", "jbeq %l0");
+-  else
+-    OUTPUT_JUMP ("jeq %l0", "fjeq %l0", "jeq %l0");
++  OUTPUT_JUMP ("jeq %l0", "fjeq %l0", "jeq %l0");
+ })
+ 
+ (define_insn ""
+@@ -6027,10 +6003,7 @@
+ 		      (label_ref (match_operand 0 "" ""))))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jble %l0", "fbngt %l0", 0);
+-  else
+-    OUTPUT_JUMP ("jle %l0", "fjngt %l0", 0);
++  OUTPUT_JUMP ("jle %l0", "fjngt %l0", 0);
+ })
+ 
+ (define_insn ""
+@@ -6052,10 +6025,7 @@
+ 		      (label_ref (match_operand 0 "" ""))))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbge %l0", "fbnlt %l0", "jbpl %l0");
+-  else
+-    OUTPUT_JUMP ("jge %l0", "fjnlt %l0", "jpl %l0");
++  OUTPUT_JUMP ("jge %l0", "fjnlt %l0", "jpl %l0");
+ })
+ 
+ (define_insn ""
+@@ -6077,10 +6047,7 @@
+ 		      (label_ref (match_operand 0 "" ""))))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jblt %l0", "fbnge %l0", "jbmi %l0");
+-  else
+-    OUTPUT_JUMP ("jlt %l0", "fjnge %l0", "jmi %l0");
++  OUTPUT_JUMP ("jlt %l0", "fjnge %l0", "jmi %l0");
+ })
+ 
+ (define_insn ""
+@@ -6102,10 +6069,7 @@
+ 		      (label_ref (match_operand 0 "" ""))))]
+   ""
+ {
+-  if (MOTOROLA)
+-    OUTPUT_JUMP ("jbgt %l0", "fbnle %l0", 0);
+-  else
+-    OUTPUT_JUMP ("jgt %l0", "fjnle %l0", 0);
++  OUTPUT_JUMP ("jgt %l0", "fjnle %l0", 0);
+ })
+ 
+ (define_insn ""
+@@ -6127,7 +6091,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbun %l0" : "fjun %l0";
++  return "fjun %l0";
+ })
+ 
+ (define_insn "*bunordered_rev"
+@@ -6138,7 +6102,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbor %l0" : "fjor %l0";
++  return "fjor %l0";
+ })
+ 
+ (define_insn "*buneq_rev"
+@@ -6149,7 +6113,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbogl %l0" : "fjogl %l0";
++  return "fjogl %l0";
+ })
+ 
+ (define_insn "*bunge_rev"
+@@ -6160,7 +6124,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbolt %l0" : "fjolt %l0";
++  return "fjolt %l0";
+ })
+ 
+ (define_insn "*bungt_rev"
+@@ -6182,7 +6146,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbogt %l0" : "fjogt %l0";
++  return "fjogt %l0";
+ })
+ 
+ (define_insn "*bunlt_rev"
+@@ -6193,7 +6157,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fboge %l0" : "fjoge %l0";
++  return "fjoge %l0";
+ })
+ 
+ (define_insn "*bltgt_rev"
+@@ -6204,7 +6168,7 @@
+   "TARGET_68881"
+ {
+   gcc_assert (cc_prev_status.flags & CC_IN_68881);
+-  return MOTOROLA ? "fbueq %l0" : "fjueq %l0";
++  return "fjueq %l0";
+ })
+ 
+ ;; Unconditional and other jump instructions
--- gcj-4.2-4.2.4.orig/debian/patches/pr27880.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr27880.dpatch
@@ -0,0 +1,90 @@
+#! /bin/sh -e
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# DP: PR target/27880: Restore static linking on ia64 with system libunwind
+# DP: by adding unwind-compat to the static libgcc.
+
+2006-06-19  Andreas Schwab  <schwab@suse.de>
+
+	PR target/27880
+	* unwind-compat.c: Wrap everything except _Unwind_GetIPInfo inside
+	SHARED.
+	* config/t-libunwind (LIB2ADDEHSTATIC): Add
+	$(srcdir)/unwind-compat.c.
+
+Index: gcc/config/t-libunwind
+===================================================================
+--- gcc/config/t-libunwind	(revision 114767)
++++ gcc/config/t-libunwind	(working copy)
+@@ -6,7 +6,8 @@
+ SHLIB_LC = -lunwind -lc
+ LIB2ADDEH = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c \
+   $(srcdir)/unwind-compat.c $(srcdir)/unwind-dw2-fde-compat.c
+-LIB2ADDEHSTATIC = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c
++LIB2ADDEHSTATIC = $(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c \
++  $(srcdir)/unwind-compat.c
+ 
+ T_CFLAGS += -DUSE_LIBUNWIND_EXCEPTIONS
+ TARGET_LIBGCC2_CFLAGS += -DUSE_GAS_SYMVER
+Index: gcc/unwind-compat.c
+===================================================================
+--- gcc/unwind-compat.c	(revision 114767)
++++ gcc/unwind-compat.c	(working copy)
+@@ -35,6 +35,7 @@
+ #include "unwind-dw2-fde.h"
+ #include "unwind-compat.h"
+ 
++#ifdef SHARED
+ extern _Unwind_Reason_Code __libunwind_Unwind_Backtrace
+   (_Unwind_Trace_Fn, void *);
+ 
+@@ -136,13 +137,6 @@ _Unwind_GetIP (struct _Unwind_Context *c
+ }
+ symver (_Unwind_GetIP, GCC_3.0);
+ 
+-_Unwind_Ptr
+-_Unwind_GetIPInfo (struct _Unwind_Context *context, int *ip_before_insn)
+-{
+-  *ip_before_insn = 0;
+-  return __libunwind_Unwind_GetIP (context);
+-}
+-
+ extern void *__libunwind_Unwind_GetLanguageSpecificData
+   (struct _Unwind_Context *);
+ 
+@@ -212,4 +206,14 @@ _Unwind_SetIP (struct _Unwind_Context *c
+   return __libunwind_Unwind_SetIP (context, val);
+ }
+ symver (_Unwind_SetIP, GCC_3.0);
++#endif /* SHARED */
++
++extern _Unwind_Ptr __libunwind_Unwind_GetIP (struct _Unwind_Context *);
++
++_Unwind_Ptr
++_Unwind_GetIPInfo (struct _Unwind_Context *context, int *ip_before_insn)
++{
++  *ip_before_insn = 0;
++  return __libunwind_Unwind_GetIP (context);
++}
+ #endif
+
--- gcj-4.2-4.2.4.orig/debian/patches/cross-fixes.dpatch
+++ gcj-4.2-4.2.4/debian/patches/cross-fixes.dpatch
@@ -0,0 +1,146 @@
+#! /bin/sh -e
+
+# DP: Fix the linker error when creating an xcc for ia64
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        cd ${dir}gcc && autoconf
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.orig/gcc/config/ia64/fde-glibc.c gcc-4.0.0.new/gcc/config/ia64/fde-glibc.c
+--- gcc-4.0.0.orig/gcc/config/ia64/fde-glibc.c	2003-11-02 18:35:20.000000000 +0100
++++ gcc-4.0.0.new/gcc/config/ia64/fde-glibc.c	2005-05-15 02:42:27.675247674 +0200
+@@ -31,6 +31,7 @@
+ #ifndef _GNU_SOURCE
+ #define _GNU_SOURCE 1
+ #endif
++#ifndef inhibit_libc
+ #include "config.h"
+ #include <stddef.h>
+ #include <stdlib.h>
+@@ -162,3 +163,5 @@ _Unwind_FindTableEntry (void *pc, unsign
+ 
+   return data.ret;
+ }
++
++#endif
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.orig/gcc/config/ia64/unwind-ia64.c gcc-4.0.0.new/gcc/config/ia64/unwind-ia64.c
+--- gcc-4.0.0.orig/gcc/config/ia64/unwind-ia64.c	2005-04-06 05:50:36.000000000 +0200
++++ gcc-4.0.0.new/gcc/config/ia64/unwind-ia64.c	2005-05-15 02:43:10.842199954 +0200
+@@ -30,7 +30,7 @@
+    This exception does not however invalidate any other reasons why
+    the executable file might be covered by the GNU General Public License.  */
+ 
+-
++#ifndef inhibit_libc
+ #include "tconfig.h"
+ #include "tsystem.h"
+ #include "coretypes.h"
+@@ -2404,3 +2404,4 @@ alias (_Unwind_SetIP);
+ #endif
+ 
+ #endif
++#endif
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.orig/gcc/config/pa/linux-unwind.h gcc-4.0.0.new/gcc/config/pa/linux-unwind.h
+--- gcc-4.0.0.orig/gcc/config/pa/linux-unwind.h	2005-02-11 02:46:20.000000000 +0100
++++ gcc-4.0.0.new/gcc/config/pa/linux-unwind.h	2005-05-15 02:37:02.000000000 +0200
+@@ -29,6 +29,7 @@ Boston, MA 02111-1307, USA.  */
+ /* Do code reading to identify a signal frame, and set the frame
+    state data appropriately.  See unwind-dw2.c for the structs.  */
+ 
++#ifndef inhibit_libc
+ #include <signal.h>
+ #include <sys/ucontext.h>
+ 
+@@ -136,3 +137,5 @@ pa32_fallback_frame_state (struct _Unwin
+   fs->retaddr_column = DWARF_ALT_FRAME_RETURN_COLUMN;
+   return _URC_NO_REASON;
+ }
++
++#endif
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.orig/gcc/config/sh/linux-unwind.h gcc-4.0.0.new/gcc/config/sh/linux-unwind.h
+--- gcc-4.0.0.orig/gcc/config/sh/linux-unwind.h	2005-02-11 02:12:57.000000000 +0100
++++ gcc-4.0.0.new/gcc/config/sh/linux-unwind.h	2005-05-15 02:44:31.000000000 +0200
+@@ -29,6 +29,7 @@ Boston, MA 02111-1307, USA.  */
+ /* Do code reading to identify a signal frame, and set the frame
+    state data appropriately.  See unwind-dw2.c for the structs.  */
+ 
++#ifndef inhibit_libc
+ #include <signal.h>
+ #include <sys/ucontext.h>
+ #include "insn-constants.h"
+@@ -169,3 +170,4 @@ sh_fallback_frame_state (struct _Unwind_
+   return _URC_NO_REASON;
+ }
+ #endif /* defined (__SH5__) */
++#endif
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.orig/gcc/unwind-compat.c gcc-4.0.0.new/gcc/unwind-compat.c
+--- gcc-4.0.0.orig/gcc/unwind-compat.c	2004-09-04 02:15:40.000000000 +0200
++++ gcc-4.0.0.new/gcc/unwind-compat.c	2005-05-15 02:41:17.000000000 +0200
+@@ -29,6 +29,7 @@
+    02110-1301, USA.  */
+ 
+ #if defined (USE_GAS_SYMVER) && defined (USE_LIBUNWIND_EXCEPTIONS)
++#ifndef inhibit_libc
+ #include "tconfig.h"
+ #include "tsystem.h"
+ #include "unwind.h"
+@@ -204,3 +205,4 @@ _Unwind_SetIP (struct _Unwind_Context *c
+ }
+ symver (_Unwind_SetIP, GCC_3.0);
+ #endif
++#endif
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.orig/gcc/unwind-generic.h gcc-4.0.0.new/gcc/unwind-generic.h
+--- gcc-4.0.0.orig/gcc/unwind-generic.h	2004-11-30 09:15:39.000000000 +0100
++++ gcc-4.0.0.new/gcc/unwind-generic.h	2005-05-15 02:38:33.000000000 +0200
+@@ -202,6 +202,7 @@ extern _Unwind_Reason_Code _Unwind_SjLj_
+    compatible with the standard ABI for IA-64, we inline these.  */
+ 
+ #ifdef __ia64__
++#ifndef inhibit_libc
+ #include <stdlib.h>
+ 
+ static inline _Unwind_Ptr
+@@ -220,6 +221,7 @@ _Unwind_GetTextRelBase (struct _Unwind_C
+ 
+ /* @@@ Retrieve the Backing Store Pointer of the given context.  */
+ extern _Unwind_Word _Unwind_GetBSP (struct _Unwind_Context *);
++#endif
+ #else
+ extern _Unwind_Ptr _Unwind_GetDataRelBase (struct _Unwind_Context *);
+ extern _Unwind_Ptr _Unwind_GetTextRelBase (struct _Unwind_Context *);
+diff -NurpP -x '*.orig' -x '*.libc' gcc-4.0.0.new/gcc/config/alpha/linux-unwind.h gcc-4.0.0.new2/gcc/config/alpha/linux-unwind.h
+--- gcc-4.0.0.new/gcc/config/alpha/linux-unwind.h	2005-02-11 02:12:54.000000000 +0100
++++ gcc-4.0.0.new2/gcc/config/alpha/linux-unwind.h	2005-05-15 05:09:16.000000000 +0200
+@@ -29,6 +29,7 @@ Boston, MA 02111-1307, USA.  */
+ /* Do code reading to identify a signal frame, and set the frame
+    state data appropriately.  See unwind-dw2.c for the structs.  */
+ 
++#ifndef inhibit_libc
+ #include <signal.h>
+ #include <sys/ucontext.h>
+ 
+@@ -80,3 +81,5 @@ alpha_fallback_frame_state (struct _Unwi
+   fs->retaddr_column = 64;
+   return _URC_NO_REASON;
+ }
++
++#endif
--- gcj-4.2-4.2.4.orig/debian/patches/boehm-gc-getnprocs.dpatch
+++ gcj-4.2-4.2.4/debian/patches/boehm-gc-getnprocs.dpatch
@@ -0,0 +1,39 @@
+#! /bin/sh -e
+
+# DP: boehm-gc/pthread_support.c (GC_get_nprocs): Use sysconf as fallback.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: boehm-gc/pthread_support.c
+===================================================================
+--- boehm-gc/pthread_support.c	(revision 127207)
++++ boehm-gc/pthread_support.c	(working copy)
+@@ -724,7 +724,8 @@
+     f = open("/proc/stat", O_RDONLY);
+     if (f < 0 || (len = STAT_READ(f, stat_buf, STAT_BUF_SIZE)) < 100) {
+ 	WARN("Couldn't read /proc/stat\n", 0);
+-	return -1;
++	/* Fallback to sysconf after the warning */
++	return sysconf(_SC_NPROCESSORS_ONLN);
+     }
+     for (i = 0; i < len - 100; ++i) {
+         if (stat_buf[i] == '\n' && stat_buf[i+1] == 'c'
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-limit_reload.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-limit_reload.dpatch
@@ -0,0 +1,48 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: correctly limit reload class
+# DP: fixes 375522
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# append the patch here and adjust the -p? flag in the patch calls.
+
+---
+ gcc/config/m68k/m68k.h |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: gcc-4.1/gcc/config/m68k/m68k.h
+===================================================================
+--- gcc-4.1.orig/gcc/config/m68k/m68k.h
++++ gcc-4.1/gcc/config/m68k/m68k.h
+@@ -433,7 +433,7 @@ extern enum reg_class regno_reg_class[];
+    assumption that if the class is not ADDR_REGS, then it must be a superset
+    of DATA_REGS.  */
+ #define LIMIT_RELOAD_CLASS(MODE, CLASS) \
+-  (((MODE) == QImode && (CLASS) != ADDR_REGS)	\
++  (((MODE) == QImode && (CLASS) == ADDR_REGS)	\
+    ? DATA_REGS					\
+    : (CLASS))
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/pr28102.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr28102.dpatch
@@ -0,0 +1,41 @@
+#! /bin/sh -e
+
+# DP: Apply proposed fix for PR target/28102.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2006-07-15  Alfred M. Szmidt  <ams@gnu.org>
+
+       * config/i386/gnu.h (TARGET_C99_FUNCTIONS): Undefine macro.
+
+Index: gcc/config/i386/gnu.h
+===================================================================
+--- gcc/config/i386/gnu.h       (revision 115472)
++++ gcc/config/i386/gnu.h       (working copy)
+@@ -36,3 +36,5 @@
+
+ /* FIXME: Is a Hurd-specific fallback mechanism necessary?  */
+ #undef MD_UNWIND_SUPPORT
++
++#undef TARGET_C99_FUNCTIONS /* config.gcc includes i386/linux.h.  */
+
+
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-4.2.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-4.2.dpatch
@@ -0,0 +1,624 @@
+#! /bin/sh -e
+
+# gdc-4.2.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Setup gcc-4.2.x for D.
+
+dir=
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+
+exit 0
+
+--- gcc/DEV-PHASE	2008-02-03 20:06:28.000000000 +0000
++++ gcc/DEV-PHASE	2008-02-03 19:59:11.000000000 +0000
+@@ -0,0 +1 @@
++prerelease gdc 0.25 20080312, using dmd 1.024
+--- gcc/cgraph.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/cgraph.c	2008-02-03 19:57:27.000000000 +0000
+@@ -198,6 +198,7 @@
+ cgraph_node (tree decl)
+ {
+   struct cgraph_node key, *node, **slot;
++  tree context;
+ 
+   gcc_assert (TREE_CODE (decl) == FUNCTION_DECL);
+ 
+@@ -219,15 +220,20 @@
+   node = cgraph_create_node ();
+   node->decl = decl;
+   *slot = node;
+-  if (DECL_CONTEXT (decl) && TREE_CODE (DECL_CONTEXT (decl)) == FUNCTION_DECL)
++  if (!DECL_NO_STATIC_CHAIN (decl))
+     {
+-      node->origin = cgraph_node (DECL_CONTEXT (decl));
+-      node->next_nested = node->origin->nested;
+-      node->origin->nested = node;
+-      node->master_clone = node;
+-    }
+-  return node;
+-}
++       context = decl_function_context (decl);
++       if (context)
++         {
++ 	   node->origin = cgraph_node (context);
++ 	   node->next_nested = node->origin->nested;
++ 	   node->origin->nested = node;
++ 	   node->master_clone = node;
++         }
++      }
++    return node;
++  }
++
+ 
+ /* Insert already constructed node into hashtable.  */
+ 
+--- gcc/dwarf2out.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/dwarf2out.c	2008-02-03 19:57:28.000000000 +0000
+@@ -5407,7 +5407,8 @@
+ 
+   return (lang == DW_LANG_C || lang == DW_LANG_C89 || lang == DW_LANG_ObjC
+ 	  || lang == DW_LANG_C99
+-	  || lang == DW_LANG_C_plus_plus || lang == DW_LANG_ObjC_plus_plus);
++	  || lang == DW_LANG_C_plus_plus || lang == DW_LANG_ObjC_plus_plus
++	  || lang == DW_LANG_D);
+ }
+ 
+ /* Return TRUE if the language is C++.  */
+@@ -12381,6 +12382,8 @@
+     language = DW_LANG_ObjC;
+   else if (strcmp (language_string, "GNU Objective-C++") == 0)
+     language = DW_LANG_ObjC_plus_plus;
++  else if (strcmp (language_string, "GNU D") == 0)
++    language = DW_LANG_D;
+   else
+     language = DW_LANG_C89;
+ 
+@@ -13475,7 +13478,7 @@
+ 
+       /* For local statics lookup proper context die.  */
+       if (TREE_STATIC (decl) && decl_function_context (decl))
+-	context_die = lookup_decl_die (DECL_CONTEXT (decl));
++	context_die = lookup_decl_die (decl_function_context (decl));
+ 
+       /* If we are in terse mode, don't generate any DIEs to represent any
+ 	 variable declarations or definitions.  */
+--- gcc/expr.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/expr.c	2008-02-03 19:57:28.000000000 +0000
+@@ -8747,6 +8747,11 @@
+       /* Lowered by gimplify.c.  */
+       gcc_unreachable ();
+ 
++    case STATIC_CHAIN_EXPR:
++    case STATIC_CHAIN_DECL:
++      /* Lowered by tree-nested.c */
++      gcc_unreachable ();
++    
+     case EXC_PTR_EXPR:
+       return get_exception_pointer (cfun);
+ 
+--- gcc/function.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/function.c	2008-02-03 19:57:28.000000000 +0000
+@@ -3022,7 +3022,8 @@
+       FUNCTION_ARG_ADVANCE (all.args_so_far, data.promoted_mode,
+ 			    data.passed_type, data.named_arg);
+ 
+-      assign_parm_adjust_stack_rtl (&data);
++      if (!cfun->naked)
++        assign_parm_adjust_stack_rtl (&data);
+ 
+       if (assign_parm_setup_block_p (&data))
+ 	assign_parm_setup_block (&all, parm, &data);
+@@ -3037,7 +3038,8 @@
+ 
+   /* Output all parameter conversion instructions (possibly including calls)
+      now that all parameters have been copied out of hard registers.  */
+-  emit_insn (all.conversion_insns);
++  if (!cfun->naked)
++    emit_insn (all.conversion_insns);
+ 
+   /* If we are receiving a struct value address as the first argument, set up
+      the RTL for the function result. As this might require code to convert
+@@ -3167,6 +3169,9 @@
+   struct assign_parm_data_all all;
+   tree fnargs, parm, stmts = NULL;
+ 
++  if (cfun->naked)
++    return NULL;
++
+   assign_parms_initialize_all (&all);
+   fnargs = assign_parms_augmented_arg_list (&all);
+ 
+@@ -4148,11 +4153,14 @@
+       tree parm = cfun->static_chain_decl;
+       rtx local = gen_reg_rtx (Pmode);
+ 
+-      set_decl_incoming_rtl (parm, static_chain_incoming_rtx);
+       SET_DECL_RTL (parm, local);
+       mark_reg_pointer (local, TYPE_ALIGN (TREE_TYPE (TREE_TYPE (parm))));
+ 
+-      emit_move_insn (local, static_chain_incoming_rtx);
++      if (! cfun->custom_static_chain)
++        {
++	    set_decl_incoming_rtl (parm, static_chain_incoming_rtx);
++	    emit_move_insn (local, static_chain_incoming_rtx);
++	}
+     }
+ 
+   /* If the function receives a non-local goto, then store the
+@@ -5064,6 +5072,10 @@
+   rtx epilogue_end = NULL_RTX;
+ #endif
+   edge_iterator ei;
++  
++  if (cfun->naked)
++      return;
++
+ 
+ #ifdef HAVE_prologue
+   if (HAVE_prologue)
+--- gcc/function.h	2008-02-03 19:56:05.000000000 +0000
++++ gcc/function.h	2008-02-03 19:57:28.000000000 +0000
+@@ -462,6 +462,14 @@
+   /* Number of units of floating point registers that need saving in stdarg
+      function.  */
+   unsigned int va_list_fpr_size : 8;
++
++  /* Nonzero if static chain is initialized by something other than
++     static_chain_incoming_rtx. */
++  unsigned int custom_static_chain : 1;
++
++  /* Nonzero if no code should be generated for prologues, copying
++     parameters, etc. */
++  unsigned int naked : 1;
+ };
+ 
+ /* If va_list_[gf]pr_size is set to this, it means we don't know how
+--- gcc/gcc.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/gcc.c	2008-02-03 19:57:28.000000000 +0000
+@@ -126,6 +126,9 @@
+ /* Flag set by cppspec.c to 1.  */
+ int is_cpp_driver;
+ 
++/* Flag set by drivers needing Pthreads. */
++int need_pthreads;
++
+ /* Flag saying to pass the greatest exit code returned by a sub-process
+    to the calling program.  */
+ static int pass_exit_codes;
+@@ -464,6 +467,7 @@
+ 	assembler has done its job.
+  %D	Dump out a -L option for each directory in startfile_prefixes.
+ 	If multilib_dir is set, extra entries are generated with it affixed.
++ %N     Output the currently selected multilib directory name.
+  %l     process LINK_SPEC as a spec.
+  %L     process LIB_SPEC as a spec.
+  %G     process LIBGCC_SPEC as a spec.
+@@ -892,6 +896,8 @@
+ #endif
+ #endif
+ 
++#define GCC_SPEC_FORMAT_4 1
++
+ /* Record the mapping from file suffixes for compilation specs.  */
+ 
+ struct compiler
+@@ -3945,6 +3951,10 @@
+ 	}
+     }
+ 
++  if (need_pthreads)
++      n_switches++;
++
++
+   if (save_temps_flag && use_pipes)
+     {
+       /* -save-temps overrides -pipe, so that temp files are produced */
+@@ -4283,6 +4293,18 @@
+ 	}
+     }
+ 
++  if (need_pthreads)
++    {
++	switches[n_switches].part1 = "pthread";
++	switches[n_switches].args = 0;
++	switches[n_switches].live_cond = SWITCH_OK;
++	/* Do not print an error if there is not expansion for -pthread. */
++	switches[n_switches].validated = 1;
++	switches[n_switches].ordering = 0;
++
++	n_switches++;
++    }
++  
+   switches[n_switches].part1 = 0;
+   infiles[n_infiles].name = 0;
+ }
+@@ -5215,6 +5237,17 @@
+ 	      return value;
+ 	    break;
+ 
++	  case 'N':
++	    if (multilib_dir)
++	      {
++		arg_going = 1;
++		obstack_grow (&obstack, "-fmultilib-dir=",
++			      strlen ("-fmultilib-dir="));
++	        obstack_grow (&obstack, multilib_dir,
++			      strlen (multilib_dir));
++	      }
++	    break;
++
+ 	    /* Here we define characters other than letters and digits.  */
+ 
+ 	  case '{':
+--- gcc/gcc.h	2008-02-03 19:56:05.000000000 +0000
++++ gcc/gcc.h	2008-02-03 19:57:28.000000000 +0000
+@@ -37,7 +37,7 @@
+    || (CHAR) == 'e' || (CHAR) == 'T' || (CHAR) == 'u' \
+    || (CHAR) == 'I' || (CHAR) == 'm' || (CHAR) == 'x' \
+    || (CHAR) == 'L' || (CHAR) == 'A' || (CHAR) == 'V' \
+-   || (CHAR) == 'B' || (CHAR) == 'b')
++   || (CHAR) == 'B' || (CHAR) == 'b' || (CHAR) == 'J')
+ 
+ /* This defines which multi-letter switches take arguments.  */
+ 
+--- gcc/gimplify.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/gimplify.c	2008-02-03 19:57:28.000000000 +0000
+@@ -1804,12 +1804,16 @@
+ 	      /* Divide the offset by its alignment.  */
+ 	      offset = size_binop (EXACT_DIV_EXPR, offset, factor);
+ 
+-	      if (!is_gimple_min_invariant (offset))
+-		{
+-	          TREE_OPERAND (t, 2) = offset;
+-		  tret = gimplify_expr (&TREE_OPERAND (t, 2), pre_p, post_p,
+-					is_gimple_formal_tmp_reg, fb_rvalue);
+-		  ret = MIN (ret, tret);
++	      /* Would be better to have a look at size_binop ... */
++	      if (offset != NULL_TREE)
++	        {
++	          if (!is_gimple_min_invariant (offset))
++		    {
++	              TREE_OPERAND (t, 2) = offset;
++		      tret = gimplify_expr (&TREE_OPERAND (t, 2), pre_p, post_p,
++					    is_gimple_formal_tmp_reg, fb_rvalue);
++		      ret = MIN (ret, tret);
++		    }
+ 		}
+ 	    }
+ 	}
+@@ -5508,6 +5512,12 @@
+ 	    }
+ 	  break;
+ 
++	case STATIC_CHAIN_EXPR:
++	  /* The argument is used as information only.  No need to gimplify */
++	case STATIC_CHAIN_DECL:  
++	  ret = GS_ALL_DONE;
++	  break;
++
+ 	case TREE_LIST:
+ 	  gcc_unreachable ();
+ 
+--- gcc/real.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/real.c	2008-02-03 19:57:28.000000000 +0000
+@@ -2282,6 +2282,9 @@
+       memset (r->sig, -1, SIGSZ * sizeof (unsigned long));
+       clear_significand_below (r, np2);
+ 
++    if (REAL_MODE_FORMAT_COMPOSITE_P (mode))
++        clear_significand_bit (r, SIGNIFICAND_BITS - fmt->pnan - 1);
++
+       if (fmt->pnan < fmt->p)
+ 	/* This is an IBM extended double format made up of two IEEE
+ 	   doubles.  The value of the long double is the sum of the
+--- gcc/tree.def	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree.def	2008-02-03 19:57:28.000000000 +0000
+@@ -527,6 +527,13 @@
+    Operand 2 is the static chain argument, or NULL.  */
+ DEFTREECODE (CALL_EXPR, "call_expr", tcc_expression, 3)
+ 
++/* Operand 0 is the FUNC_DECL of the outer function for
++   which the static chain is to be computed. */
++DEFTREECODE (STATIC_CHAIN_EXPR, "static_chain_expr", tcc_expression, 1)
++    
++/* Represents a function's static chain.  It can be used as an lvalue. */
++DEFTREECODE (STATIC_CHAIN_DECL, "static_chain_decl", tcc_expression, 0)
++
+ /* Specify a value to compute along with its corresponding cleanup.
+    Operand 0 is the cleanup expression.
+    The cleanup is executed by the first enclosing CLEANUP_POINT_EXPR,
+--- gcc/tree-dump.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree-dump.c	2008-02-03 19:57:28.000000000 +0000
+@@ -605,6 +605,10 @@
+       dump_child ("args", TREE_OPERAND (t, 1));
+       break;
+ 
++    case STATIC_CHAIN_EXPR:
++      dump_child ("func", TREE_OPERAND (t, 0));
++      break;
++
+     case CONSTRUCTOR:
+       {
+ 	unsigned HOST_WIDE_INT cnt;
+--- gcc/tree-gimple.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree-gimple.c	2008-02-03 20:01:21.000000000 +0000
+@@ -71,6 +71,8 @@
+     case VECTOR_CST:
+     case OBJ_TYPE_REF:
+     case ASSERT_EXPR:
++    case STATIC_CHAIN_EXPR: /* not sure if this is right...*/
++    case STATIC_CHAIN_DECL:
+       return true;
+ 
+     default:
+@@ -144,7 +146,10 @@
+ 	  || TREE_CODE (t) == WITH_SIZE_EXPR
+ 	  /* These are complex lvalues, but don't have addresses, so they
+ 	     go here.  */
+-	  || TREE_CODE (t) == BIT_FIELD_REF);
++	  || TREE_CODE (t) == BIT_FIELD_REF
++          /* This is an lvalue because it will be replaced with the real
++	     static chain decl. */
++	  || TREE_CODE (t) == STATIC_CHAIN_DECL);
+ }
+ 
+ /*  Return true if T is a GIMPLE condition.  */
+--- gcc/tree-inline.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree-inline.c	2008-02-03 19:57:28.000000000 +0000
+@@ -554,10 +554,21 @@
+      knows not to copy VAR_DECLs, etc., so this is safe.  */
+   else
+     {
++      if (TREE_CODE (*tp) ==
++	  MODIFY_EXPR &&
++	  TREE_OPERAND (*tp, 0) ==
++	  DECL_STRUCT_FUNCTION (fn)->static_chain_decl)
++	{
++	  /* Don't use special methods to initialize the static chain
++	     if expanding inline.  If this code could somehow be
++	     expanded in expand_start_function, it would not be
++	     necessary to deal with it here. */
++	  *tp = build_empty_stmt ();
++	}
+       /* Here we handle trees that are not completely rewritten.
+ 	 First we detect some inlining-induced bogosities for
+ 	 discarding.  */
+-      if (TREE_CODE (*tp) == MODIFY_EXPR
++      else if (TREE_CODE (*tp) == MODIFY_EXPR
+ 	  && TREE_OPERAND (*tp, 0) == TREE_OPERAND (*tp, 1)
+ 	  && (lang_hooks.tree_inlining.auto_var_in_fn_p
+ 	      (TREE_OPERAND (*tp, 0), fn)))
+@@ -2625,8 +2636,9 @@
+ {
+   tree copy, type;
+ 
+-  gcc_assert (TREE_CODE (decl) == PARM_DECL
+-	      || TREE_CODE (decl) == RESULT_DECL);
++  if (cfun->naked) /* Not sure this is right ... */
++    gcc_assert (TREE_CODE (decl) == PARM_DECL
++	        || TREE_CODE (decl) == RESULT_DECL);
+ 
+   type = TREE_TYPE (decl);
+ 
+--- gcc/tree-nested.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree-nested.c	2008-02-03 19:57:28.000000000 +0000
+@@ -327,6 +327,7 @@
+   if (!decl)
+     {
+       tree type;
++      enum tree_code code;
+ 
+       type = get_frame_type (info->outer);
+       type = build_pointer_type (type);
+@@ -337,12 +338,17 @@
+ 	 Note also that it's represented as a parameter.  This is more
+ 	 close to the truth, since the initial value does come from 
+ 	 the caller.  */
+-      decl = build_decl (PARM_DECL, create_tmp_var_name ("CHAIN"), type);
++      /* If the function has a custom static chain, a VAR_DECL is more
++	 appropriate. */
++      code = DECL_STRUCT_FUNCTION (info->context)->custom_static_chain ?
++	  VAR_DECL : PARM_DECL;
++      decl = build_decl (code, create_tmp_var_name ("CHAIN"), type);
+       DECL_ARTIFICIAL (decl) = 1;
+       DECL_IGNORED_P (decl) = 1;
+       TREE_USED (decl) = 1;
+       DECL_CONTEXT (decl) = info->context;
+-      DECL_ARG_TYPE (decl) = type;
++      if (TREE_CODE (decl) == PARM_DECL)
++	  DECL_ARG_TYPE (decl) = type;
+ 
+       /* Tell tree-inline.c that we never write to this variable, so
+ 	 it can copy-prop the replacement value immediately.  */
+@@ -799,6 +805,8 @@
+ 
+   if (info->context == target_context)
+     {
++      /* might be doing something wrong to need the following line.. */
++      get_frame_type (info);
+       x = build_addr (info->frame_decl, target_context);
+     }
+   else
+@@ -1621,6 +1629,10 @@
+       if (DECL_NO_STATIC_CHAIN (decl))
+ 	break;
+ 
++      /* Don't use a trampoline for a static reference. */
++      if (TREE_STATIC (t))
++	break;
++
+       /* Lookup the immediate parent of the callee, as that's where
+ 	 we need to insert the trampoline.  */
+       for (i = info; i->context != target_context; i = i->outer)
+@@ -1691,6 +1703,14 @@
+ 	}
+       break;
+ 
++    case STATIC_CHAIN_EXPR:
++      *tp = get_static_chain (info, TREE_OPERAND (t, 0), &wi->tsi);
++      break;
++
++    case STATIC_CHAIN_DECL:
++      *tp = get_chain_decl (info);
++      break;
++
+     case RETURN_EXPR:
+     case MODIFY_EXPR:
+     case WITH_SIZE_EXPR:
+@@ -1815,7 +1835,28 @@
+ 	  y = build3 (COMPONENT_REF, TREE_TYPE (field),
+ 		      root->frame_decl, field, NULL_TREE);
+ 	  x = build2 (MODIFY_EXPR, TREE_TYPE (field), y, x);
+-	  append_to_statement_list (x, &stmt_list);
++      /* If the function has a custom static chain, chain_field must
++	 be set after the static chain. */
++      if (DECL_STRUCT_FUNCTION (root->context)->custom_static_chain)
++	{
++	  /* Should use walk_function instead. */
++	  tree_stmt_iterator i =
++	      tsi_start ( BIND_EXPR_BODY (DECL_SAVED_TREE (context)));
++	  while (!tsi_end_p (i))
++	    {
++	      tree t = tsi_stmt (i);
++	      if (TREE_CODE (t) == MODIFY_EXPR &&
++		  TREE_OPERAND (t, 0) == root->chain_decl)
++		{
++		  tsi_link_after(& i, x, TSI_SAME_STMT);
++		  x = NULL_TREE;
++		  break;
++		}
++	    }
++	  gcc_assert(x == NULL_TREE);
++	}
++      else
++	append_to_statement_list (x, &stmt_list);
+ 	}
+     }
+ 
+--- gcc/tree-pretty-print.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree-pretty-print.c	2008-02-03 19:57:28.000000000 +0000
+@@ -1155,6 +1155,16 @@
+ 	pp_string (buffer, " [tail call]");
+       break;
+ 
++    case STATIC_CHAIN_EXPR:
++	pp_string (buffer, "<<static chain of ");
++	dump_generic_node (buffer, TREE_OPERAND (node, 0), spc, flags, false);
++	pp_string (buffer, ">>");
++      break;
++
++    case STATIC_CHAIN_DECL:
++       pp_string (buffer, "<<static chain decl>>");
++       break;
++
+     case WITH_CLEANUP_EXPR:
+       NIY;
+       break;
+--- gcc/varray.h	2008-02-03 19:56:05.000000000 +0000
++++ gcc/varray.h	2008-02-03 19:57:28.000000000 +0000
+@@ -61,6 +61,16 @@
+   NUM_VARRAY_DATA
+ };
+ 
++#ifndef __cplusplus 
++# define VARRAY_STRANGE_1 vdt_rtx
++# define VARRAY_STRANGE_2 vdt_rtvec
++# define VARRAY_STRANGE_3 vdt_tree
++#else
++# define VARRAY_STRANGE_1 vdt_rtx_
++# define VARRAY_STRANGE_2 vdt_rtvec_
++# define VARRAY_STRANGE_3 vdt_tree_
++#endif
++
+ /* Union of various array types that are used.  */
+ typedef union varray_data_tag GTY (()) {
+   char			  GTY ((length ("%0.num_elements"),
+@@ -90,11 +100,11 @@
+   char			 *GTY ((length ("%0.num_elements"),
+ 				tag ("VARRAY_DATA_CPTR")))	vdt_cptr[1];
+   rtx			  GTY ((length ("%0.num_elements"),
+-				tag ("VARRAY_DATA_RTX")))	vdt_rtx[1];
++				tag ("VARRAY_DATA_RTX")))	VARRAY_STRANGE_1[1];
+   rtvec			  GTY ((length ("%0.num_elements"),
+-				tag ("VARRAY_DATA_RTVEC")))	vdt_rtvec[1];
++				tag ("VARRAY_DATA_RTVEC")))	VARRAY_STRANGE_2[1];
+   tree			  GTY ((length ("%0.num_elements"),
+-				tag ("VARRAY_DATA_TREE")))	vdt_tree[1];
++				tag ("VARRAY_DATA_TREE")))	VARRAY_STRANGE_3[1];
+   struct bitmap_head_def *GTY ((length ("%0.num_elements"),
+ 				tag ("VARRAY_DATA_BITMAP")))	vdt_bitmap[1];
+   struct reg_info_def	 *GTY ((length ("%0.num_elements"), skip,
+--- gcc/tree.h	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree.h	2008-02-03 19:57:28.000000000 +0000
+@@ -3535,6 +3535,19 @@
+ 
+ extern tree build_nt (enum tree_code, ...);
+ 
++/* Still required by gdc */
++#if GCC_VERSION >= 3000 || __STDC_VERSION__ >= 199901L
++/* Use preprocessor trickery to map "build" to "buildN" where N is the
++   expected number of arguments.  This is used for both efficiency (no
++   varargs), and checking (verifying number of passed arguments).  */
++#define build(code, ...) \
++  _buildN1(build, _buildC1(__VA_ARGS__))(code, __VA_ARGS__)
++#define _buildN1(BASE, X)       _buildN2(BASE, X)
++#define _buildN2(BASE, X)       BASE##X
++#define _buildC1(...)           _buildC2(__VA_ARGS__,9,8,7,6,5,4,3,2,1,0,0)
++#define _buildC2(x,a1,a2,a3,a4,a5,a6,a7,a8,a9,c,...) c
++#endif
++
+ extern tree build0_stat (enum tree_code, tree MEM_STAT_DECL);
+ #define build0(c,t) build0_stat (c,t MEM_STAT_INFO)
+ extern tree build1_stat (enum tree_code, tree, tree MEM_STAT_DECL);
+--- gcc/tree-sra.c	2008-02-03 19:56:05.000000000 +0000
++++ gcc/tree-sra.c	2008-02-03 19:57:28.000000000 +0000
+@@ -248,6 +248,8 @@
+     case RECORD_TYPE:
+       {
+ 	bool saw_one_field = false;
++	tree last_offset = size_zero_node;
++	tree cmp;
+ 
+ 	for (t = TYPE_FIELDS (type); t ; t = TREE_CHAIN (t))
+ 	  if (TREE_CODE (t) == FIELD_DECL)
+@@ -257,6 +259,11 @@
+ 		  && (tree_low_cst (DECL_SIZE (t), 1)
+ 		      != TYPE_PRECISION (TREE_TYPE (t))))
+ 		goto fail;
++		/* Reject aliased fields created by GDC for anonymous unions. */
++		cmp = fold_binary_to_constant (LE_EXPR, boolean_type_node,
++		  DECL_FIELD_OFFSET (t), last_offset);
++		if (cmp == NULL_TREE || tree_expr_nonzero_p (cmp))
++		  goto fail;
+ 
+ 	      saw_one_field = true;
+ 	    }
+--- libgomp/Makefile.in	2008-02-03 19:56:05.000000000 +0000
++++ libgomp/Makefile.in	2008-02-03 19:57:28.000000000 +0000
+@@ -100,7 +100,7 @@
+ MULTISUBDIR = 
+ MULTIDO = true
+ MULTICLEAN = true
+-INFO_DEPS = libgomp.info
++INFO_DEPS = 
+ am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
+ DVIS = libgomp.dvi
+ PDFS = libgomp.pdf
--- gcj-4.2-4.2.4.orig/debian/patches/ada-default-project-path.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-default-project-path.dpatch
@@ -0,0 +1,101 @@
+#! /bin/sh -e
+
+# DP: - Change the default search path for project files to the one specified
+# DP:   by the Debian Policy for Ada: /usr/share/ada/adainclude.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc.old/ada/prj-ext.adb    2005-11-15 15:01:18.000000000 +0100
++++ gcc/ada/prj-ext.adb        2006-03-22 09:09:51.000000000 +0100
+@@ -282,9 +282,7 @@
+       if Add_Default_Dir then
+          Current_Project_Path :=
+            new String'(Name_Buffer (1 .. Name_Len) & Path_Separator &
+-                       Sdefault.Search_Dir_Prefix.all & ".." &
+-                       Directory_Separator & ".." & Directory_Separator &
+-                       ".." & Directory_Separator & "gnat");
++                       Sdefault.Search_Dir_Prefix.all);
+       else
+          Current_Project_Path := new String'(Name_Buffer (1 .. Name_Len));
+       end if;
+--- gcc.old/ada/gnatls.adb     2005-07-01 03:29:17.000000000 +0200
++++ gcc/ada/gnatls.adb 2006-03-22 12:19:39.000000000 +0100
+@@ -1547,9 +1547,6 @@
+       declare
+          Project_Path : constant String_Access := Getenv (Ada_Project_Path);
+ 
+-         Lib    : constant String :=
+-                    Directory_Separator & "lib" & Directory_Separator;
+-
+          First : Natural;
+          Last  : Natural;
+ 
+@@ -1605,35 +1602,9 @@
+          if Add_Default_Dir then
+             Name_Len := 0;
+             Add_Str_To_Name_Buffer (Sdefault.Search_Dir_Prefix.all);
+-
+-            --  On Windows, make sure that all directory separators are '\'
+-
+-            if Directory_Separator /= '/' then
+-               for J in 1 .. Name_Len loop
+-                  if Name_Buffer (J) = '/' then
+-                     Name_Buffer (J) := Directory_Separator;
+-                  end if;
+-               end loop;
+-            end if;
+-
+-            --  Find the sequence "/lib/"
+-
+-            while Name_Len >= Lib'Length
+-              and then Name_Buffer (Name_Len - 4 .. Name_Len) /= Lib
+-            loop
+-               Name_Len := Name_Len - 1;
+-            end loop;
+-
+-            --  If the sequence "/lib"/ was found, display the default
+-            --  directory <prefix>/lib/gnat/.
+-
+-            if Name_Len >= 5 then
+-               Write_Str ("   ");
+-               Write_Str (Name_Buffer (1 .. Name_Len));
+-               Write_Str ("gnat");
+-               Write_Char (Directory_Separator);
+-               Write_Eol;
+-            end if;
++            Write_Str ("   ");
++            Write_Str (Name_Buffer (1 .. Name_Len));
++            Write_Eol;
+          end if;
+       end;
+ 
+--- gcc.old/ada/Make-lang.in
++++ gcc/ada/Make-lang.in
+@@ -930,7 +930,7 @@
+ 	$(ECHO) "   S1 : constant String := \"$(ADA_INCLUDE_DIR)/\";" >>tmp-sdefault.adb
+ 	$(ECHO) "   S2 : constant String := \"$(ADA_RTL_OBJ_DIR)/\";" >>tmp-sdefault.adb
+ 	$(ECHO) "   S3 : constant String := \"$(target)/\";" >>tmp-sdefault.adb
+-	$(ECHO) "   S4 : constant String := \"$(libsubdir)/\";" >>tmp-sdefault.adb
++	$(ECHO) "   S4 : constant String := \"/usr/share/ada/adainclude/\";" >>tmp-sdefault.adb
+ 	$(ECHO) "   function Include_Dir_Default_Name return String_Ptr is" >>tmp-sdefault.adb
+ 	$(ECHO) "   begin" >>tmp-sdefault.adb
+ 	$(ECHO) "      return Relocate_Path (S0, S1);" >>tmp-sdefault.adb
--- gcj-4.2-4.2.4.orig/debian/patches/sh4-multilib.dpatch
+++ gcj-4.2-4.2.4/debian/patches/sh4-multilib.dpatch
@@ -0,0 +1,45 @@
+#! /bin/sh -e
+
+# sh4-multilib.dpatch from Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Fix multilib (m4/m4-nofpu) for sh4-linux
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/config.gcc	2008-04-24 09:00:54.000000000 +0000
++++ gcc/config.gcc	2008-04-24 09:05:10.000000000 +0000
+@@ -2271,11 +2271,12 @@
+ 	if test x${sh_multilibs} = x ; then
+ 		case ${target} in
+ 		sh64-superh-linux* | \
+-		sh[1234]*)	sh_multilibs=${sh_cpu_target} ;;
+ 		sh64* | sh5*)	sh_multilibs=m5-32media,m5-32media-nofpu,m5-compact,m5-compact-nofpu,m5-64media,m5-64media-nofpu ;;
+-		sh-superh-*)	sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;;
++		sh-superh-* | \
++		sh4-*-linux*)	sh_multilibs=m4,m4-nofpu ;;
+ 		sh*-*-linux*)	sh_multilibs=m1,m3e,m4 ;;
+ 		sh*-*-netbsd*)	sh_multilibs=m3,m3e,m4 ;;
++		sh-superh-*)	sh_multilibs=m4,m4-single,m4-single-only,m4-nofpu ;;
+ 		*) sh_multilibs=m1,m2,m2e,m4,m4-single,m4-single-only,m2a,m2a-single ;;
+ 		esac
+ 		if test x$with_fp = xno; then
--- gcj-4.2-4.2.4.orig/debian/patches/mips-libspec.dpatch
+++ gcj-4.2-4.2.4/debian/patches/mips-libspec.dpatch
@@ -0,0 +1,69 @@
+#! /bin/sh -e
+
+# DP: mips*-linux: Always imply -lpthread for -pthread
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+2007-06-13  Thiemo Seufer  <ths@networkno.de>
+
+	* config/mips/linux.h, config/mips/linux64.h (LIB_SPEC): Always
+	imply -lpthread for -pthread.
+
+
+Index: gcc/config/mips/linux.h
+===================================================================
+--- gcc/config/mips/linux.h	(revision 125681)
++++ gcc/config/mips/linux.h	(working copy)
+@@ -174,9 +174,10 @@
+ 
+ #undef LIB_SPEC
+ #define LIB_SPEC "\
+-%{shared: -lc} \
+-%{!shared: %{pthread:-lpthread} \
+-  %{profile:-lc_p} %{!profile: -lc}}"
++%{pthread:-lpthread} \
++%{shared:-lc} \
++%{!shared: \
++  %{profile:-lc_p} %{!profile:-lc}}"
+ 
+ #define MD_UNWIND_SUPPORT "config/mips/linux-unwind.h"
+ 
+Index: gcc/config/mips/linux64.h
+===================================================================
+--- gcc/config/mips/linux64.h	(revision 125681)
++++ gcc/config/mips/linux64.h	(working copy)
+@@ -34,9 +34,10 @@
+ 
+ #undef LIB_SPEC
+ #define LIB_SPEC "\
+-%{shared: -lc} \
+-%{!shared: %{pthread:-lpthread} \
+-  %{profile:-lc_p} %{!profile: -lc}}"
++%{pthread:-lpthread} \
++%{shared:-lc} \
++%{!shared: \
++  %{profile:-lc_p} %{!profile:-lc}}"
+ 
+ #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1"
+ #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld.so.1"
+
--- gcj-4.2-4.2.4.orig/debian/patches/pr28482.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr28482.dpatch
@@ -0,0 +1,40 @@
+#! /bin/sh -e
+
+# DP: Apply fix to allow libgomp.so to build as a shared library
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+@DPATCH@
+diff -urNad libgomp/configure.tgt libgomp/configure.tgt
+--- libgomp/configure.tgt	2007-07-04 10:19:19.000000000 -0400
++++ libgomp/configure.tgt	2008-07-09 16:09:54.000000000 -0400
+@@ -17,8 +17,8 @@
+   case "${target}" in
+ 
+     *-*-linux*)
+-	XCFLAGS="${XCFLAGS} -ftls-model=initial-exec"
+-	XLDFLAGS="${XLDFLAGS} -Wl,-z,nodlopen"
++#	XCFLAGS="${XCFLAGS} -ftls-model=initial-exec"
++#	XLDFLAGS="${XLDFLAGS} -Wl,-z,nodlopen"
+ 	;;
+   esac
+ fi
--- gcj-4.2-4.2.4.orig/debian/patches/multiarch-include.dpatch
+++ gcj-4.2-4.2.4/debian/patches/multiarch-include.dpatch
@@ -0,0 +1,138 @@
+#! /bin/sh -e
+
+# DP: biarch-include.dpatch
+# DP:
+# DP: Adds biarch include directories
+# DP:     /usr/local/include/<arch>-linux-gnu
+# DP:     /usr/include/<arch>-linux-gnu
+# DP: to the system include paths, depending on 32/64 bit mode.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: gcc/cppdefault.c
+===================================================================
+--- gcc/cppdefault.c	(revision 112832)
++++ gcc/cppdefault.c	(working copy)
+@@ -60,6 +60,7 @@
+ #endif
+ #ifdef LOCAL_INCLUDE_DIR
+     /* /usr/local/include comes before the fixincluded header files.  */
++    { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 2 },
+     { LOCAL_INCLUDE_DIR, 0, 0, 1, 1, 0 },
+ #endif
+ #ifdef PREFIX_INCLUDE_DIR
+@@ -83,6 +84,7 @@
+ #endif
+ #ifdef STANDARD_INCLUDE_DIR
+     /* /usr/include comes dead last.  */
++    { STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT, 0, 0, 1, 2 },
+     { STANDARD_INCLUDE_DIR, STANDARD_INCLUDE_COMPONENT, 0, 0, 1, 0 },
+ #endif
+     { 0, 0, 0, 0, 0, 0 }
+Index: gcc/c-incpath.c
+===================================================================
+--- gcc/c-incpath.c	(revision 112832)
++++ gcc/c-incpath.c	(working copy)
+@@ -30,6 +30,7 @@
+ #include "intl.h"
+ #include "c-incpath.h"
+ #include "cppdefault.h"
++#include "errors.h"
+ 
+ /* Windows does not natively support inodes, and neither does MSDOS.
+    Cygwin's emulation can generate non-unique inodes, so don't use it.
+@@ -121,6 +121,31 @@
+     }
+ }
+ 
++struct multiarch_mapping
++{
++  const char *const multilib;
++  const char *const multiarch;
++};
++
++const struct multiarch_mapping multiarch_mappings[]
++= {
++#include "multiarch.inc"
++  { 0, 0 }
++};
++
++static const char*
++multilib_to_multiarch (const char *imultilib)
++{
++  const struct multiarch_mapping *p;
++
++  for (p = multiarch_mappings; p->multiarch; p++)
++    {
++      if (!strcmp(p->multilib, imultilib ? imultilib : ""))
++	return p->multiarch;
++    }
++  internal_error("no multiarch mapping for multilib (%s)\n", imultilib);
++}
++
+ /* Append the standard include chain defined in cppdefault.c.  */
+ static void
+ add_standard_paths (const char *sysroot, const char *iprefix,
+@@ -128,6 +153,7 @@
+ {
+   const struct default_include *p;
+   size_t len;
++  const char *multiarch;
+ 
+   if (iprefix && (len = cpp_GCC_INCLUDE_DIR_len) != 0)
+     {
+@@ -146,8 +172,15 @@
+ 	      if (!strncmp (p->fname, cpp_GCC_INCLUDE_DIR, len))
+ 		{
+ 		  char *str = concat (iprefix, p->fname + len, NULL);
+-		  if (p->multilib && imultilib)
++		  if (p->multilib == 1 && imultilib)
+ 		    str = concat (str, dir_separator_str, imultilib, NULL);
++		  if (p->multilib == 2)
++		    {
++		      multiarch = multilib_to_multiarch (imultilib);
++		      if (!multiarch)
++			continue;
++		      str = concat (str, dir_separator_str, multiarch, NULL);
++		    }
+ 		  add_path (str, SYSTEM, p->cxx_aware, false);
+ 		}
+ 	    }
+@@ -166,9 +199,17 @@
+ 	  else
+ 	    str = update_path (p->fname, p->component);
+ 
+-	  if (p->multilib && imultilib)
++	  if (p->multilib == 1 && imultilib)
+ 	    str = concat (str, dir_separator_str, imultilib, NULL);
+ 
++	  if (p->multilib == 2)
++	    {
++	      multiarch = multilib_to_multiarch (imultilib);
++	      if (!multiarch)
++		continue;
++	      str = concat (str, dir_separator_str, multiarch, NULL);
++	    }
++
+ 	  add_path (str, SYSTEM, p->cxx_aware, false);
+ 	}
+     }
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-fpcompare.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-fpcompare.dpatch
@@ -0,0 +1,175 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: bring fp compare early to its desired form to relieve reload,
+# DP: allow any fp constant during and after reload (even special constants)
+# DP: in case reload can't find a free register for them.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.c        |    7 +++
+ gcc/config/m68k/m68k.md       |   77 ++++++++++++++++++++----------------------
+ gcc/config/m68k/predicates.md |   13 +++++++
+ 3 files changed, 57 insertions(+), 40 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -2716,6 +2716,13 @@ notice_update_cc (rtx exp, rtx insn)
+   if (((cc_status.value1 && FP_REG_P (cc_status.value1))
+        || (cc_status.value2 && FP_REG_P (cc_status.value2))))
+     cc_status.flags = CC_IN_68881;
++  if (cc_status.value2 && GET_CODE (cc_status.value2) == COMPARE
++      && GET_MODE_CLASS (GET_MODE (XEXP (cc_status.value2, 0))) == MODE_FLOAT)
++    {
++      cc_status.flags = CC_IN_68881;
++      if (!FP_REG_P (XEXP (cc_status.value2, 0)))
++	cc_status.flags |= CC_REVERSED;
++    }
+ }
+ 
+ const char *
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -416,50 +416,34 @@
+ 
+ (define_expand "cmp<mode>"
+   [(set (cc0)
+-	(compare (match_operand:FP 0 "general_operand" "")
+-		 (match_operand:FP 1 "general_operand" "")))]
++	(compare (match_operand:FP 0 "register_operand" "")
++		 (match_operand:FP 1 "fp_src_operand" "")))]
+   "TARGET_HARD_FLOAT"
+-{
+-  m68k_last_compare_had_fp_operands = 1;
+-  if (TARGET_COLDFIRE && !reload_completed)
+-    operands[1] = force_reg (<MODE>mode, operands[1]);
+-})
++  "m68k_last_compare_had_fp_operands = 1;")
+ 
+-(define_insn "cmp<mode>_68881"
++(define_insn "*cmp<mode>_68881"
+   [(set (cc0)
+-	(compare (match_operand:FP 0 "general_operand" "f,m<FP:const>")
+-		 (match_operand:FP 1 "general_operand" "f<FP:dreg>m<FP:const>,f")))]
+-  "TARGET_68881"
+-{
+-  cc_status.flags = CC_IN_68881;
+-  if (FP_REG_P (operands[0]))
+-    {
+-      if (FP_REG_P (operands[1]))
+-	return "fcmp%.x %1,%0";
+-      else
+-        return "fcmp%.<FP:prec> %f1,%0";
+-    }
+-  cc_status.flags |= CC_REVERSED;
+-  return "fcmp%.<FP:prec> %f0,%1";
+-})
++	(compare (match_operand:FP 0 "fp_src_operand" "f,f,<FP:dreg>mF")
++		 (match_operand:FP 1 "fp_src_operand" "f,<FP:dreg>mF,f")))]
++  "TARGET_68881
++   && (register_operand (operands[0], <MODE>mode)
++       || register_operand (operands[1], <MODE>mode))"
++  "@
++   fcmp%.x %1,%0
++   fcmp%.<FP:prec> %f1,%0
++   fcmp%.<FP:prec> %0,%f1")
+ 
+-(define_insn "cmp<mode>_cf"
++(define_insn "*cmp<mode>_cf"
+   [(set (cc0)
+-	(compare (match_operand:FP 0 "general_operand" "f,<FP:dreg><Q>U")
+-		 (match_operand:FP 1 "general_operand" "f<FP:dreg><Q>U,f")))]
+-  "TARGET_COLDFIRE_FPU"
+-{
+-  cc_status.flags = CC_IN_68881;
+-  if (FP_REG_P (operands[0]))
+-    {
+-      if (FP_REG_P (operands[1]))
+-	return "fcmp%.d %1,%0";
+-      else
+-	return "fcmp%.<FP:prec> %f1,%0";
+-    }
+-  cc_status.flags |= CC_REVERSED;
+-  return "fcmp%.<FP:prec> %f0,%1";
+-})
++	(compare (match_operand:FP 0 "fp_src_operand" "f,f,<FP:dreg><Q>U")
++		 (match_operand:FP 1 "fp_src_operand" "f,<FP:dreg><Q>U,f")))]
++  "TARGET_COLDFIRE_FPU
++   && (register_operand (operands[0], <MODE>mode)
++       || register_operand (operands[1], <MODE>mode))"
++  "@
++   fcmp%.d %1,%0
++   fcmp%.<FP:prec> %f1,%0
++   fcmp%.<FP:prec> %0,%f1")
+ 
+ ;; Recognizers for btst instructions.
+ 
+@@ -7151,7 +7135,20 @@
+   ""
+   "trap #7")
+ 
+-(define_insn "conditional_trap"
++(define_expand "conditional_trap"
++  [(trap_if (match_operator 0 "valid_dbcc_comparison_p"
++			    [(cc0) (const_int 0)])
++	    (match_operand:SI 1 "const_int_operand" "I"))]
++  "TARGET_68020"
++{
++  if (m68k_last_compare_had_fp_operands)
++    {
++      m68k_last_compare_had_fp_operands = 0;
++      FAIL;
++    }
++})
++
++(define_insn "*conditional_trap"
+   [(trap_if (match_operator 0 "valid_dbcc_comparison_p"
+ 			    [(cc0) (const_int 0)])
+ 	    (match_operand:SI 1 "const_int_operand" "I"))]
+Index: gcc-4.2/gcc/config/m68k/predicates.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/predicates.md
++++ gcc-4.2/gcc/config/m68k/predicates.md
+@@ -169,3 +169,16 @@
+ (define_predicate "pre_dec_operand"
+   (and (match_code "mem")
+        (match_test "GET_CODE (XEXP (op, 0)) == PRE_DEC")))
++
++;; Special case of general_src_operand, which rejects a few fp
++;; constants (which we prefer in registers) before reload.
++
++(define_predicate "fp_src_operand"
++  (match_operand 0 "general_src_operand")
++{
++  return !CONSTANT_P (op)
++	 || (TARGET_68881
++	     && (!standard_68881_constant_p (op)
++		 || reload_in_progress
++		 || reload_completed));
++})
--- gcj-4.2-4.2.4.orig/debian/patches/libffi-configure.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libffi-configure.dpatch
@@ -0,0 +1,76 @@
+#! /bin/sh -e
+
+# DP: Add --enable-libffi option to toplevel configure script
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- ./configure.in.orig	2006-12-11 11:53:58.776229000 +0100
++++ ./configure.in	2006-12-11 11:54:18.956229000 +0100
+@@ -312,6 +312,16 @@
+ ENABLE_LIBSSP=$enableval,
+ ENABLE_LIBSSP=yes)
+ 
++AC_ARG_ENABLE(libffi,
++[  --enable-libffi        Builds libffi directory],
++ENABLE_LIBFFI=$enableval,
++ENABLE_LIBFFI=yes)
++if test "${ENABLE_LIBFFI}" != "yes" ; then
++  noconfigdirs="$noconfigdirs target-libffi"
++else
++  libgcj="`echo $libgcj | sed 's/target-libffi *//'`"
++fi
++
+ # Save it here so that, even in case of --enable-libgcj, if the Java
+ # front-end isn't enabled, we still get libgcj disabled.
+ libgcj_saved=$libgcj
+--- ./configure.orig	2006-12-11 11:53:58.776229000 +0100
++++ ./configure	2006-12-11 11:55:27.416229000 +0100
+@@ -18,6 +18,8 @@
+ ac_help="$ac_help
+   --enable-libssp        Builds libssp directory"
+ ac_help="$ac_help
++  --enable-libffi        Builds libffi directory"
++ac_help="$ac_help
+   --with-mpfr-dir=PATH    This option has been REMOVED"
+ ac_help="$ac_help
+   --with-mpfr=PATH        Specify prefix directory for installed MPFR package
+@@ -1149,6 +1151,20 @@
+ fi
+ 
+ 
++# Check whether --enable-libffi or --disable-libffi was given.
++if test "${enable_libffi+set}" = set; then
++  enableval="$enable_libffi"
++  ENABLE_LIBFFI=$enableval
++else
++  ENABLE_LIBFFI=yes
++fi
++
++if test "${ENABLE_LIBFFI}" != "yes" ; then
++  noconfigdirs="$noconfigdirs target-libffi"
++else
++  libgcj="`echo $libgcj | sed 's/target-libffi *//'`"
++fi
++
+ # Save it here so that, even in case of --enable-libgcj, if the Java
+ # front-end isn't enabled, we still get libgcj disabled.
+ libgcj_saved=$libgcj
--- gcj-4.2-4.2.4.orig/debian/patches/hurd-fast-math.dpatch
+++ gcj-4.2-4.2.4/debian/patches/hurd-fast-math.dpatch
@@ -0,0 +1,35 @@
+#! /bin/sh -e
+
+# DP: Support -ffast-math on hurd-i386.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/config.gcc	2007-11-16 15:27:19.000000000 +0100
++++ gcc/config.gcc.new	2007-11-16 15:30:25.000000000 +0100
+@@ -1109,6 +1109,7 @@
+ 	tmake_file="${tmake_file} i386/t-linux64 i386/t-crtstuff i386/t-crtfm t-dfprules"
+ 	;;
+ i[34567]86-*-gnu*)
++	tmake_file="${tmake_file} i386/t-crtfm"
+ 	;;
+ i[34567]86-pc-msdosdjgpp*)
+ 	xm_file=i386/xm-djgpp.h
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-autoinc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-autoinc.dpatch
@@ -0,0 +1,158 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: recognize a few more autoinc possibilities
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/flow.c |   55 +++++++++++++++++++++++++++++++++++++++++++++----------
+ 1 file changed, 45 insertions(+), 10 deletions(-)
+
+Index: gcc-4.2/gcc/flow.c
+===================================================================
+--- gcc-4.2.orig/gcc/flow.c
++++ gcc-4.2/gcc/flow.c
+@@ -1801,7 +1801,6 @@ propagate_one_insn (struct propagate_blo
+ 	&& REG_P (SET_DEST (x))
+ 	&& (GET_CODE (SET_SRC (x)) == PLUS
+ 	    || GET_CODE (SET_SRC (x)) == MINUS)
+-	&& XEXP (SET_SRC (x), 0) == SET_DEST (x)
+ 	&& GET_CODE (XEXP (SET_SRC (x), 1)) == CONST_INT
+ 	/* Ok, look for a following memory ref we can combine with.
+ 	   If one is found, change the memory ref to a PRE_INC
+@@ -3502,13 +3501,25 @@ attempt_auto_inc (struct propagate_block
+   rtx set = single_set (incr);
+   rtx q = SET_DEST (set);
+   rtx y = SET_SRC (set);
+-  int opnum = XEXP (y, 0) == incr_reg ? 0 : 1;
++  rtx *loc = &SET_SRC (set);
+   int changed;
+ 
+   /* Make sure this reg appears only once in this insn.  */
+   if (count_occurrences (PATTERN (insn), incr_reg, 1) != 1)
+     return;
+ 
++  if (GET_CODE (y) != PLUS)
++    {
++      if (MEM_P (y) && GET_CODE (XEXP (y, 0)) == PLUS)
++	loc = &XEXP (y, 0);
++      else if (MEM_P (q) && GET_CODE (XEXP (q, 0)) == PLUS)
++	loc = &XEXP (q, 0);
++      else
++	abort();
++      y = *loc;
++      q = NULL_RTX;
++    }
++
+   if (dead_or_set_p (incr, incr_reg)
+       /* Mustn't autoinc an eliminable register.  */
+       && (regno >= FIRST_PSEUDO_REGISTER
+@@ -3520,7 +3531,7 @@ attempt_auto_inc (struct propagate_block
+       if (! validate_change (insn, &XEXP (mem, 0), inc, 0))
+ 	return;
+     }
+-  else if (REG_P (q)
++  else if (q && REG_P (q)
+ 	   /* PREV_INSN used here to check the semi-open interval
+ 	      [insn,incr).  */
+ 	   && ! reg_used_between_p (q,  PREV_INSN (insn), incr)
+@@ -3535,6 +3546,7 @@ attempt_auto_inc (struct propagate_block
+ 	 Change it to q = p, ...*q..., q = q+size.
+ 	 Then fall into the usual case.  */
+       rtx insns, temp;
++      int opnum = XEXP (y, 0) == incr_reg ? 0 : 1;
+ 
+       start_sequence ();
+       emit_move_insn (q, incr_reg);
+@@ -3607,13 +3619,13 @@ attempt_auto_inc (struct propagate_block
+ 
+   /* Modify the old increment-insn to simply copy
+      the already-incremented value of our register.  */
+-  changed = validate_change (incr, &SET_SRC (set), incr_reg, 0);
++  changed = validate_change (incr, loc, incr_reg, 0);
+   gcc_assert (changed);
+ 
+   /* If that makes it a no-op (copying the register into itself) delete
+      it so it won't appear to be a "use" and a "set" of this
+      register.  */
+-  if (REGNO (SET_DEST (set)) == REGNO (incr_reg))
++  if (q && REGNO (q) == REGNO (incr_reg))
+     {
+       /* If the original source was dead, it's dead now.  */
+       rtx note;
+@@ -3687,7 +3699,22 @@ find_auto_inc (struct propagate_block_in
+   y = SET_SRC (set);
+ 
+   if (GET_CODE (y) != PLUS)
+-    return;
++    {
++      if (MEM_P (y) && GET_CODE (XEXP (y, 0)) == PLUS)
++	{
++	  if (reg_overlap_mentioned_p (addr, SET_DEST (set)))
++	    return;
++	  y = XEXP (y, 0);
++	}
++      else
++	{
++	  y = SET_DEST (set);
++	  if (!MEM_P (y) || GET_CODE (XEXP (y, 0)) != PLUS
++	      || reg_overlap_mentioned_p (addr, SET_SRC (set)))
++	    return;
++	  y = XEXP (y, 0);
++	}
++    }
+ 
+   if (REG_P (XEXP (y, 0)) && REGNO (XEXP (y, 0)) == REGNO (addr))
+     inc_val = XEXP (y, 1);
+@@ -4250,10 +4277,6 @@ try_pre_increment_1 (struct propagate_bl
+       && ! dead_or_set_p (y, SET_DEST (x))
+       && try_pre_increment (y, SET_DEST (x), amount))
+     {
+-      /* We have found a suitable auto-increment and already changed
+-	 insn Y to do it.  So flush this increment instruction.  */
+-      propagate_block_delete_insn (insn);
+-
+       /* Count a reference to this reg for the increment insn we are
+ 	 deleting.  When a reg is incremented, spilling it is worse,
+ 	 so we want to make that less likely.  */
+@@ -4263,6 +4286,18 @@ try_pre_increment_1 (struct propagate_bl
+ 	  REG_N_SETS (regno)++;
+ 	}
+ 
++      if (XEXP (SET_SRC (x), 0) != SET_DEST (x))
++	{
++	  int change;
++	  change = validate_change (insn, &SET_SRC (x), XEXP (SET_SRC (x), 0), 0);
++	  gcc_assert(change);
++	  return 0;
++	}
++
++      /* We have found a suitable auto-increment and already changed
++	 insn Y to do it.  So flush this increment instruction.  */
++      propagate_block_delete_insn (insn);
++
+       /* Flush any remembered memories depending on the value of
+ 	 the incremented register.  */
+       invalidate_mems_from_set (pbi, SET_DEST (x));
--- gcj-4.2-4.2.4.orig/debian/patches/ada-gnatvsn.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-gnatvsn.dpatch
@@ -0,0 +1,57 @@
+#! /bin/sh -e
+
+# DP: proposed patch for PR ada/27194.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- orig/gnatvsn.ads	2005-11-15 14:59:02.000000000 +0100
++++ gcc/ada/gnatvsn.ads	2006-04-18 10:00:37.010002000 +0200
+@@ -67,7 +67,7 @@
+    --    GAP
+    --       GNAT Academic Program, similar to Public.
+ 
+-   Ver_Len_Max : constant := 32;
++   Ver_Len_Max : constant := 64;
+    --  Longest possible length for Gnat_Version_String in this or any
+    --  other version of GNAT. This is used by the binder to establish
+    --  space to store any possible version string value for checks. This
+--- orig/gnatvsn.adb	2005-07-01 03:29:17.000000000 +0200
++++ gcc/ada/gnatvsn.adb	2006-04-18 10:00:05.100002000 +0200
+@@ -54,12 +54,13 @@
+    -------------------------
+ 
+    function Gnat_Version_String return String is
+-      NUL_Pos : Positive := 1;
++      NUL_Pos : Positive := Version_String'Last;
+    begin
+-      loop
+-         exit when Version_String (NUL_Pos) = ASCII.NUL;
+-
+-         NUL_Pos := NUL_Pos + 1;
++      for J in Version_String'Range loop
++         if Version_String (J) = ASCII.NUL then
++            NUL_Pos := J;
++            exit;
++         end if;
+       end loop;
+ 
+       return Version_String (1 .. NUL_Pos - 1);
--- gcj-4.2-4.2.4.orig/debian/patches/arm-pr28516.dpatch
+++ gcj-4.2-4.2.4/debian/patches/arm-pr28516.dpatch
@@ -0,0 +1,43 @@
+#! /bin/sh -e
+
+# DP: Fix PR28516 on ARM
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- trunk/gcc/config/arm/arm.c	2006/09/19 13:18:27	117055
++++ trunk/gcc/config/arm/arm.c	2006/09/19 13:19:24	117056
+@@ -15415,6 +15415,15 @@
+ 	  /* Move from sp to reg.  */
+ 	  asm_fprintf (asm_out_file, "\t.movsp %r\n", REGNO (e0));
+ 	}
++     else if (GET_CODE (e1) == PLUS
++	      && GET_CODE (XEXP (e1, 0)) == REG
++	      && REGNO (XEXP (e1, 0)) == SP_REGNUM
++	      && GET_CODE (XEXP (e1, 1)) == CONST_INT)
++	{
++	  /* Set reg to offset from sp.  */
++	  asm_fprintf (asm_out_file, "\t.movsp %r, #%d\n",
++		       REGNO (e0), (int)INTVAL(XEXP (e1, 1)));
++	}
+       else
+ 	abort ();
+       break;
--- gcj-4.2-4.2.4.orig/debian/patches/pr24170.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr24170.dpatch
@@ -0,0 +1,88 @@
+#! /bin/sh -e
+
+# DP: Fix PR libgcj/24170.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libjava && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        rm -f ${dir}libjava/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2008-02-20  Tom Tromey  <tromey@redhat.com>
+
+	PR libgcj/24170:
+	* java/io/natFilePosix.cc (File::performList): Don't use
+	readdir_r.
+	* configure, include/config.h.in: Rebuilt.
+	* configure.ac: Don't check for readdir_r.
+
+Index: libjava/configure.ac
+===================================================================
+--- libjava/configure.ac	(revision 132490)
++++ libjava/configure.ac	(revision 132491)
+@@ -1023,7 +1023,7 @@
+    PLATFORMNET=NoNet
+ else
+    AC_CHECK_FUNCS([strerror_r select fstat open fsync sleep opendir \
+-                   localtime_r readdir_r getpwuid_r getcwd \
++                   localtime_r getpwuid_r getcwd \
+ 		   access stat lstat mkdir rename rmdir unlink utime chmod readlink \
+ 		   nl_langinfo setlocale \
+ 		   inet_pton uname inet_ntoa \
+Index: libjava/include/config.h.in
+===================================================================
+--- libjava/include/config.h.in	(revision 132490)
++++ libjava/include/config.h.in	(revision 132491)
+@@ -214,9 +214,6 @@
+ /* Define to 1 if you have the <pwd.h> header file. */
+ #undef HAVE_PWD_H
+ 
+-/* Define to 1 if you have the `readdir_r' function. */
+-#undef HAVE_READDIR_R
+-
+ /* Define to 1 if you have the `readlink' function. */
+ #undef HAVE_READLINK
+ 
+Index: libjava/java/io/natFilePosix.cc
+===================================================================
+--- libjava/java/io/natFilePosix.cc	(revision 132490)
++++ libjava/java/io/natFilePosix.cc	(revision 132491)
+@@ -1,6 +1,6 @@
+ // natFile.cc - Native part of File class for POSIX.
+ 
+-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006
++/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2006, 2008
+    Free Software Foundation
+ 
+    This file is part of libgcj.
+@@ -292,13 +292,7 @@
+ 
+   java::util::ArrayList *list = new java::util::ArrayList ();
+   struct dirent *d;
+-#if defined(HAVE_READDIR_R) && defined(_POSIX_PTHREAD_SEMANTICS)
+-  int name_max = pathconf (buf, _PC_NAME_MAX);
+-  char dbuf[sizeof (struct dirent) + name_max + 1];
+-  while (readdir_r (dir, (struct dirent *) dbuf, &d) == 0 && d != NULL)
+-#else /* HAVE_READDIR_R */
+   while ((d = readdir (dir)) != NULL)
+-#endif /* HAVE_READDIR_R */
+     {
+       // Omit "." and "..".
+       if (d->d_name[0] == '.'
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-bitfield-offset.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-bitfield-offset.dpatch
@@ -0,0 +1,192 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: only use constant offset for register bitfields
+# DP: (combine expects shifts, but does a rotate)
+# test case for invalid use of bitfield inst:
+#
+# #define XINT(v) (((int)(v) << 4) >> 4)
+# #define XUINT(v) (((unsigned)(v) << 4) >> 4)
+# 
+# int f(int v, int s)
+# {
+# 	return (XUINT(v) >> -XINT(s)) & 0x0fffffff;
+# }
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/config/m68k/m68k.md |   62 ++++++++++++++++++++++++------------------------
+ 1 file changed, 31 insertions(+), 31 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -5221,34 +5221,34 @@
+ ;; so that its address is reloaded.
+ 
+ (define_expand "extv"
+-  [(set (match_operand:SI 0 "nonimmediate_operand" "")
++  [(set (match_operand:SI 0 "register_operand" "")
+ 	(sign_extract:SI (match_operand:SI 1 "general_operand" "")
+-			 (match_operand:SI 2 "general_operand" "")
+-			 (match_operand:SI 3 "general_operand" "")))]
++			 (match_operand:SI 2 "const_int_operand" "")
++			 (match_operand:SI 3 "const_int_operand" "")))]
+   "TARGET_68020 && TARGET_BITFIELD"
+   "")
+ 
+ (define_insn ""
+-  [(set (match_operand:SI 0 "nonimmediate_operand" "=d")
++  [(set (match_operand:SI 0 "register_operand" "=d")
+ 	(sign_extract:SI (match_operand:QI 1 "memory_operand" "o")
+-			 (match_operand:SI 2 "general_operand" "dn")
+-			 (match_operand:SI 3 "general_operand" "dn")))]
++			 (match_operand:SI 2 "nonmemory_operand" "dn")
++			 (match_operand:SI 3 "nonmemory_operand" "dn")))]
+   "TARGET_68020 && TARGET_BITFIELD"
+   "bfexts %1{%b3:%b2},%0")
+ 
+ (define_expand "extzv"
+-  [(set (match_operand:SI 0 "nonimmediate_operand" "")
++  [(set (match_operand:SI 0 "register_operand" "")
+ 	(zero_extract:SI (match_operand:SI 1 "general_operand" "")
+-			 (match_operand:SI 2 "general_operand" "")
+-			 (match_operand:SI 3 "general_operand" "")))]
++			 (match_operand:SI 2 "const_int_operand" "")
++			 (match_operand:SI 3 "const_int_operand" "")))]
+   "TARGET_68020 && TARGET_BITFIELD"
+   "")
+ 
+ (define_insn ""
+-  [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d")
+-	(zero_extract:SI (match_operand:QI 1 "memory_operand" "o,d")
+-			 (match_operand:SI 2 "general_operand" "dn,dn")
+-			 (match_operand:SI 3 "general_operand" "dn,dn")))]
++  [(set (match_operand:SI 0 "register_operand" "=d")
++	(zero_extract:SI (match_operand:QI 1 "memory_operand" "o")
++			 (match_operand:SI 2 "nonmemory_operand" "dn")
++			 (match_operand:SI 3 "nonmemory_operand" "dn")))]
+   "TARGET_68020 && TARGET_BITFIELD"
+ {
+   if (GET_CODE (operands[2]) == CONST_INT)
+@@ -5265,8 +5265,8 @@
+ 
+ (define_insn ""
+   [(set (zero_extract:SI (match_operand:QI 0 "memory_operand" "+o")
+-			 (match_operand:SI 1 "general_operand" "dn")
+-			 (match_operand:SI 2 "general_operand" "dn"))
++			 (match_operand:SI 1 "nonmemory_operand" "dn")
++			 (match_operand:SI 2 "nonmemory_operand" "dn"))
+         (xor:SI (zero_extract:SI (match_dup 0) (match_dup 1) (match_dup 2))
+ 		(match_operand 3 "const_int_operand" "n")))]
+   "TARGET_68020 && TARGET_BITFIELD
+@@ -5280,8 +5280,8 @@
+ 
+ (define_insn ""
+   [(set (zero_extract:SI (match_operand:QI 0 "memory_operand" "+o")
+-			 (match_operand:SI 1 "general_operand" "dn")
+-			 (match_operand:SI 2 "general_operand" "dn"))
++			 (match_operand:SI 1 "nonmemory_operand" "dn")
++			 (match_operand:SI 2 "nonmemory_operand" "dn"))
+ 	(const_int 0))]
+   "TARGET_68020 && TARGET_BITFIELD"
+ {
+@@ -5302,16 +5302,16 @@
+ 
+ (define_expand "insv"
+   [(set (zero_extract:SI (match_operand:SI 0 "nonimmediate_operand" "")
+-			 (match_operand:SI 1 "general_operand" "")
+-			 (match_operand:SI 2 "general_operand" ""))
++			 (match_operand:SI 1 "const_int_operand" "")
++			 (match_operand:SI 2 "const_int_operand" ""))
+ 	(match_operand:SI 3 "register_operand" ""))]
+   "TARGET_68020 && TARGET_BITFIELD"
+   "")
+ 
+ (define_insn ""
+   [(set (zero_extract:SI (match_operand:QI 0 "memory_operand" "+o")
+-			 (match_operand:SI 1 "general_operand" "dn")
+-			 (match_operand:SI 2 "general_operand" "dn"))
++			 (match_operand:SI 1 "nonmemory_operand" "dn")
++			 (match_operand:SI 2 "nonmemory_operand" "dn"))
+ 	(match_operand:SI 3 "register_operand" "d"))]
+   "TARGET_68020 && TARGET_BITFIELD"
+   "bfins %3,%0{%b2:%b1}")
+@@ -5322,16 +5322,16 @@
+ (define_insn ""
+   [(set (match_operand:SI 0 "nonimmediate_operand" "=d")
+ 	(sign_extract:SI (match_operand:SI 1 "register_operand" "d")
+-			 (match_operand:SI 2 "general_operand" "dn")
+-			 (match_operand:SI 3 "general_operand" "dn")))]
++			 (match_operand:SI 2 "const_int_operand" "n")
++			 (match_operand:SI 3 "const_int_operand" "n")))]
+   "TARGET_68020 && TARGET_BITFIELD"
+   "bfexts %1{%b3:%b2},%0")
+ 
+ (define_insn ""
+   [(set (match_operand:SI 0 "nonimmediate_operand" "=d")
+ 	(zero_extract:SI (match_operand:SI 1 "register_operand" "d")
+-			 (match_operand:SI 2 "general_operand" "dn")
+-			 (match_operand:SI 3 "general_operand" "dn")))]
++			 (match_operand:SI 2 "const_int_operand" "n")
++			 (match_operand:SI 3 "const_int_operand" "n")))]
+   "TARGET_68020 && TARGET_BITFIELD"
+ {
+   if (GET_CODE (operands[2]) == CONST_INT)
+@@ -5348,8 +5348,8 @@
+ 
+ (define_insn ""
+   [(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+d")
+-			 (match_operand:SI 1 "general_operand" "dn")
+-			 (match_operand:SI 2 "general_operand" "dn"))
++			 (match_operand:SI 1 "const_int_operand" "n")
++			 (match_operand:SI 2 "const_int_operand" "n"))
+ 	(const_int 0))]
+   "TARGET_68020 && TARGET_BITFIELD"
+ {
+@@ -5359,8 +5359,8 @@
+ 
+ (define_insn ""
+   [(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+d")
+-			 (match_operand:SI 1 "general_operand" "dn")
+-			 (match_operand:SI 2 "general_operand" "dn"))
++			 (match_operand:SI 1 "const_int_operand" "n")
++			 (match_operand:SI 2 "const_int_operand" "n"))
+ 	(const_int -1))]
+   "TARGET_68020 && TARGET_BITFIELD"
+ {
+@@ -5370,8 +5370,8 @@
+ 
+ (define_insn ""
+   [(set (zero_extract:SI (match_operand:SI 0 "register_operand" "+d")
+-			 (match_operand:SI 1 "general_operand" "dn")
+-			 (match_operand:SI 2 "general_operand" "dn"))
++			 (match_operand:SI 1 "const_int_operand" "n")
++			 (match_operand:SI 2 "const_int_operand" "n"))
+ 	(match_operand:SI 3 "register_operand" "d"))]
+   "TARGET_68020 && TARGET_BITFIELD"
+ {
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-align-code.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-align-code.dpatch
@@ -0,0 +1,48 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: use "move.l %a4,%a4" to advance within code.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/linux.h |    5 +++++
+ 1 file changed, 5 insertions(+)
+
+Index: gcc-4.2/gcc/config/m68k/linux.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/linux.h
++++ gcc-4.2/gcc/config/m68k/linux.h
+@@ -164,6 +164,11 @@ along with GCC; see the file COPYING3.  
+   if ((LOG) > 0)						\
+     fprintf ((FILE), "%s%u\n", ALIGN_ASM_OP, 1 << (LOG));
+ 
++/* Use "move.l %a4,%a4" to advance within code.  */
++#define ASM_OUTPUT_ALIGN_WITH_NOP(FILE,LOG)			\
++  if ((LOG) > 0)						\
++    fprintf ((FILE), "\t.balignw %u,0x284c\n", 1 << (LOG));
++
+ /* If defined, a C expression whose value is a string containing the
+    assembler operation to identify the following data as uninitialized global
+    data.  */
--- gcj-4.2-4.2.4.orig/debian/patches/disable-configure-run-check.dpatch
+++ gcj-4.2-4.2.4/debian/patches/disable-configure-run-check.dpatch
@@ -0,0 +1,168 @@
+#! /bin/sh -e
+
+# DP: don't bogusly check if the 64bit binaries also work,
+# DP: which does break on 32bit kernels.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libmudflap/configure.orig	2007-07-06 20:28:43.000000000 +0200
++++ libmudflap/configure	2007-07-07 14:44:32.899598235 +0200
+@@ -2366,7 +2366,8 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++# Check disabled as it doesn't catch 64 bit biarch builds on 32 bit archs.
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libiberty/configure.orig	2007-07-06 20:28:51.000000000 +0200
++++ libiberty/configure	2007-07-07 14:44:32.939598839 +0200
+@@ -2177,7 +2177,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libjava/libltdl/configure.orig	2007-07-06 20:28:59.000000000 +0200
++++ libjava/libltdl/configure	2007-07-07 14:44:32.919598537 +0200
+@@ -2457,7 +2457,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libjava/configure.orig	2007-07-07 14:42:54.778118095 +0200
++++ libjava/configure	2007-07-07 14:44:32.929598688 +0200
+@@ -2818,7 +2818,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6; }
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (case "(($ac_try" in
+   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+--- libobjc/configure.orig	2007-07-06 20:28:33.000000000 +0200
++++ libobjc/configure	2007-07-07 14:44:32.889598084 +0200
+@@ -2101,7 +2101,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- boehm-gc/configure.orig	2007-07-06 20:43:16.000000000 +0200
++++ boehm-gc/configure	2007-07-07 14:44:32.909598386 +0200
+@@ -2354,7 +2354,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libffi/configure.orig	2007-07-06 20:43:16.000000000 +0200
++++ libffi/configure	2007-07-07 14:44:32.909598386 +0200
+@@ -2319,7 +2319,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- zlib/configure.orig	2007-07-06 20:28:32.000000000 +0200
++++ zlib/configure	2007-07-07 14:44:32.879597934 +0200
+@@ -2397,7 +2397,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libstdc++-v3/configure.orig	2007-07-06 20:28:28.000000000 +0200
++++ libstdc++-v3/configure	2007-07-07 14:47:06.371913330 +0200
+@@ -2759,7 +2759,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+@@ -5840,7 +5840,7 @@
+ 
+     if test $enable_clocale = auto; then
+       # Test for bugs early in glibc-2.2.x series
+-      if test "$cross_compiling" = yes; then
++      if false && test "$cross_compiling" = yes; then
+   enable_clocale_flag=generic
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+--- libssp/configure.orig	2007-07-06 20:28:55.000000000 +0200
++++ libssp/configure	2007-07-07 14:44:32.909598386 +0200
+@@ -2406,7 +2406,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libgfortran/configure.orig	2007-07-06 20:28:42.000000000 +0200
++++ libgfortran/configure	2007-07-07 14:44:32.899598235 +0200
+@@ -2501,7 +2501,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
+--- libgomp/configure~	2007-07-23 20:54:54.000000000 +0200
++++ libgomp/configure	2007-08-17 13:22:23.000000000 +0200
+@@ -2618,7 +2618,7 @@
+ echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+ # FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+ # If not cross compiling, check that we can run a simple program.
+-if test "$cross_compiling" != yes; then
++if false && test "$cross_compiling" != yes; then
+   if { ac_try='./$ac_file'
+   { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+   (eval $ac_try) 2>&5
--- gcj-4.2-4.2.4.orig/debian/patches/cpu-default-i486.dpatch
+++ gcj-4.2-4.2.4/debian/patches/cpu-default-i486.dpatch
@@ -0,0 +1,37 @@
+#! /bin/sh -e
+ 
+# DP: set default 32bit ix86 architecture to i486
+ 
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/config/i386/i386.c~	2006-04-02 00:14:35.841533976 +0200
++++ gcc/config/i386/i386.c	2006-04-02 00:17:40.338486176 +0200
+@@ -1602,7 +1602,7 @@
+ 	     "-mtune=generic instead as appropriate.");
+ 
+   if (!ix86_arch_string)
+-    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i386";
++    ix86_arch_string = TARGET_64BIT ? "x86-64" : "i486";
+   if (!strcmp (ix86_arch_string, "generic"))
+     error ("generic CPU can be used only for -mtune= switch");
+   if (!strncmp (ix86_arch_string, "generic", 7))
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-return.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-return.dpatch
@@ -0,0 +1,47 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: don't use single return if fp register have to be restored
+# DP: fixes 386864
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/config/m68k/m68k.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -778,7 +778,7 @@ use_return_insn (void)
+   /* We can output the epilogue as RTL only if no registers need to be
+      restored.  */
+   m68k_compute_frame_layout ();
+-  return current_frame.reg_no ? false : true;
++  return (current_frame.reg_no + current_frame.fpu_no) ? false : true;
+ }
+ 
+ /* This function generates the assembly code for function exit,
--- gcj-4.2-4.2.4.orig/debian/patches/libstdc++-doclink.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libstdc++-doclink.dpatch
@@ -0,0 +1,47 @@
+#! /bin/sh -e
+
+# DP: adjust hrefs to point to the local documentation
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libstdc++-v3/docs/doxygen/mainpage.html.orig	2006-12-11 11:49:36.056229000 +0100
++++ libstdc++-v3/docs/doxygen/mainpage.html	2006-12-11 11:50:32.936229000 +0100
+@@ -30,8 +30,8 @@
+ <p>There are two types of documentation for libstdc++.  One is the
+    distribution documentation, which can be read online at
+    <a href="http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html">http://gcc.gnu.org/onlinedocs/libstdc++/documentation.html</a>
+-   or offline from docs/html/documentation.html in the library source
+-   directory.
++   or offline from
++   <a href="/usr/share/doc/gcc-4.2/libstdc++/html/documentation.html">/usr/share/doc/gcc-4.2/libstdc++/html/documentation.html</a>.
+ </p>
+ 
+ <p>The other type is the source documentation, of which this is the first page.
+@@ -75,7 +75,7 @@
+ 
+ <h2>License, Copyright, and Other Lawyerly Verbosity</h2>
+ <p>The libstdc++ documentation is released under
+-   <a href="http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/license.html">
++   <a href="../17_intro/license.html">
+    these terms</a>.
+ </p>
+ <p>Part of the generated documentation involved comments and notes from
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-peephole.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-peephole.dpatch
@@ -0,0 +1,312 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: Convert some text peepholes to rtl peepholes, so the correct
+# DP: DWARF2 information can be generated for stack manipulations.
+# DP: (Keep a few peepholes temporarily disabled.)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/config/m68k/m68k.h  |    2 
+ gcc/config/m68k/m68k.md |  227 +++++++++++++++++++-----------------------------
+ 2 files changed, 91 insertions(+), 138 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.h
++++ gcc-4.2/gcc/config/m68k/m68k.h
+@@ -636,7 +636,7 @@ __transfer_from_trampoline ()					\
+ #define DATA_REG_P(X) (REG_P (X) && REGNO_OK_FOR_DATA_P (REGNO (X)))
+ 
+ /* 1 if X is an fp register.  */
+-#define FP_REG_P(X) (REG_P (X) && REGNO_OK_FOR_FP_P (REGNO (X)))
++#define FP_REG_P(X)	(REG_P (X) && (REGNO (X) ^ 020) < 8)
+ 
+ /* 1 if X is an address register  */
+ #define ADDRESS_REG_P(X) (REG_P (X) && REGNO_OK_FOR_BASE_P (REGNO (X)))
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -664,13 +664,23 @@
+     }
+ })
+ 
+-;; General case of fullword move.  The register constraints
+-;; force integer constants in range for a moveq to be reloaded
+-;; if they are headed for memory.
++;; General case of fullword move.
+ (define_insn ""
+   ;; Notes: make sure no alternative allows g vs g.
+   ;; We don't allow f-regs since fixed point cannot go in them.
+   [(set (match_operand:SI 0 "nonimmediate_operand" "=g,d,a<")
++        (match_operand:SI 1 "general_src_operand" "daymSnT,n,i"))]
++
++  "!TARGET_COLDFIRE && reload_completed"
++{
++  return output_move_simode (operands);
++})
++
++;; Before reload is completed the register constraints
++;; force integer constants in range for a moveq to be reloaded
++;; if they are headed for memory.
++(define_insn ""
++  [(set (match_operand:SI 0 "nonimmediate_operand" "=g,d,a<")
+         (match_operand:SI 1 "general_src_operand" "daymSKT,n,i"))]
+ 
+   "!TARGET_COLDFIRE"
+@@ -6824,154 +6834,97 @@
+ ;; and then is moved into an FP register.
+ ;; But it is mainly intended to test the support for these optimizations.
+ 
+-(define_peephole
++(define_peephole2
+   [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (const_int 4)))
+-   (set (match_operand:DF 0 "register_operand" "=f")
+-	(match_operand:DF 1 "register_operand" "ad"))]
+-  "FP_REG_P (operands[0]) && ! FP_REG_P (operands[1])"
+-{
+-  rtx xoperands[2];
+-  xoperands[1] = gen_rtx_REG (SImode, REGNO (operands[1]) + 1);
+-  output_asm_insn ("move%.l %1,%@", xoperands);
+-  output_asm_insn ("move%.l %1,%-", operands);
+-  return "fmove%.d %+,%0";
+-})
++   (set (match_operand:DF 0 "register_operand" "")
++	(match_operand:DF 1 "register_operand" ""))]
++  "FP_REG_P (operands[0]) && !FP_REG_P (operands[1])"
++  [(set (mem:SI (reg:SI SP_REG)) (match_dup 1))
++   (set (mem:SI (pre_dec:SI (reg:SI SP_REG))) (match_dup 2))
++   (set (match_dup 0) (mem:DF (post_inc:SI (reg:SI SP_REG))))]
++  "split_di(operands + 1, 1, operands + 1, operands + 2);")
+ 
+ ;; Optimize a stack-adjust followed by a push of an argument.
+ ;; This is said to happen frequently with -msoft-float
+ ;; when there are consecutive library calls.
+ 
+-(define_peephole
++(define_peephole2
++  [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (const_int 4)))
++   (set (mem:SF (pre_dec:SI (reg:SI SP_REG)))
++	(match_operand:SF 0 "general_operand" ""))]
++  "!reg_mentioned_p (stack_pointer_rtx, operands[0])"
++  [(set (mem:SF (reg:SI SP_REG)) (match_dup 0))]
++  "")
++
++(define_peephole2
+   [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG)
+-				 (match_operand:SI 0 "const_int_operand" "n")))
+-   (set (match_operand:SF 1 "push_operand" "=m")
+-	(match_operand:SF 2 "general_operand" "rmfF"))]
+-  "INTVAL (operands[0]) >= 4
+-   && ! reg_mentioned_p (stack_pointer_rtx, operands[2])"
+-{
+-  if (INTVAL (operands[0]) > 4)
+-    {
+-      rtx xoperands[2];
+-      xoperands[0] = stack_pointer_rtx;
+-      xoperands[1] = GEN_INT (INTVAL (operands[0]) - 4);
+-      if (INTVAL (xoperands[1]) <= 8)
+-	{
+-	  if (!TARGET_COLDFIRE)
+-	    output_asm_insn ("addq%.w %1,%0", xoperands);
+-	  else
+-	    output_asm_insn ("addq%.l %1,%0", xoperands);
+-	}
+-      else if (TARGET_CPU32 && INTVAL (xoperands[1]) <= 16) 
+-	{
+-	  xoperands[1] = GEN_INT (INTVAL (xoperands[1]) - 8);
+-	  output_asm_insn ("addq%.w #8,%0\;addq%.w %1,%0", xoperands);
+-	}
+-      else if (INTVAL (xoperands[1]) <= 0x7FFF)
+-        {
+-	  if (TARGET_68040)
+-	    output_asm_insn ("add%.w %1,%0", xoperands);
+-	  else if (MOTOROLA)
+-	    output_asm_insn ("lea (%c1,%0),%0", xoperands);
+-	  else
+-	    output_asm_insn ("lea %0@(%c1),%0", xoperands);
+-        }
+-      else
+-        output_asm_insn ("add%.l %1,%0", xoperands);
+-    }
+-  if (FP_REG_P (operands[2]))
+-    return "fmove%.s %2,%@";
+-  return "move%.l %2,%@";
+-})
++				 (match_operand:SI 0 "const_int_operand" "")))
++   (set (mem:SF (pre_dec:SI (reg:SI SP_REG)))
++	(match_operand:SF 1 "general_operand" ""))]
++  "INTVAL (operands[0]) > 4
++   && !reg_mentioned_p (stack_pointer_rtx, operands[1])"
++  [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (match_dup 0)))
++   (set (mem:SF (reg:SI SP_REG)) (match_dup 1))]
++  "operands[0] = GEN_INT (INTVAL (operands[0]) - 4);")
+ 
+ ;; Speed up stack adjust followed by a fullword fixedpoint push.
+ 
+-(define_peephole
++(define_peephole2
++  [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (const_int 4)))
++   (set (mem:SI (pre_dec:SI (reg:SI SP_REG)))
++	(match_operand:SI 0 "general_operand" ""))]
++  "!reg_mentioned_p (stack_pointer_rtx, operands[0])"
++  [(set (mem:SI (reg:SI SP_REG)) (match_dup 0))]
++  "")
++
++(define_peephole2
+   [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG)
+-				 (match_operand:SI 0 "const_int_operand" "n")))
+-   (set (match_operand:SI 1 "push_operand" "=m")
+-	(match_operand:SI 2 "general_operand" "g"))]
+-  "INTVAL (operands[0]) >= 4
+-   && ! reg_mentioned_p (stack_pointer_rtx, operands[2])"
+-{
+-  if (INTVAL (operands[0]) > 4)
+-    {
+-      rtx xoperands[2];
+-      xoperands[0] = stack_pointer_rtx;
+-      xoperands[1] = GEN_INT (INTVAL (operands[0]) - 4);
+-      if (INTVAL (xoperands[1]) <= 8)
+-	{
+-	  if (!TARGET_COLDFIRE)
+-	    output_asm_insn ("addq%.w %1,%0", xoperands);
+-	  else
+-	    output_asm_insn ("addq%.l %1,%0", xoperands);
+-	}
+-      else if (TARGET_CPU32 && INTVAL (xoperands[1]) <= 16)
+-	{
+-	  xoperands[1] = GEN_INT (INTVAL (xoperands[1]) - 8);
+-	  output_asm_insn ("addq%.w #8,%0\;addq%.w %1,%0", xoperands);
+-	}
+-      else if (INTVAL (xoperands[1]) <= 0x7FFF)
+-        {
+-	  if (TARGET_68040)
+-	    output_asm_insn ("add%.w %1,%0", xoperands);
+-	  else if (MOTOROLA)
+-	    output_asm_insn ("lea (%c1,%0),%0", xoperands);
+-	  else
+-	    output_asm_insn ("lea %0@(%c1),%0", xoperands);
+-        }
+-      else
+-        output_asm_insn ("add%.l %1,%0", xoperands);
+-    }
+-  if (operands[2] == const0_rtx)
+-    return "clr%.l %@";
+-  return "move%.l %2,%@";
+-})
++				 (match_operand:SI 0 "const_int_operand" "")))
++   (set (mem:SI (pre_dec:SI (reg:SI SP_REG)))
++	(match_operand:SI 1 "general_operand" ""))]
++  "INTVAL (operands[0]) > 4
++   && !reg_mentioned_p (stack_pointer_rtx, operands[1])"
++  [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (match_dup 0)))
++   (set (mem:SI (reg:SI SP_REG)) (match_dup 1))]
++  "operands[0] = GEN_INT (INTVAL (operands[0]) - 4);")
+ 
+ ;; Speed up pushing a single byte but leaving four bytes of space.
+ 
+-(define_peephole
+-  [(set (mem:QI (pre_dec:SI (reg:SI SP_REG)))
+-	(match_operand:QI 1 "general_operand" "dami"))
+-   (set (reg:SI SP_REG) (minus:SI (reg:SI SP_REG) (const_int 2)))]
+-  "! reg_mentioned_p (stack_pointer_rtx, operands[1])"
+-{
+-  rtx xoperands[4];
+-
+-  if (GET_CODE (operands[1]) == REG)
+-    return "move%.l %1,%-";
+-
+-  xoperands[1] = operands[1];
+-  xoperands[2]
+-    = gen_rtx_MEM (QImode, plus_constant (stack_pointer_rtx, 3));
+-  xoperands[3] = stack_pointer_rtx;
+-  if (!TARGET_COLDFIRE)
+-    output_asm_insn ("subq%.w #4,%3\;move%.b %1,%2", xoperands);
+-  else
+-    output_asm_insn ("subq%.l #4,%3\;move%.b %1,%2", xoperands);
+-  return "";
+-})
+-
+-(define_peephole
+-  [(set (match_operand:SI 0 "register_operand" "=d")
+-	(const_int 0))
+-   (set (strict_low_part (subreg:HI (match_dup 0) 2))
+-	(match_operand:HI 1 "general_operand" "rmn"))]
+-  "strict_low_part_peephole_ok (HImode, prev_nonnote_insn (insn), operands[0])"
+-{
+-  if (GET_CODE (operands[1]) == CONST_INT)
+-    {
+-      if (operands[1] == const0_rtx
+-	  && (DATA_REG_P (operands[0])
+-	      || GET_CODE (operands[0]) == MEM)
+-	  /* clr insns on 68000 read before writing.
+-	     This isn't so on the 68010, but we have no TARGET_68010.  */
+-	  && ((TARGET_68020 || TARGET_COLDFIRE)
+-	      || !(GET_CODE (operands[0]) == MEM
+-		   && MEM_VOLATILE_P (operands[0]))))
+-	return "clr%.w %0";
+-    }
+-  return "move%.w %1,%0";
+-})
++(define_peephole2
++  [(set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (const_int -4)))
++   (set (mem:QI (plus:SI (reg:SI SP_REG) (const_int 3)))
++	(match_operand:QI 0 "register_operand" ""))]
++  "!reg_mentioned_p (stack_pointer_rtx, operands[0])"
++  [(set (mem:SI (pre_dec:SI (reg:SI SP_REG))) (match_dup 0))]
++  "operands[0] = gen_rtx_REG (SImode, REGNO (operands[0]));")
++
++(define_peephole2
++  [(set (mem:HI (pre_dec:SI (reg:SI SP_REG)))
++	(match_operand:HI 0 "register_operand" ""))
++   (set (reg:SI SP_REG) (plus:SI (reg:SI SP_REG) (const_int -2)))]
++  "!reg_mentioned_p (stack_pointer_rtx, operands[0])"
++  [(set (mem:SI (pre_dec:SI (reg:SI SP_REG))) (match_dup 0))]
++  "operands[0] = gen_rtx_REG (SImode, REGNO (operands[0]));")
++
++;;(define_peephole2
++;;  [(set (match_operand:SI 0 "register_operand" "")
++;;	(const_int 0))
++;;   (set (strict_low_part (match_operand:HI 1 "register_operand" ""))
++;;	(match_operand:HI 2 "general_operand" ""))]
++;;  "REGNO (operands[0]) == REGNO (operands[1])
++;;   && strict_low_part_peephole_ok (HImode, insn, operands[0])"
++;;  [(set (strict_low_part (match_dup 1)) (match_dup 2))]
++;;  "")
++;;
++;;(define_peephole2
++;;  [(set (match_operand:SI 0 "register_operand" "")
++;;	(const_int 0))
++;;   (set (strict_low_part (match_operand:QI 1 "register_operand" ""))
++;;	(match_operand:QI 2 "general_operand" ""))]
++;;  "REGNO (operands[0]) == REGNO (operands[1])
++;;   && strict_low_part_peephole_ok (QImode, insn, operands[0])"
++;;  [(set (strict_low_part (match_dup 1)) (match_dup 2))]
++;;  "")
+ 
+ ;; dbCC peepholes
+ ;;
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-4.2-build.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-4.2-build.dpatch
@@ -0,0 +1,263 @@
+#! /bin/sh -e
+
+# gdc-4.2-build.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Update gdc for gcc-4.2.x builtins.
+
+dir=
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+exit 0
+
+--- gcc/d/Make-lang.in	2008-02-03 16:05:55.000000000 +0000
++++ gcc/d/Make-lang.in	2008-02-03 16:12:36.000000000 +0000
+@@ -43,12 +43,43 @@
+ # specification syntax.  Can still use extended asm if disabled.
+ # D_EXTRA_DEFINES += -DGDC_EXTENDED_ASM_SYNTAX=1
+ 
++# Would be better to configure these rather than running shell script again and again,
++# but would require a patch to gcc/configure.ac
++D_gcc_main_ver:=$(shell echo $(version) | sed -e 's/\([0-9]*\.[0-9]*\).*/\1/')
++ifeq ($(D_gcc_main_ver),4.0)
++  D_is_apple_ver:=$(shell grep version_string $(gcc_version_trigger) | grep 'Apple')
++endif
++
++ifeq ($(D_gcc_main_ver),3.3)
++  $(error gcc-3.3 is no longer supported by gdc)
++else ifeq ($(D_gcc_main_ver),3.4)
++  D_EXTRA_DEFINES += -DD_GCC_VER=34
++else ifeq ($(D_gcc_main_ver),4.0)
++  D_EXTRA_DEFINES += -DD_GCC_VER=40
++else ifeq ($(D_gcc_main_ver),4.1)
++  D_EXTRA_DEFINES += -DD_GCC_VER=41
++else ifeq ($(D_gcc_main_ver),4.2)
++  D_EXTRA_DEFINES += -DD_GCC_VER=42
++else ifeq ($(D_gcc_main_ver),4.3)
++  D_EXTRA_DEFINES += -DD_GCC_VER=43
++else
++  $(error gcc-$(D_gcc_main_ver) is not supported by gdc)
++endif
++
++
+ # As with C++: (quote) OTOH, I think this means the g++ driver...
+ # Note that it would be nice to move the dependency on g++
+ # into the C++ rule, but that needs a little bit of work
+ # to do the right thing within all.cross.
+ D_DRIVER_NAME = gdc
+-D_DRIVER_OBJS = d/d-spec.o d/d-gcc.o version.o prefix.o intl.o
++D_DRIVER_OBJS = d/d-spec.o version.o prefix.o intl.o
++ifeq ($(D_gcc_main_ver),4.2)
++  D_DRIVER_OBJS += $(GCC_OBJS)
++else ifeq ($(D_gcc_main_ver),4.3)
++  D_DRIVER_OBJS += $(GCC_OBJS)
++else
++  D_DRIVER_OBJS += d/d-gcc.o
++endif
+ D_COMPILER_NAME = cc1d
+ 
+ D_INSTALL_NAME = $(shell echo $(D_DRIVER_NAME)|sed '$(program_transform_name)')
+@@ -98,24 +129,8 @@
+ #D_EXTRA_DEFINES += -DD_PHOBOS_DIR=\"$(gcc_d_include_dir)\"
+ 
+ 
+-# Would be better to configure these rather than running shell script again and again,
+-# but would require a patch to gcc/configure.ac
+-D_gcc_main_ver:=$(shell echo $(version) | sed -e 's/\([0-9]*\.[0-9]*\).*/\1/')
+-ifeq ($(D_gcc_main_ver),4.0)
+-  D_is_apple_ver:=$(shell grep version_string $(gcc_version_trigger) | grep 'Apple')
+-endif
+-
+ gcc_d_target_include_dir=$(gcc_d_include_dir)/$(target_noncanonical)
+ 
+-ifeq ($(D_gcc_main_ver),3.4)
+-  D_EXTRA_DEFINES += -DD_GCC_VER=34
+-else
+-  ifeq ($(D_gcc_main_ver),4.0)
+-   D_EXTRA_DEFINES += -DD_GCC_VER=40
+-  else
+-   D_EXTRA_DEFINES += -DD_GCC_VER=41
+-  endif
+-endif
+ 
+ # Actual names to use when installing a cross-compiler.
+ D_CROSS_NAME = $(D_INSTALL_NAME)
+@@ -167,11 +182,18 @@
+ 	cp $(D_DRIVER_NAME)$(exeext) $(D_DRIVER_NAME)-cross$(exeext)
+ 
+ D_DMD_OBJS = \
+-    d/access.dmd.o d/array.dmd.o d/attrib.dmd.o d/cast.dmd.o d/class.dmd.o d/cond.dmd.o d/constfold.dmd.o d/dchar.dmd.o d/declaration.dmd.o d/delegatize.dmd.o d/doc.dmd.o \
+-    d/dsymbol.dmd.o d/dump.dmd.o d/entity.dmd.o d/enum.dmd.o d/expression.dmd.o d/func.dmd.o d/gnuc.dmd.o d/hdrgen.dmd.o d/html.dmd.o d/identifier.dmd.o d/import.dmd.o \
+-    d/init.dmd.o d/inline.dmd.o d/interpret.dmd.o d/lexer.dmd.o d/lstring.dmd.o d/macro.dmd.o d/mangle.dmd.o d/mars.dmd.o d/mem.dmd.o d/mtype.dmd.o d/module.dmd.o d/opover.dmd.o d/optimize.dmd.o d/parse.dmd.o \
+-    d/root.dmd.o d/scope.dmd.o d/statement.dmd.o d/staticassert.dmd.o d/stringtable.dmd.o d/struct.dmd.o d/template.dmd.o  \
+-    d/todt.dmd.o d/toobj.dmd.o d/typinf.dmd.o d/unialpha.dmd.o d/utf.dmd.o d/version.dmd.o
++    d/access.dmd.o d/array.dmd.o d/attrib.dmd.o d/cast.dmd.o d/class.dmd.o \
++    d/cond.dmd.o d/constfold.dmd.o d/dchar.dmd.o d/declaration.dmd.o \
++    d/delegatize.dmd.o d/doc.dmd.o d/dsymbol.dmd.o d/dump.dmd.o \
++    d/entity.dmd.o d/enum.dmd.o d/expression.dmd.o d/func.dmd.o \
++    d/gnuc.dmd.o d/hdrgen.dmd.o d/html.dmd.o d/identifier.dmd.o \
++    d/import.dmd.o d/init.dmd.o d/inline.dmd.o d/interpret.dmd.o \
++    d/lexer.dmd.o d/lstring.dmd.o d/macro.dmd.o d/mangle.dmd.o d/mars.dmd.o \
++    d/mem.dmd.o d/mtype.dmd.o d/module.dmd.o d/opover.dmd.o d/optimize.dmd.o \
++    d/parse.dmd.o d/root.dmd.o d/scope.dmd.o d/statement.dmd.o \
++    d/staticassert.dmd.o d/stringtable.dmd.o d/struct.dmd.o d/template.dmd.o \
++    d/todt.dmd.o d/toobj.dmd.o d/typinf.dmd.o d/unialpha.dmd.o d/utf.dmd.o \
++    d/version.dmd.o
+ ifeq ($(D_LANGUAGE_VERSION),2)
+ D_DMD_OBJS += d/builtin.dmd.o d/traits.dmd.o
+ endif
+@@ -180,7 +202,7 @@
+ D_GLUE_OBJS = d/d-lang.glue.o d/d-decls.glue.o d/d-codegen.glue.o d/d-objfile.glue.o d/d-irstate.glue.o  \
+ 	d/d-glue.glue.o d/d-convert.glue.o d/d-todt.glue.o d/d-gcc-real.glue.o \
+         d/d-gt.cglue.o d/d-builtins.cglue.o d/d-misc.cglue.o d/d-builtins2.glue.o \
+-	d/symbol.glue.o d/asmstmt.glue.o d/dt.glue.o 
++	d/symbol.glue.o d/asmstmt.glue.o d/dt.glue.o
+ ifeq ($(D_LANGUAGE_VERSION),2)
+ D_GLUE_OBJS += d/d-cppmngl.glue.o
+ endif
+--- gcc/d/d-builtins.c	2008-02-03 16:06:22.000000000 +0000
++++ gcc/d/d-builtins.c	2008-02-03 16:07:42.000000000 +0000
+@@ -203,6 +203,7 @@
+ #define DEF_FUNCTION_TYPE_4(NAME, RETURN, ARG1, ARG2, ARG3, ARG4) NAME,
+ #define DEF_FUNCTION_TYPE_5(NAME, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5) NAME,
+ #define DEF_FUNCTION_TYPE_6(NAME, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5, ARG6) NAME,
++#define DEF_FUNCTION_TYPE_7(NAME, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5, ARG6, ARG7) NAME,
+ #define DEF_FUNCTION_TYPE_VAR_0(NAME, RETURN) NAME,
+ #define DEF_FUNCTION_TYPE_VAR_1(NAME, RETURN, ARG1) NAME,
+ #define DEF_FUNCTION_TYPE_VAR_2(NAME, RETURN, ARG1, ARG2) NAME,
+@@ -219,6 +220,7 @@
+ #undef DEF_FUNCTION_TYPE_4
+ #undef DEF_FUNCTION_TYPE_5
+ #undef DEF_FUNCTION_TYPE_6
++#undef DEF_FUNCTION_TYPE_7
+ #undef DEF_FUNCTION_TYPE_VAR_0
+ #undef DEF_FUNCTION_TYPE_VAR_1
+ #undef DEF_FUNCTION_TYPE_VAR_2
+@@ -230,14 +232,56 @@
+   };
+   typedef enum builtin_type builtin_type;
+ 
+-  tree builtin_types[(int) BT_LAST];
+-  
++  tree builtin_types[(int) BT_LAST + 1];
++
++#if D_GCC_VER >= 42
++/* A helper function for c_common_nodes_and_builtins.  Build function type
++   for DEF with return type RET and N arguments.  If VAR is true, then the
++   function should be variadic after those N arguments.
++
++   Takes special care not to ICE if any of the types involved are
++   error_mark_node, which indicates that said type is not in fact available
++   (see builtin_type_for_size).  In which case the function type as a whole
++   should be error_mark_node.  */
++
++  void
++  def_fn_type (builtin_type def, builtin_type ret, bool var, int n, ...)
++  {
++    tree args = NULL, t;
++    va_list list;
++    int i;
++
++    va_start (list, n);
++    for (i = 0; i < n; ++i)
++      {
++        builtin_type a = va_arg (list, builtin_type);
++        t = builtin_types[a];
++        if (t == error_mark_node)
++         goto egress;
++        args = tree_cons (NULL_TREE, t, args);
++      }
++    va_end (list);
++
++    args = nreverse (args);
++    if (!var)
++      args = chainon (args, void_list_node);
++
++    t = builtin_types[ret];
++    if (t == error_mark_node)
++      goto egress;
++    t = build_function_type (t, args);
++
++   egress:
++    builtin_types[def] = t;
++}
++#endif
++
+   tree va_list_ref_type_node;
+   tree va_list_arg_type_node;
+ 
+   d_bi_init((int) BT_LAST, (int) END_BUILTINS);
+-    
+-    
++
++
+   if (TREE_CODE (va_list_type_node) == ARRAY_TYPE)
+     {
+ 	/* It might seem natural to make the reference type a pointer,
+@@ -268,6 +312,42 @@
+   pid_type_node = lookup_C_type_name(PID_TYPE);
+ #endif
+ 
++#if D_GCC_VER >= 42
++#define DEF_PRIMITIVE_TYPE(ENUM, VALUE) \
++  builtin_types[ENUM] = VALUE;
++#define DEF_FUNCTION_TYPE_0(ENUM, RETURN) \
++  def_fn_type (ENUM, RETURN, 0, 0);
++#define DEF_FUNCTION_TYPE_1(ENUM, RETURN, ARG1) \
++  def_fn_type (ENUM, RETURN, 0, 1, ARG1);
++#define DEF_FUNCTION_TYPE_2(ENUM, RETURN, ARG1, ARG2) \
++  def_fn_type (ENUM, RETURN, 0, 2, ARG1, ARG2);
++#define DEF_FUNCTION_TYPE_3(ENUM, RETURN, ARG1, ARG2, ARG3) \
++  def_fn_type (ENUM, RETURN, 0, 3, ARG1, ARG2, ARG3);
++#define DEF_FUNCTION_TYPE_4(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4) \
++  def_fn_type (ENUM, RETURN, 0, 4, ARG1, ARG2, ARG3, ARG4);
++#define DEF_FUNCTION_TYPE_5(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5) \
++  def_fn_type (ENUM, RETURN, 0, 5, ARG1, ARG2, ARG3, ARG4, ARG5);
++#define DEF_FUNCTION_TYPE_6(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5, \
++                            ARG6)                                       \
++  def_fn_type (ENUM, RETURN, 0, 6, ARG1, ARG2, ARG3, ARG4, ARG5, ARG6);
++#define DEF_FUNCTION_TYPE_7(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5, \
++                            ARG6, ARG7)                                 \
++  def_fn_type (ENUM, RETURN, 0, 7, ARG1, ARG2, ARG3, ARG4, ARG5, ARG6, ARG7);
++#define DEF_FUNCTION_TYPE_VAR_0(ENUM, RETURN) \
++  def_fn_type (ENUM, RETURN, 1, 0);
++#define DEF_FUNCTION_TYPE_VAR_1(ENUM, RETURN, ARG1) \
++  def_fn_type (ENUM, RETURN, 1, 1, ARG1);
++#define DEF_FUNCTION_TYPE_VAR_2(ENUM, RETURN, ARG1, ARG2) \
++  def_fn_type (ENUM, RETURN, 1, 2, ARG1, ARG2);
++#define DEF_FUNCTION_TYPE_VAR_3(ENUM, RETURN, ARG1, ARG2, ARG3) \
++  def_fn_type (ENUM, RETURN, 1, 3, ARG1, ARG2, ARG3);
++#define DEF_FUNCTION_TYPE_VAR_4(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4) \
++  def_fn_type (ENUM, RETURN, 1, 4, ARG1, ARG2, ARG3, ARG4);
++#define DEF_FUNCTION_TYPE_VAR_5(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4, ARG5) \
++  def_fn_type (ENUM, RETURN, 1, 5, ARG1, ARG2, ARG3, ARG4, ARG5);
++#define DEF_POINTER_TYPE(ENUM, TYPE) \
++  builtin_types[(int) ENUM] = build_pointer_type (builtin_types[(int) TYPE]);
++#else
+ #define DEF_PRIMITIVE_TYPE(ENUM, VALUE) \
+   builtin_types[(int) ENUM] = VALUE;
+ #define DEF_FUNCTION_TYPE_0(ENUM, RETURN)		\
+@@ -417,6 +497,7 @@
+ #define DEF_POINTER_TYPE(ENUM, TYPE)			\
+   builtin_types[(int) ENUM]				\
+     = build_pointer_type (builtin_types[(int) TYPE]);
++#endif
+ #include "builtin-types.def"
+ #undef DEF_PRIMITIVE_TYPE
+ #undef DEF_FUNCTION_TYPE_1
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-split_shift.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-split_shift.dpatch
@@ -0,0 +1,760 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: use correct predicates for long long shifts and use more splits
+# DP: fixes 381572
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k-protos.h |    3 
+ gcc/config/m68k/m68k.c        |   26 +
+ gcc/config/m68k/m68k.md       |  590 ++++++++++++++++++++++++++++++------------
+ 3 files changed, 459 insertions(+), 160 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.md
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.md
++++ gcc-4.2/gcc/config/m68k/m68k.md
+@@ -4094,69 +4094,168 @@
+     return "move%.w %1,%0\;sub%.l %R0,%R0";
+ })
+ 
+-(define_insn "ashldi_const32"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "=rm")
+-	(ashift:DI (match_operand:DI 1 "general_operand" "ro")
+-		     (const_int 32)))]
+-  ""
++(define_insn "*ashldi3_const1"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(ashift:DI (match_operand:DI 1 "register_operand" "0")
++		   (const_int 1)))]
++  "!TARGET_COLDFIRE"
++  "add%.l %R0,%R0\;addx%.l %0,%0")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (const_int 2)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 0)
++	(ashift:DI (match_dup 1) (const_int 1)))
++   (set (match_dup 0)
++	(ashift:DI (match_dup 0) (const_int 1)))]
++  "")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (const_int 3)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 0)
++	(ashift:DI (match_dup 1) (const_int 2)))
++   (set (match_dup 0)
++	(ashift:DI (match_dup 0) (const_int 1)))]
++  "")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (const_int 8)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 2)
++	(rotate:SI (match_dup 2) (const_int 8)))
++   (set (match_dup 3)
++	(rotate:SI (match_dup 3) (const_int 8)))
++   (set (strict_low_part (subreg:QI (match_dup 0) 3))
++	(subreg:QI (match_dup 0) 7))
++   (set (strict_low_part (subreg:QI (match_dup 0) 7))
++	(const_int 0))]
+ {
+-  CC_STATUS_INIT;
+-  if (GET_CODE (operands[1]) == REG)
+-    operands[3] = gen_rtx_REG (SImode, REGNO (operands[1]) + 1);
+-  else
+-    operands[3] = adjust_address (operands[1], SImode, 4);
+-  if (GET_CODE (operands[0]) == REG)
+-    operands[2] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
+-  else if (GET_CODE (XEXP (operands[0], 0)) == PRE_DEC)
+-    return "clr%.l %0\;move%.l %3,%0";
+-  else if (GET_CODE (XEXP (operands[0], 0)) == POST_INC)
+-    return "move%.l %3,%0\;clr%.l %0";
+-  else
+-    operands[2] = adjust_address (operands[0], SImode, 4);
+-  if (ADDRESS_REG_P (operands[2]))
+-    return "move%.l %3,%0\;sub%.l %2,%2";
+-  else
+-    return "move%.l %3,%0\;clr%.l %2";
+-})
+-
+-;; The predicate below must be general_operand, because ashldi3 allows that
+-(define_insn "ashldi_const"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "=d")
+-	(ashift:DI (match_operand:DI 1 "general_operand" "0")
+-		     (match_operand 2 "const_int_operand" "n")))]
+-  "(!TARGET_COLDFIRE
+-    && ((INTVAL (operands[2]) >= 1 && INTVAL (operands[2]) <= 3)
+-	|| INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16
+-	|| (INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 63)))"
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (const_int 16)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 2)
++	(rotate:SI (match_dup 2) (const_int 16)))
++   (set (match_dup 3)
++	(rotate:SI (match_dup 3) (const_int 16)))
++   (set (strict_low_part (subreg:HI (match_dup 0) 2))
++	(subreg:HI (match_dup 0) 6))
++   (set (strict_low_part (subreg:HI (match_dup 0) 6))
++	(const_int 0))]
+ {
+-  operands[1] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
+-  if (INTVAL (operands[2]) == 1)
+-    return "add%.l %1,%1\;addx%.l %0,%0";
+-  else if (INTVAL (operands[2]) == 8)
+-    return "rol%.l #8,%1\;rol%.l #8,%0\;move%.b %1,%0\;clr%.b %1";
+-  else if (INTVAL (operands[2]) == 16)
+-    return "swap %1\;swap %0\;move%.w %1,%0\;clr%.w %1";
+-  else if (INTVAL (operands[2]) == 48)
+-    return "mov%.l %1,%0\;swap %0\;clr%.l %1\;clr%.w %0";
+-  else if (INTVAL (operands[2]) == 2)
+-    return "add%.l %1,%1\;addx%.l %0,%0\;add%.l %1,%1\;addx%.l %0,%0";
+-  else if (INTVAL (operands[2]) == 3)
+-    return "add%.l %1,%1\;addx%.l %0,%0\;add%.l %1,%1\;addx%.l %0,%0\;add%.l %1,%1\;addx%.l %0,%0";
+-  else /* 32 < INTVAL (operands[2]) <= 63 */
+-    {
+-      operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
+-      output_asm_insn (INTVAL (operands[2]) <= 8 ? "asl%.l %2,%1" :
+-			"moveq %2,%0\;asl%.l %0,%1", operands);
+-      return "mov%.l %1,%0\;moveq #0,%1";
+-    }
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "pre_dec_operand" "")
++	(ashift:DI (match_operand:DI 1 "nonimmediate_operand" "")
++		   (const_int 32)))]
++  "reload_completed"
++  [(set (match_dup 0) (const_int 0))
++   (set (match_dup 0) (match_dup 1))]
++{
++  operands[0] = adjust_address(operands[0], SImode, 0);
++  operands[1] = gen_lowpart(SImode, operands[1]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "post_inc_operand" "")
++	(ashift:DI (match_operand:DI 1 "nonimmediate_operand" "")
++		   (const_int 32)))]
++  "reload_completed"
++  [(set (match_dup 0) (match_dup 1))
++   (set (match_dup 0) (const_int 0))]
++{
++  operands[0] = adjust_address(operands[0], SImode, 0);
++  operands[1] = gen_lowpart(SImode, operands[1]);
++})
++
++(define_insn_and_split "*ashldi3_const32"
++  [(set (match_operand:DI 0 "nonimmediate_operand" "=ro<>")
++	(ashift:DI (match_operand:DI 1 "nonimmediate_operand" "ro")
++		   (const_int 32)))]
++  ""
++  "#"
++  "&& reload_completed"
++  [(set (match_dup 4) (match_dup 3))
++   (set (match_dup 2) (const_int 0))]
++  "split_di(operands, 2, operands + 2, operands + 4);")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (match_operand 2 "const_int_operand" "")))]
++  "reload_completed && !TARGET_COLDFIRE
++   && INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 40"
++  [(set (match_dup 4) (ashift:SI (match_dup 4) (match_dup 2)))
++   (set (match_dup 3) (match_dup 4))
++   (set (match_dup 4) (const_int 0))]
++{
++  operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
++  operands[3] = gen_highpart (SImode, operands[0]);
++  operands[4] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (const_int 48)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 2) (match_dup 3))
++   (set (match_dup 2)
++	(rotate:SI (match_dup 2) (const_int 16)))
++   (set (match_dup 3) (const_int 0))
++   (set (strict_low_part (subreg:HI (match_dup 0) 2))
++	(const_int 0))]
++{
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
+ })
+ 
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (match_operand 2 "const_int_operand" "")))]
++  "reload_completed && !TARGET_COLDFIRE
++   && INTVAL (operands[2]) > 40 && INTVAL (operands[2]) <= 63"
++  [(set (match_dup 3) (match_dup 2))
++   (set (match_dup 4) (ashift:SI (match_dup 4) (match_dup 3)))
++   (set (match_dup 3) (match_dup 4))
++   (set (match_dup 4) (const_int 0))]
++{
++  operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
++  operands[3] = gen_highpart (SImode, operands[0]);
++  operands[4] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_insn "*ashldi3"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(ashift:DI (match_operand:DI 1 "register_operand" "0")
++		   (match_operand 2 "const_int_operand" "n")))]
++  "!TARGET_COLDFIRE
++    && ((INTVAL (operands[2]) >= 1 && INTVAL (operands[2]) <= 3)
++	|| INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16
++	|| (INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 63))"
++  "#")
++
+ (define_expand "ashldi3"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "")
+-	(ashift:DI (match_operand:DI 1 "general_operand" "")
+-		     (match_operand 2 "const_int_operand" "")))]
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashift:DI (match_operand:DI 1 "register_operand" "")
++		   (match_operand 2 "const_int_operand" "")))]
+   "!TARGET_COLDFIRE"
+-  "
+ {
+   /* ???  This is a named pattern like this is not allowed to FAIL based
+      on its operands.  */
+@@ -4165,7 +4264,7 @@
+ 	  && INTVAL (operands[2]) != 8 && INTVAL (operands[2]) != 16
+ 	  && (INTVAL (operands[2]) < 32 || INTVAL (operands[2]) > 63)))
+     FAIL;
+-} ")
++})
+ 
+ ;; On most 68k models, this makes faster code in a special case.
+ 
+@@ -4281,66 +4380,132 @@
+   return "move%.l %1,%0";
+ })
+ 
+-(define_insn "ashrdi_const32"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "=d,o,<")
+-	(ashiftrt:DI (match_operand:DI 1 "general_operand" "ro,ro,ro")
++(define_insn "*ashrdi3_const1"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "0")
++		     (const_int 1)))]
++  "!TARGET_COLDFIRE"
++{
++  operands[1] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
++  return "asr%.l #1,%0\;roxr%.l #1,%1";
++})
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 2)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 0)
++	(ashiftrt:DI (match_dup 1) (const_int 1)))
++   (set (match_dup 0)
++	(ashiftrt:DI (match_dup 0) (const_int 1)))]
++  "")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 3)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 0)
++	(ashiftrt:DI (match_dup 1) (const_int 2)))
++   (set (match_dup 0)
++	(ashiftrt:DI (match_dup 0) (const_int 1)))]
++  "")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 8)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (strict_low_part (subreg:QI (match_dup 0) 7))
++	(subreg:QI (match_dup 0) 3))
++   (set (match_dup 2)
++	(ashiftrt:SI (match_dup 2) (const_int 8)))
++   (set (match_dup 3)
++	(rotatert:SI (match_dup 3) (const_int 8)))]
++{
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 16)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (strict_low_part (subreg:HI (match_dup 0) 6))
++	(subreg:HI (match_dup 0) 2))
++   (set (match_dup 2)
++	(rotate:SI (match_dup 2) (const_int 16)))
++   (set (match_dup 3)
++	(rotate:SI (match_dup 3) (const_int 16)))
++   (set (match_dup 2)
++	(sign_extend:SI (subreg:HI (match_dup 2) 2)))]
++{
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_insn "*ashrdi_const32"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(ashiftrt:DI (match_operand:DI 1 "general_operand" "ro")
++		     (const_int 32)))]
++  ""
++{
++  CC_STATUS_INIT;
++  if (TARGET_68020)
++    return "move%.l %1,%R0\;smi %0\;extb%.l %0";
++  else
++    return "move%.l %1,%R0\;smi %0\;ext%.w %0\;ext%.l %0";
++})
++
++(define_insn "*ashrdi_const32_mem"
++  [(set (match_operand:DI 0 "nonimmediate_operand" "=o,<")
++	(ashiftrt:DI (match_operand:DI 1 "general_operand" "ro,ro")
+ 		     (const_int 32)))
+-   (clobber (match_scratch:SI 2 "=X,d,d"))]
++   (clobber (match_scratch:SI 2 "=d,d"))]
+   ""
+ {
+   CC_STATUS_INIT;
+-  if (which_alternative == 0)
+-    {
+-      operands[2] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
+-      if (TARGET_68020)
+-	return "move%.l %1,%2\;smi %0\;extb%.l %0";
+-      else
+-	return "move%.l %1,%2\;smi %0\;ext%.w %0\;ext%.l %0";
+-    }
++  if (which_alternative == 1)
++    operands[3] = operands[0];
+   else
+-    {
+-      if (which_alternative == 2)
+-	operands[3] = operands[0];
+-      else if (which_alternative == 1)
+-	operands[3] = adjust_address (operands[0], SImode, 4);
+-      if (TARGET_68020)
+-	return "move%.l %1,%3\;smi %2\;extb%.l %2\;move%.l %2,%0";
+-      else
+-	return "move%.l %1,%3\;smi %2\;ext%.w %2\;ext%.l %2\;move%.l %2,%0";
+-    }
++    operands[3] = adjust_address (operands[0], SImode, 4);
++  if (TARGET_68020)
++    return "move%.l %1,%3\;smi %2\;extb%.l %2\;move%.l %2,%0";
++  else
++    return "move%.l %1,%3\;smi %2\;ext%.w %2\;ext%.l %2\;move%.l %2,%0";
+ })
+ 
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 63)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 3)
++	(ashiftrt:SI (match_dup 3) (const_int 31)))
++   (set (match_dup 2)
++	(match_dup 3))]
++  "split_di(operands, 1, operands + 2, operands + 3);")
++
+ ;; The predicate below must be general_operand, because ashrdi3 allows that
+ (define_insn "ashrdi_const"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "=d")
+-	(ashiftrt:DI (match_operand:DI 1 "general_operand" "0")
+-		     (match_operand 2 "const_int_operand" "n")))
+-   (clobber (match_scratch:SI 3 "=X"))]
+-  "(!TARGET_COLDFIRE 
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "0")
++		     (match_operand 2 "const_int_operand" "n")))]
++  "!TARGET_COLDFIRE
+     && ((INTVAL (operands[2]) >= 1 && INTVAL (operands[2]) <= 3)
+ 	|| INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16
+ 	|| INTVAL (operands[2]) == 31
+-	|| (INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 63)))"
++	|| (INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 63))"
+ {
+   operands[1] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
+-  if (INTVAL (operands[2]) == 63)
+-    return "add%.l %0,%0\;subx%.l %0,%0\;move%.l %0,%1";
+   CC_STATUS_INIT;
+-  if (INTVAL (operands[2]) == 1)
+-    return "asr%.l #1,%0\;roxr%.l #1,%1";
+-  else if (INTVAL (operands[2]) == 8)
+-    return "move%.b %0,%1\;asr%.l #8,%0\;ror%.l #8,%1";
+-  else if (INTVAL (operands[2]) == 16)
+-    return "move%.w %0,%1\;swap %0\;ext%.l %0\;swap %1";
+-  else if (INTVAL (operands[2]) == 48)
++  if (INTVAL (operands[2]) == 48)
+     return "swap %0\;ext%.l %0\;move%.l %0,%1\;smi %0\;ext%.w %0";
+-  else if (INTVAL (operands[2]) == 31)
++  if (INTVAL (operands[2]) == 31)
+     return "add%.l %1,%1\;addx%.l %0,%0\;move%.l %0,%1\;subx%.l %0,%0";
+-  else if (INTVAL (operands[2]) == 2)
+-    return "asr%.l #1,%0\;roxr%.l #1,%1\;asr%.l #1,%0\;roxr%.l #1,%1";
+-  else if (INTVAL (operands[2]) == 3)
+-    return "asr%.l #1,%0\;roxr%.l #1,%1\;asr%.l #1,%0\;roxr%.l #1,%1\;asr%.l #1,%0\;roxr%.l #1,%1";
+-  else /* 32 < INTVAL (operands[2]) <= 63 */
++  if (INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 63)
+     {
+       operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
+       output_asm_insn (INTVAL (operands[2]) <= 8 ? "asr%.l %2,%0" :
+@@ -4349,15 +4514,14 @@
+       return INTVAL (operands[2]) >= 15 ? "ext%.w %d0" :
+ 	     TARGET_68020 ? "extb%.l %0" : "ext%.w %0\;ext%.l %0";
+     }
++  return "#";
+ })
+ 
+ (define_expand "ashrdi3"
+-  [(parallel [(set (match_operand:DI 0 "nonimmediate_operand" "")
+-		   (ashiftrt:DI (match_operand:DI 1 "general_operand" "")
+-				(match_operand 2 "const_int_operand" "")))
+-	      (clobber (match_scratch:SI 3 ""))])]
++  [(set (match_operand:DI 0 "register_operand" "")
++	(ashiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (match_operand 2 "const_int_operand" "")))]
+   "!TARGET_COLDFIRE"
+-  "
+ {
+   /* ???  This is a named pattern like this is not allowed to FAIL based
+      on its operands.  */
+@@ -4366,8 +4530,7 @@
+ 	  && INTVAL (operands[2]) != 8 && INTVAL (operands[2]) != 16
+ 	  && (INTVAL (operands[2]) < 31 || INTVAL (operands[2]) > 63)))
+     FAIL;
+-  operands[3] = gen_rtx_SCRATCH (SImode);
+-} ")
++})
+ 
+ ;; On all 68k models, this makes faster code in a special case.
+ 
+@@ -4455,69 +4618,176 @@
+   return "move%.l %1,%0";
+ })
+ 
+-(define_insn "lshrdi_const32"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "=ro,<,>")
+-	(lshiftrt:DI (match_operand:DI 1 "general_operand" "ro,ro,ro")
++(define_insn "*lshrdi3_const1"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "0")
++		     (const_int 1)))]
++  "!TARGET_COLDFIRE"
++  "lsr%.l #1,%0\;roxr%.l #1,%R0")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 2)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 0)
++	(lshiftrt:DI (match_dup 1) (const_int 1)))
++   (set (match_dup 0)
++	(lshiftrt:DI (match_dup 0) (const_int 1)))]
++  "")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 3)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (match_dup 0)
++	(lshiftrt:DI (match_dup 1) (const_int 2)))
++   (set (match_dup 0)
++	(lshiftrt:DI (match_dup 0) (const_int 1)))]
++  "")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 8)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (strict_low_part (subreg:QI (match_dup 0) 7))
++	(subreg:QI (match_dup 0) 3))
++   (set (match_dup 2)
++	(lshiftrt:SI (match_dup 2) (const_int 8)))
++   (set (match_dup 3)
++	(rotatert:SI (match_dup 3) (const_int 8)))]
++{
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 16)))]
++  "reload_completed && !TARGET_COLDFIRE"
++  [(set (strict_low_part (subreg:HI (match_dup 0) 6))
++	(subreg:HI (match_dup 0) 2))
++   (set (strict_low_part (subreg:HI (match_dup 0) 2))
++	(const_int 0))
++   (set (match_dup 3)
++	(rotate:SI (match_dup 3) (const_int 16)))
++   (set (match_dup 2)
++	(rotate:SI (match_dup 2) (const_int 16)))]
++{
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "pre_dec_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "nonimmediate_operand" "")
++		     (const_int 32)))]
++  "reload_completed"
++  [(set (match_dup 0) (match_dup 1))
++   (set (match_dup 0) (const_int 0))]
++{
++  operands[0] = adjust_address(operands[0], SImode, 0);
++  operands[1] = gen_highpart(SImode, operands[1]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "post_inc_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "nonimmediate_operand" "")
++		     (const_int 32)))]
++  "reload_completed"
++  [(set (match_dup 0) (const_int 0))
++   (set (match_dup 0) (match_dup 1))]
++{
++  operands[0] = adjust_address(operands[0], SImode, 0);
++  operands[1] = gen_highpart(SImode, operands[1]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "nonimmediate_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "nonimmediate_operand" "")
++		     (const_int 32)))]
++  "reload_completed"
++  [(set (match_dup 2) (match_dup 5))
++   (set (match_dup 4) (const_int 0))]
++  "split_di(operands, 2, operands + 2, operands + 4);")
++
++(define_insn "*lshrdi_const32"
++  [(set (match_operand:DI 0 "nonimmediate_operand" "=ro<>")
++	(lshiftrt:DI (match_operand:DI 1 "general_operand" "ro")
+ 		     (const_int 32)))]
+   ""
++  "#")
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (match_operand 2 "const_int_operand" "")))]
++  "reload_completed && !TARGET_COLDFIRE
++   && INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 40"
++  [(set (match_dup 3) (lshiftrt:SI (match_dup 3) (match_dup 2)))
++   (set (match_dup 4) (match_dup 3))
++   (set (match_dup 3) (const_int 0))]
++{
++  operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
++  operands[3] = gen_highpart (SImode, operands[0]);
++  operands[4] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (const_int 48)))]
++  "reload_completed"
++  [(set (match_dup 3) (match_dup 2))
++   (set (strict_low_part (subreg:HI (match_dup 0) 6))
++	(const_int 0))
++   (set (match_dup 2) (const_int 0))
++   (set (match_dup 3)
++	(rotate:SI (match_dup 3) (const_int 16)))]
+ {
+-  CC_STATUS_INIT;
+-  if (which_alternative == 1)
+-    return "move%.l %1,%0\;clr%.l %0";
+-  if (which_alternative == 2)
+-    return "clr%.l %0\;move%.l %1,%0";
+-  if (GET_CODE (operands[0]) == REG)
+-    operands[2] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
+-  else
+-    operands[2] = adjust_address (operands[0], SImode, 4);
+-  if (GET_CODE (operands[1]) == REG)
+-    operands[3] = gen_rtx_REG (SImode, REGNO (operands[1]) + 1);
+-  else
+-    operands[3] = adjust_address (operands[1], SImode, 4);
+-  if (ADDRESS_REG_P (operands[0]))
+-    return "move%.l %1,%2\;sub%.l %0,%0";
+-  else
+-    return "move%.l %1,%2\;clr%.l %0";
++  operands[2] = gen_highpart (SImode, operands[0]);
++  operands[3] = gen_lowpart (SImode, operands[0]);
+ })
+ 
+-;; The predicate below must be general_operand, because lshrdi3 allows that
+-(define_insn "lshrdi_const"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "=d")
+-	(lshiftrt:DI (match_operand:DI 1 "general_operand" "0")
++(define_split
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
++		     (match_operand 2 "const_int_operand" "")))]
++  "reload_completed && !TARGET_COLDFIRE
++   && INTVAL (operands[2]) > 40 && INTVAL (operands[2]) <= 62"
++  [(set (match_dup 4) (match_dup 2))
++   (set (match_dup 3) (lshiftrt:SI (match_dup 3) (match_dup 4)))
++   (set (match_dup 4) (match_dup 3))
++   (set (match_dup 3) (const_int 0))]
++{
++  operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
++  operands[3] = gen_highpart (SImode, operands[0]);
++  operands[4] = gen_lowpart (SImode, operands[0]);
++})
++
++(define_insn "*lshrdi_const63"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "0")
++		     (const_int 63)))]
++  ""
++  "add%.l %0,%0\;clr%.l %0\;clr%.l %R1\;addx%.l %R1,%R1")
++
++(define_insn "*lshrdi3_const"
++  [(set (match_operand:DI 0 "register_operand" "=d")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "0")
+ 		     (match_operand 2 "const_int_operand" "n")))]
+   "(!TARGET_COLDFIRE
+-    && ((INTVAL (operands[2]) >= 1 && INTVAL (operands[2]) <= 3)
++    && ((INTVAL (operands[2]) >= 2 && INTVAL (operands[2]) <= 3)
+ 	 || INTVAL (operands[2]) == 8 || INTVAL (operands[2]) == 16
+ 	 || (INTVAL (operands[2]) > 32 && INTVAL (operands[2]) <= 63)))"
+-{
+-  operands[1] = gen_rtx_REG (SImode, REGNO (operands[0]) + 1);
+-  if (INTVAL (operands[2]) == 63)
+-    return "add%.l %0,%0\;clr%.l %0\;clr%.l %1\;addx%.l %1,%1";
+-  CC_STATUS_INIT;
+-  if (INTVAL (operands[2]) == 1)
+-    return "lsr%.l #1,%0\;roxr%.l #1,%1";
+-  else if (INTVAL (operands[2]) == 8)
+-    return "move%.b %0,%1\;lsr%.l #8,%0\;ror%.l #8,%1";
+-  else if (INTVAL (operands[2]) == 16)
+-    return "move%.w %0,%1\;clr%.w %0\;swap %1\;swap %0";
+-  else if (INTVAL (operands[2]) == 48)
+-    return "move%.l %0,%1\;clr%.w %1\;clr%.l %0\;swap %1";
+-  else if (INTVAL (operands[2]) == 2)
+-    return "lsr%.l #1,%0\;roxr%.l #1,%1\;lsr%.l #1,%0\;roxr%.l #1,%1";
+-  else if (INTVAL (operands[2]) == 3)
+-    return "lsr%.l #1,%0\;roxr%.l #1,%1\;lsr%.l #1,%0\;roxr%.l #1,%1\;lsr%.l #1,%0\;roxr%.l #1,%1";
+-  else /* 32 < INTVAL (operands[2]) <= 63 */
+-    {
+-      operands[2] = GEN_INT (INTVAL (operands[2]) - 32);
+-      output_asm_insn (INTVAL (operands[2]) <= 8 ? "lsr%.l %2,%0" :
+-			"moveq %2,%1\;lsr%.l %1,%0", operands);
+-      return "mov%.l %0,%1\;moveq #0,%0";
+-    }
+-})
++  "#")
+ 
+ (define_expand "lshrdi3"
+-  [(set (match_operand:DI 0 "nonimmediate_operand" "")
+-	(lshiftrt:DI (match_operand:DI 1 "general_operand" "")
++  [(set (match_operand:DI 0 "register_operand" "")
++	(lshiftrt:DI (match_operand:DI 1 "register_operand" "")
+ 		     (match_operand 2 "const_int_operand" "")))]
+   "!TARGET_COLDFIRE"
+ {
+Index: gcc-4.2/gcc/config/m68k/m68k-protos.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k-protos.h
++++ gcc-4.2/gcc/config/m68k/m68k-protos.h
+@@ -21,6 +21,9 @@ along with GCC; see the file COPYING3.  
+ 
+ #ifdef RTX_CODE
+ extern HOST_WIDE_INT m68k_initial_elimination_offset (int from, int to);
++
++extern void split_di (rtx[], int, rtx[], rtx[]);
++
+ extern const char *output_move_const_into_data_reg (rtx *);
+ extern int valid_mov3q_const (rtx);
+ extern const char *output_move_simode_const (rtx *);
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -2499,6 +2499,32 @@ emit_move_sequence (rtx *operands, enum 
+   return 0;
+ }
+ 
++void
++split_di (rtx operands[], int num, rtx lo_half[], rtx hi_half[])
++{
++  while (num--)
++    {
++      rtx op = operands[num];
++
++      /* simplify_subreg refuse to split volatile memory addresses,
++	 but we still have to handle it.  */
++      if (GET_CODE (op) == MEM)
++	{
++	  lo_half[num] = adjust_address (op, SImode, 4);
++	  hi_half[num] = adjust_address (op, SImode, 0);
++	}
++      else
++	{
++	  lo_half[num] = simplify_gen_subreg (SImode, op,
++					      GET_MODE (op) == VOIDmode
++					      ? DImode : GET_MODE (op), 4);
++	  hi_half[num] = simplify_gen_subreg (SImode, op,
++					      GET_MODE (op) == VOIDmode
++					      ? DImode : GET_MODE (op), 0);
++	}
++    }
++}
++
+ /* Return a REG that occurs in ADDR with coefficient 1.
+    ADDR can be effectively incremented by incrementing REG.  */
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-stacktrace.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-stacktrace.dpatch
@@ -0,0 +1,70 @@
+#! /bin/sh -e
+
+# DP: libgcj: Lookup source file name and line number in separated
+# DP: debug files found in /usr/lib/debug
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- libjava/stacktrace.cc.orig	2006-06-16 13:54:07.078577632 +0200
++++ libjava/stacktrace.cc	2006-06-16 13:56:08.032189888 +0200
+@@ -20,6 +20,11 @@
+ #endif
+ 
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#ifdef HAVE_UNISTD_H
++#include <unistd.h>
++#endif
+ 
+ #include <java/lang/Class.h>
+ #include <java/lang/Long.h>
+@@ -222,6 +227,28 @@
+       finder->lookup (binaryName, (jlong) offset);
+       *sourceFileName = finder->getSourceFile();
+       *lineNum = finder->getLineNum();
++      if (*lineNum == -1 && info.file_name[0] == '/')
++	{
++	  const char *debugPrefix = "/usr/lib/debug";
++	  char *debugPath = (char *) malloc (strlen(debugPrefix)
++					     + strlen(info.file_name)
++					     + 2);
++
++	  if (debugPath)
++	    {
++	      strcpy (debugPath, debugPrefix);
++	      strcat (debugPath, info.file_name);
++	      //printf ("%s: 0x%x\n", debugPath, offset);
++	      if (!access (debugPath, R_OK))
++		{
++		  binaryName = JvNewStringUTF (debugPath);
++		  finder->lookup (binaryName, (jlong) offset);
++		  *sourceFileName = finder->getSourceFile();
++		  *lineNum = finder->getLineNum();
++		}
++	      free (debugPath);
++	    }
++	}
+       if (*lineNum == -1 && NameFinder::showRaw())
+         {
+           gnu::gcj::runtime::StringBuffer *t =
--- gcj-4.2-4.2.4.orig/debian/patches/libstdc++-doxygen.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libstdc++-doxygen.dpatch
@@ -0,0 +1,36 @@
+#! /bin/sh -e
+
+# DP: libstdc++ doxygen docs: Set SHORT_NAMES to YES
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libstdc++-v3/docs/doxygen/user.cfg.in~	2005-03-04 19:44:51.000000000 +0100
++++ libstdc++-v3/docs/doxygen/user.cfg.in	2005-04-09 01:00:44.753742400 +0200
+@@ -133,7 +133,7 @@
+ # (but less readable) file names. This can be useful is your file systems 
+ # doesn't support long names like on DOS, Mac, or CD-ROM.
+ 
+-SHORT_NAMES            = NO
++SHORT_NAMES            = YES
+ 
+ # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
+ # will interpret the first line (until the first dot) of a JavaDoc-style 
--- gcj-4.2-4.2.4.orig/debian/patches/native-ecj.dpatch
+++ gcj-4.2-4.2.4/debian/patches/native-ecj.dpatch
@@ -0,0 +1,124 @@
+#! /bin/sh -e
+
+# DP: Build ecj as a native binary
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libjava/Makefile.am.old	2007-05-06 15:33:47.000000000 +0200
++++ libjava/Makefile.am	2007-05-07 13:05:56.000000000 +0200
+@@ -669,7 +669,7 @@
+ ## Hopefully the user has compiled it into his system .db.
+ ## However, even if not it will run reasonably quickly.
+ 
+-ECJX_BASE_FLAGS = -findirect-dispatch \
++ECJX_BASE_FLAGS = \
+ 	--main=org.eclipse.jdt.internal.compiler.batch.GCCMain
+ 
+ if NATIVE
+@@ -678,7 +678,7 @@
+ 
+ if ENABLE_SHARED
+ ## Use ecj.jar at runtime.
+-ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) -Djava.class.path=$(ECJ_JAR)
++ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+ else !ENABLE_SHARED
+ ## Use ecj.jar at compile time.
+ ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+--- libjava/Makefile.in.old	2007-05-16 08:33:34.000000000 +0200
++++ libjava/Makefile.in	2007-05-16 08:40:46.000000000 +0200
+@@ -580,7 +580,7 @@
+ ECHO_C = @ECHO_C@
+ ECHO_N = @ECHO_N@
+ ECHO_T = @ECHO_T@
+-ECJ_BUILD_JAR = @ECJ_BUILD_JAR@
++ECJ_BUILD_JAR = $(top_srcdir)/../ecj-standalone.jar
+ ECJ_JAR = @ECJ_JAR@
+ EGREP = @EGREP@
+ ENABLE_SHARED_FALSE = @ENABLE_SHARED_FALSE@
+@@ -7861,13 +7861,13 @@
+ gij_LDADD = -L$(here)/.libs libgij.la
+ gij_DEPENDENCIES = libgij.la
+ ecjx_SOURCES = 
+-ECJX_BASE_FLAGS = -findirect-dispatch \
++ECJX_BASE_FLAGS = \
+ 	--main=org.eclipse.jdt.internal.compiler.batch.GCCMain
+ 
+ @NATIVE_FALSE@ecjx_LINK = $(GCJ_FOR_ECJX_LINK)
+ @NATIVE_TRUE@ecjx_LINK = $(GCJLINK)
+ @ENABLE_SHARED_FALSE@@NATIVE_TRUE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR) -fbootclasspath=$(BOOTCLASSPATH)
+-@ENABLE_SHARED_TRUE@@NATIVE_TRUE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) -Djava.class.path=$(ECJ_JAR)
++@ENABLE_SHARED_TRUE@@NATIVE_TRUE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+ @NATIVE_FALSE@ecjx_LDFLAGS = $(ECJX_BASE_FLAGS) $(ECJ_BUILD_JAR)
+ @NATIVE_FALSE@ecjx_LDADD = 
+ @NATIVE_TRUE@ecjx_LDADD = -L$(here)/.libs libgcj.la -rpath $(dbexecdir)
+--- libjava/testsuite/Makefile.am~	2007-05-06 10:44:26.000000000 +0200
++++ libjava/testsuite/Makefile.am	2007-05-09 09:36:45.000000000 +0200
+@@ -61,11 +61,11 @@
+ 	  if test -n "$$testdep"; then \
+ 	    $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+ 	      $(top_builddir)/libgcj-$(gcc_short_version).jar::$$testtmpdir \
+-	      -d $$testtmpdir $(srcdir)/$$testdep || exit; \
++	      -d $$testtmpdir $(srcdir)/$$testdep || echo "ERROR building $$testdep"; \
+ 	  fi; \
+ 	  $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+ 	    $(top_builddir)/libgcj-$(gcc_short_version).jar:$$testtmpdir \
+-	    -d $$testtmpdir $(srcdir)/$$test || exit; \
++	    -d $$testtmpdir $(srcdir)/$$test || echo "ERROR building $$test"; \
+ 	  case "$$test" in \
+ 	    libjava.loader/dummy.java) \
+ 	      cp $$testtmpdir/dummy.class $$testjar;; \
+@@ -77,7 +77,7 @@
+ 	  if test -n "$$genheader"; then \
+ 	    $(MYGCJH) $$genheader $$testtmpdir/*.class \
+ 	      -bootclasspath $(top_builddir)/libgcj-$(gcc_short_version).jar \
+-	      -d $$testtmpdir/ || exit; \
++	      -d $$testtmpdir/ || echo "ERROR generating header files"; \
+ 	    mv $$testtmpdir/*.h $(srcdir)/`dirname $$test`/ 2>/dev/null; \
+ 	  fi; \
+ 	  rm -rf $$testtmpdir; \
+--- libjava/testsuite/Makefile.in~	2007-05-06 10:44:33.000000000 +0200
++++ libjava/testsuite/Makefile.in	2007-05-09 09:38:38.000000000 +0200
+@@ -559,11 +559,11 @@
+ @JAVA_MAINTAINER_MODE_TRUE@	  if test -n "$$testdep"; then \
+ @JAVA_MAINTAINER_MODE_TRUE@	    $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+ @JAVA_MAINTAINER_MODE_TRUE@	      $(top_builddir)/libgcj-$(gcc_short_version).jar::$$testtmpdir \
+-@JAVA_MAINTAINER_MODE_TRUE@	      -d $$testtmpdir $(srcdir)/$$testdep || exit; \
++@JAVA_MAINTAINER_MODE_TRUE@	      -d $$testtmpdir $(srcdir)/$$testdep || echo "ERROR building $$testdep"; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  fi; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  $(GCJ) -C -g -w --encoding=UTF-8 -bootclasspath \
+ @JAVA_MAINTAINER_MODE_TRUE@	    $(top_builddir)/libgcj-$(gcc_short_version).jar:$$testtmpdir \
+-@JAVA_MAINTAINER_MODE_TRUE@	    -d $$testtmpdir $(srcdir)/$$test || exit; \
++@JAVA_MAINTAINER_MODE_TRUE@	    -d $$testtmpdir $(srcdir)/$$test || echo "ERROR building $$test"; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  case "$$test" in \
+ @JAVA_MAINTAINER_MODE_TRUE@	    libjava.loader/dummy.java) \
+ @JAVA_MAINTAINER_MODE_TRUE@	      cp $$testtmpdir/dummy.class $$testjar;; \
+@@ -575,7 +575,7 @@
+ @JAVA_MAINTAINER_MODE_TRUE@	  if test -n "$$genheader"; then \
+ @JAVA_MAINTAINER_MODE_TRUE@	    $(MYGCJH) $$genheader $$testtmpdir/*.class \
+ @JAVA_MAINTAINER_MODE_TRUE@	      -bootclasspath $(top_builddir)/libgcj-$(gcc_short_version).jar \
+-@JAVA_MAINTAINER_MODE_TRUE@	      -d $$testtmpdir/ || exit; \
++@JAVA_MAINTAINER_MODE_TRUE@	      -d $$testtmpdir/ || echo "ERROR generating header files"; \
+ @JAVA_MAINTAINER_MODE_TRUE@	    mv $$testtmpdir/*.h $(srcdir)/`dirname $$test`/ 2>/dev/null; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  fi; \
+ @JAVA_MAINTAINER_MODE_TRUE@	  rm -rf $$testtmpdir; \
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-libphobos-std-format.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-libphobos-std-format.dpatch
@@ -0,0 +1,63 @@
+#! /bin/sh -e
+
+# gdc-libphobos-std-format.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Replace assert by FormatError on untested archs.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/d/phobos/std/format.d	2007-11-06 21:02:55.000000000 +0000
++++ gcc/d/phobos/std/format.d	2007-11-06 21:10:56.000000000 +0000
+@@ -962,13 +962,9 @@
+ 			// Structs are pass-by-reference in V4 ABI
+ 			s = tis.xtoString(va_arg!(void*)(argptr));
+ 		    }
+-		    else version(X86_64)
+-		    {
+-			throw new FormatError("cannot portably format a struct on this target");
+-		    }
+ 		    else
+ 		    {
+-			static assert(0, "unimplemented");
++			throw new FormatError("cannot portably format a struct on this target");
+ 		    }
+ 		}
+ 		else
+--- gcc/d/phobos2/std/format.d	2007-11-06 21:03:08.000000000 +0000
++++ gcc/d/phobos2/std/format.d	2007-11-06 21:11:30.000000000 +0000
+@@ -963,13 +963,9 @@
+ 			// Structs are pass-by-reference in V4 ABI
+ 			s = tis.xtoString(va_arg!(void*)(argptr));
+ 		    }
+-		    else version(X86_64)
+-		    {
+-			throw new FormatError("cannot portably format a struct on this target");
+-		    }
+ 		    else
+ 		    {
+-			static assert(0, "unimplemented");
++			throw new FormatError("cannot portably format a struct on this target");
+ 		    }
+ 		}
+ 		else
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-driver-extra-langs.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-driver-extra-langs.dpatch
@@ -0,0 +1,40 @@
+#! /bin/sh -e
+
+# DP: Add options and specs for languages that are not built from a source
+# DP: (but built from separate sources).
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/Makefile.in~	2006-07-11 14:03:25.865618000 +0200
++++ gcc/Makefile.in	2006-07-11 21:15:30.011548776 +0200
+@@ -424,8 +424,8 @@
+ xm_include_list=@xm_include_list@
+ xm_defines=@xm_defines@
+ lang_checks=check-gcc
+-lang_opt_files=@lang_opt_files@ $(srcdir)/c.opt $(srcdir)/common.opt
+-lang_specs_files=@lang_specs_files@
++lang_opt_files=$(sort @lang_opt_files@ $(foreach lang,$(debian_extra_langs),$(srcdir)/$(lang)/lang.opt)) $(srcdir)/c.opt $(srcdir)/common.opt
++lang_specs_files=$(sort @lang_specs_files@ $(foreach lang,$(debian_extra_langs),$(srcdir)/$(lang)/lang-specs.h))
+ lang_tree_files=@lang_tree_files@
+ target_cpu_default=@target_cpu_default@
+ GCC_THREAD_FILE=@thread_file@
--- gcj-4.2-4.2.4.orig/debian/patches/mudflap-nocheck.dpatch
+++ gcj-4.2-4.2.4/debian/patches/mudflap-nocheck.dpatch
@@ -0,0 +1,36 @@
+#! /bin/sh -e
+
+# DP: Disable running the libmudflap testsuite. Getting killed on alpha.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libmudflap/testsuite/Makefile.in~	2005-09-23 18:33:47.000000000 +0200
++++ libmudflap/testsuite/Makefile.in	2006-03-25 20:31:45.044903808 +0100
+@@ -218,6 +218,8 @@
+ 
+ 
+ check-DEJAGNU: site.exp
++	@echo target $@ disabled for Debian build.
++check-DEJAGNU-disabled: site.exp
+ 	srcdir=`$(am__cd) $(srcdir) && pwd`; export srcdir; \
+ 	EXPECT=$(EXPECT); export EXPECT; \
+ 	runtest=$(RUNTEST); \
--- gcj-4.2-4.2.4.orig/debian/patches/pr35437.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr35437.dpatch
@@ -0,0 +1,90 @@
+#! /bin/sh -e
+
+# DP: Fix PR c/35437 (ice-on-invalid), taken from the gcc-4.3 branch.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+gcc/
+
+2008-10-08  Simon Martin  <simartin@users.sourceforge.net>
+
+	PR c/35437
+	* expr.c (count_type_elements): Handle ERROR_MARK.
+
+gcc/testsuite/
+
+2008-10-08  Simon Martin  <simartin@users.sourceforge.net>
+
+	PR c/35437
+	* gcc.dg/struct-parse-2.c: New test.
+	* g++.dg/parse/struct-4.C: New test.
+
+Index: gcc/testsuite/gcc.dg/struct-parse-2.c
+===================================================================
+--- gcc/testsuite/gcc.dg/struct-parse-2.c	(revision 0)
++++ gcc/testsuite/gcc.dg/struct-parse-2.c	(revision 0)
+@@ -0,0 +1,13 @@
++/* PR c/35437 */
++/* { dg-do "compile" } */
++
++struct A
++{
++  int i;
++  struct A a; /* { dg-error "has incomplete type" } */
++};
++
++void foo()
++{
++  struct A b = { 0 };
++}
+Index: gcc/testsuite/g++.dg/parse/struct-4.C
+===================================================================
+--- gcc/testsuite/g++.dg/parse/struct-4.C	(revision 0)
++++ gcc/testsuite/g++.dg/parse/struct-4.C	(revision 0)
+@@ -0,0 +1,13 @@
++/* PR c/35437 */
++/* { dg-do "compile" } */
++
++struct A
++{
++  int i;
++  struct A a; /* { dg-error "has incomplete type" } */
++};
++
++void foo()
++{
++  struct A b = { 0 };
++}
+Index: gcc/expr.c
+===================================================================
+--- gcc/expr.c	(revision 140971)
++++ gcc/expr.c	(working copy)
+@@ -4796,6 +4796,9 @@
+     case REFERENCE_TYPE:
+       return 1;
+ 
++    case ERROR_MARK:
++      return 0;
++
+     case VOID_TYPE:
+     case METHOD_TYPE:
+     case FUNCTION_TYPE:
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-nobiarch-check.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-nobiarch-check.dpatch
@@ -0,0 +1,44 @@
+#! /bin/sh -e
+
+# DP: For biarch builds, disable the testsuite for the non-default architecture
+# DP: for runtime libraries, which are not built by default (libjava).
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- libjava/testsuite/Makefile.in~	2005-09-29 23:53:39.213898000 +0200
++++ libjava/testsuite/Makefile.in	2005-09-29 23:55:33.382541760 +0200
+@@ -346,12 +346,14 @@
+ 
+ 
+ check-DEJAGNU: site.exp
++	runtestflags="`echo '$(RUNTESTFLAGS)' | sed 's/,-m[36][24]///,-mabi=n32//`"; \
++	case "$$runtestflags" in *\\{\\}) runtestflags=; esac; \
+ 	srcdir=`$(am__cd) $(srcdir) && pwd`; export srcdir; \
+ 	EXPECT=$(EXPECT); export EXPECT; \
+ 	runtest=$(RUNTEST); \
+ 	if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
+ 	  l='$(DEJATOOL)'; for tool in $$l; do \
+-	    $$runtest $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \
++	    $$runtest $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $$runtestflags; \
+ 	  done; \
+ 	else echo "WARNING: could not find \`runtest'" 1>&2; :;\
+ 	fi
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-reg-inc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-reg-inc.dpatch
@@ -0,0 +1,90 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: reinsert REG_INC notes after splitting an instruction
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/emit-rtl.c |   40 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 40 insertions(+)
+
+Index: gcc-4.2/gcc/emit-rtl.c
+===================================================================
+--- gcc-4.2.orig/gcc/emit-rtl.c
++++ gcc-4.2/gcc/emit-rtl.c
+@@ -3064,6 +3064,34 @@ prev_cc0_setter (rtx insn)
+ }
+ #endif
+ 
++#ifdef AUTO_INC_DEC
++static int
++find_auto_inc (rtx *xp, void *data)
++{
++  rtx x = *xp;
++  rtx reg = data;
++
++  if (GET_RTX_CLASS (GET_CODE (x)) != RTX_AUTOINC)
++    return 0;
++
++  switch (GET_CODE (x)) {
++  case PRE_DEC:
++  case PRE_INC:
++  case POST_DEC:
++  case POST_INC:
++  case PRE_MODIFY:
++  case POST_MODIFY:
++    if (rtx_equal_p (reg, XEXP (x, 0)))
++      return 1;
++    break;
++
++  default:
++    gcc_unreachable ();
++  }
++  return -1;
++}
++#endif
++
+ /* Increment the label uses for all labels present in rtx.  */
+ 
+ static void
+@@ -3229,6 +3257,18 @@ try_split (rtx pat, rtx trial, int last)
+ 	    }
+ 	  break;
+ 
++#ifdef AUTO_INC_DEC
++	case REG_INC:
++	  for (insn = insn_last; insn; insn = PREV_INSN (insn))
++	    {
++	      rtx reg = XEXP (note, 0);
++	      if (for_each_rtx (&PATTERN (insn), find_auto_inc, reg) > 0)
++		REG_NOTES (insn) = gen_rtx_EXPR_LIST (REG_INC, reg,
++						      REG_NOTES (insn));
++	    }
++	  break;
++#endif
++
+ 	default:
+ 	  break;
+ 	}
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-jumptable.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-jumptable.dpatch
@@ -0,0 +1,51 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: Don't force byte offset when accessing the jumptable, gas can
+# DP: generate the correct offset size instead.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/config/m68k/m68k.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -3022,10 +3022,10 @@ print_operand (FILE *file, rtx op, int l
+ 
+ #if MOTOROLA
+ #  define ASM_OUTPUT_CASE_FETCH(file, labelno, regname) \
+-  asm_fprintf (file, "%LL%d-%LLI%d.b(%Rpc,%s.", labelno, labelno, regname)
++  asm_fprintf (file, "%LL%d(%Rpc,%s.", labelno, regname)
+ #else /* !MOTOROLA */
+ # define ASM_OUTPUT_CASE_FETCH(file, labelno, regname) \
+-  asm_fprintf (file, "%Rpc@(%LL%d-%LLI%d-2:b,%s:", labelno, labelno, regname)
++  asm_fprintf (file, "%Rpc@(%LL%d,%s:", labelno, regname)
+ #endif /* !MOTOROLA */
+ 
+ void
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-hash-style-gnu.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-hash-style-gnu.dpatch
@@ -0,0 +1,163 @@
+#! /bin/sh -e
+
+# DP: Link using --hash-style=gnu (alpha, amd64, ia64, i386, powerpc, ppc64, s390, sparc)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2006-07-11  Jakub Jelinek  <jakub@redhat.com>
+
+	* config/i386/linux.h (LINK_SPEC): Add --hash-style=gnu.
+	* config/i386/linux64.h (LINK_SPEC): Likewise.
+	* config/rs6000/sysv4.h (LINK_OS_LINUX_SPEC): Likewise.
+	* config/rs6000/linux64.h (LINK_OS_LINUX_SPEC32,
+	LINK_OS_LINUX_SPEC64): Likewise.
+	* config/s390/linux.h (LINK_SPEC): Likewise.
+	* config/ia64/linux.h (LINK_SPEC): Likewise.
+	* config/sparc/linux.h (LINK_SPEC): Likewise.
+	* config/sparc/linux64.h (LINK_SPEC, LINK_ARCH32_SPEC,
+	LINK_ARCH64_SPEC): Likewise.
+	* config/alpha/linux-elf.h (LINK_SPEC): Likewise.
+
+--- gcc/config/alpha/linux-elf.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/alpha/linux-elf.h	2006-12-11 13:03:10.336229000 +0100
+@@ -40,7 +40,7 @@
+ 
+ #define ELF_DYNAMIC_LINKER	LINUX_DYNAMIC_LINKER
+ 
+-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax}		\
++#define LINK_SPEC "-m elf64alpha --hash-style=gnu %{G*} %{relax:-relax}	\
+   %{O*:-O3} %{!O*:-O1}						\
+   %{shared:-shared}						\
+   %{!shared:							\
+--- gcc/config/s390/linux.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/s390/linux.h	2006-12-11 13:03:10.336229000 +0100
+@@ -78,7 +78,7 @@
+ 
+ #undef  LINK_SPEC
+ #define LINK_SPEC \
+-  "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
++  "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=gnu \
+    %{shared:-shared} \
+    %{!shared: \
+       %{static:-static} \
+--- gcc/config/sparc/linux.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/sparc/linux.h	2006-12-11 13:03:10.336229000 +0100
+@@ -133,7 +133,7 @@
+ 
+ 
+ #undef  LINK_SPEC
+-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_SPEC "-m elf32_sparc --hash-style=gnu -Y P,/usr/lib %{shared:-shared} \
+   %{!mno-relax:%{!r:-relax}} \
+   %{!shared: \
+     %{!ibcs: \
+--- gcc/config/sparc/linux64.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/sparc/linux64.h	2006-12-11 13:03:10.336229000 +0100
+@@ -167,7 +167,7 @@
+   { "link_arch_default", LINK_ARCH_DEFAULT_SPEC },	  \
+   { "link_arch",	 LINK_ARCH_SPEC },
+ 
+-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=gnu -Y P,/usr/lib %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+@@ -176,7 +176,7 @@
+         %{static:-static}}} \
+ "
+ 
+-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
++#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=gnu -Y P,/usr/lib64 %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+@@ -257,7 +257,7 @@
+ #else /* !SPARC_BI_ARCH */
+ 
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
++#define LINK_SPEC "-m elf64_sparc --hash-style=gnu -Y P,/usr/lib64 %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+--- gcc/config/i386/linux.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/i386/linux.h	2006-12-11 13:03:10.336229000 +0100
+@@ -109,7 +109,7 @@
+   { "dynamic_linker", LINUX_DYNAMIC_LINKER }
+ 
+ #undef	LINK_SPEC
+-#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
++#define LINK_SPEC "-m %(link_emulation) --hash-style=gnu %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+--- gcc/config/i386/linux64.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/i386/linux64.h	2006-12-11 13:03:51.046229000 +0100
+@@ -53,7 +53,7 @@
+ #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+ 
+ #undef	LINK_SPEC
+-#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
++#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} --hash-style=gnu \
+   %{shared:-shared} \
+   %{!shared: \
+     %{!static: \
+--- gcc/config/ia64/linux.h.orig	2006-12-11 13:02:43.406229000 +0100
++++ gcc/config/ia64/linux.h	2006-12-11 13:03:10.346229000 +0100
+@@ -40,7 +40,7 @@
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
+ 
+ #undef LINK_SPEC
+-#define LINK_SPEC "\
++#define LINK_SPEC "--hash-style=gnu \
+   %{shared:-shared} \
+   %{!shared: \
+     %{!static: \
+--- gcc/config/rs6000/sysv4.h.orig	2006-12-11 13:02:43.406229000 +0100
++++ gcc/config/rs6000/sysv4.h	2006-12-11 13:03:10.346229000 +0100
+@@ -908,7 +908,7 @@
+ #define LINUX_DYNAMIC_LINKER \
+   CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
+ 
+-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=gnu %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
+ 
+--- gcc/config/rs6000/linux64.h.orig	2006-12-11 13:02:43.406229000 +0100
++++ gcc/config/rs6000/linux64.h	2006-12-11 13:03:10.346229000 +0100
+@@ -351,11 +351,11 @@
+   CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64)
+ 
+ 
+-#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=gnu %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER32 "}}}"
+ 
+-#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=gnu %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}}"
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/sparc-biarch.dpatch
+++ gcj-4.2-4.2.4/debian/patches/sparc-biarch.dpatch
@@ -0,0 +1,80 @@
+#! /bin/sh -e
+# 10_newpatch.dpatch by  <schizo@debian.org>
+# updated for 4.0, 4.1, 4.2 by Matthias Klose <doko@debian.org>
+#
+# DP: Enable biarch support for the 32bit sparc compiler
+
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    -unpatch)
+	patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1;;
+esac
+
+exit 0
+
+--- gcc/config/sparc/linux64.h.orig	2006-06-04 13:09:21.857528428 -0300
++++ gcc/config/sparc/linux64.h	2006-06-04 13:11:15.385012057 -0300
+@@ -54,8 +54,8 @@
+    + MASK_STACK_BIAS + MASK_APP_REGS + MASK_FPU + MASK_LONG_DOUBLE_128)
+ #endif
+ 
+-#undef ASM_CPU_DEFAULT_SPEC
+-#define ASM_CPU_DEFAULT_SPEC "-Av9a"
++#undef ASM_CPU64_DEFAULT_SPEC
++#define ASM_CPU64_DEFAULT_SPEC "-Av9a"
+ 
+ /* Provide a STARTFILE_SPEC appropriate for GNU/Linux.  Here we add
+    the GNU/Linux magical crtbegin.o file (see crtstuff.c) which
+--- gcc/config.gcc.orig	2006-06-04 13:09:21.882530957 -0300
++++ gcc/config.gcc	2006-06-04 13:14:13.577036688 -0300
+@@ -315,6 +315,7 @@
+ 	;;
+ sparc*-*-*)
+ 	cpu_type=sparc
++	need_64bit_hwint=yes
+ 	;;
+ s390*-*-*)
+ 	cpu_type=s390
+@@ -2105,9 +2106,16 @@
+ 	use_fixproto=yes
+ 	;;
+ sparc-*-linux*)		# SPARC's running GNU/Linux, libc6
++	# If cpu is specified, assume we want a 32/64 compiler
++	if test x$with_cpu = x; then
+ 	tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux.h"
+ 	extra_options="${extra_options} sparc/long-double-switch.opt"
+ 	tmake_file="${tmake_file} sparc/t-linux sparc/t-crtfm"
++	else
++	  tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/linux64.h"
++	  extra_options="${extra_options} sparc/long-double-switch.opt"
++	  tmake_file="${tmake_file} sparc/t-linux sparc/t-linux64 sparc/t-crtfm"
++	fi
+ 	;;
+ sparc-*-rtems*)
+ 	tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h sparc/sp-elf.h sparc/rtemself.h rtems.h"
+--- libcpp/configure.ac~	2006-01-18 22:52:36.862072128 +0100
++++ libcpp/configure.ac	2006-08-15 14:48:00.484137064 +0200
+@@ -124,7 +124,7 @@
+ 	powerpc*-*-* | \
+ 	rs6000*-*-* | \
+ 	s390*-*-* | \
+-	sparc64*-*-* | ultrasparc-*-freebsd* | \
++	sparc*-*-* | ultrasparc-*-freebsd* | \
+ 	sparcv9-*-solaris2* | \
+ 	sparc-*-solaris2.[789] | sparc-*-solaris2.1[0-9]* | \
+ 	sh[123456789l]*-*-*)
--- gcj-4.2-4.2.4.orig/debian/patches/arm-unbreak-eabi-armv4t.dpatch
+++ gcj-4.2-4.2.4/debian/patches/arm-unbreak-eabi-armv4t.dpatch
@@ -0,0 +1,37 @@
+#! /bin/sh -e
+
+# DP: Fix armv4t build on ARM
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -urN gcc-4.1.1/gcc/config/arm/linux-eabi.h gcc-4.1.1-arm9tdmi/gcc/config/arm/linux-eabi.h
+--- gcc-4.1.1/gcc/config/arm/linux-eabi.h	2006-10-22 11:11:49.000000000 -0700
++++ gcc-4.1.1-arm9tdmi/gcc/config/arm/linux-eabi.h	2006-10-24 21:34:01.000000000 -0700
+@@ -45,7 +45,7 @@
+    The ARM10TDMI core is the default for armv5t, so set
+    SUBTARGET_CPU_DEFAULT to achieve this.  */
+ #undef SUBTARGET_CPU_DEFAULT
+-#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi
++#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi
+ 
+ #undef SUBTARGET_EXTRA_LINK_SPEC
+ #define SUBTARGET_EXTRA_LINK_SPEC " -m armelf_linux_eabi"
--- gcj-4.2-4.2.4.orig/debian/patches/ada-acats.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-acats.dpatch
@@ -0,0 +1,78 @@
+#! /bin/sh -e
+
+# DP: - When running the ACATS, look for the gnat tools in their new
+# DP:   directory (build/gnattools), and for the shared libraries in
+# DP:   build/gcc/ada/rts, build/libgnatvsn and build/libgnatprj.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/testsuite/ada/acats/run_acats~
++++ gcc/testsuite/ada/acats/run_acats	2006-04-22 08:57:50.933824704 +0200
+@@ -11,23 +11,42 @@
+ host_gnatmake=`type gnatmake | awk '{print $3}'`
+ ROOT=`${PWDCMD-pwd}`
+ BASE=`cd $ROOT/../../..; ${PWDCMD-pwd}`
+-
+-PATH=$BASE:$ROOT:$PATH
+-ADA_INCLUDE_PATH=$BASE/ada/rts
++GNATTOOLS=`cd $BASE/../gnattools; ${PWDCMD-pwd}`
++LIBGNATVSN=`cd $BASE/../libgnatvsn; ${PWDCMD-pwd}`
++LIBGNATPRJ=`cd $BASE/../libgnatprj; ${PWDCMD-pwd}`
++
++PATH=$GNATTOOLS:$BASE:$ROOT:$PATH
++ADA_INCLUDE_DIR=$BASE/ada/rts
++ADA_INCLUDE_PATH=$ADA_INCLUDE_DIR:$LIBGNATVSN:$LIBGNATPRJ
+ LD_LIBRARY_PATH=$ADA_INCLUDE_PATH:$BASE:$LD_LIBRARY_PATH
+ ADA_OBJECTS_PATH=$ADA_INCLUDE_PATH
+ 
+-if [ ! -d $ADA_INCLUDE_PATH ]; then
++if [ ! -d $ADA_INCLUDE_DIR ]; then
+    echo gnatlib missing, exiting.
+    exit 1
+ fi
+ 
+-if [ ! -f $BASE/gnatchop ]; then
++if [ ! -d $GNATTOOLS ]; then
++   echo gnattools missing, exiting.
++   exit 1
++fi
++
++if [ ! -d $LIBGNATVSN ]; then
++   echo libgnatvsn missing, exiting.
++   exit 1
++fi
++
++if [ ! -d $LIBGNATPRJ ]; then
++   echo libgnatprj missing, exiting.
++   exit 1
++fi
++
++if [ ! -f $GNATTOOLS/gnatchop ]; then
+    echo gnattools missing, exiting.
+    exit 1
+ fi
+ 
+-if [ ! -f $BASE/gnatmake ]; then
++if [ ! -f $GNATTOOLS/gnatmake ]; then
+    echo gnattools missing, exiting.
+    exit 1
+ fi
--- gcj-4.2-4.2.4.orig/debian/patches/rename-info-files.dpatch
+++ gcj-4.2-4.2.4/debian/patches/rename-info-files.dpatch
@@ -0,0 +1,657 @@
+#! /bin/sh -e
+
+# DP: Allow transformations on info file names. Reference the
+# DP: transformed info file names in the texinfo files.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+gcc/ChangeLog:
+
+2004-02-17  Matthias Klose  <doko@debian.org>
+
+	* Makefile.in: Allow transformations on info file names.
+	Define MAKEINFODEFS, macros to pass transformated info file
+	names to makeinfo.
+	* doc/cpp.texi: Use macros defined in MAKEINFODEFS for references.
+	* doc/cppinternals.texi: Likewise.
+	* doc/extend.texi: Likewise.
+	* doc/gcc.texi: Likewise.
+	* doc/gccint.texi: Likewise.
+	* doc/invoke.texi: Likewise.
+	* doc/libgcc.texi: Likewise.
+	* doc/makefile.texi: Likewise.
+	* doc/passes.texi: Likewise.
+	* doc/sourcebuild.texi: Likewise.
+	* doc/standards.texi: Likewise.
+	* doc/trouble.texi: Likewise.
+
+gcc/fortran/ChangeLog:
+	* Make-lang.in: Allow transformations on info file names.
+	Pass macros of transformated info file defined in MAKEINFODEFS
+	names to makeinfo.
+	* gfortran.texi: Use macros defined in MAKEINFODEFS for references.
+
+gcc/java/ChangeLog:
+	* Make-lang.in: Allow transformations on info file names.
+	Pass macros of transformated info file defined in MAKEINFODEFS
+	names to makeinfo.
+	* gcj.texi: Use macros defined in MAKEINFODEFS for references.
+
+gcc/treelang/ChangeLog:
+	* Make-lang.in: Allow transformations on info file names.
+	Pass macros of transformated info file defined in MAKEINFODEFS
+	names to makeinfo.
+	Define TREELANG_MAKEINFODEFS macros to pass transformated info file
+	names to makeinfo.
+	* treelang.texi: Use macros defined in MAKEINFO_DEFS for references.
+
+
+--- gcc/doc/cpp.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/cpp.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -52,7 +52,7 @@
+ @ifinfo
+ @dircategory Software development
+ @direntry
+-* Cpp: (cpp).		       The GNU C preprocessor.
++* @value{fncpp}: (@value{fncpp}).		       The GNU C preprocessor.
+ @end direntry
+ @end ifinfo
+ 
+--- gcc/doc/cppinternals.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/cppinternals.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -7,7 +7,7 @@
+ @ifinfo
+ @dircategory Software development
+ @direntry
+-* Cpplib: (cppinternals).      Cpplib internals.
++* @value{fncppint}: (@value{fncppint}).      Cpplib internals.
+ @end direntry
+ @end ifinfo
+ 
+--- gcc/doc/extend.texi.orig	2008-02-01 20:24:18.000000000 +0100
++++ gcc/doc/extend.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -10392,7 +10392,7 @@
+ test for the GNU compiler the same way as for C programs: check for a
+ predefined macro @code{__GNUC__}.  You can also use @code{__GNUG__} to
+ test specifically for GNU C++ (@pxref{Common Predefined Macros,,
+-Predefined Macros,cpp,The GNU C Preprocessor}).
++Predefined Macros,@value{fncpp},The GNU C Preprocessor}).
+ 
+ @menu
+ * Volatiles::		What constitutes an access to a volatile object.
+--- gcc/doc/gcc.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/gcc.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -64,7 +64,7 @@
+ @ifnottex
+ @dircategory Software development
+ @direntry
+-* gcc: (gcc).                  The GNU Compiler Collection.
++* @value{fngcc}: (@value{fngcc}).                  The GNU Compiler Collection.
+ @end direntry
+ This file documents the use of the GNU compilers.
+ @sp 1
+@@ -120,7 +120,7 @@
+ The internals of the GNU compilers, including how to port them to new
+ targets and some information about how to write front ends for new
+ languages, are documented in a separate manual.  @xref{Top,,
+-Introduction, gccint, GNU Compiler Collection (GCC) Internals}.
++Introduction, @value{fngccint}, GNU Compiler Collection (GCC) Internals}.
+ 
+ @menu
+ * G++ and GCC::     You can compile C or C++ programs.
+--- gcc/doc/gccint.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/gccint.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -50,7 +50,7 @@
+ @ifnottex
+ @dircategory Software development
+ @direntry
+-* gccint: (gccint).            Internals of the GNU Compiler Collection.
++* @value{fngccint}: (@value{fngccint}).            Internals of the GNU Compiler Collection.
+ @end direntry
+ This file documents the internals of the GNU compilers.
+ @sp 1
+@@ -79,7 +79,7 @@
+ how to port them to new targets and some information about how to
+ write front ends for new languages.  It corresponds to GCC version
+ @value{version-GCC}.  The use of the GNU compilers is documented in a
+-separate manual.  @xref{Top,, Introduction, gcc, Using the GNU
++separate manual.  @xref{Top,, Introduction, @value{fngcc}, Using the GNU
+ Compiler Collection (GCC)}.
+ 
+ This manual is mainly a reference manual rather than a tutorial.  It
+--- gcc/doc/invoke.texi.orig	2008-02-20 16:17:28.000000000 +0100
++++ gcc/doc/invoke.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -6616,7 +6616,7 @@
+ @option{-nodefaultlibs} is @file{libgcc.a}, a library of internal subroutines
+ that GCC uses to overcome shortcomings of particular machines, or special
+ needs for some languages.
+-(@xref{Interface,,Interfacing to GCC Output,gccint,GNU Compiler
++(@xref{Interface,,Interfacing to GCC Output,@value{fngccint},GNU Compiler
+ Collection (GCC) Internals},
+ for more discussion of @file{libgcc.a}.)
+ In most cases, you need @file{libgcc.a} even when you want to avoid
+@@ -6624,7 +6624,7 @@
+ or @option{-nodefaultlibs} you should usually specify @option{-lgcc} as well.
+ This ensures that you have no unresolved references to internal GCC
+ library subroutines.  (For example, @samp{__main}, used to ensure C++
+-constructors will be called; @pxref{Collect2,,@code{collect2}, gccint,
++constructors will be called; @pxref{Collect2,,@code{collect2}, @value{fngccint},
+ GNU Compiler Collection (GCC) Internals}.)
+ 
+ @item -pie
+@@ -13775,7 +13775,7 @@
+ @option{-B}, @option{-I} and @option{-L} (@pxref{Directory Options}).  These
+ take precedence over places specified using environment variables, which
+ in turn take precedence over those specified by the configuration of GCC@.
+-@xref{Driver,, Controlling the Compilation Driver @file{gcc}, gccint,
++@xref{Driver,, Controlling the Compilation Driver @file{gcc}, @value{fngccint},
+ GNU Compiler Collection (GCC) Internals}.
+ 
+ @table @env
+@@ -13927,7 +13927,7 @@
+ 
+ A precompiled header file will be searched for when @code{#include} is
+ seen in the compilation.  As it searches for the included file
+-(@pxref{Search Path,,Search Path,cpp,The C Preprocessor}) the
++(@pxref{Search Path,,Search Path,@value{fncpp},The C Preprocessor}) the
+ compiler looks for a precompiled header in each directory just before it
+ looks for the include file in that directory.  The name searched for is
+ the name specified in the @code{#include} with @samp{.gch} appended.  If
+--- gcc/doc/libgcc.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/libgcc.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -24,7 +24,7 @@
+ GCC will also generate calls to C library routines, such as
+ @code{memcpy} and @code{memset}, in some cases.  The set of routines
+ that GCC may possibly use is documented in @ref{Other
+-Builtins,,,gcc, Using the GNU Compiler Collection (GCC)}.
++Builtins,,,@value{fngcc}, Using the GNU Compiler Collection (GCC)}.
+ 
+ These routines take arguments and return values of a specific machine
+ mode, not a specific C type.  @xref{Machine Modes}, for an explanation
+--- gcc/doc/makefile.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/makefile.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -139,7 +139,7 @@
+ @item profiledbootstrap
+ Builds a compiler with profiling feedback information.  For more
+ information, see
+-@ref{Building,,Building with profile feedback,gccinstall,Installing GCC}.
++@ref{Building,,Building with profile feedback,@value{fngccinstall},Installing GCC}.
+ 
+ @item restrap
+ Restart a bootstrap, so that everything that was not built with
+--- gcc/doc/passes.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/passes.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -191,7 +191,7 @@
+ @item Mudflap declaration registration
+ 
+ If mudflap (@pxref{Optimize Options,,-fmudflap -fmudflapth
+--fmudflapir,gcc,Using the GNU Compiler Collection (GCC)}) is
++-fmudflapir,@value{fngcc},Using the GNU Compiler Collection (GCC)}) is
+ enabled, we generate code to register some variable declarations with
+ the mudflap runtime.  Specifically, the runtime tracks the lifetimes of
+ those variable declarations that have their addresses taken, or whose
+--- gcc/doc/standards.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/standards.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -188,8 +188,8 @@
+ GNAT Reference Manual}, for information on standard
+ conformance and compatibility of the Ada compiler.
+ 
+-@xref{Standards,,Standards, gfortran, The GNU Fortran Compiler}, for details
++@xref{Standards,,Standards, @value{fngfortran}, The GNU Fortran Compiler}, for details
+ of standards supported by GNU Fortran.
+ 
+-@xref{Compatibility,,Compatibility with the Java Platform, gcj, GNU gcj},
++@xref{Compatibility,,Compatibility with the Java Platform, @value{fngcj}, GNU gcj},
+ for details of compatibility between @command{gcj} and the Java Platform.
+--- gcc/doc/install.texi.orig	2007-07-04 16:19:23.000000000 +0200
++++ gcc/doc/install.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -96,7 +96,7 @@
+ @end ifinfo
+ @dircategory Software development
+ @direntry
+-* gccinstall: (gccinstall).    Installing the GNU Compiler Collection.
++* @value{fngccinstall}: (@value{fngccinstall}).    Installing the GNU Compiler Collection.
+ @end direntry
+ 
+ @c Part 3 Titlepage and Copyright
+--- gcc/java/Make-lang.in.orig	2007-09-02 16:01:56.000000000 +0200
++++ gcc/java/Make-lang.in	2008-02-20 16:31:09.000000000 +0100
+@@ -129,11 +129,23 @@
+ 	etags --include TAGS.sub --include ../TAGS.sub
+ 
+ 
+-java.info: doc/gcj.info
++TEXI_GCJ_FILES = java/gcj.texi \
++		 $(gcc_docdir)/include/gpl.texi $(gcc_docdir)/include/funding.texi \
++		 $(gcc_docdir)/include/fdl.texi $(gcc_docdir)/include/gcc-common.texi gcc-vers.texi
++INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)')
+ 
+-java.srcinfo: doc/gcj.info
++java.info: doc/$(INFO_GCJ_NAME).info
++
++java.srcinfo: doc/$(INFO_GCJ_NAME).info
+ 	-cp -p $^ $(srcdir)/doc
+ 
++doc/$(INFO_GCJ_NAME).info: $(TEXI_GCJ_FILES)
++	if test "x$(BUILD_INFO)" = xinfo; then \
++	  rm -f $(@)*; \
++	  $(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) \
++	    -I$(gcc_docdir)/include -I$(srcdir)/f -o$@ $<; \
++	fi
++
+ java.dvi: doc/gcj.dvi
+ 
+ JAVA_PDFFILES = doc/gcj.pdf
+@@ -189,8 +201,9 @@
+ 	-rm -rf $(DESTDIR)$(man1dir)/gij$(man1ext)
+ 	-rm -rf $(DESTDIR)$(man1dir)/jv-convert$(man1ext)
+ 	-rm -rf $(DESTDIR)$(man1dir)/gcj-dbtool$(man1ext)
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCJ_NAME).info*
+ 
+-java.install-info: $(DESTDIR)$(infodir)/gcj.info
++java.install-info: $(DESTDIR)$(infodir)/$(INFO_GCJ_NAME).info
+ 
+ java.install-pdf: $(JAVA_PDFFILES)
+ 	@$(NORMAL_INSTALL)
+--- gcc/java/gcj.texi.orig	2008-02-01 20:24:18.000000000 +0100
++++ gcc/java/gcj.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -56,21 +56,21 @@
+ @format
+ @dircategory Software development
+ @direntry
+-* Gcj: (gcj).               Ahead-of-time compiler for the Java language
++* @value{fngcj}: (@value{fngcj}).               Ahead-of-time compiler for the Java language
+ @end direntry
+ 
+ @dircategory Individual utilities
+ @direntry
+-* jcf-dump: (gcj)Invoking jcf-dump.
++* jcf-dump: (@value{fngcj}) Invoking jcf-dump.
+                             Print information about Java class files
+-* gij: (gcj)Invoking gij.   GNU interpreter for Java bytecode
+-* gcj-dbtool: (gcj)Invoking gcj-dbtool.
++* gij: (@value{fngcj}) Invoking gij.   GNU interpreter for Java bytecode
++* gcj-dbtool: (@value{fngcj}) Invoking gcj-dbtool.
+                             Tool for manipulating class file databases.
+-* jv-convert: (gcj)Invoking jv-convert.
++* jv-convert: (@value{fngcj}) Invoking jv-convert.
+                             Convert file from one encoding to another
+-* grmic: (gcj)Invoking grmic.
++* grmic: (@value{fngcj}) Invoking grmic.
+                             Generate stubs for Remote Method Invocation.
+-* gc-analyze: (gcj)Invoking gc-analyze.
++* gc-analyze: (@value{fngcj}) Invoking gc-analyze.
+                             Analyze Garbage Collector (GC) memory dumps.
+ @end direntry
+ @end format
+@@ -152,7 +152,7 @@
+ 
+ As @command{gcj} is just another front end to @command{gcc}, it supports many
+ of the same options as gcc.  @xref{Option Summary, , Option Summary,
+-gcc, Using the GNU Compiler Collection (GCC)}.  This manual only documents the
++@value{fngcc}, Using the GNU Compiler Collection (GCC)}.  This manual only documents the
+ options specific to @command{gcj}.
+ 
+ @c man end
+--- gcc/ada/gnat-style.texi.orig	2007-07-04 16:21:57.000000000 +0200
++++ gcc/ada/gnat-style.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -31,7 +31,7 @@
+ 
+ @dircategory Software development
+ @direntry
+-* gnat-style: (gnat-style).      GNAT Coding Style
++* gnat-style: (gnat-style-4.2).      GNAT Coding Style
+ @end direntry
+ 
+ @macro syntax{element}
+--- gcc/ada/gnat_rm.texi.orig	2007-07-04 16:21:57.000000000 +0200
++++ gcc/ada/gnat_rm.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -28,7 +28,7 @@
+ 
+ @dircategory GNU Ada tools
+ @direntry
+-* GNAT Reference Manual: (gnat_rm).  Reference Manual for GNU Ada tools.
++* GNAT Reference Manual: (gnat_rm-4.2).  Reference Manual for GNU Ada tools.
+ @end direntry
+ 
+ @copying
+--- gcc/ada/gnat_ugn.texi.orig	2007-07-04 16:21:59.000000000 +0200
++++ gcc/ada/gnat_ugn.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -90,7 +90,7 @@
+ 
+ @ifset unw
+ @set PLATFORM
+-@set FILE gnat_ugn_unw
++@set FILE gnat_ugn_unw-4.2
+ @end ifset
+ 
+ @ifset vms
+--- gcc/fortran/Make-lang.in.orig	2007-09-02 16:02:02.000000000 +0200
++++ gcc/fortran/Make-lang.in	2008-02-20 16:31:09.000000000 +0100
+@@ -124,7 +124,8 @@
+ 	cd $(srcdir)/fortran; etags -o TAGS.sub *.c *.h; \
+ 	etags --include TAGS.sub --include ../TAGS.sub
+ 
+-fortran.info: doc/gfortran.info
++INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
++fortran.info: doc/$(INFO_FORTRAN_NAME).info
+ fortran.dvi: doc/gfortran.dvi
+ fortran.pdf: doc/gfortran.pdf
+ fortran.html: $(build_htmldir)/gfortran/index.html
+@@ -153,10 +154,10 @@
+   $(srcdir)/doc/include/gcc-common.texi \
+   gcc-vers.texi
+ 
+-doc/gfortran.info: $(GFORTRAN_TEXI)
++doc/$(INFO_FORTRAN_NAME).info: $(GFORTRAN_TEXI)
+ 	if [ x$(BUILD_INFO) = xinfo ]; then \
+ 	  rm -f doc/gfortran.info-*; \
+-	  $(MAKEINFO) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
++	  $(MAKEINFO) $(MAKEINFODEFS) -I $(srcdir)/doc/include -I $(srcdir)/fortran \
+ 	    -o $@ $<; \
+ 	else true; fi
+ 
+@@ -203,7 +204,7 @@
+ 	  fi ; \
+ 	fi
+ 
+-fortran.install-info: $(DESTDIR)$(infodir)/gfortran.info
++fortran.install-info: $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info
+ 
+ fortran.install-man: $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext)
+ 
+@@ -221,7 +222,7 @@
+ 	rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_INSTALL_NAME)$(exeext); \
+ 	rm -rf $(DESTDIR)$(man1dir)/$(GFORTRAN_INSTALL_NAME)$(man1ext); \
+ 	rm -rf $(DESTDIR)$(bindir)/$(GFORTRAN_TARGET_INSTALL_NAME)$(exeext); \
+-	rm -rf $(DESTDIR)$(infodir)/gfortran.info*
++	rm -rf $(DESTDIR)$(infodir)/$(INFO_FORTRAN_NAME).info*
+ 
+ #
+ # Clean hooks:
+--- gcc/fortran/gfortran.texi.orig	2007-07-04 16:22:03.000000000 +0200
++++ gcc/fortran/gfortran.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -102,7 +102,7 @@
+ @ifinfo
+ @dircategory Software development
+ @direntry
+-* gfortran: (gfortran).                  The GNU Fortran Compiler.
++* @value{fngfortran}: (@value{fngfortran}).                  The GNU Fortran Compiler.
+ @end direntry
+ This file documents the use and the internals of
+ the GNU Fortran compiler, (@command{gfortran}).
+--- gcc/treelang/Make-lang.in.orig	2007-09-02 16:02:03.000000000 +0200
++++ gcc/treelang/Make-lang.in	2008-02-20 16:31:09.000000000 +0100
+@@ -153,9 +153,12 @@
+ 	cd $(srcdir)/treelang; etags -o TAGS.sub *.y *.l *.c *.h; \
+ 	etags --include TAGS.sub --include ../TAGS.sub
+ 
+-treelang.info: doc/treelang.info
++INFO_TREELANG_NAME = $(shell echo treelang|sed '$(program_transform_name)')
++TREELANG_MAKEINFODEFS = -D 'fntreelang $(INFO_TREELANG_NAME)'
+ 
+-treelang.srcinfo: doc/treelang.info
++treelang.info: doc/$(INFO_TREELANG_NAME).info
++
++treelang.srcinfo: doc/$(INFO_TREELANG_NAME).info
+ 	-cp -p $^ $(srcdir)/doc
+ 
+ treelang.dvi: doc/treelang.dvi
+@@ -169,8 +172,8 @@
+ 	 $(gcc_docdir)/include/funding.texi \
+ 	 gcc-vers.texi
+ 
+-doc/treelang.info: $(TEXI_TREELANG_FILES)
+-	$(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir)/include -o $@ $<
++doc/$(INFO_TREELANG_NAME).info: $(TEXI_TREELANG_FILES)
++	$(MAKEINFO) $(MAKEINFOFLAGS) $(TREELANG_MAKEINFODEFS) -I $(gcc_docdir)/include -o $@ $<
+ 
+ doc/treelang.dvi: $(TEXI_TREELANG_FILES)
+ 	$(TEXI2DVI) -I $(abs_docdir)/include -o $@ $<
+@@ -208,7 +211,7 @@
+ 	$(STAMP) treelang.install.common.done
+ 
+ # We might not be able to build the info files
+-treelang.install-info: $(DESTDIR)$(infodir)/treelang.info
++treelang.install-info: $(DESTDIR)$(infodir)/$(INFO_TREELANG_NAME).info
+ 
+ treelang.install-man:
+ 
+@@ -221,6 +224,7 @@
+ 	  echo -rm -rf $(DESTDIR)$(bindir)/$$name2$(exeext); \
+ 	  rm -rf $(DESTDIR)$(bindir)/$$name2$(exeext); \
+ 	done
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_TREELANG_NAME).info*
+ 	-rm treelang.install.common.done
+ 
+ #
+--- gcc/treelang/treelang.texi.orig	2007-07-04 16:22:16.000000000 +0200
++++ gcc/treelang/treelang.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -102,7 +102,7 @@
+ @ifnottex
+ @dircategory Software development
+ @direntry
+-* treelang: (treelang).                  The GNU Treelang compiler.
++* @value{fntreelang}: (@value{fntreelang}).                  The GNU Treelang compiler.
+ @end direntry
+ @ifset INTERNALS
+ @ifset USING
+@@ -255,7 +255,7 @@
+ @item
+ The packaging and compiler portions of GNU Treelang are based largely
+ on the GCC compiler.
+-@xref{Contributors,,Contributors to GCC,GCC,Using and Maintaining GCC},
++@xref{Contributors,,Contributors to GCC,@value{fngcc},Using and Maintaining GCC},
+ for more information.
+ 
+ @item
+@@ -875,7 +875,7 @@
+ command-line options that are designed to cater to Treelang users
+ but apply to other languages as well.
+ 
+-@xref{G++ and GCC,,Programming Languages Supported by GCC,GCC,Using
++@xref{G++ and GCC,,Programming Languages Supported by GCC,@value{fngcc},Using
+ the GNU Compiler Collection (GCC)},
+ for information on the way different languages are handled
+ by the GCC compiler (@code{gcc}).
+--- gcc/Makefile.in.orig	2008-02-20 16:17:28.000000000 +0100
++++ gcc/Makefile.in	2008-02-20 16:31:09.000000000 +0100
+@@ -3360,8 +3360,24 @@
+ 
+ doc: $(BUILD_INFO) $(GENERATED_MANPAGES) gccbug
+ 
+-INFOFILES = doc/cpp.info doc/gcc.info doc/gccint.info \
+-            doc/gccinstall.info doc/cppinternals.info
++INFO_CPP_NAME = $(shell echo cpp|sed '$(program_transform_name)')
++INFO_GCC_NAME = $(shell echo gcc|sed '$(program_transform_name)')
++INFO_GCCINT_NAME = $(shell echo gccint|sed '$(program_transform_name)')
++INFO_GCCINSTALL_NAME = $(shell echo gccinstall|sed '$(program_transform_name)')
++INFO_CPPINT_NAME = $(shell echo cppinternals|sed '$(program_transform_name)')
++
++INFO_FORTRAN_NAME = $(shell echo gfortran|sed '$(program_transform_name)')
++INFO_GCJ_NAME = $(shell echo gcj|sed '$(program_transform_name)')
++
++INFOFILES = doc/$(INFO_CPP_NAME).info doc/$(INFO_GCC_NAME).info \
++            doc/$(INFO_GCCINT_NAME).info \
++            doc/$(INFO_GCCINSTALL_NAME).info doc/$(INFO_CPPINT_NAME).info
++
++MAKEINFODEFS = -D 'fncpp $(INFO_CPP_NAME)' -D 'fngcc $(INFO_GCC_NAME)' \
++               -D 'fngccint $(INFO_GCCINT_NAME)' \
++               -D 'fngccinstall $(INFO_GCCINSTALL_NAME)' \
++               -D 'fncppint $(INFO_CPPINT_NAME)' \
++               -D 'fngfortran $(INFO_GFORTRAN_NAME)' \
+ 
+ info: $(INFOFILES) lang.info @GENINSRC@ srcinfo lang.srcinfo
+ 
+@@ -3407,21 +3423,41 @@
+ # patterns.  To use them, put each of the specific targets with its
+ # specific dependencies but no build commands.
+ 
+-doc/cpp.info: $(TEXI_CPP_FILES)
+-doc/gcc.info: $(TEXI_GCC_FILES)
+-doc/gccint.info: $(TEXI_GCCINT_FILES)
+-doc/cppinternals.info: $(TEXI_CPPINT_FILES)
+-
++# Generic entry to handle info files, which are not renamed (currently Ada)
+ doc/%.info: %.texi
+ 	if [ x$(BUILD_INFO) = xinfo ]; then \
+ 		$(MAKEINFO) $(MAKEINFOFLAGS) -I . -I $(gcc_docdir) \
+ 			-I $(gcc_docdir)/include -o $@ $<; \
+ 	fi
+ 
++doc/$(INFO_CPP_NAME).info: $(TEXI_CPP_FILES)
++	if [ x$(BUILD_INFO) = xinfo ]; then \
++		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
++			-I $(gcc_docdir)/include -o $@ $<; \
++	fi
++
++doc/$(INFO_GCC_NAME).info: $(TEXI_GCC_FILES)
++	if [ x$(BUILD_INFO) = xinfo ]; then \
++		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
++			-I $(gcc_docdir)/include -o $@ $<; \
++	fi
++
++doc/$(INFO_GCCINT_NAME).info: $(TEXI_GCCINT_FILES)
++	if [ x$(BUILD_INFO) = xinfo ]; then \
++		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
++			-I $(gcc_docdir)/include -o $@ $<; \
++	fi
++
++doc/$(INFO_CPPINT_NAME).info: $(TEXI_CPPINT_FILES)
++	if [ x$(BUILD_INFO) = xinfo ]; then \
++		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
++			-I $(gcc_docdir)/include -o $@ $<; \
++	fi
++
+ # Duplicate entry to handle renaming of gccinstall.info
+-doc/gccinstall.info: $(TEXI_GCCINSTALL_FILES)
++doc/$(INFO_GCCINSTALL_NAME).info: $(TEXI_GCCINSTALL_FILES)
+ 	if [ x$(BUILD_INFO) = xinfo ]; then \
+-		$(MAKEINFO) $(MAKEINFOFLAGS) -I $(gcc_docdir) \
++		$(MAKEINFO) $(MAKEINFOFLAGS) $(MAKEINFODEFS) -I $(gcc_docdir) \
+ 			-I $(gcc_docdir)/include -o $@ $<; \
+ 	fi
+ 
+@@ -3753,11 +3789,11 @@
+ # $(INSTALL_DATA) might be a relative pathname, so we can't cd into srcdir
+ # to do the install.
+ install-info:: doc installdirs \
+-	$(DESTDIR)$(infodir)/cpp.info \
+-	$(DESTDIR)$(infodir)/gcc.info \
+-	$(DESTDIR)$(infodir)/cppinternals.info \
+-	$(DESTDIR)$(infodir)/gccinstall.info \
+-	$(DESTDIR)$(infodir)/gccint.info \
++	$(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info \
++	$(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info \
++	$(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info \
++	$(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info \
++	$(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info \
+ 	lang.install-info
+ 
+ $(DESTDIR)$(infodir)/%.info: doc/%.info installdirs
+@@ -3958,8 +3994,11 @@
+ 	-rm -rf $(DESTDIR)$(man1dir)/cpp$(man1ext)
+ 	-rm -rf $(DESTDIR)$(man1dir)/protoize$(man1ext)
+ 	-rm -rf $(DESTDIR)$(man1dir)/unprotoize$(man1ext)
+-	-rm -f $(DESTDIR)$(infodir)/cpp.info* $(DESTDIR)$(infodir)/gcc.info*
+-	-rm -f $(DESTDIR)$(infodir)/cppinternals.info* $(DESTDIR)$(infodir)/gccint.info*
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_CPP_NAME).info*
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCC_NAME).info*
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_CPPINT_NAME).info*
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINT_NAME).info*
++	-rm -f $(DESTDIR)$(infodir)/$(INFO_GCCINSTALL_NAME).info*
+ #
+ # These targets are for the dejagnu testsuites. The file site.exp
+ # contains global variables that all the testsuites will use.
+--- libgomp/libgomp.texi.orig	2007-07-04 16:19:19.000000000 +0200
++++ libgomp/libgomp.texi	2008-02-20 16:31:09.000000000 +0100
+@@ -32,7 +32,7 @@
+ @ifinfo
+ @dircategory GNU Libraries
+ @direntry
+-* libgomp: (libgomp).                    GNU OpenMP runtime library
++* @value{fnlibgomp}: (@value{fnlibgomp}).                    GNU OpenMP runtime library
+ @end direntry
+ 
+ This manual documents the GNU implementation of the OpenMP API for 
+--- libgomp/Makefile.am.orig	2007-07-04 16:19:19.000000000 +0200
++++ libgomp/Makefile.am	2008-02-20 16:31:09.000000000 +0100
+@@ -84,16 +84,19 @@
+ 
+ all-local: $(STAMP_GENINSRC)
+ 
+-stamp-geninsrc: libgomp.info
+-	cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
++INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
++stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
++	cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
+ 	@touch $@
+ 
+-libgomp.info: $(STAMP_BUILD_INFO)
++libgomp.info: $(INFO_LIBGOMP_NAME).info
++	cp $(INFO_LIBGOMP_NAME).info libgomp.info
++$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
+ 
+ stamp-build-info: libgomp.texi
+-	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
++	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
+ 	@touch $@
+ 
+ 
+-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libgomp.info
++CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBGOMP_NAME).info
+ MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
+--- libgomp/Makefile.in.orig	2008-02-01 20:24:40.000000000 +0100
++++ libgomp/Makefile.in	2008-02-20 16:31:09.000000000 +0100
+@@ -303,7 +303,8 @@
+ 
+ # AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
+ @BUILD_INFO_TRUE@STAMP_BUILD_INFO = stamp-build-info
+-CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libgomp.info
++INFO_LIBGOMP_NAME = $(shell echo libgomp|sed '$(program_transform_name)')
++CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) $(INFO_LIBGOMP_NAME).info
+ MAINTAINERCLEANFILES = $(srcdir)/libgomp.info
+ all: config.h
+ 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
+@@ -1050,15 +1051,16 @@
+ install-html:
+ 
+ all-local: $(STAMP_GENINSRC)
+-
+-stamp-geninsrc: libgomp.info
+-	cp -p $(top_builddir)/libgomp.info $(srcdir)/libgomp.info
++stamp-geninsrc: $(INFO_LIBGOMP_NAME).info
++	cp -p $(top_builddir)/$(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.info
+ 	@touch $@
+ 
+-libgomp.info: $(STAMP_BUILD_INFO)
++libgomp.info: $(INFO_LIBGOMP_NAME).info
++	cp $(INFO_LIBGOMP_NAME).info libgomp.info
++$(INFO_LIBGOMP_NAME).info: $(STAMP_BUILD_INFO)
+ 
+ stamp-build-info: libgomp.texi
+-	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libgomp.info $(srcdir)/libgomp.texi
++	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -D 'fnlibgomp $(INFO_LIBGOMP_NAME)' -I $(srcdir) -o $(INFO_LIBGOMP_NAME).info $(srcdir)/libgomp.texi
+ 	@touch $@
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
--- gcj-4.2-4.2.4.orig/debian/patches/cross-include.dpatch
+++ gcj-4.2-4.2.4/debian/patches/cross-include.dpatch
@@ -0,0 +1,39 @@
+#! /bin/sh -e
+
+# DP: Set cross include path to .../include, not .../sys-include
+# DP: This should be a fix for famous limits.h issue
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}gcc && autoconf
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/configure.ac.orig	2005-08-24 06:24:11.000000000 +0400
++++ gcc/configure.ac	2005-12-06 00:40:45.000000000 +0300
+@@ -681,7 +681,7 @@
+ ], [
+  TARGET_SYSTEM_ROOT=
+  TARGET_SYSTEM_ROOT_DEFINE=
+- CROSS_SYSTEM_HEADER_DIR='$(gcc_tooldir)/sys-include'
++ CROSS_SYSTEM_HEADER_DIR='$(prefix)/$(target_noncanonical)/include'
+ ])
+ AC_SUBST(TARGET_SYSTEM_ROOT)
+ AC_SUBST(TARGET_SYSTEM_ROOT_DEFINE)
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-sjlj.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-sjlj.dpatch
@@ -0,0 +1,65 @@
+#! /bin/sh -e
+
+# DP: Don't try to use _Unwind_Backtrace on SJLJ targets.
+# DP: See bug #387875, #388505, GCC PR 29206.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ libjava/sysdep/generic/backtrace.h |   17 +++++++++++++++++
+ 1 file changed, 17 insertions(+)
+
+Index: src/libjava/sysdep/generic/backtrace.h
+===================================================================
+--- src.orig/libjava/sysdep/generic/backtrace.h	2006-11-06 14:00:32.000000000 -0500
++++ src/libjava/sysdep/generic/backtrace.h	2006-11-06 14:04:38.000000000 -0500
+@@ -13,6 +13,20 @@ details.  */
+ 
+ #include <java-stack.h>
+ 
++#ifdef SJLJ_EXCEPTIONS
++
++#undef _Unwind_GetIPInfo
++#define _Unwind_GetIPInfo(ctx,ip_before_insn) \
++  (abort (), (void) (ctx), *ip_before_insn = 1, 0)
++
++#undef _Unwind_GetRegionStart
++#define _Unwind_GetRegionStart(ctx) \
++  (abort (), (void) (ctx), 0)
++
++#undef _Unwind_Backtrace
++#define _Unwind_Backtrace(trace_fn,state_ptr) \
++  (fallback_backtrace (trace_fn, state_ptr))
++
+ /* Unwind through the call stack calling TRACE_FN with STATE for every stack
+    frame.  Returns the reason why the unwinding was stopped.  */
+ _Unwind_Reason_Code
+@@ -20,4 +34,7 @@ fallback_backtrace (_Unwind_Trace_Fn, _J
+ {
+   return _URC_NO_REASON;
+ }
++
++#endif /* SJLJ_EXCEPTIONS */
++
+ #endif
--- gcj-4.2-4.2.4.orig/debian/patches/kbsd-gnu.dpatch
+++ gcj-4.2-4.2.4/debian/patches/kbsd-gnu.dpatch
@@ -0,0 +1,94 @@
+#! /bin/sh -e
+
+# DP: GNU/k*BSD support
+# Author: Robert Millan <rmh@aybabtu.com>
+# Status: Not yet submitted
+
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# append the patch here and adjust the -p? flag in the patch calls.
+
+diff -Nurd gcc-4.2.orig/gcc/config/i386/kfreebsd-gnu.h gcc-4.2/gcc/config/i386/kfreebsd-gnu.h
+--- gcc-4.2.orig/gcc/config/i386/kfreebsd-gnu.h	2006-01-18 22:46:30.000000000 +0100
++++ gcc-4.2/gcc/config/i386/kfreebsd-gnu.h	2007-05-23 05:34:47.000000000 +0200
+@@ -20,7 +20,29 @@
+ the Free Software Foundation, 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.  */
+ 
++#ifdef GLIBC_DYNAMIC_LINKER32
++#undef GLIBC_DYNAMIC_LINKER32
++#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1"
++#endif
++
++#ifdef GLIBC_DYNAMIC_LINKER64
++#undef GLIBC_DYNAMIC_LINKER64
++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-kfreebsd-x86-64.so.1"
++#endif
++
+ #undef LINK_EMULATION
+ #define LINK_EMULATION "elf_i386_fbsd"
++
++#ifdef LINK_EMULATION32
++#undef LINK_EMULATION32
++#define LINK_EMULATION32 LINK_EMULATION
++#endif
++
++#ifdef LINK_EMULATION64
++#undef LINK_EMULATION64
++#define LINK_EMULATION64 "elf_x86_64_fbsd"
++#endif
++
+ #undef REG_NAME
+ #define REG_NAME(reg) sc_ ## reg
++
+diff -Nurd gcc-4.2.orig/gcc/config/i386/linux64.h gcc-4.2/gcc/config/i386/linux64.h
+--- gcc-4.2.orig/gcc/config/i386/linux64.h	2007-05-22 22:25:11.000000000 +0200
++++ gcc-4.2/gcc/config/i386/linux64.h	2007-05-23 05:39:11.000000000 +0200
+@@ -49,11 +49,14 @@
+    When the -shared link option is used a final link is not being
+    done.  */
+ 
++/* These macros may be overridden in k*bsd-gnu.h and i386/k*bsd-gnu.h. */
+ #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+ #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
++#define LINK_EMULATION32 "elf_i386"
++#define LINK_EMULATION64 "elf_x86_64"
+ 
+ #undef	LINK_SPEC
+-#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} --hash-style=both \
++#define LINK_SPEC "%{!m32:-m " LINK_EMULATION64 "} %{m32:-m " LINK_EMULATION32 "} --hash-style=both \
+   %{shared:-shared} \
+   %{!shared: \
+     %{!static: \
+diff -Nurd gcc-4.2.orig/gcc/config.gcc gcc-4.2/gcc/config.gcc
+--- gcc-4.2.orig/gcc/config.gcc	2007-02-03 10:03:58.000000000 +0100
++++ gcc-4.2/gcc/config.gcc	2007-05-23 05:37:10.000000000 +0200
+@@ -1102,7 +1102,7 @@
+ 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h linux.h \
+ 		 i386/x86-64.h i386/linux64.h"
+ 	case ${target} in
+-	x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h" ;;
++	x86_64-*-kfreebsd*-gnu) tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu.h" ;;
+ 	x86_64-*-knetbsd*-gnu) tm_file="${tm_file} knetbsd-gnu.h" ;;
+ 	esac
+ 	tmake_file="${tmake_file} i386/t-linux64 i386/t-crtfm t-dfprules"
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-pascal-lang.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-pascal-lang.dpatch
@@ -0,0 +1,726 @@
+#! /bin/sh -e
+
+# DP: Add pascal options and specs for the gcc driver.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	ln -sf p ${dir}/gcc/pascal
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -urN gcc.orig/p/lang.opt gcc/p/lang.opt
+--- gcc.orig/p/lang.opt	1970-01-01 01:00:00.000000000 +0100
++++ gcc/p/lang.opt	2006-03-03 20:17:49.000000000 +0100
+@@ -0,0 +1,635 @@
++; This file was generated automatically by mk-lang_opt.
++; DO NOT CHANGE THIS FILE MANUALLY!
++;
++; Options for the Pascal front end.
++; Copyright (C) 2004-2006 Free Software Foundation, Inc.
++;
++; This file is part of GNU Pascal.
++;
++; GNU Pascal is free software; you can redistribute it and/or modify
++; it under the terms of the GNU General Public License as published by
++; the Free Software Foundation; either version 2, or (at your option)
++; any later version.
++;
++; GNU Pascal is distributed in the hope that it will be useful,
++; but WITHOUT ANY WARRANTY; without even the implied warranty of
++; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++; GNU General Public License for more details.
++;
++; You should have received a copy of the GNU General Public License
++; along with GNU Pascal; see the file COPYING.  If not, write to the
++; Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
++; 02111-1307, USA.
++
++; See c.opt for a description of this file's format.
++
++; Please try to keep this file in ASCII collating order.
++
++Language
++Pascal
++
++A
++Pascal
++Ignored
++
++D
++Pascal Joined Separate
++-D<macro>[=<val>]       Define a <macro> with <val> as its value.  If just <macro> is given, <val> is taken to be 1
++
++E
++Pascal
++Preprocess only
++
++H
++Pascal
++Print the name of include files as they are used
++
++I
++Pascal Joined Separate
++-I <dir>        Add <dir> to the end of the main include path.
++
++M
++Pascal
++Generate make dependencies
++
++MM
++Pascal
++Like -M but ignore system header files
++
++P
++Pascal
++Do not generate #line directives
++
++U
++Pascal Joined Separate
++-U<macro>       Undefine <macro>
++
++Wabsolute
++Pascal
++Warn about variables at absolute adresses and `absolute' variable with non-constant addresses (default)
++
++Wall
++Pascal
++
++
++Wcomment
++Pascal
++
++
++Wdynamic-arrays
++Pascal
++Warn about arrays whose size is determined at run time (including array slices)
++
++Werror
++Pascal
++
++
++Wfloat-equal
++Pascal
++Warn about `=' and `<>' comparisons of real numbers
++
++Widentifier-case
++Pascal
++Warn about an identifier written with varying case
++
++Widentifier-case-local
++Pascal
++Warn about an identifier written with varying case within one program/module/unit
++
++Wimplicit-abstract
++Pascal
++Warn when an object type not declared `abstract' contains an abstract method (default)
++
++Wimplicit-io
++Pascal
++Warn when `Input' or `Output' are used implicitly
++
++Winherited-abstract
++Pascal
++Warn when an abstract object type inherits from a non-abstract one (default)
++
++Winterface-file-name
++Pascal
++Warn when a unit/module interface differs from the file name
++
++Wlocal-external
++Pascal
++Warn about local `external' declarations
++
++Wmissing-declarations
++Pascal
++
++
++Wmissing-prototypes
++Pascal
++
++
++Wmixed-comments
++Pascal
++Warn about mixed comments like `{ ... *)'
++
++Wnear-far
++Pascal
++Warn about use of useless `near' or `far' directives (default)
++
++Wnested-comments
++Pascal
++Warn about nested comments like `{ { } }'
++
++Wobject-assignment
++Pascal
++Warn when when assigning objects or declaring them as value parameters or function results (default)
++
++Wpointer-arith
++Pascal
++
++
++Wsemicolon
++Pascal
++Warn about a semicolon after `then', `else' or `do' (default)
++
++Wtyped-const
++Pascal
++Warn about misuse of typed constants as initialized variables (default)
++
++Wundef
++Pascal
++
++
++Wunderscore
++Pascal
++Warn about double/leading/trailing underscores in identifiers
++
++Wwarnings
++Pascal
++Enable warnings (same as `{$W+}')
++
++Wwrite-strings
++Pascal
++
++
++famtmpfile=
++Pascal Joined RejectNegative
++(Internal switch used for automake)
++
++fassertions
++Pascal
++Enable assertion checking (default)
++
++fautobuild
++Pascal
++Automatically compile all units/modules/`{$L ...}' files and link the object files provided
++
++fautolink
++Pascal
++Automatically link object files provided by units/modules or `{$L ...}' (default)
++
++fautomake
++Pascal
++Automatically compile changed units/modules/`{$L ...}' files and link the object files provided
++
++fautomake-g++=
++Pascal Joined RejectNegative
++Set the C++ compiler invoked by automake
++
++fautomake-gcc=
++Pascal Joined RejectNegative
++Set the C compiler invoked by automake
++
++fautomake-gpc=
++Pascal Joined RejectNegative
++Set the Pascal compiler invoked by automake
++
++fbig-endian
++Pascal RejectNegative
++Tell GPC that the system is big-endian (for those targets where it can vary)
++
++fborland-objects
++Pascal RejectNegative
++Choose Borland object model
++
++fborland-pascal
++Pascal RejectNegative
++Try to emulate Borland Pascal, version 7.0
++
++fcase-value-checking
++Pascal
++Cause a runtime error if a `case' matches no branch (default in ISO Pascal modes)
++
++fcidefine=
++Pascal Joined RejectNegative
++Define a case-insensitive macro
++
++fclassic-pascal
++Pascal RejectNegative
++Reject anything besides ISO 7185 Pascal
++
++fclassic-pascal-level-0
++Pascal RejectNegative
++Reject conformant arrays and anything besides ISO 7185 Pascal
++
++fcsdefine=
++Pascal Joined RejectNegative
++Define a case-sensitive macro
++
++fcstrings-as-strings
++Pascal
++Treat CStrings as strings
++
++fdebug-automake
++Pascal RejectNegative
++(For GPC developers.) Give additional information about the actions of automake
++
++fdebug-gpi
++Pascal RejectNegative
++(For GPC developers.) Show what is written to and read from GPI files (huge output!)
++
++fdebug-source
++Pascal
++Output the source while it is processed to standard error
++
++fdebug-tree=
++Pascal Joined RejectNegative
++(For GPC developers.) Show the internal representation of a given tree node (name or address)
++
++fdelphi
++Pascal RejectNegative
++Try to emulate Borland Pascal, version 7.0, with some Delphi extensions
++
++fdelphi-comments
++Pascal
++Allow Delphi style `//' comments (default)
++
++fdelphi-method-shadowing
++Pascal
++Redefining methods silently shadows old definition (default in `--delphi')
++
++fdisable-debug-info
++Pascal RejectNegative
++Inhibit `-g' options (temporary work-around, this option may disappear in the future)
++
++fdisable-default-paths
++Pascal RejectNegative
++Do not add a default path to the unit and object path
++
++fdisable-keyword=
++Pascal Joined RejectNegative
++Disable a keyword, independently of dialect defaults
++
++fdisable-predefined-identifier=
++Pascal Joined RejectNegative
++Disable a predefined identifier, independently of dialect defaults
++
++fdouble-quoted-strings
++Pascal
++Allow strings enclosed in \"\" (default)
++
++fenable-keyword=
++Pascal Joined RejectNegative
++Enable a keyword, independently of dialect defaults
++
++fenable-predefined-identifier=
++Pascal Joined RejectNegative
++Enable a predefined identifier, independently of dialect defaults
++
++fexact-compare-strings
++Pascal
++Do not blank-pad strings for comparisons
++
++fexecutable-file-name
++Pascal RejectNegative
++Derive output file name from main source file name
++
++fexecutable-file-name=
++Pascal Joined RejectNegative
++Specify the name of the output file
++
++fexecutable-path
++Pascal
++`--no-executable-path': Create the executable file in the directory where the main source is (default)
++
++fexecutable-path=
++Pascal Joined RejectNegative
++Path where to create the executable file
++
++fextended-pascal
++Pascal RejectNegative
++Reject anything besides ISO 10206 Extended Pascal
++
++fextended-syntax
++Pascal
++same as `--ignore-function-results --pointer-arithmetic --cstrings-as-strings -Wno-absolute' (same as `{$X+}')
++
++ffield-widths
++Pascal
++Use default field widths in write statements
++
++ffield-widths=
++Pascal Joined RejectNegative
++Specify as a colon-separated list the default field widths in write statements for Integer, Real, Boolean, LongInt, LongReal
++
++fgnu-objects
++Pascal RejectNegative
++Reset object model to default state
++
++fgnu-pascal
++Pascal RejectNegative
++Undo the effect of previous dialect options, allow all features again
++
++fgpc-main=
++Pascal Joined RejectNegative
++External name for the program's entry point (default: `main')
++
++fgpi-destination-path=
++Pascal Joined RejectNegative
++(Internal switch used for automake)
++
++fignore-function-results
++Pascal
++Do not complain when a function is called like a procedure
++
++fignore-garbage-after-dot
++Pascal
++Ignore anything after the terminating `.' (default in `--borland-pascal')
++
++fignore-packed
++Pascal
++Ignore `packed' in the source code (default in `--borland-pascal')
++
++fimplementation-only
++Pascal RejectNegative
++Do not produce a GPI file; only compile the implementation part
++
++fimplicit-result
++Pascal
++Enable implicit `Result' for functions (default only in `--delphi')
++
++finit-modules=
++Pascal Joined RejectNegative
++Initialize the named modules in addition to those imported regularly; kind of a kludge
++
++finterface-only
++Pascal RejectNegative
++Compile only the interface part of a unit/module and exit (creates `.gpi' file, no `.o' file)
++
++fio-checking
++Pascal
++Check I/O operations automatically (same as `{$I+}') (default)
++
++fiso-goto-restrictions
++Pascal
++Do not allow jumps into structured instructions (default)
++
++flittle-endian
++Pascal RejectNegative
++Tell GPC that the system is little-endian (for those targets where it can vary)
++
++flongjmp-all-nonlocal-labels
++Pascal
++Use `longjmp' for all nonlocal labels (default for Darwin/PPC)
++
++fmac-objects
++Pascal RejectNegative
++Choose Mac object model
++
++fmac-pascal
++Pascal RejectNegative
++Support (some features of) traditional Macintosh Pascal compilers
++
++fmacros
++Pascal
++Expand macros (default except with `--ucsd-pascal', `--borland-pascal' or `--delphi')
++
++fmaximum-field-alignment=
++Pascal Joined RejectNegative
++Set the maximum field alignment in bits if `pack-struct' is in effect
++
++fmethods-always-virtual
++Pascal
++Make all methods virtual (default in `--mac-pascal')
++
++fmixed-comments
++Pascal
++Allow comments like `{ ... *)' as required in ISO Pascal (default in ISO 7185/10206 Pascal mode)
++
++fnested-comments
++Pascal
++Allow nested comments like `{ { } }' and `(* (* *) *)'
++
++fnonlocal-exit
++Pascal
++Allow non-local `Exit' statements (default in `--ucsd-pascal' and `--mac-pascal')
++
++fobject-checking
++Pascal
++Check for valid objects on virtual method calls (default)
++
++fobject-destination-path
++Pascal
++`--no-object-destination-path': Create additional object files (e.g. of C files, not Pascal units) in the current directory (default)
++
++fobject-destination-path=
++Pascal Joined RejectNegative
++Path where to create additional object files (e.g. of C files, not Pascal units)
++
++fobject-pascal
++Pascal RejectNegative
++Reject anything besides (the implemented parts of) ANSI draft Object Pascal
++
++fobject-path
++Pascal
++`--no-object-path': Forget about directories where to look for additional object (and source) files
++
++fobject-path=
++Pascal Joined RejectNegative
++Directories where to look for additional object (and source) files
++
++fobjects-are-references
++Pascal
++Turn objects into references (default in `--mac-pascal')
++
++fobjects-require-override
++Pascal
++Require override directive for objects (default in `--mac-pascal')
++
++fooe-objects
++Pascal RejectNegative
++Choose OOE object model
++
++fpascal-sc
++Pascal RejectNegative
++Be strict about the implemented Pascal-SC extensions
++
++fpedantic
++Pascal
++Reject everything not allowed in some dialect, e.g. redefinition of its keywords
++
++fpointer-arithmetic
++Pascal
++Enable pointer arithmetic
++
++fpointer-checking
++Pascal
++Validate pointers before dereferencing
++
++fpointer-checking-user-defined
++Pascal
++Use user-defined procedure for validating pointers
++
++fpreprocessed
++Pascal RejectNegative
++Treat the input file as already preprocessed
++
++fprint-needed-options
++Pascal RejectNegative
++Print the needed options
++
++fprogress-bar
++Pascal
++Output number of processed lines while compiling
++
++fprogress-messages
++Pascal
++Output source file names and line numbers while compiling
++
++fpropagate-units
++Pascal
++Automalically export all imported identifiers from a unit
++
++frange-and-object-checking
++Pascal
++Same as `--range-checking --object-checking', same as `{$R+}'
++
++frange-checking
++Pascal
++Do automatic range checks (default)
++
++fread-base-specifier
++Pascal
++In read statements, allow input base specifier `n#' (default)
++
++fread-hex
++Pascal
++In read statements, allow hexadecimal input with `$' (default)
++
++fread-white-space
++Pascal
++In read statements, require whitespace after numbers
++
++fsetlimit=
++Pascal Joined RejectNegative
++Define the range for `set of Integer' etc.
++
++fshort-circuit
++Pascal
++Guarantee short-circuit Boolean evaluation (default; same as `{$B-}')
++
++fstack-checking
++Pascal
++Enable stack checking (same as `{$S+}')
++
++fstandard-pascal
++Pascal RejectNegative
++Synonym for `--classic-pascal'
++
++fstandard-pascal-level-0
++Pascal RejectNegative
++Synonym for `--classic-pascal-level-0'
++
++fsun-pascal
++Pascal RejectNegative
++Support (a few features of) Sun Pascal
++
++ftransparent-file-names
++Pascal
++Derive external file names from variable names
++
++ftruncate-strings
++Pascal
++Truncate strings being assigned to other strings of too short capacity
++
++ftyped-address
++Pascal
++Make the result of the address operator typed (same as `{$T+}', default)
++
++fucsd-pascal
++Pascal RejectNegative
++Try to emulate UCSD Pascal
++
++funit-destination-path
++Pascal
++`--no-unit-destination-path': Create object and GPI files of Pascal units in the current directory (default)
++
++funit-destination-path=
++Pascal Joined RejectNegative
++Path where to create object and GPI files of Pascal units
++
++funit-path
++Pascal
++`--no-unit-path': Forget about directories where to look for unit/module sources
++
++funit-path=
++Pascal Joined RejectNegative
++Directories where to look for unit/module sources
++
++fuses=
++Pascal Joined RejectNegative
++Add an implicit `uses' clause
++
++fvax-pascal
++Pascal RejectNegative
++Support (a few features of) VAX Pascal
++
++fwrite-capital-exponent
++Pascal
++Write real exponents with a capital `E'
++
++fwrite-clip-strings
++Pascal
++In write statements, truncate strings exceeding their field width (`Write (SomeLongString : 3)')
++
++fwrite-real-blank
++Pascal
++Output a blank in front of positive reals in exponential form (default)
++
++idirafter
++Pascal Joined Separate
++`-idirafter <dir>'    Add <dir> to the end of the system include path
++
++imacros
++Pascal Joined Separate
++-imacros <file> Accept definition of macros in <file>
++
++include
++Pascal Joined Separate
++-include <file> Include the contents of <file> before other files
++
++iprefix
++Pascal Joined Separate
++-iprefix <path> Specify <path> as a prefix for next two options
++
++isystem
++Pascal Joined Separate
++-isystem <dir>  Add <dir> to the start of the system include path
++
++iwithprefix
++Pascal Joined Separate
++-iwithprefix <dir>      Add <dir> to the end of the system include path
++
++iwithprefixbefore
++Pascal Joined Separate
++-iwithprefixbefore <dir>        Add <dir> to the end of the main include path
++
++nostdinc
++Pascal
++Do not search standard system include directories (those specified with -isystem will still be used)
++
++remap
++Pascal
++Remap file names when including files
++
++v
++Pascal
++Enable verbose output
++
++; This comment is to ensure we retain the blank line above.
+diff -urN gcc.orig/p/lang-specs.h gcc/p/lang-specs.h
+--- gcc.orig/p/lang-specs.h	1970-01-01 01:00:00.000000000 +0100
++++ gcc/p/lang-specs.h	2006-03-25 02:53:09.000000000 +0100
+@@ -0,0 +1,46 @@
++/*Definitions for specs for Pascal.
++
++  Copyright (C) 1997-2006 Free Software Foundation, Inc.
++
++  Authors: Peter Gerwinski <peter@gerwinski.de>
++           Frank Heckenbach <frank@pascal.gnu.de>
++
++  This file is part of GNU Pascal.
++
++  GNU Pascal is free software; you can redistribute it and/or modify
++  it under the terms of the GNU General Public License as published
++  by the Free Software Foundation; either version 2, or (at your
++  option) any later version.
++
++  GNU Pascal is distributed in the hope that it will be useful, but
++  WITHOUT ANY WARRANTY; without even the implied warranty of
++  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++  General Public License for more details.
++
++  You should have received a copy of the GNU General Public License
++  along with GNU Pascal; see the file COPYING. If not, write to the
++  Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
++  02111-1307, USA. */
++
++#include "p/p-version.h"
++
++/* This is the contribution to the `default_compilers' array for Pascal. */
++  {".pas", "@Pascal", 0},
++  {".p", "@Pascal", 0},
++  {".pp", "@Pascal", 0},
++  {".dpr", "@Pascal", 0},
++  {"@Pascal",
++    "gpc1 %{E:-E %{!M:%(cpp_unique_options) %1 %{m*} %{f*&W*&pedantic*} %{w} "
++    "%(cpp_debug_options) %{O*}}}"
++    "%{M:%(cpp_unique_options) %1 %{m*} %{f*&W*&pedantic*} %{w}" 
++    "%(cpp_debug_options) %{O*}}"
++    "%{!E:%{!M:%{save-temps:-E %(cpp_unique_options) %1 %{m*} "
++    "%{f*&W*&pedantic*} %{w}  %{O*} -o %b.i \n\
++     gpc1 -fpreprocessed %b.i} %{!save-temps:%(cpp_unique_options)} \
++     %(cc1_options)\
++    %{!famtmpfile*:%eInternal GPC problem: internal option `--amtmpfile' not given}\
++    %{!fsyntax-only:%(invoke_as)}}}", 0},
++  {"@Preprocessed-Pascal",
++   "%{!M:%{!MM:%{!E:gpc1 -fpreprocessed %i %(cc1_options)\
++    %{!famtmpfile*:%eInternal GPC problem: internal option `--amtmpfile' not given}\
++    %{!fsyntax-only:%(invoke_as)} }}}", 0},
+diff -urN gcc.orig/p/p-version.h gcc/p/p-version.h
+--- gcc.orig/p/p-version.h	1970-01-01 01:00:00.000000000 +0100
++++ gcc/p/p-version.h	2006-03-25 02:53:09.000000000 +0100
+@@ -0,0 +1,7 @@
++/* Generated automatically by the Makefile.
++   DO NOT CHANGE THIS FILE MANUALLY! */
++
++#define GPC_MAJOR "2"
++#define GPC_MINOR "1"
++#define GPC_VERSION_STRING "20060325"
++#define GPC_RELEASE_STRING GPC_VERSION_STRING
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-arm-unwind_ptr.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-arm-unwind_ptr.dpatch
@@ -0,0 +1,51 @@
+#! /bin/sh -e
+
+# gdc-arm-unwind_ptr.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Fix build on arm.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/d/phobos/gcc/deh.d	2007-11-07 11:51:41.000000000 +0100
++++ gcc/d/phobos/gcc/deh.d	2007-11-07 11:51:54.000000000 +0100
+@@ -254,7 +254,7 @@
+     ubyte *p;
+     ubyte *action_record;
+     //int handler_switch_value;
+-    _Unwind_Ptr /*landing_pad, */ip;
++    _Unwind_Ptr landing_pad, ip;
+     Phase1Info phase1;
+ 
+     static if (Use_ARM_EABI_Unwinder)
+--- gcc/d/phobos2/gcc/deh.d	2007-11-07 18:05:26.000000000 +0100
++++ gcc/d/phobos2/gcc/deh.d	2007-11-07 18:05:55.000000000 +0100
+@@ -254,7 +254,7 @@
+     ubyte *p;
+     ubyte *action_record;
+     //int handler_switch_value;
+-    _Unwind_Ptr /*landing_pad, */ip;
++    _Unwind_Ptr landing_pad, ip;
+     Phase1Info phase1;
+ 
+     static if (Use_ARM_EABI_Unwinder)
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-notice-move.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-notice-move.dpatch
@@ -0,0 +1,52 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: don't set cc_status for fp move without fp register
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/config/m68k/m68k.c |    6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -2644,10 +2644,12 @@ notice_update_cc (rtx exp, rtx insn)
+ 		   || GET_CODE (SET_SRC (exp)) == FLOAT_TRUNCATE
+ 		   || GET_CODE (SET_SRC (exp)) == FLOAT_EXTEND))
+ 	CC_STATUS_INIT; 
+-      /* A pair of move insns doesn't produce a useful overall cc.  */
++      /* A pair of move insns or a fp move without fp register
++         doesn't produce a useful overall cc.  */
+       else if (!FP_REG_P (SET_DEST (exp))
+ 	       && !FP_REG_P (SET_SRC (exp))
+-	       && GET_MODE_SIZE (GET_MODE (SET_SRC (exp))) > 4
++	       && (GET_MODE_SIZE (GET_MODE (SET_SRC (exp))) > 4
++		   || GET_MODE_CLASS (GET_MODE (SET_SRC (exp))) == MODE_FLOAT)
+ 	       && (GET_CODE (SET_SRC (exp)) == REG
+ 		   || GET_CODE (SET_SRC (exp)) == MEM
+ 		   || GET_CODE (SET_SRC (exp)) == CONST_DOUBLE))
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-nojavac.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-nojavac.dpatch
@@ -0,0 +1,53 @@
+#! /bin/sh -e
+
+# DP: libjava/classpath: Don't require javac without java maintainer mode.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}libjava/classpath && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm -f ${dir}libjava/classpath/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -ur libjava/classpath.orig/m4/acinclude.m4 libjava/classpath/m4/acinclude.m4
+--- libjava/classpath.orig/m4/acinclude.m4	2007-08-05 12:19:49.920620546 +0200
++++ libjava/classpath/m4/acinclude.m4	2007-08-05 12:16:02.847195195 +0200
+@@ -25,7 +25,8 @@
+   AM_CONDITIONAL(FOUND_KJC, test "x${user_specified_javac}" = xkjc)
+ 
+   ## GCJ LOCAL
+-  if test "x${GCJ}" = x && test "x${JIKES}" = x && test "x${ECJ}" = x \
++  if test "x$enable_java_maintainer_mode" = xyes \
++     && test "x${GCJ}" = x && test "x${JIKES}" = x && test "x${ECJ}" = x \
+      && test "x${JAVAC}" = x && test "x${user_specified_javac}" != xkjc
+   then
+       AC_MSG_ERROR([cannot find javac, try --with-ecj])
+diff -ur libjava/classpath.orig/configure libjava/classpath/configure
+--- libjava/classpath.orig/configure	2007-08-05 12:05:58.418077000 +0200
++++ libjava/classpath/configure	2007-08-05 12:17:22.888402599 +0200
+@@ -17234,7 +17234,8 @@
+ 
+ 
+   ## GCJ LOCAL
+-  if test "x${GCJ}" = x && test "x${JIKES}" = x && test "x${ECJ}" = x \
++  if test "x$enable_java_maintainer_mode" = xyes \
++     && test "x${GCJ}" = x && test "x${JIKES}" = x && test "x${ECJ}" = x \
+      && test "x${JAVAC}" = x && test "x${user_specified_javac}" != xkjc
+   then
+       { { echo "$as_me:$LINENO: error: cannot find javac, try --with-ecj" >&5
--- gcj-4.2-4.2.4.orig/debian/patches/hurd-changes.dpatch
+++ gcj-4.2-4.2.4/debian/patches/hurd-changes.dpatch
@@ -0,0 +1,101 @@
+#! /bin/sh -e
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# DP: Traditional GNU systems don't have a /usr directory.  However, Debian
+# DP: systems do, and we support both having a /usr -> . symlink, and having a
+# DP: /usr directory like the other ports.  So this patch should NOT go
+# DP: upstream.
+# DP: 
+# DP: Define MAXPATHLEN and PATH_MAX.
+
+--- gcc/ada/adaint.c.orig	2005-11-15 14:52:31.000000000 +0100
++++ gcc/ada/adaint.c	2006-12-10 12:28:46.000000000 +0100
+@@ -272,6 +272,10 @@
+ #include <sys/param.h>
+ #endif
+ 
++#ifndef MAXPATHLEN
++#define MAXPATHLEN 4096
++#endif
++
+ #ifdef MAXPATHLEN
+ #define GNAT_MAX_PATH_LEN MAXPATHLEN
+ #else
+--- gcc/config/i386/gnu.h.orig	2004-09-08 02:17:19.000000000 +0200
++++ gcc/config/i386/gnu.h	2006-12-10 12:28:45.000000000 +0100
+@@ -17,7 +17,7 @@
+   while (0)
+ 
+ #undef CPP_SPEC
+-#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{bsd:-D_BSD_SOURCE}"
++#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{bsd:-D_BSD_SOURCE} %{pthread:-D_REENTRANT}"
+ 
+ #undef CC1_SPEC
+ #define CC1_SPEC "%(cc1_cpu)"
+--- gcc/config/gnu.h.orig	2004-07-05 21:49:20.000000000 +0200
++++ gcc/config/gnu.h	2006-12-10 12:28:45.000000000 +0100
+@@ -6,11 +6,12 @@
+ 
+ /* Default C library spec.  Use -lbsd-compat for gcc -bsd.  */
+ #undef LIB_SPEC
+-#define LIB_SPEC "%{bsd:-lbsd-compat} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}"
++#define LIB_SPEC "%{pthread:-lpthread} %{bsd:-lbsd-compat} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}"
+ 
+ /* Standard include directory.  In GNU, "/usr" is a four-letter word.  */
+ #undef STANDARD_INCLUDE_DIR
+-#define STANDARD_INCLUDE_DIR "/include"
++/* Overriden for Debian GNU/Hurd.  */
++#define STANDARD_INCLUDE_DIR "/usr/include"
+ 
+ /* The system headers under GNU are C++-aware.  */
+ #define NO_IMPLICIT_EXTERN_C
+--- gcc/config/t-gnu.orig	2004-01-10 07:40:24.000000000 +0100
++++ gcc/config/t-gnu	2006-12-10 12:28:45.000000000 +0100
+@@ -1,2 +1,2 @@
+ # In GNU, "/usr" is a four-letter word.
+-NATIVE_SYSTEM_HEADER_DIR = /include
++NATIVE_SYSTEM_HEADER_DIR = /usr/include
+--- gcc/tlink.c.orig	2005-06-25 04:02:01.000000000 +0200
++++ gcc/tlink.c	2006-12-10 12:28:45.000000000 +0100
+@@ -34,6 +34,10 @@
+ 
+ #define MAX_ITERATIONS 17
+ 
++#ifndef MAXPATHLEN
++#define MAXPATHLEN 4096
++#endif
++
+ /* Defined in the automatically-generated underscore.c.  */
+ extern int prepends_underscore;
+ 
+--- boehm-gc/dyn_load.c.orig	2007-08-13 09:10:48.215678000 +0200
++++ boehm-gc/dyn_load.c	2007-08-13 09:11:09.743969000 +0200
+@@ -26,7 +26,7 @@
+  * None of this is safe with dlclose and incremental collection.
+  * But then not much of anything is safe in the presence of dlclose.
+  */
+-#if (defined(__linux__) || defined(__GLIBC__)) && !defined(_GNU_SOURCE)
++#if (defined(__linux__) || defined(__GLIBC__) || defined(__GNU__)) && !defined(_GNU_SOURCE)
+     /* Can't test LINUX, since this must be define before other includes */
+ #   define _GNU_SOURCE
+ #endif
--- gcj-4.2-4.2.4.orig/debian/patches/alpha-ieee.dpatch
+++ gcj-4.2-4.2.4/debian/patches/alpha-ieee.dpatch
@@ -0,0 +1,57 @@
+#! /bin/sh -e
+
+# DP: #212912
+# DP: on alpha-linux, make -mieee default and add -mieee-disable switch
+# DP: to turn default off
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- src/gcc/config/alpha/alpha.c~	2005-06-04 21:25:45.000000000 +0200
++++ src/gcc/config/alpha/alpha.c	2005-09-30 22:21:33.251175568 +0200
+@@ -248,6 +248,10 @@
+     { 0, 0, 0 }
+   };
+ 
++  /* If not -ffinite-math-only, enable -mieee*/
++  if (!flag_finite_math_only)
++    target_flags |= MASK_IEEE|MASK_IEEE_CONFORMANT;
++
+   /* Unicos/Mk doesn't have shared libraries.  */
+   if (TARGET_ABI_UNICOSMK && flag_pic)
+     {
+#--- src/gcc/doc/invoke.texi~	2005-09-29 20:00:57.638380128 +0200
+#+++ src/gcc/doc/invoke.texi	2005-09-30 22:23:22.922502992 +0200
+#@@ -7670,6 +7670,13 @@
+# values such as not-a-number and plus/minus infinity.  Other Alpha
+# compilers call this option @option{-ieee_with_no_inexact}.
+# 
+#+DEBIAN SPECIFIC: This option is on by default, unless
+#+@option{-ffinite-math-only} (which is part of the @option{-ffast-math}
+#+set) is specified, because the software functions in the GNU libc math
+#+libraries generate denormalized numbers, NaNs, and infs (all of which
+#+will cause a programs to SIGFPE when it attempts to use the results without
+#+@option{-mieee}).
+#+
+# @item -mieee-with-inexact
+# @opindex mieee-with-inexact
+# This is like @option{-mieee} except the generated code also maintains
--- gcj-4.2-4.2.4.orig/debian/patches/pr20218-mips.dpatch
+++ gcj-4.2-4.2.4/debian/patches/pr20218-mips.dpatch
@@ -0,0 +1,243 @@
+#! /bin/sh -e
+
+# DP: Backport from mainline for PR middle-end/20218, mips part.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+gcc/
+2007-01-17  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* config/mips/mips-protos.h (mips_output_external): Make it
+	return void.
+	* config/mips/iris.h (TARGET_ASM_EXTERNAL_LIBCALL): Removed.
+	* config/mips/mips.c (irix_output_external_libcall): Likewise.
+	(extern_list): Likewise.
+	(extern_head): Likewise.
+	(TARGET_ASM_FILE_END): Likewise.
+	(mips_file_end): Likewise.
+	(mips_output_external): Rewritten.
+
+Index: gcc/config/mips/iris.h
+===================================================================
+--- gcc/config/mips/iris.h	(revision 120822)
++++ gcc/config/mips/iris.h	(working copy)
+@@ -61,10 +61,6 @@ #define ASM_DECLARE_OBJECT_NAME mips_dec
+ #undef ASM_FINISH_DECLARE_OBJECT
+ #define ASM_FINISH_DECLARE_OBJECT mips_finish_declare_object
+ 
+-/* Also do this for libcalls.  */
+-#undef TARGET_ASM_EXTERNAL_LIBCALL
+-#define TARGET_ASM_EXTERNAL_LIBCALL irix_output_external_libcall
+-
+ /* The linker needs a space after "-o".  */
+ #define SWITCHES_NEED_SPACES "o"
+ 
+Index: gcc/config/mips/mips-protos.h
+===================================================================
+--- gcc/config/mips/mips-protos.h	(revision 120822)
++++ gcc/config/mips/mips-protos.h	(working copy)
+@@ -197,7 +197,7 @@ extern HOST_WIDE_INT mips_debugger_offse
+ 
+ extern void print_operand (FILE *, rtx, int);
+ extern void print_operand_address (FILE *, rtx);
+-extern int mips_output_external (FILE *, tree, const char *);
++extern void mips_output_external (FILE *, tree, const char *);
+ extern void mips_output_filename (FILE *, const char *);
+ extern void mips_output_ascii (FILE *, const char *, size_t, const char *);
+ extern void mips_output_aligned_bss (FILE *, tree, const char *,
+Index: gcc/config/mips/mips.c
+===================================================================
+--- gcc/config/mips/mips.c	(revision 120822)
++++ gcc/config/mips/mips.c	(working copy)
+@@ -303,11 +303,7 @@ static void mips_set_tune (const struct 
+ static bool mips_handle_option (size_t, const char *, int);
+ static struct machine_function *mips_init_machine_status (void);
+ static void print_operand_reloc (FILE *, rtx, const char **);
+-#if TARGET_IRIX
+-static void irix_output_external_libcall (rtx);
+-#endif
+ static void mips_file_start (void);
+-static void mips_file_end (void);
+ static bool mips_rewrite_small_data_p (rtx);
+ static int mips_small_data_pattern_1 (rtx *, void *);
+ static int mips_rewrite_small_data_1 (rtx *, void *);
+@@ -552,19 +548,6 @@ int sdb_label_count = 0;
+ /* Next label # for each statement for Silicon Graphics IRIS systems.  */
+ int sym_lineno = 0;
+ 
+-/* Linked list of all externals that are to be emitted when optimizing
+-   for the global pointer if they haven't been declared by the end of
+-   the program with an appropriate .comm or initialization.  */
+-
+-struct extern_list GTY (())
+-{
+-  struct extern_list *next;	/* next external */
+-  const char *name;		/* name of the external */
+-  int size;			/* size in bytes */
+-};
+-
+-static GTY (()) struct extern_list *extern_head = 0;
+-
+ /* Name of the file containing the current function.  */
+ const char *current_function_file = "";
+ 
+@@ -1144,9 +1127,7 @@ #define TARGET_IN_SMALL_DATA_P mips_in_s
+ #define TARGET_MACHINE_DEPENDENT_REORG mips_reorg
+ 
+ #undef TARGET_ASM_FILE_START
+-#undef TARGET_ASM_FILE_END
+ #define TARGET_ASM_FILE_START mips_file_start
+-#define TARGET_ASM_FILE_END mips_file_end
+ #undef TARGET_ASM_FILE_START_FILE_DIRECTIVE
+ #define TARGET_ASM_FILE_START_FILE_DIRECTIVE true
+ 
+@@ -5786,48 +5767,38 @@ print_operand_address (FILE *file, rtx x
+    the -G limit but declared by the user to be in a section other
+    than .sbss or .sdata.  */
+ 
+-int
+-mips_output_external (FILE *file ATTRIBUTE_UNUSED, tree decl, const char *name)
+-{
+-  register struct extern_list *p;
+-
+-  if (!TARGET_EXPLICIT_RELOCS && mips_in_small_data_p (decl))
+-    {
+-      p = (struct extern_list *) ggc_alloc (sizeof (struct extern_list));
+-      p->next = extern_head;
+-      p->name = name;
+-      p->size = int_size_in_bytes (TREE_TYPE (decl));
+-      extern_head = p;
+-    }
+-
+-  if (TARGET_IRIX && mips_abi == ABI_32 && TREE_CODE (decl) == FUNCTION_DECL)
+-    {
+-      p = (struct extern_list *) ggc_alloc (sizeof (struct extern_list));
+-      p->next = extern_head;
+-      p->name = name;
+-      p->size = -1;
+-      extern_head = p;
+-    }
+-
+-  return 0;
+-}
+-
+-#if TARGET_IRIX
+-static void
+-irix_output_external_libcall (rtx fun)
++void
++mips_output_external (FILE *file, tree decl, const char *name)
+ {
+-  register struct extern_list *p;
++  default_elf_asm_output_external (file, decl, name);
+ 
+-  if (mips_abi == ABI_32)
+-    {
+-      p = (struct extern_list *) ggc_alloc (sizeof (struct extern_list));
+-      p->next = extern_head;
+-      p->name = XSTR (fun, 0);
+-      p->size = -1;
+-      extern_head = p;
++  /* We output the name if and only if TREE_SYMBOL_REFERENCED is
++     set in order to avoid putting out names that are never really
++     used. */
++  if (TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)))
++    {
++      if (!TARGET_EXPLICIT_RELOCS && mips_in_small_data_p (decl))
++	{
++	  fputs ("\t.extern\t", file);
++	  assemble_name (file, name);
++	  fprintf (file, ", " HOST_WIDE_INT_PRINT_DEC "\n",
++		   int_size_in_bytes (TREE_TYPE (decl)));
++	}
++      else if (TARGET_IRIX
++	       && mips_abi == ABI_32
++	       && TREE_CODE (decl) == FUNCTION_DECL)
++	{
++	  /* In IRIX 5 or IRIX 6 for the O32 ABI, we must output a
++	     `.global name .text' directive for every used but
++	     undefined function.  If we don't, the linker may perform
++	     an optimization (skipping over the insns that set $gp)
++	     when it is unsafe.  */
++	  fputs ("\t.globl ", file);
++	  assemble_name (file, name);
++	  fputs (" .text\n", file);
++	}
+     }
+ }
+-#endif
+ 
+ /* Emit a new filename to a stream.  If we are smuggling stabs, try to
+    put out a MIPS ECOFF file and a stab.  */
+@@ -5989,50 +5960,6 @@ mips_output_aligned_bss (FILE *stream, t
+ }
+ #endif
+ 
+-/* Implement TARGET_ASM_FILE_END.  When using assembler macros, emit
+-   .externs for any small-data variables that turned out to be external.  */
+-
+-static void
+-mips_file_end (void)
+-{
+-  tree name_tree;
+-  struct extern_list *p;
+-
+-  if (extern_head)
+-    {
+-      fputs ("\n", asm_out_file);
+-
+-      for (p = extern_head; p != 0; p = p->next)
+-	{
+-	  name_tree = get_identifier (p->name);
+-
+-	  /* Positively ensure only one .extern for any given symbol.  */
+-	  if (!TREE_ASM_WRITTEN (name_tree)
+-	      && TREE_SYMBOL_REFERENCED (name_tree))
+-	    {
+-	      TREE_ASM_WRITTEN (name_tree) = 1;
+-	      /* In IRIX 5 or IRIX 6 for the O32 ABI, we must output a
+-		 `.global name .text' directive for every used but
+-		 undefined function.  If we don't, the linker may perform
+-		 an optimization (skipping over the insns that set $gp)
+-		 when it is unsafe.  */
+-	      if (TARGET_IRIX && mips_abi == ABI_32 && p->size == -1)
+-		{
+-		  fputs ("\t.globl ", asm_out_file);
+-		  assemble_name (asm_out_file, p->name);
+-		  fputs (" .text\n", asm_out_file);
+-		}
+-	      else
+-		{
+-		  fputs ("\t.extern\t", asm_out_file);
+-		  assemble_name (asm_out_file, p->name);
+-		  fprintf (asm_out_file, ", %d\n", p->size);
+-		}
+-	    }
+-	}
+-    }
+-}
+-
+ /* Implement ASM_OUTPUT_ALIGNED_DECL_COMMON.  This is usually the same as the
+    elfos.h version, but we also need to handle -muninit-const-in-rodata.  */
+ 
+
--- gcj-4.2-4.2.4.orig/debian/patches/kbsd-gnu-ada.dpatch
+++ gcj-4.2-4.2.4/debian/patches/kbsd-gnu-ada.dpatch
@@ -0,0 +1,70 @@
+#! /bin/sh -e
+
+# Description: Ada support for GNU/k*BSD 
+# Author: Aurelien Jarno <aurel32@debian.Org>
+# Status: submitted.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# append the patch here and adjust the -p? flag in the patch calls.
+
+--- a/gcc/ada/s-osinte-kfreebsd-gnu.ads	2007-07-06 20:26:13 +0200
++++ b/gcc/ada/s-osinte-kfreebsd-gnu.ads 2007-07-26 11:37:00 +0200
+@@ -296,12 +296,10 @@
+    function pthread_kill (thread : pthread_t; sig : Signal) return int;
+    pragma Import (C, pthread_kill, "pthread_kill");
+ 
+-   type sigset_t_ptr is access all sigset_t;
+-
+    function pthread_sigmask
+      (how  : int;
+-      set  : sigset_t_ptr;
+-      oset : sigset_t_ptr) return int;
++      set  : access sigset_t;
++      oset : access sigset_t) return int;
+    pragma Import (C, pthread_sigmask, "pthread_sigmask");
+ 
+    --------------------------
+--- trunk/gcc/ada/Makefile.in	2007/10/20 19:48:36	129515
++++ trunk/gcc/ada/Makefile.in	2007/11/21 12:16:51	130330
+@@ -879,7 +879,7 @@
+     mlib-tgt.adb<mlib-tgt-linux.adb \
+     indepsw.adb<indepsw-gnu.adb
+ 
+-  SYMLIB = -laddr2line -lbfd -liberty $(LIBINTL)
++  EH_MECHANISM=-gcc
+   THREADSLIB = -lpthread
+   GNATLIB_SHARED = gnatlib-shared-dual
+   GMEM_LIB = gmemlib
+--- trunk/gcc/ada/system-freebsd-x86.ads.orig	2008-02-09 14:40:58.000000000 +0100
++++ trunk/gcc/ada/system-freebsd-x86.ads	2008-02-09 14:41:09.000000000 +0100
+@@ -141,8 +141,8 @@
+    Support_Long_Shifts       : constant Boolean := True;
+    Suppress_Standard_Library : constant Boolean := False;
+    Use_Ada_Main_Program_Name : constant Boolean := False;
+-   ZCX_By_Default            : constant Boolean := False;
+-   GCC_ZCX_Support           : constant Boolean := False;
++   ZCX_By_Default            : constant Boolean := True;
++   GCC_ZCX_Support           : constant Boolean := True;
+    Front_End_ZCX_Support     : constant Boolean := False;
+ 
+    --  Obsolete entries, to be removed eventually (bootstrap issues!)
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-dwarf3.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-dwarf3.dpatch
@@ -0,0 +1,50 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: emit correct dwarf info for cfa offset and register with -fomit-frame-pointer
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.c |    4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+Index: gcc-4.1/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.1.orig/gcc/config/m68k/m68k.c
++++ gcc-4.1/gcc/config/m68k/m68k.c
+@@ -604,10 +604,12 @@ m68k_output_function_prologue (FILE *str
+ 
+       if (dwarf2out_do_frame ())
+ 	{
+-	  cfa_offset += current_frame.size + 4;
++	  cfa_offset += current_frame.size;
+ 	  dwarf2out_def_cfa ("", STACK_POINTER_REGNUM, cfa_offset);
+ 	}
+     } /* !frame_pointer_needed */
++  else if (dwarf2out_do_frame ())
++    dwarf2out_def_cfa ("", STACK_POINTER_REGNUM, cfa_offset);
+ 
+   if (current_frame.fpu_mask)
+     {
--- gcj-4.2-4.2.4.orig/debian/patches/config-ml.dpatch
+++ gcj-4.2-4.2.4/debian/patches/config-ml.dpatch
@@ -0,0 +1,221 @@
+#! /bin/sh -e
+
+# DP: disable some biarch libraries for biarch builds
+
+if [ $# -eq 3 ] && [ "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+       -patch) patch $pdir -f --no-backup-if-mismatch -p0 < $0;;
+       -unpatch) patch $pdir -f --no-backup-if-mismatch -R -p0 < $0;;
+	*)
+		echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+		exit 1;;
+esac
+
+exit 0
+
+--- config-ml.in.orig	2007-09-12 00:22:13.000000000 +0200
++++ config-ml.in	2007-09-12 00:26:24.000000000 +0200
+@@ -210,6 +210,13 @@
+   fi
+ done
+ 
++if [ -z "$biarch_multidir_names" ]; then
++  biarch_multidir_names="libiberty libstdc++-v3 libgfortran libmudflap libssp libffi libobjc libgomp"
++  echo "WARNING: biarch_multidir_names is unset. Use default value:"
++  echo "  $biarch_multidir_names"
++fi
++ml_srcbase=`basename $ml_realsrcdir`
++
+ # Target libraries are configured for the host they run on, so we check
+ # $host here, not $target.
+ 
+@@ -296,6 +303,26 @@
+ 	  done
+ 	fi
+ 	;;
++i[34567]86-*-*)
++	case " $multidirs " in
++	*" 64 "*)
++	  ac_configure_args="${ac_configure_args} --host=x86_64-linux-gnu"
++	  # Setting $host this late is a hack.  Some directories can't
++	  # handle it, so disable them for now.
++	  old_multidirs="${multidirs}"
++	  multidirs=""
++	  for x in ${old_multidirs}; do
++	    case "$x" in
++	    *64* ) case "$biarch_multidir_names" in
++		     *"$ml_srcbase"*) multidirs="${multidirs} ${x}" ;;
++		   esac
++		   ;;
++	    *) multidirs="${multidirs} ${x}" ;;
++	  esac
++	  done
++	  ;;
++	esac
++	;;
+ m68*-*-*)
+ 	if [ x$enable_softfloat = xno ]
+ 	then
+@@ -489,16 +516,57 @@
+ 	    esac
+ 	  done
+ 	fi
++	case " $multidirs " in
++	*" 64 "*)
++	  ac_configure_args="${ac_configure_args} --host=powerpc64-linux-gnu"
++	  # We will not be able to create libraries with -m64 if
++	  # we cannot even link a trivial program.  It usually
++	  # indicates the 64bit libraries are missing.
++	  if echo 'main() {}' > conftest.c &&
++	     ${CC-gcc} -m64 conftest.c -o conftest; then
++           old_multidirs="${multidirs}"
++           multidirs=""
++           for x in ${old_multidirs}; do
++             case "$x" in
++	     *64* ) case "$biarch_multidir_names" in
++		       *"$ml_srcbase"*) multidirs="${multidirs} ${x}" ;;
++		    esac ;;
++             *) multidirs="${multidirs} ${x}" ;;
++             esac
++           done
++	  else
++	    echo Could not link program with -m64, disabling it.
++	    old_multidirs="${multidirs}"
++	    multidirs=""
++	    for x in ${old_multidirs}; do
++	      case "$x" in
++	      *m64* ) : ;;
++	      *) multidirs="${multidirs} ${x}" ;;
++	      esac
++	    done
++	  fi
++	  rm -f conftest.c conftest
++	  ;;
++	esac
+ 	;;
+ sparc*-*-*)
+ 	case " $multidirs " in
+-	*" m64 "*)
++	*" 64 "*)
+ 	  # We will not be able to create libraries with -m64 if
+ 	  # we cannot even link a trivial program.  It usually
+ 	  # indicates the 64bit libraries are missing.
+ 	  if echo 'main() {}' > conftest.c &&
+ 	     ${CC-gcc} -m64 conftest.c -o conftest; then
+-	    :
++           old_multidirs="${multidirs}"
++           multidirs=""
++           for x in ${old_multidirs}; do
++             case "$x" in
++	     *64* ) case "$biarch_multidir_names" in
++		       *"$ml_srcbase"*) multidirs="${multidirs} ${x}" ;;
++		    esac ;;
++             *) multidirs="${multidirs} ${x}" ;;
++             esac
++           done
+ 	  else
+ 	    echo Could not link program with -m64, disabling it.
+ 	    old_multidirs="${multidirs}"
+@@ -514,6 +582,74 @@
+ 	  ;;
+ 	esac
+ 	;;
++x86_64*-*-*)
++	case " $multidirs " in
++	*" 32 "*)
++	  # We will not be able to create libraries with -m32 if
++	  # we cannot even link a trivial program.  It usually
++	  # indicates the 32bit libraries are missing.
++	  if echo 'main() {}' > conftest.c &&
++	     ${CC-gcc} -m32 conftest.c -o conftest; then
++	   old_multidirs="${multidirs}"
++	   multidirs=""
++	   for x in ${old_multidirs}; do
++	     case "$x" in
++	     *32* ) case "$biarch_multidir_names" in
++		       *"$ml_srcbase"*) multidirs="${multidirs} ${x}" ;;
++		    esac ;;
++	     *) multidirs="${multidirs} ${x}" ;;
++	     esac
++	   done
++	  else
++	    echo Could not link program with -m32, disabling it.
++	    old_multidirs="${multidirs}"
++	    multidirs=""
++	    for x in ${old_multidirs}; do
++	      case "$x" in
++	      *m32* ) : ;;
++	      *) multidirs="${multidirs} ${x}" ;;
++	      esac
++	    done
++	  fi
++	  rm -f conftest.c conftest
++	  ;;
++	esac
++	;;
++s390-*-*)
++	ac_configure_args="${ac_configure_args} --host=s390x-linux-gnu"
++
++	case " $multidirs " in
++	*" 64 "*)
++	  # We will not be able to create libraries with -m64 if
++	  # we cannot even link a trivial program.  It usually
++	  # indicates the 64bit libraries are missing.
++	  if echo 'main() {}' > conftest.c &&
++	     ${CC-gcc} -m64 conftest.c -o conftest; then
++	    old_multidirs="${multidirs}"
++	    multidirs=""
++	    for x in ${old_multidirs}; do
++	      case "$x" in
++	      *64* ) case "$biarch_multidir_names" in
++		        *"$ml_srcbase"*) multidirs="${multidirs} ${x}" ;;
++		     esac ;;
++	      *) multidirs="${multidirs} ${x}" ;;
++	      esac
++	    done
++	  else
++	    echo Could not link program with -m64, disabling it.
++	    old_multidirs="${multidirs}"
++	    multidirs=""
++	    for x in ${old_multidirs}; do
++	      case "$x" in
++	      *64* ) : ;;
++	      *) multidirs="${multidirs} ${x}" ;;
++	      esac
++	    done
++	  fi
++	  rm -f conftest.c conftest
++	  ;;
++	esac
++	;;
+ esac
+ 
+ # Remove extraneous blanks from multidirs.
+@@ -888,9 +1024,20 @@
+ 	fi
+     fi
+ 
++    ml_configure_args=
++    for arg in ${ac_configure_args}
++    do
++      case $arg in
++      *CC=*)  ml_configure_args=${ml_config_env} ;;
++      *CXX=*) ml_configure_args=${ml_config_env} ;;
++      *GCJ=*) ml_configure_args=${ml_config_env} ;;
++      *) ;;
++      esac
++    done
++
+     if eval ${ml_config_env} ${ml_config_shell} ${ml_recprog} \
+ 	--with-multisubdir=${ml_dir} --with-multisrctop=${multisrctop} \
+-	${ac_configure_args} ${ml_srcdiroption} ; then
++	${ac_configure_args} ${ml_configure_args} ${ml_srcdiroption} ; then
+       true
+     else
+       exit 1
--- gcj-4.2-4.2.4.orig/debian/patches/gdc-driver-zlib.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gdc-driver-zlib.dpatch
@@ -0,0 +1,98 @@
+#! /bin/sh -e
+
+# gdc-driver-zlib.dpatch by Arthur Loiret <arthur.loiret@gmail.com>
+# DP: Update the gdc driver to use the up-to-date system zlib.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+diff -ruN gcc/d/d-spec.c gcc/d/d-spec.c
+--- gcc/d/d-spec.c	2007-09-27 17:29:42.000000000 +0200
++++ gcc/d/d-spec.c	2007-09-27 17:34:51.000000000 +0200
+@@ -87,7 +87,7 @@
+     /* The number of arguments being added to what's in argv, other than
+        libraries.  We use this to track the number of times we've inserted
+        -xc++/-xnone.  */
+-    int added = 0;
++    int added = 1; /* -lz */
+ 
+     /* Used to track options that take arguments, so we don't go wrapping
+        those with -xc++/-xnone.  */
+@@ -366,6 +366,10 @@
+ 	    arglist[j++] = saw_profile_flag ? LIBPHOBOS_PROFILE : LIBPHOBOS;
+ 	    added_libraries++;
+ 	    need_pthreads = 1;
++
++	    /* Use the up-to-date system zlib with libphobos */
++	    arglist[j++] = "-lz";
++	    added_libraries++;
+ 	}
+     if (saw_math)
+ 	arglist[j++] = saw_math;
+diff -ruN gcc/d/phobos/etc/c/zlib.d gcc/d/phobos/etc/c/zlib.d
+--- gcc/d/phobos/etc/c/zlib.d	2007-09-27 17:29:42.000000000 +0200
++++ gcc/d/phobos/etc/c/zlib.d	2007-09-27 17:38:16.000000000 +0200
+@@ -41,7 +41,7 @@
+ 
+ extern (C):
+ 
+-char[] ZLIB_VERSION = "1.2.1";
++char[] ZLIB_VERSION = "1.2.3.3";
+ 
+ /*
+      The 'zlib' compression library provides in-memory compression and
+diff -ruN gcc/d/phobos2/etc/c/zlib.d gcc/d/phobos2/etc/c/zlib.d
+--- gcc/d/phobos2/etc/c/zlib.d	2007-09-27 17:29:44.000000000 +0200
++++ gcc/d/phobos2/etc/c/zlib.d	2007-09-27 17:38:26.000000000 +0200
+@@ -41,7 +41,7 @@
+ 
+ extern (C):
+ 
+-const char[] ZLIB_VERSION = "1.2.1";
++const char[] ZLIB_VERSION = "1.2.3.3";
+ 
+ /*
+      The 'zlib' compression library provides in-memory compression and
+--- gcc/d/phobos/Makefile.am	2007-11-10 19:44:58.000000000 +0100
++++ gcc/d/phobos/Makefile.am	2007-11-10 19:45:46.000000000 +0100
+@@ -177,7 +177,7 @@
+ std/stream.t.o: std/stream.d $(D_PREREQ_SRCS)
+ 	$(GDC) -o $@ $(ALL_DFLAGS) -fdeprecated -I $(srcdir) -I $(srcdir)/internal/gc -I ./$(host_alias) -c $<
+ 
+-ALL_PHOBOS_OBJS = $(D_EXTRA_OBJS) $(GCC_OBJS) $(MAIN_OBJS) $(ZLIB_OBJS) $(GC_OBJS) $(WEAK_OBJS)
++ALL_PHOBOS_OBJS = $(D_EXTRA_OBJS) $(GCC_OBJS) $(MAIN_OBJS) $(GC_OBJS) $(WEAK_OBJS)
+ 
+ libgphobos.a : $(ALL_PHOBOS_OBJS) $(CMAIN_OBJS)
+ 	$(AR) -r $@ $(ALL_PHOBOS_OBJS) $(CMAIN_OBJS)
+--- gcc/d/phobos2/Makefile.am	2007-11-10 19:45:13.000000000 +0100
++++ gcc/d/phobos2/Makefile.am	2007-11-10 19:46:02.000000000 +0100
+@@ -177,7 +177,7 @@
+ std/stream.t.o: std/stream.d $(D_PREREQ_SRCS)
+ 	$(GDC) -o $@ $(ALL_DFLAGS) -fdeprecated -I $(srcdir) -I $(srcdir)/internal/gc -I ./$(host_alias) -c $<
+ 
+-ALL_PHOBOS_OBJS = $(D_EXTRA_OBJS) $(GCC_OBJS) $(MAIN_OBJS) $(ZLIB_OBJS) $(GC_OBJS) $(WEAK_OBJS)
++ALL_PHOBOS_OBJS = $(D_EXTRA_OBJS) $(GCC_OBJS) $(MAIN_OBJS) $(GC_OBJS) $(WEAK_OBJS)
+ 
+ libgphobos2.a : $(ALL_PHOBOS_OBJS) $(CMAIN_OBJS)
+ 	$(AR) -r $@ $(ALL_PHOBOS_OBJS) $(CMAIN_OBJS)
--- gcj-4.2-4.2.4.orig/debian/patches/netbsd-archs-gcc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/netbsd-archs-gcc.dpatch
@@ -0,0 +1,38 @@
+#! /bin/sh -e
+
+# DP: Arch-specific changes to gcc.config
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -urN gcc/config.gcc src/gcc/config.gcc
+--- gcc/config.gcc	2003-03-02 07:39:03.000000000 +0000
++++ gcc/config.gcc	2003-04-24 06:02:55.000000000 +0000
+@@ -1127,6 +1127,9 @@
+ x86_64-*-freebsd*)
+ 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
+ 	;;
++i[34567]86-*-netbsdelf*-gnu*)
++	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd-gnu.h netbsd-elf-gnu.h i386/netbsd-elf.h"
++	;;
+ i[34567]86-*-netbsdelf*)
+ 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-elf.h i386/netbsd-elf.h"
+ 	;;
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-dwarf.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-dwarf.dpatch
@@ -0,0 +1,75 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: correct the dwarf frame information, but preserve compatibility
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+ gcc/config/m68k/m68k.c |    4 ++++
+ gcc/config/m68k/m68k.h |    9 ++++++++-
+ 2 files changed, 12 insertions(+), 1 deletion(-)
+
+Index: gcc-4.2/gcc/config/m68k/m68k.c
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.c
++++ gcc-4.2/gcc/config/m68k/m68k.c
+@@ -3641,6 +3641,10 @@ m68k_regno_mode_ok (int regno, enum mach
+ 	  && GET_MODE_UNIT_SIZE (mode) <= TARGET_FP_REG_SIZE)
+ 	return true;
+     }
++  else if (regno == 24)
++    {
++      return GET_MODE_SIZE (mode) == 4;
++    }
+   return false;
+ }
+ 
+Index: gcc-4.2/gcc/config/m68k/m68k.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/m68k.h
++++ gcc-4.2/gcc/config/m68k/m68k.h
+@@ -179,6 +179,13 @@ along with GCC; see the file COPYING3.  
+    register elimination.  */
+ #define FIRST_PSEUDO_REGISTER 25
+ 
++/* Number of hardware registers that go into the DWARF-2 unwind info. This
++   should be 24, but to prevent compability problems leave it at 25.  */
++#define DWARF_FRAME_REGISTERS 25
++
++#define DWARF_FRAME_RETURN_COLUMN 24
++#define DWARF_ALT_FRAME_RETURN_COLUMN 25
++
+ /* All m68k targets (except AmigaOS) use %a5 as the PIC register  */
+ #define PIC_OFFSET_TABLE_REGNUM (flag_pic ? 13 : INVALID_REGNUM)
+ 
+@@ -256,7 +263,7 @@ along with GCC; see the file COPYING3.  
+    for the 68881 registers, a single register is always enough for
+    anything that can be stored in them at all.  */
+ #define HARD_REGNO_NREGS(REGNO, MODE)   \
+-  ((REGNO) >= 16 ? GET_MODE_NUNITS (MODE)	\
++  ((REGNO) >= 16 && (REGNO) <= 23 ? GET_MODE_NUNITS (MODE)	\
+    : ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD))
+ 
+ /* A C expression that is nonzero if hard register NEW_REG can be
--- gcj-4.2-4.2.4.orig/debian/patches/ada-driver-check.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-driver-check.dpatch
@@ -0,0 +1,39 @@
+#! /bin/sh -e
+
+# DP: Simplify Ada driver check (we always build using the required
+# DP: Ada version. Needed for warnings on alpha.
+
+dir=./
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	cd ${dir} && autoconf2.13
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+	rm -f ${dir}configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- config/acx.m4~	2005-12-15 14:59:17.000000000 +0100
++++ config/acx.m4	2006-07-08 17:01:44.325594336 +0200
+@@ -195,7 +195,7 @@
+ # Other compilers, like HP Tru64 UNIX cc, exit successfully when
+ # given a .adb file, but produce no object file.  So we must check
+ # if an object file was really produced to guard against this.
+-errors=`(${CC} -c conftest.adb) 2>&1 || echo failure`
++errors=`(${CC} -c conftest.adb) 2>/dev/null || echo failure`
+ if test x"$errors" = x && test -f conftest.$ac_objext; then
+   acx_cv_cc_gcc_supports_ada=yes
+ fi
--- gcj-4.2-4.2.4.orig/debian/patches/boehm-gc-nocheck.dpatch
+++ gcj-4.2-4.2.4/debian/patches/boehm-gc-nocheck.dpatch
@@ -0,0 +1,37 @@
+#! /bin/sh -e
+
+# DP: Disable running the boehm-gc testsuite. Hangs the buildd at least on hppa.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- boehm-gc/Makefile.in~	2004-06-20 16:24:06.000000000 +0200
++++ boehm-gc/Makefile.in	2004-06-23 09:43:42.000000000 +0200
+@@ -662,7 +662,8 @@
+ 	  test "$$failed" -eq 0; \
+ 	else :; fi
+ check-am: $(check_PROGRAMS)
+-	$(MAKE) $(AM_MAKEFLAGS) check-TESTS
++	: # $(MAKE) $(AM_MAKEFLAGS) check-TESTS
++	@echo target $@ disabled for Debian build.
+ check: check-recursive
+ all-am: Makefile $(LTLIBRARIES) all-multi
+ installdirs: installdirs-recursive
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-prevent-swap.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-prevent-swap.dpatch
@@ -0,0 +1,45 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: don't swap operands during reloads
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/recog.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+Index: gcc-4.2/gcc/recog.c
+===================================================================
+--- gcc-4.2.orig/gcc/recog.c
++++ gcc-4.2/gcc/recog.c
+@@ -531,6 +531,7 @@ validate_replace_rtx_1 (rtx *loc, rtx fr
+      simplifications, as it is not our job.  */
+ 
+   if (SWAPPABLE_OPERANDS_P (x)
++      && !reload_in_progress
+       && swap_commutative_operands_p (XEXP (x, 0), XEXP (x, 1)))
+     {
+       validate_change (object, loc,
--- gcj-4.2-4.2.4.orig/debian/patches/ada-gcc-name.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-gcc-name.dpatch
@@ -0,0 +1,106 @@
+#! /bin/sh -e
+
+# DP: use gcc-4.2 instead of gcc as the command name.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -ur gcc/ada.old/ali.adb gcc/ada/ali.adb
+--- gcc/ada.old/ali.adb	2004-02-21 15:23:32.000000000 +0100
++++ gcc/ada/ali.adb	2004-02-21 15:23:57.000000000 +0100
+@@ -260,7 +260,7 @@
+          Write_Str (" is incorrectly formatted");
+          Write_Eol;
+          Write_Str
+-           ("make sure you are using consistent versions of gcc/gnatbind");
++           ("make sure you are using consistent versions of gcc-4.2/gnatbind");
+          Write_Eol;
+ 
+          --  Find start of line
+diff -ur gcc/ada.old/comperr.adb gcc/ada/comperr.adb
+--- gcc/ada.old/comperr.adb	2004-02-21 15:23:32.000000000 +0100
++++ gcc/ada/comperr.adb	2004-02-21 15:23:57.000000000 +0100
+@@ -292,7 +292,7 @@
+                End_Line;
+ 
+                Write_Str
+-                 ("| Include the exact gcc or gnatmake command " &
++                 ("| Include the exact gcc-4.2 or gnatmake command " &
+                   "that you entered.");
+                End_Line;
+ 
+diff -ur gcc/ada.old/gnatlink.adb gcc/ada/gnatlink.adb
+--- gcc/ada.old/gnatlink.adb	2004-02-21 15:23:32.000000000 +0100
++++ gcc/ada/gnatlink.adb	2004-02-21 15:23:57.000000000 +0100
+@@ -123,7 +123,7 @@
+ 
+    subtype chars_ptr is System.Address;
+ 
+-   Gcc : String_Access := Program_Name ("gcc");
++   Gcc : String_Access := Program_Name ("gcc-4.2");
+ 
+    Read_Mode  : constant String := "r" & ASCII.Nul;
+ 
+@@ -1287,7 +1287,8 @@
+       Write_Line ("  -b target  Compile the binder source to run on target");
+       Write_Line ("  -Bdir      Load compiler executables from dir");
+       Write_Line ("  --GCC=comp Use comp as the compiler");
+-      Write_Line ("  --LINK=nam Use 'nam' for the linking rather than 'gcc'");
++      Write_Line ("  --LINK=nam Use 'nam' for the linking rather " &
++                  "than 'gcc-4.2'");
+       Write_Eol;
+       Write_Line ("  [non-Ada-objects]  list of non Ada object files");
+       Write_Line ("  [linker-options]   other options for the linker");
+diff -ur gcc/ada.old/make.adb gcc/ada/make.adb
+--- gcc/ada.old/make.adb	2004-02-21 15:23:32.000000000 +0100
++++ gcc/ada/make.adb	2004-02-21 15:23:57.000000000 +0100
+@@ -650,7 +650,7 @@
+    -- Compiler, Binder & Linker Data and Subprograms --
+    ----------------------------------------------------
+ 
+-   Gcc             : String_Access := Program_Name ("gcc");
++   Gcc             : String_Access := Program_Name ("gcc-4.2");
+    Gnatbind        : String_Access := Program_Name ("gnatbind");
+    Gnatlink        : String_Access := Program_Name ("gnatlink");
+    --  Default compiler, binder, linker programs
+diff -ur gcc/ada.old/par-ch10.adb gcc/ada/par-ch10.adb
+--- gcc/ada.old/par-ch10.adb	2004-02-21 15:23:32.000000000 +0100
++++ gcc/ada/par-ch10.adb	2004-02-21 15:23:57.000000000 +0100
+@@ -224,7 +224,7 @@
+             else
+                Item := First (Config_Pragmas);
+                Error_Msg_N
+-                 ("cannot compile configuration pragmas with gcc", Item);
++                 ("cannot compile configuration pragmas with gcc-4.2", Item);
+                Error_Msg_N
+                  ("use gnatchop -c to process configuration pragmas!", Item);
+                raise Unrecoverable_Error;
+--- gcc/ada/gnatchop.adb~	2004-01-05 16:20:44.000000000 +0100
++++ gcc/ada/gnatchop.adb	2004-04-25 09:33:51.000000000 +0200
+@@ -43,7 +43,7 @@
+    Config_File_Name : constant String_Access := new String'("gnat.adc");
+    --  The name of the file holding the GNAT configuration pragmas
+ 
+-   Gcc : String_Access := new String'("gcc");
++   Gcc : String_Access := new String'("gcc-4.2");
+    --  May be modified by switch --GCC=
+ 
+    Gcc_Set : Boolean := False;
--- gcj-4.2-4.2.4.orig/debian/patches/libgcc-tramp-ppc32.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libgcc-tramp-ppc32.dpatch
@@ -0,0 +1,91 @@
+#! /bin/sh -e
+
+# DP: Fix libgcc.a(tramp.o) on ppc32
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+From: Jakub Jelinek <jakub@redhat.com>
+Sender: gcc-patches-owner@gcc.gnu.org
+To: Alan Modra <amodra@bigpond.net.au>
+Cc: gcc-patches@gcc.gnu.org
+Subject: [PATCH] Fix libgcc.a(tramp.o) on ppc32
+Date: Mon, 20 Aug 2007 17:35:52 -0400
+
+Hi!
+
+Without this patch and with recent binutils all ppc32 binaries or shared
+libraries that use trampolines are linked as BSS PLT, eventhough they
+were compiled with -msecure-plt or with --enable-secureplt configured
+gcc without -mbss-plt.
+With -Wl,--secure-plt the warning is:
+gcc -Wall -Wshadow -std=gnu99 -Werror -Wunused -Wextra -Wformat=2 -O2 -g \
+-pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector \
+--param=ssp-buffer-size=4 -m32 -fexceptions \
+-Wl,-rpath-link,../libelf:../libdw -o nm nm.o ../libdw/libdw.so \
+../libebl/libebl.a ../libelf/libelf.so ../lib/libeu.a -ldl --Wl,--secure-plt
+Using bss-plt due to /usr/lib/gcc/ppc64-redhat-linux/4.1.2/libgcc.a(tramp.o)
+
+Although tramp.asm has the needed code for secure PLT since the
+2005-06-01 secure PLT GCC support addition, it is never triggered, as
+tramp.asm doesn't include auto-host.h which defines HAVE_AS_REL16
+or undefs it.  Also, ppc-asm.h uses @plt in JUMP_TARGET whenever __PIC__
+or __pic__ is defined, tramp.asm needs to use the same condition.
+
+Ok for 4.3/4.2/4.1?
+
+2007-08-20  Jakub Jelinek  <jakub@redhat.com>
+
+	* config/rs6000/tramp.asm: Include config.h.
+	Check __PIC__ or __pic__ macro instead of SHARED.
+
+--- gcc/config/rs6000/tramp.asm.jj	2006-10-05 00:28:33.000000000 +0200
++++ gcc/config/rs6000/tramp.asm	2007-08-20 23:20:52.000000000 +0200
+@@ -1,6 +1,6 @@
+ /*  Special support for trampolines
+  *
+- *   Copyright (C) 1996, 1997, 2000 Free Software Foundation, Inc.
++ *   Copyright (C) 1996, 1997, 2000, 2007 Free Software Foundation, Inc.
+  *   Written By Michael Meissner
+  * 
+  * This file is free software; you can redistribute it and/or modify it
+@@ -37,7 +37,8 @@
+ 
+ 	.file	"tramp.asm"
+ 	.section ".text"
+-	#include "ppc-asm.h"
++#include "ppc-asm.h"
++#include "config.h"
+ 
+ #ifndef __powerpc64__
+ 	.type	trampoline_initial,@object
+@@ -105,7 +106,7 @@ FUNC_START(__trampoline_setup)
+ 	blr
+ 
+ .Labort:
+-#if defined SHARED && defined HAVE_AS_REL16
++#if (defined __PIC__ || defined __pic__) && defined HAVE_AS_REL16
+ 	bcl	20,31,1f
+ 1:	mflr	r30
+ 	addis	r30,r30,_GLOBAL_OFFSET_TABLE_-1b@ha
+
+	Jakub
--- gcj-4.2-4.2.4.orig/debian/patches/gpc-4.1.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gpc-4.1.dpatch
@@ -0,0 +1,3282 @@
+#! /bin/sh -e
+
+# DP: GPC updates for GCC 4.1.2
+
+dir=gcc/
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3/gcc"
+    dir="$3/gcc/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/ChangeLog gpc/p/ChangeLog
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/ChangeLog	2006-03-24 02:47:15.000000000 +0100
++++ gpc/p/ChangeLog	2006-04-06 02:11:56.000000000 +0200
+@@ -1,5 +1,16 @@
+ ChangeLog -- Edit History for GPC, the GNU Pascal Compiler, since version 2.1
+ =============================================================================
++2006-03-24  Waldek Hebisch  <hebisch@math.uni.wroc.pl>
++
++        * Make-lang.in, config-lang.in, declarations.c, expressions.c,
++          gbe.h, gpc-lex.c, gpc.c, gpc.h, lang.c, module.c, objects.c,
++          options.c, opts.sum, p-tree.def, parse.y, pascal-lex.l,
++          predef.c, statements.c, typecheck.c, types.c, utils/Makefile
++          utils/gpidump.pas, utils/mk-t-inc: adapted to gcc-4.0,
++          schema changed to use placeholders
++          plant.c, plant.h, diffs/gcc-4.0.2.diff, diffs/gcc-4.0.3.diff:
++          new files
++ 
+ 2006-03-09  Waldek Hebisch  <hebisch@math.uni.wroc.pl>
+ 
+         * predef.c: build_predef_call (): handle named exit from a method
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/FAQ gpc/p/FAQ
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/FAQ	2006-02-18 14:37:53.000000000 +0100
++++ gpc/p/FAQ	2006-04-04 19:39:50.000000000 +0200
+@@ -62,7 +62,7 @@
+ What is the current version?
+ ============================
+ 
+-The current version is 20060215.
++The current version is 20060325.
+ 
+    Releases are available as a source archive and precompiled binaries
+ for several common platforms from the GPC web site,
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/Make-lang.in gpc/p/Make-lang.in
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/Make-lang.in	2006-03-25 04:33:50.000000000 +0100
++++ gpc/p/Make-lang.in	2006-04-06 02:11:56.000000000 +0200
+@@ -56,6 +56,7 @@
+ # `40' for gcc-4.x
+ GPC_GCC_2_=2
+ GPC_GCC_28_=8
++GPC_GCC_28_PPQ=$(GPC_GCC_28_$(gcc_version)$(BACKEND)
+ GPC_GCC_34_PPQ_=foo
+ GPC_GCC_34_PPP=$(GPC_GCC_34_PPQ_$(target_noncanonical))
+ GPC_GCC_34_PP_=34
+@@ -65,7 +66,7 @@
+ GPC_GCC_40_PP_=40
+ GPC_GCC_40_PP_fallback_to_34=$(GPC_GCC_34_)
+ GPC_GCC_40_=$(GPC_GCC_40_PP_$(GPC_GCC_40_PPP))
+-GCC_VERSION_FOR_GPC=$(GPC_GCC_2_$(BACKEND))$(GPC_GCC_28_$(gcc_version))
++GCC_VERSION_FOR_GPC=$(GPC_GCC_2_$(BACKEND))$(GPC_GCC_28_PPQ)
+ GCC_VERSION_FOR_GPC34=$(GCC_VERSION_FOR_GPC)$(GPC_GCC_34_)
+ GCC_VERSION_FOR_GPC40=$(GCC_VERSION_FOR_GPC)$(GPC_GCC_40_)
+ GPC_GCC_VERSION_28=$(version)
+@@ -733,7 +734,9 @@
+ 	$(CC) -o $@ -c $(ALL_GPC_GBE_FLAGS) $<
+ 
+ p/version.o: version.c $(GPC_BE_H)
+-	$(CC) -o $@ -c $(ALL_GPC_GBE_FLAGS) $<
++	$(CC) -o $@ -c $(ALL_GPC_GBE_FLAGS) \
++	 -DBASEVER=$(BASEVER_s) -DDATESTAMP=$(DATESTAMP_s) \
++	 -DDEVPHASE=$(DEVPHASE_s) $<
+ 
+ $(srcdir)/p/pascal-lex.c: $(srcdir)/p/pascal-lex.l
+ 	if $(GPC_LEX) --version | grep -q '2\.5\.4'; then \
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/config-lang.in gpc/p/config-lang.in
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/config-lang.in	2006-03-25 03:50:32.000000000 +0100
++++ gpc/p/config-lang.in	2006-04-04 18:44:47.000000000 +0200
+@@ -93,7 +93,7 @@
+           echo "***" >&2
+           echo "*** Press ENTER to continue, Ctrl-C to abort." >&2
+           echo "***" >&2
+-          read junk
++#          read junk
+         fi
+       fi
+     fi
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/declarations.c gpc/p/declarations.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/declarations.c	2006-03-13 01:33:16.000000000 +0100
++++ gpc/p/declarations.c	2006-04-09 21:55:21.000000000 +0200
+@@ -437,7 +437,11 @@
+   /* Clear out the local identifier meanings of this level. */
+   for (t = decls; t; t = TREE_CHAIN (t))
+     if (DECL_NAME (t))
+-      IDENTIFIER_VALUE (DECL_NAME (t)) = NULL_TREE;
++      {
++        if (DECL_EXTERNAL (t) && TREE_ADDRESSABLE (t))
++          TREE_ADDRESSABLE (DECL_ASSEMBLER_NAME (t)) = 1;
++        IDENTIFIER_VALUE (DECL_NAME (t)) = NULL_TREE;
++      }
+   restore_identifiers (level->shadowed);
+ 
+   /* Not sure if this is a fix or work-around: Remove local external
+@@ -527,7 +531,7 @@
+       if (co->pascal_dialect & C_E_O_PASCAL)
+         error (msg2, IDENTIFIER_NAME (name));
+       else
+-        warning (msg2, IDENTIFIER_NAME (name));
++        gpc_warning (msg2, IDENTIFIER_NAME (name));
+     }
+   check_id_redeclaration (name, msg1);
+ }
+@@ -903,7 +907,7 @@
+             if (TYPE_LANG_CODE_TEST (inner_type, PASCAL_LANG_ABSTRACT_OBJECT))
+               error ("abstract object type declared as value parameter");
+             else if (co->warn_object_assignment)
+-              warning ("object type declared as value parameter");
++              gpc_warning ("object type declared as value parameter");
+           }
+       }
+   for (decl = parms; decl; decl = TREE_CHAIN (decl))
+@@ -988,10 +992,11 @@
+       && TREE_STRING_LENGTH (x) == TREE_STRING_LENGTH (y)
+       && !memcmp (TREE_STRING_POINTER (x), TREE_STRING_POINTER (y), TREE_STRING_LENGTH (x)))
+     return 1;
+-  if (TREE_CODE (x) == CONSTRUCTOR
++  if (TREE_CODE (x) == PASCAL_SET_CONSTRUCTOR
+       && TREE_CODE (TREE_TYPE (x)) == SET_TYPE && TREE_CODE (TREE_TYPE (x)) == SET_TYPE
+       && comptypes (TREE_TYPE (x), TREE_TYPE (y))
+-      && const_set_constructor_binary_op (EQ_EXPR, CONSTRUCTOR_ELTS (x), CONSTRUCTOR_ELTS (y)) == boolean_true_node)
++      && const_set_constructor_binary_op (EQ_EXPR, SET_CONSTRUCTOR_ELTS (x),
++                SET_CONSTRUCTOR_ELTS (y)) == boolean_true_node)
+     return 1;
+ 
+   return 0;
+@@ -1055,7 +1060,7 @@
+     DECL_CONTEXT (x) = NULL_TREE;
+ 
+   if (co->warn_local_external && DECL_EXTERNAL (x) && !DECL_ARTIFICIAL (x) && !pascal_global_bindings_p ())
+-    warning ("local external declaration of `%s'", IDENTIFIER_NAME (name));
++    gpc_warning ("local external declaration of `%s'", IDENTIFIER_NAME (name));
+ 
+   t = lookup_name_current_level (name);
+   /* Overloading an operator is ok. The decl is a dummy placeholder.
+@@ -1126,10 +1131,18 @@
+         }
+ 
+       DECL_UID (x) = DECL_UID (t);
++      gcc_assert (TREE_CODE (x) == FUNCTION_DECL &&
++                  TREE_CODE (t) == FUNCTION_DECL);
++#ifndef GCC_4_1
+       /* Copy decl-specific fields of x into t. */
+       memcpy ((char *) t + sizeof (struct tree_common),
+               (char *) x + sizeof (struct tree_common),
+               sizeof (struct tree_decl) - sizeof (struct tree_common));
++#else
++      memcpy ((char *) t + sizeof (struct tree_common),
++              (char *) x + sizeof (struct tree_common),
++              tree_size (t) - sizeof (struct tree_common));
++#endif
+       return t;
+     }
+ 
+@@ -1173,7 +1186,7 @@
+ 
+   /* Maybe warn if shadowing something else (not for vars made for inlining). */
+   if (!weak && t && warn_shadow && !DECL_FROM_INLINE (x))
+-    warning ("declaration of `%s' shadows an outer declaration", IDENTIFIER_NAME (name));
++    gpc_warning ("declaration of `%s' shadows an outer declaration", IDENTIFIER_NAME (name));
+ 
+   /* Record a shadowed declaration for later restoration. */
+   if (!weak && t)
+@@ -1384,6 +1397,7 @@
+       expand_expr_stmt (build_routine_call (longjmp_routine_node,
+         tree_cons (NULL_TREE, build_unary_op (ADDR_EXPR, DECL_LANG_LABEL_JMPBUF (decl), 0),
+           build_tree_list (NULL_TREE, integer_one_node))));
++      TREE_USED (DECL_LANG_LABEL_JMPBUF (decl)) = 1;
+ #ifndef GCC_3_3
+       /* @@ Work-around: `function_cannot_inline_p' should check `current_function_calls_longjmp'. */
+       current_function_has_nonlocal_goto = 1;
+@@ -1433,9 +1447,9 @@
+ #endif
+         /* Avoid calling `setjmp' for labels that are only used locally */
+         if (DECL_LANG_LABEL_JMPBUF (d) 
+-#ifndef GCC_4_0
++// #ifndef GCC_4_0
+             && TREE_USED (DECL_LANG_LABEL_JMPBUF (d))
+-#endif
++// #endif
+            )
+           {
+             expand_start_cond (build_routine_call (setjmp_routine_node,
+@@ -1580,10 +1594,10 @@
+           location_t loc_aux;
+           loc_aux.file = filename;
+           loc_aux.line = line;
+-          warning ("%Hcapitalisation of identifier `%s' doesn't match", &loc_aux, spelling);
++          gpc_warning ("%Hcapitalisation of identifier `%s' doesn't match", &loc_aux, spelling);
+           loc_aux.file = IDENTIFIER_SPELLING_FILE (id);
+           loc_aux.line = IDENTIFIER_SPELLING_LINENO (id);
+-          warning ("%H previous capitalisation `%s'", &loc_aux, IDENTIFIER_SPELLING (id));
++          gpc_warning ("%H previous capitalisation `%s'", &loc_aux, IDENTIFIER_SPELLING (id));
+ #endif
+         }
+     }
+@@ -2306,7 +2320,7 @@
+       if (co->pascal_dialect & C_E_O_PASCAL)
+         error (msg, IDENTIFIER_NAME (name));
+       else
+-        warning (msg, IDENTIFIER_NAME (name));
++        gpc_warning (msg, IDENTIFIER_NAME (name));
+     }
+ }
+ 
+@@ -2562,7 +2576,7 @@
+         if (TREE_VALUE (*tt))
+           error ("spurious argument to `%s' attribute", IDENTIFIER_NAME (TREE_PURPOSE (*tt)));
+         if (TREE_CODE (TREE_TYPE (t)) == VOID_TYPE)
+-          warning ("`%s' is meaningless for a procedure", IDENTIFIER_NAME (TREE_PURPOSE (*tt)));
++          gpc_warning ("`%s' is meaningless for a procedure", IDENTIFIER_NAME (TREE_PURPOSE (*tt)));
+         else
+           PASCAL_TREE_IGNORABLE (t) = 1;
+         *tt = TREE_CHAIN (*tt);
+@@ -2576,7 +2590,7 @@
+         if (TREE_VALUE (*tt))
+           error ("spurious argument to `%s' attribute", IDENTIFIER_NAME (TREE_PURPOSE (*tt)));
+         if (!last || TREE_CODE (TREE_VALUE (last)) != VOID_TYPE)
+-          warning ("inline declaration ignored for routine with `...'");
++          gpc_warning ("inline declaration ignored for routine with `...'");
+         else if (!flag_no_inline && optimize > 0)
+           /* Assume that otherwise the function can be inlined. */
+           DECL_INLINE (*d) = 1;
+@@ -2646,7 +2660,7 @@
+       }
+     else if (IDENTIFIER_IS_BUILT_IN (TREE_VALUE (dir), p_asmname))
+       {
+-        warning ("`%s' is deprecated; use `external name' or `attribute (name = ...)' instead",
++        gpc_warning ("`%s' is deprecated; use `external name' or `attribute (name = ...)' instead",
+                  IDENTIFIER_NAME (TREE_VALUE (dir)));
+         assembler_name = TREE_PURPOSE (dir);
+         any_dir = 1;
+@@ -2654,7 +2668,7 @@
+     else if (IDENTIFIER_IS_BUILT_IN (TREE_VALUE (dir), p_c)
+              || IDENTIFIER_IS_BUILT_IN (TREE_VALUE (dir), p_c_language))
+       {
+-        warning ("`%s' is deprecated; use `external' instead",
++        gpc_warning ("`%s' is deprecated; use `external' instead",
+                  IDENTIFIER_NAME (TREE_VALUE (dir)));
+         any_dir = c_dir = is_public = 1;
+       }
+@@ -2662,7 +2676,7 @@
+       {
+         is_external = is_public = 1;
+         if (TREE_PURPOSE (dir))
+-          warning ("library name in `external' is ignored");
++          gpc_warning ("library name in `external' is ignored");
+       }
+     else if (IDENTIFIER_IS_BUILT_IN (TREE_VALUE (dir), p_forward))
+       any_dir = is_forward = 1;
+@@ -2675,15 +2689,15 @@
+              || IDENTIFIER_IS_BUILT_IN (TREE_VALUE (dir), p_far))
+       {
+         if (co->warn_near_far)
+-          warning ("`%s' directive ignored because of flat memory model", IDENTIFIER_NAME (TREE_VALUE (dir)));
++          gpc_warning ("`%s' directive ignored because of flat memory model", IDENTIFIER_NAME (TREE_VALUE (dir)));
+       }
+     else
+       error ("unknown directive `%s'", IDENTIFIER_NAME (TREE_VALUE (dir)));
+ 
+   if (is_external && !assembler_name)
+     {
+-      warning ("`external' without `name' has a different default now");
+-      warning (" (This warning will disappear in a future version)");
++      gpc_warning ("`external' without `name' has a different default now");
++      gpc_warning (" (This gpc_warning will disappear in a future version)");
+     }
+ 
+   is_external |= c_dir;
+@@ -3016,7 +3030,7 @@
+         || IDENTIFIER_IS_BUILT_IN (TREE_VALUE (dir), p_far))
+       {
+         if (co->warn_near_far)
+-          warning ("`%s' directive ignored because of flat memory model", IDENTIFIER_NAME (TREE_VALUE (dir)));
++          gpc_warning ("`%s' directive ignored because of flat memory model", IDENTIFIER_NAME (TREE_VALUE (dir)));
+       }
+     else
+       {
+@@ -3301,14 +3315,18 @@
+ #ifndef EGCS97
+   /* So we can tell if jump_optimize sets it to 1. */
+   can_reach_end = 0;
+-#else
+-  ggc_push_context ();
+ #endif
+ 
+-
+-  /* Run the optimizers and output the assembler code for this function. */
+ #ifndef GCC_4_0
++#ifdef EGCS97
++  ggc_push_context ();
++#endif
++  /* Run the optimizers and output the assembler code for this function. */
+   rest_of_compilation (fndecl);
++
++#ifdef EGCS97
++  ggc_pop_context ();
++#endif
+ #endif
+ 
+   if (DECL_LANG_RESULT_VARIABLE (fndecl))
+@@ -3316,11 +3334,9 @@
+ 
+ #ifndef EGCS97
+   if (TREE_THIS_VOLATILE (fndecl) && can_reach_end)
+-    warning ("routine declared `noreturn' returns");
++    gpc_warning ("routine declared `noreturn' returns");
+   if (!outer_function_chain)
+     permanent_allocation (1);
+-#else
+-  ggc_pop_context ();
+ #endif
+ 
+ #ifndef GCC_4_0
+@@ -3581,7 +3597,8 @@
+   if (!EM (TREE_TYPE (element))
+       && TREE_CODE (element) != VAR_DECL
+       && TREE_CODE (element) != PARM_DECL
+-      && TREE_CODE (element) != CONSTRUCTOR)
++      && TREE_CODE (element) != CONSTRUCTOR
++/*      && TREE_CODE (element) != PASCAL_SET_CONSTRUCTOR */)
+     {
+       tree elem_type = TREE_TYPE (element), rec_addr;
+       if (TREE_READONLY (element))
+@@ -3700,13 +3717,13 @@
+         {
+           qualifiers |= VQ_EXTERNAL;
+           if (arg)
+-            warning ("library name in `external' is ignored");
++            gpc_warning ("library name in `external' is ignored");
+         }
+       else if (arg && IDENTIFIER_IS_BUILT_IN (id, p_name))
+         assembler_name = arg;
+       else if (arg && IDENTIFIER_IS_BUILT_IN (id, p_asmname))
+         {
+-          warning ("`%s' is deprecated; use `external name' or `attribute (name = ...)' instead",
++          gpc_warning ("`%s' is deprecated; use `external name' or `attribute (name = ...)' instead",
+                    IDENTIFIER_NAME (id));
+           assembler_name = arg;
+         }
+@@ -3720,8 +3737,8 @@
+ 
+   if ((qualifiers & VQ_EXTERNAL) && !(qualifiers & VQ_IMPLICIT) && !assembler_name)
+     {
+-      warning ("`external' without `name' has a different default now");
+-      warning (" (This warning will disappear in a future version.)");
++      gpc_warning ("`external' without `name' has a different default now");
++      gpc_warning (" (This gpc_warning will disappear in a future version.)");
+     }
+ 
+   if (init && PASCAL_ABSOLUTE_CLAUSE (init))
+@@ -3744,7 +3761,7 @@
+               return NULL_TREE;
+             }
+           if (co->warn_absolute)
+-            warning ("variables at absolute adresses may cause problems");
++            gpc_warning ("variables at absolute adresses may cause problems");
+         }
+       else
+         {
+@@ -3756,7 +3773,7 @@
+               && TREE_CODE (TREE_TYPE (init)) != VOID_TYPE
+               && TREE_CODE (TREE_TYPE (init)) != FUNCTION_TYPE
+               && TYPE_ALIGN (type) > TYPE_ALIGN (TREE_TYPE (init)))
+-            warning ("`absolute' declaration increases required alignment");
++            gpc_warning ("`absolute' declaration increases required alignment");
+           while (TREE_CODE (init) == NOP_EXPR
+                  || TREE_CODE (init) == NON_LVALUE_EXPR
+                  || TREE_CODE (init) == CONVERT_EXPR
+@@ -3770,7 +3787,7 @@
+                    || (indirect == 0 && TREE_CODE (init) == PARM_DECL)
+                    || (indirect == 1 && TREE_CODE (init) == PARM_DECL
+                        && TREE_CODE (TREE_TYPE (init)) == REFERENCE_TYPE)))
+-            warning ("`absolute' variable has non-constant address");
++            gpc_warning ("`absolute' variable has non-constant address");
+           TREE_USED (init) = 1;
+           init = address;
+         }
+@@ -3982,7 +3999,15 @@
+         DECL_CONTEXT (d) = NULL_TREE;  /* for deferred initializers */
+ 
+       /* Output the assembler code and/or RTL code. */
+-#ifndef GCC_4_0
++#ifdef GCC_4_0
++      if (pascal_global_bindings_p () && current_module
++          && current_module->implementation)
++        {
++          if (!DECL_INITIAL (d))
++            DECL_DEFER_OUTPUT (d) = 1;
++          rest_of_decl_compilation (d, true, 0);
++        }
++#else
+       rest_of_decl_compilation (d, NULL, !DECL_CONTEXT (d), 1 /* for GPC */);
+ #endif
+ 
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/expressions.c gpc/p/expressions.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/expressions.c	2006-03-24 02:47:15.000000000 +0100
++++ gpc/p/expressions.c	2006-04-09 02:28:59.000000000 +0200
+@@ -36,7 +36,7 @@
+ static int implicit_comparison = 0;
+ int operators_defined = 0;
+ 
+-static void set_string_length (tree, int, int);
++// static void set_string_length (tree, int, int);
+ static void warn_operands (enum tree_code, tree, int);
+ static tree shorten_compare (tree *, tree *, tree *, enum tree_code *);
+ static const char *get_op_name (enum tree_code);
+@@ -56,7 +56,7 @@
+    Note: TREE_STRING_LENGTH includes a trailing #0 (to output C-compatible
+    strings and to avoid changing the backend's output code), but the domain
+    doesn't (so the #0 doesn't appear in Pascal string usage). */
+-static void
++void
+ set_string_length (tree value, int wide_flag, int length)
+ {
+   gcc_assert (length >= 0);
+@@ -282,7 +282,7 @@
+ {
+   if (co->pascal_dialect & C_E_O_PASCAL)
+     {
+-      warning(msg);
++      gpc_warning (msg);
+       return build (COMPOUND_EXPR, TREE_TYPE (min), 
+                build_predef_call (p_RangeCheckError, NULL_TREE), min);
+     }
+@@ -653,7 +653,7 @@
+       enum tree_code inner = EXP_ORIGINAL_CODE (exp_inner);
+       if ((AND_OP (inner) && OR_OP (outer))
+           || ((OR_OP (inner) || AND_OP (inner) || (!rhs && inner == TRUTH_NOT_EXPR)) && REL_OP (outer)))
+-        warning ("suggest parentheses around `%s' in operand of `%s'",
++        gpc_warning ("suggest parentheses around `%s' in operand of `%s'",
+                  get_op_name (inner), get_op_name (outer));
+     }
+ }
+@@ -783,7 +783,6 @@
+          and are already no lvalues (WRT ISO parentheses). */
+       gcc_assert (TREE_CODE (t) != STRING_CST);
+       gcc_assert (TREE_CODE (t) != CONSTRUCTOR);
+-      gcc_assert (code == NOP_EXPR || !lvalue_p (t));
+       t = build1 (NON_LVALUE_EXPR, TREE_TYPE (old), old);
+       TREE_CONSTANT (t) = TREE_CONSTANT (old);
+       TREE_OVERFLOW (t) = TREE_OVERFLOW (old);
+@@ -1124,9 +1123,11 @@
+     }
+ 
+   /* Convert set constructors to sets. */
+-  if (t1 == CONSTRUCTOR && TREE_CODE (TREE_TYPE (exp1)) == SET_TYPE)
++  if (t1 == PASCAL_SET_CONSTRUCTOR
++      && TREE_CODE (TREE_TYPE (exp1)) == SET_TYPE)
+     exp1 = construct_set (exp1, NULL_TREE, 1);
+-  if (t2 == CONSTRUCTOR && TREE_CODE (TREE_TYPE (exp2)) == SET_TYPE && code != IN_EXPR)
++  if (t2 == PASCAL_SET_CONSTRUCTOR
++      && TREE_CODE (TREE_TYPE (exp2)) == SET_TYPE && code != IN_EXPR)
+     exp2 = construct_set (exp2, NULL_TREE, 1);
+ 
+   CHK_EM (TREE_TYPE (exp1));
+@@ -1249,17 +1250,18 @@
+           return error_mark_node;
+         }
+ 
+-      if (TREE_CODE (exp2) == CONSTRUCTOR)
++      if (TREE_CODE (exp2) == PASCAL_SET_CONSTRUCTOR)
+         {
+           /* Optimize `foo in [a, b .. c]' to become
+              `(foo = a) or ((foo >= b) and (foo <= c))'
+              (where foo is evaluated only once). */
+-          tree elem = CONSTRUCTOR_ELTS (exp2), result = NULL_TREE, exp = save_expr (exp1);
++          tree elem = SET_CONSTRUCTOR_ELTS (exp2),
++               result = NULL_TREE, exp = save_expr (exp1);
+           if (!elem)
+             {
+-              warning ("`... in []' (empty set) is always `False'.");
++              gpc_warning ("`... in []' (empty set) is always `False'.");
+               if (TREE_SIDE_EFFECTS (exp1))
+-                warning (" Operand with side-effects is not evaluated.");
++                gpc_warning (" Operand with side-effects is not evaluated.");
+               return boolean_false_node;
+             }
+           for (; elem; elem = TREE_CHAIN (elem))
+@@ -1333,12 +1335,18 @@
+       if (code == SYMDIFF_EXPR)
+         chk_dialect ("symmetric set difference is", E_O_PASCAL);
+ 
+-      if (TREE_CODE (exp1) == CONSTRUCTOR && TREE_CODE (exp2) == CONSTRUCTOR)
++      if (TREE_CODE (exp1) == PASCAL_SET_CONSTRUCTOR 
++          && TREE_CODE (exp2) == PASCAL_SET_CONSTRUCTOR)
+         {
+           if (code == PLUS_EXPR)
+-            return build_set_constructor (chainon (copy_list (CONSTRUCTOR_ELTS (exp1)), copy_list (CONSTRUCTOR_ELTS (exp2))));
+-          else if (PASCAL_CONSTRUCTOR_INT_CST (exp1) && PASCAL_CONSTRUCTOR_INT_CST (exp2))
+-            return const_set_constructor_binary_op (code, CONSTRUCTOR_ELTS (exp1), CONSTRUCTOR_ELTS (exp2));
++            return build_set_constructor (chainon (
++                     copy_list (SET_CONSTRUCTOR_ELTS (exp1)),
++                     copy_list (SET_CONSTRUCTOR_ELTS (exp2))));
++          else if (PASCAL_CONSTRUCTOR_INT_CST (exp1)
++                   && PASCAL_CONSTRUCTOR_INT_CST (exp2))
++            return const_set_constructor_binary_op (code, 
++                     SET_CONSTRUCTOR_ELTS (exp1),
++                     SET_CONSTRUCTOR_ELTS (exp2));
+         }
+ 
+       result = NULL_TREE;
+@@ -1351,19 +1359,19 @@
+         {
+           case PLUS_EXPR:
+           case SYMDIFF_EXPR:
+-            warning ("Set operation has no effect.");
++            gpc_warning ("Set operation has no effect.");
+             return exp2;
+           case MINUS_EXPR:
+           case MULT_EXPR:
+-            warning ("Set operation always yields the empty set.");
++            gpc_warning ("Set operation always yields the empty set.");
+             result = build_set_constructor (NULL_TREE);
+             break;
+           case GT_EXPR:
+-            warning ("`>' comparison of the empty set is always false.");
++            gpc_warning ("`>' comparison of the empty set is always false.");
+             result = boolean_false_node;
+             break;
+           case LE_EXPR:
+-            warning ("`<=' comparison of the empty set is always true.");
++            gpc_warning ("`<=' comparison of the empty set is always true.");
+             result = boolean_true_node;
+             break;
+           case EQ_EXPR:
+@@ -1389,18 +1397,18 @@
+           case PLUS_EXPR:
+           case MINUS_EXPR:
+           case SYMDIFF_EXPR:
+-            warning ("Set operation has no effect.");
++            gpc_warning ("Set operation has no effect.");
+             return exp1;
+           case MULT_EXPR:
+-            warning ("Set operation always yields the empty set.");
++            gpc_warning ("Set operation always yields the empty set.");
+             result = build_set_constructor (NULL_TREE);
+             break;
+           case LT_EXPR:
+-            warning ("`<' comparison against the empty set is always false.");
++            gpc_warning ("`<' comparison against the empty set is always false.");
+             result = boolean_false_node;
+             break;
+           case GE_EXPR:
+-            warning ("`>=' comparison against the empty set is always true.");
++            gpc_warning ("`>=' comparison against the empty set is always true.");
+             result = boolean_true_node;
+             break;
+           case EQ_EXPR:
+@@ -1417,7 +1425,7 @@
+       if (result)
+         {
+           if (TREE_SIDE_EFFECTS (empty1 ? exp2 : exp1))
+-            warning (" Operand with side-effects is not evaluated.");
++            gpc_warning (" Operand with side-effects is not evaluated.");
+           return result;
+         }
+       if (!r_num)
+@@ -1827,7 +1835,8 @@
+   /* build_unary_op accepts CONSTRUCTORs (for parameters), but the backend
+      would later crash. Maybe it should be checked elsewhere, but it
+      seems to work here. -- Frank */
+-  if (TREE_CODE (factor) == CONSTRUCTOR)
++  if (TREE_CODE (factor) == CONSTRUCTOR
++      || TREE_CODE (factor) == PASCAL_SET_CONSTRUCTOR)
+     {
+       error ("reference expected, value given");
+       return error_mark_node;
+@@ -1841,6 +1850,7 @@
+   else
+     {
+       tree t;
++      tree string_cst_type = NULL_TREE;
+ 
+       if (TREE_CODE (factor) == STRING_CST)
+         {
+@@ -1850,13 +1860,25 @@
+           tree capf = TYPE_FIELDS (st);
+           tree lenf = TREE_CHAIN (capf);
+           tree schf = TREE_CHAIN (lenf);
++#ifndef GCC_4_1
++          tree inilist = tree_cons (capf, length, 
++                           tree_cons (lenf, length,
++                           build_tree_list (schf, factor)));
++#else
++          VEC(constructor_elt,gc) * inilist = 0;
++          CONSTRUCTOR_APPEND_ELT (inilist, capf, length);
++          CONSTRUCTOR_APPEND_ELT (inilist, lenf, length);
++          CONSTRUCTOR_APPEND_ELT (inilist, schf, factor);
++#endif
+           factor = build_constructor (build_pascal_string_schema (length),
+-                     tree_cons (capf, length,
+-                     tree_cons (lenf, length,
+-                     build_tree_list (schf, factor))));
++                                      inilist);
+           /* Make this a valid lvalue for taking addresses. */
+           TREE_CONSTANT (factor) = 1;
+           TREE_STATIC (factor) = 1;
++          string_cst_type = TREE_TYPE (factor);
++          factor = declare_variable (get_unique_identifier ("const_string"),
++                     TREE_TYPE (factor), build_tree_list (NULL_TREE, factor),
++                     VQ_IMPLICIT | VQ_CONST | VQ_STATIC);
+         }
+ 
+       t = factor;
+@@ -1883,6 +1905,12 @@
+           && (!DECL_CONTEXT (factor)
+               || (TREE_CODE (factor) == FUNCTION_DECL && DECL_NO_STATIC_CHAIN (factor))))
+         TREE_CONSTANT (result) = 1;
++#if 0
++      if (string_cst_type)
++        {
++          result = convert (build_pointer_type (string_cst_type), result);
++        }
++#endif
+     }
+ 
+   if (untyped)
+@@ -2119,22 +2147,22 @@
+       if (!implicit_comparison && !max_gt && !unsignedp0 && TREE_CODE (primop0) != INTEGER_CST)
+         {
+           if (val == boolean_false_node)
+-            warning ("Comparison always yields `False' due to limited range of data type.");
++            gpc_warning ("Comparison always yields `False' due to limited range of data type.");
+           if (val == boolean_true_node)
+-            warning ("Comparison always yields `True' due to limited range of data type.");
++            gpc_warning ("Comparison always yields `True' due to limited range of data type.");
+         }
+       if (!implicit_comparison && !min_lt && unsignedp0 && TREE_CODE (primop0) != INTEGER_CST)
+         {
+           if (val == boolean_false_node)
+-            warning ("Comparison always yields `False' due to limited range of data type.");
++            gpc_warning ("Comparison always yields `False' due to limited range of data type.");
+           if (val == boolean_true_node)
+-            warning ("Comparison always yields `True' due to limited range of data type.");
++            gpc_warning ("Comparison always yields `True' due to limited range of data type.");
+         }
+ 
+       if (val)
+         {
+           if (TREE_SIDE_EFFECTS (primop0))
+-            warning (" Operand with side-effects is not evaluated.");
++            gpc_warning (" Operand with side-effects is not evaluated.");
+           return val;
+         }
+ 
+@@ -2184,13 +2212,13 @@
+                  the signedness of the comparison isn't an issue, so suppress
+                  the warning. */
+               if (!implicit_comparison && TREE_CODE (primop0) != INTEGER_CST)
+-                warning ("Comparison `unsigned value >= 0' always yields `True'.");
++                gpc_warning ("Comparison `unsigned value >= 0' always yields `True'.");
+               value = boolean_true_node;
+               break;
+ 
+             case LT_EXPR:
+               if (!implicit_comparison && TREE_CODE (primop0) != INTEGER_CST)
+-                warning ("Comparison `unsigned value < 0' always yields `False'.");
++                gpc_warning ("Comparison `unsigned value < 0' always yields `False'.");
+               value = boolean_false_node;
+               break;
+ 
+@@ -2201,7 +2229,7 @@
+           if (value)
+             {
+               if (TREE_SIDE_EFFECTS (primop0))
+-                warning (" Operand with side-effects is not evaluated.");
++                gpc_warning (" Operand with side-effects is not evaluated.");
+               return value;
+             }
+         }
+@@ -2564,14 +2592,14 @@
+           if (TREE_CODE (op1) == INTEGER_CST)
+             {
+               if (tree_int_cst_sgn (op1) < 0)
+-                warning ("right shift count is negative");
++                gpc_warning ("right shift count is negative");
+               else
+                 {
+                   if (TREE_INT_CST_LOW (op1) | TREE_INT_CST_HIGH (op1))
+                     short_shift = 1;
+                   if (TREE_INT_CST_HIGH (op1) != 0
+                       || ((unsigned HOST_WIDE_INT) TREE_INT_CST_LOW (op1) >= TYPE_PRECISION (type0)))
+-                    warning ("right shift count >= width of type");
++                    gpc_warning ("right shift count >= width of type");
+                 }
+             }
+           /* Use the type of the value to be shifted for the result. */
+@@ -2591,10 +2619,10 @@
+           if (TREE_CODE (op1) == INTEGER_CST)
+             {
+               if (tree_int_cst_sgn (op1) < 0)
+-                warning ("left shift count is negative");
++                gpc_warning ("left shift count is negative");
+               else if (TREE_INT_CST_HIGH (op1) != 0
+                        || ((unsigned HOST_WIDE_INT) TREE_INT_CST_LOW (op1) >= TYPE_PRECISION (result_type)))
+-                warning ("left shift count >= width of type");
++                gpc_warning ("left shift count >= width of type");
+             }
+           if (TYPE_MAIN_VARIANT (TREE_TYPE (op1)) != pascal_integer_type_node)
+             op1 = convert (pascal_integer_type_node, op1);
+@@ -2606,7 +2634,7 @@
+     case EQ_EXPR:
+     case NE_EXPR:
+       if (co->warn_float_equal && (code0 == REAL_TYPE || code1 == REAL_TYPE))
+-        warning ("comparing real numbers with `=' or `<>' is unsafe");
++        gpc_warning ("comparing real numbers with `=' or `<>' is unsafe");
+       /* Result of comparison is always Boolean, but don't convert the args to Boolean. */
+       build_type = boolean_type_node;
+       if (ORDINAL_REAL_OR_COMPLEX_TYPE (code0) && compatible_relop_p (type0, type1))
+@@ -2658,7 +2686,7 @@
+             {
+               result_type = common_type (type0, type1);
+               if (TREE_CODE (TREE_TYPE (type0)) == FUNCTION_TYPE)
+-                warning ("ordered comparisons of pointers to routines");
++                gpc_warning ("ordered comparisons of pointers to routines");
+             }
+           else if (!comp_object_or_schema_pointer_types (TREE_TYPE (type0), TREE_TYPE (type1), 0)
+                    && !comp_object_or_schema_pointer_types (TREE_TYPE (type1), TREE_TYPE (type0), 0))
+@@ -2688,7 +2716,7 @@
+                   != COMPLETE_OR_VOID_TYPE_P (TREE_TYPE (type1)))
+                 pedwarn ("comparison of complete and incomplete pointers");
+               else if (pedantic && TREE_CODE (TREE_TYPE (type0)) == FUNCTION_TYPE)
+-                warning ("ordered comparision of pointers to routines");
++                gpc_warning ("ordered comparision of pointers to routines");
+             }
+           else
+             {
+@@ -2895,13 +2923,13 @@
+                     {
+                       mask = (~0L) << bits;
+                       if ((mask & constant) != mask)
+-                        warning ("comparison of promoted `not' unsigned with constant");
++                        gpc_warning ("comparison of promoted `not' unsigned with constant");
+                     }
+                 }
+               else if (unsignedp0 && unsignedp1
+                        && (TYPE_PRECISION (TREE_TYPE (primop0)) < TYPE_PRECISION (result_type))
+                        && (TYPE_PRECISION (TREE_TYPE (primop1)) < TYPE_PRECISION (result_type)))
+-                warning ("comparison of promoted `not' unsigned with unsigned");
++                gpc_warning ("comparison of promoted `not' unsigned with unsigned");
+             }
+         }
+     }
+@@ -2986,9 +3014,9 @@
+   /* The result is a pointer of the same type that is being added. */
+   tree result_type = TREE_TYPE (ptrop), size_exp = integer_one_node, result, folded;
+   if (TREE_CODE (TREE_TYPE (result_type)) == VOID_TYPE)
+-    warning ("untyped pointer used in arithmetic");
++    gpc_warning ("untyped pointer used in arithmetic");
+   else if (TREE_CODE (TREE_TYPE (result_type)) == FUNCTION_TYPE)
+-    warning ("pointer to a routine used in arithmetic");
++    gpc_warning ("pointer to a routine used in arithmetic");
+   else
+     size_exp = c_size_in_bytes (TREE_TYPE (result_type));
+   /* Replace the integer argument with a suitable product by the object size. */
+@@ -3010,9 +3038,9 @@
+   tree result, folded, restype = ptrdiff_type_node;
+   tree target_type = TREE_TYPE (TREE_TYPE (op0));
+   if (TREE_CODE (target_type) == VOID_TYPE)
+-    warning ("untyped pointer used in pointer difference");
++    gpc_warning ("untyped pointer used in pointer difference");
+   if (TREE_CODE (target_type) == FUNCTION_TYPE)
+-    warning ("pointer to a routine used in pointer difference");
++    gpc_warning ("pointer to a routine used in pointer difference");
+   /* First do the subtraction as integers, then divide. */
+   op0 = build_pascal_binary_op (MINUS_EXPR, convert (restype, op0), convert (restype, op1));
+   /* This generates an error if op1 is pointer to incomplete type. */
+@@ -3170,7 +3198,8 @@
+         }
+ 
+       /* Addresses of constructors are needed for parameters. */
+-      if (TREE_CODE (arg) == CONSTRUCTOR)
++      if (TREE_CODE (arg) == CONSTRUCTOR 
++          || TREE_CODE (arg) == PASCAL_SET_CONSTRUCTOR)
+         {
+           if (!TREE_CONSTANT (arg))
+             {
+@@ -3321,15 +3350,15 @@
+       && TREE_CODE (TREE_TYPE (otype)) != VOID_TYPE
+       && TREE_CODE (TREE_TYPE (otype)) != FUNCTION_TYPE
+       && TYPE_ALIGN (TREE_TYPE (type)) > TYPE_ALIGN (TREE_TYPE (otype)))
+-    warning ("cast increases required alignment of target type");
++    gpc_warning ("cast increases required alignment of target type");
+ 
+   if (TYPE_PRECISION (type) != TYPE_PRECISION (otype) && !TREE_CONSTANT (value))
+     {
+       if (TREE_CODE (type) == INTEGER_TYPE && TREE_CODE (otype) == POINTER_TYPE)
+-        warning ("cast from pointer to integer of different size");
++        gpc_warning ("cast from pointer to integer of different size");
+       if (TREE_CODE (type) == POINTER_TYPE && TREE_CODE (otype) == INTEGER_TYPE
+           && TREE_CODE (value) != PLUS_EXPR && TREE_CODE (value) != MINUS_EXPR)
+-        warning ("cast to pointer from integer of different size");
++        gpc_warning ("cast to pointer from integer of different size");
+     }
+ 
+   ovalue = value;
+@@ -3372,7 +3401,7 @@
+       if (TREE_CODE (otype) != VOID_TYPE
+           && TREE_CODE (type) != VOID_TYPE
+           && !tree_int_cst_equal (TYPE_SIZE (otype), TYPE_SIZE (type)))
+-        warning ("cast to type of different size");
++        gpc_warning ("cast to type of different size");
+       /* @@ GPC allows `@'...'' as an extension, but we don't want that here. */
+       if (TREE_CODE (value) == STRING_CST)
+         error ("reference expected, value given");
+@@ -3784,7 +3813,7 @@
+           return error_mark_node;
+         }
+       if (co->warn_object_assignment)
+-        warning ("assignment between objects");
++        gpc_warning ("assignment between objects");
+ 
+       while (TREE_CODE (l) == NOP_EXPR
+              || TREE_CODE (l) == CONVERT_EXPR
+@@ -3794,7 +3823,7 @@
+           && TREE_CODE (l) != PARM_DECL
+           && TREE_CODE (l) != COMPONENT_REF
+           && TREE_CODE (l) != ARRAY_REF)
+-        warning ("left-hand side of object assignment is polymorphic");
++        gpc_warning ("left-hand side of object assignment is polymorphic");
+ 
+       /* The following code assumes that the VMT pointer is the first field.
+          This is always the case in GPC. If this ever changes, the code must
+@@ -3811,7 +3840,7 @@
+       if (!field)
+         {
+           if (!is_init)
+-            warning ("assignment of object with no fields has no effect");
++            gpc_warning ("assignment of object with no fields has no effect");
+           return error_mark_node;
+         }
+       lastfield = tree_last (field);
+@@ -3940,7 +3969,7 @@
+           && TREE_CODE (TREE_TYPE (TREE_TYPE (lhs))) != VOID_TYPE
+           && TREE_CODE (TREE_TYPE (TREE_TYPE (lhs))) != FUNCTION_TYPE
+           && TYPE_ALIGN (TREE_TYPE (TREE_TYPE (inner_lhs))) > TYPE_ALIGN (TREE_TYPE (TREE_TYPE (lhs))))
+-        warning ("lhs cast decreases required alignment of target type");
++        gpc_warning ("lhs cast decreases required alignment of target type");
+ 
+       return build_modify_expr (inner_lhs, NOP_EXPR, convert (TREE_TYPE (inner_lhs), newrhs));
+     }
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gbe.h gpc/p/gbe.h
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gbe.h	2006-03-03 20:14:31.000000000 +0100
++++ gpc/p/gbe.h	2006-04-06 03:35:49.000000000 +0200
+@@ -119,7 +119,7 @@
+ #define CONCAT2(a,b) a##b
+ #define STRINGX(s) #s
+ #define lineno input_line
+-#define warning_with_decl(x, y) (warning ("%H" y, &DECL_SOURCE_LOCATION (x), \
++#define warning_with_decl(x, y) (gpc_warning ("%H" y, &DECL_SOURCE_LOCATION (x), \
+         DECL_NAME (x) ? IDENTIFIER_POINTER (DECL_NAME (x)) : NULL))
+ #define error_with_decl(x, y) (error ("%H" y, &DECL_SOURCE_LOCATION (x), \
+         DECL_NAME (x) ? IDENTIFIER_POINTER (DECL_NAME (x)) : NULL))
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gpc-lex.c gpc/p/gpc-lex.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gpc-lex.c	2006-03-03 20:14:31.000000000 +0100
++++ gpc/p/gpc-lex.c	2006-04-06 03:35:49.000000000 +0200
+@@ -172,19 +172,19 @@
+         return 0;
+       else if (Message && co->warn_mixed_comments)
+         {
+-          warning ("comments starting with `(*' and ending with `}' or starting with");
+-          warning (" `{' and ending with `*)' are an obscure ISO Pascal feature");
++          gpc_warning ("comments starting with `(*' and ending with `}' or starting with");
++          gpc_warning (" `{' and ending with `*)' are an obscure ISO Pascal feature");
+         }
+       break;
+     case NestedComments:
+       if (!co->nested_comments)
+         {
+           if (co->warn_nested_comments)
+-            warning ("comment opener found within a comment");
++            gpc_warning ("comment opener found within a comment");
+           return 0;
+         }
+       else if (Message && co->warn_nested_comments)
+-        warning ("nested comments are a GPC extension");
++        gpc_warning ("nested comments are a GPC extension");
+       break;
+     case DelphiComments:
+       if (!co->delphi_comments)
+@@ -268,7 +268,7 @@
+         }
+     }
+   if (in_string)
+-    warning ("unterminated string in compiler directive");
++    gpc_warning ("unterminated string in compiler directive");
+   *q = 0;
+   process_pascal_directive (s, q - s);
+ }
+@@ -673,9 +673,9 @@
+   if (value == ';' && co->warn_semicolon)
+     switch (last_token)
+     {
+-      case p_then: warning ("`;' after `then'"); break;
+-      case p_else: warning ("`;' after `else'"); break;
+-      case p_do:   warning ("`;' after `do'");   break;
++      case p_then: gpc_warning ("`;' after `then'"); break;
++      case p_else: gpc_warning ("`;' after `else'"); break;
++      case p_do:   gpc_warning ("`;' after `do'");   break;
+     }
+   last_token = value;
+ 
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gpc.h gpc/p/gpc.h
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gpc.h	2006-03-11 00:40:51.000000000 +0100
++++ gpc/p/gpc.h	2006-04-09 03:21:18.000000000 +0200
+@@ -43,11 +43,24 @@
+ 
+ #undef USE_CPPLIB          /* Not suitable for Pascal */
+ 
++#include "gbe.h"
++
+ #ifndef GCC_3_3
+ #define GTY(x)
+ #endif
+ 
+-#include "gbe.h"
++#ifdef GCC_4_1
++#define gpc_warning warning0
++#define SET_CONSTRUCTOR_ELTS(t) TREE_OPERAND (t, 0)
++#else
++#define gpc_warning warning
++#define PASCAL_SET_CONSTRUCTOR CONSTRUCTOR
++#define SET_CONSTRUCTOR_ELTS(t) CONSTRUCTOR_ELTS (t)
++#define CONSTRUCTOR_APPEND_ELT(C, I, V) do \
++  {\
++    (C) = tree_cons ((I), (V), (C));\
++  } while (0)
++#endif
+ 
+ #ifdef GCC_4_0
+ extern tree xnon_lvalue (tree x);
+@@ -382,7 +395,9 @@
+ /* IS_EXPR_CODE_CLASS ought to work, but for CONSTRUCTORS the backend overwrites
+    this field via TREE_CST_RTL. @@@@@@@@@@ Severe backend bug! This is no fix. */
+ #define HAS_EXP_ORIGINAL_CODE_FIELD(exp) \
+-  (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (exp))) && TREE_CODE (exp) != CONSTRUCTOR)
++  (IS_EXPR_CODE_CLASS (TREE_CODE_CLASS (TREE_CODE (exp))) \
++   && TREE_CODE (exp) != CONSTRUCTOR \
++   && TREE_CODE (exp) != PASCAL_SET_CONSTRUCTOR)
+ 
+ #define IS_EXPR_OR_REF_CODE_CLASS(c) (IS_EXPR_CODE_CLASS (c) || \
+                                       c == tcc_reference)
+@@ -1374,6 +1389,7 @@
+ extern void un_initialize_block (tree, int, int);
+ extern void expand_call_statement (tree);
+ extern void expand_pascal_assignment (tree, tree);
++extern void expand_pascal_assignment2 (tree, tree, int);
+ extern tree assign_set (tree, tree);
+ extern tree assign_string (tree, const tree);
+ extern void start_main_program (void);
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gpcpp.c gpc/p/gpcpp.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/gpcpp.c	2006-02-18 14:22:58.000000000 +0100
++++ gpc/p/gpcpp.c	2006-04-06 03:35:49.000000000 +0200
+@@ -566,7 +566,7 @@
+ static U_CHAR *macarg1 (U_CHAR *, U_CHAR *, int *, int *, int *, int);
+ static int discard_comments (U_CHAR *, int, int);
+ static int change_newlines (U_CHAR *, int);
+-static void warning (const char *, ...) ATTRIBUTE_PRINTF_1;
++static void gpc_warning (const char *, ...) ATTRIBUTE_PRINTF_1;
+ static void error (const char *, ...) ATTRIBUTE_PRINTF_1;
+ static void verror (const char *, va_list);
+ static void error_from_errno (const char *);
+@@ -1348,8 +1348,8 @@
+ {
+   if (warn_mixed_comments && !inhibit_warnings)
+     {
+-      warning ("comments starting with `(*' and ending with `}' or starting with");
+-      warning (" `{' and ending with `*)' are an obscure ISO Pascal feature");
++      gpc_warning ("comments starting with `(*' and ending with `}' or starting with");
++      gpc_warning (" `{' and ending with `*)' are an obscure ISO Pascal feature");
+     }
+ }
+ 
+@@ -1357,7 +1357,7 @@
+ warn_nested_comment (void)
+ {
+   if (warn_nested_comments && !inhibit_warnings)
+-    warning (nested_comments ? "nested comments are a GPC extension" : "comment opener found within comment");
++    gpc_warning (nested_comments ? "nested comments are a GPC extension" : "comment opener found within comment");
+ }
+ 
+ /* Skip the (non-`//') comment starting at bp, handling C, Pascal,
+@@ -1550,7 +1550,7 @@
+       if (!ip->fname) {
+             /* note BP character constants */
+         if (ip->buf != beg_of_line && ((*ibp < '0' || *ibp > '9') && *ibp != '$'))
+-          warning ("preprocessing directive not recognized within macro arg");
++          gpc_warning ("preprocessing directive not recognized within macro arg");
+         goto randomchar;
+       }
+       if (ident_length)
+@@ -2438,14 +2438,14 @@
+       bp++;
+     } else if (*bp == '{') {
+       if (bp[1] == '$')
+-        warning ("ignoring Pascal style directive within C style directive");
++        gpc_warning ("ignoring Pascal style directive within C style directive");
+       ip->bufp = bp + 1;
+       skip_to_end_of_comment (ip, &ip->lineno, '}');
+       bp = ip->bufp;
+     } else if ((*bp == '\\') && bp[1] == '\n') {
+     } else if (IS_COMMENT_START (bp)) {
+       if (bp[1] == '*' && bp[2] == '$')
+-        warning ("ignoring Pascal style directive within C style directive");
++        gpc_warning ("ignoring Pascal style directive within C style directive");
+       ip->bufp = bp + 2;
+       skip_to_end_of_comment (ip, &ip->lineno, 0);
+       bp = ip->bufp;
+@@ -2567,7 +2567,7 @@
+             U_CHAR *obp = bp - 1;
+             if (*bp == '$')
+               {
+-                warning ("ignoring Pascal style directive within C style directive");
++                gpc_warning ("ignoring Pascal style directive within C style directive");
+                 *bp = ' ';
+               }
+             ip->bufp = bp;
+@@ -2591,7 +2591,7 @@
+             U_CHAR *obp = bp - 1;
+             if (*bp == '*' && bp[1] == '$')
+               {
+-                warning ("ignoring Pascal style directive within C style directive");
++                gpc_warning ("ignoring Pascal style directive within C style directive");
+                 bp[1] = ' ';
+               }
+             ip->bufp = bp + 1;
+@@ -2751,12 +2751,12 @@
+          conditionals. So, just don't allow such things ... */
+       if (*p == '{' && p[1] == '$')
+         {
+-          warning ("ignoring compiler directive within another directive");
++          gpc_warning ("ignoring compiler directive within another directive");
+           p[1] = ' ';
+         }
+       if (*p == '(' && p[1] == '*' && p[2] == '$')
+         {
+-          warning ("ignoring compiler directive within another directive");
++          gpc_warning ("ignoring compiler directive within another directive");
+           p[2] = ' ';
+         }
+       if (IS_COMMENT_START2 (p))
+@@ -3353,7 +3353,7 @@
+       f = open (fname, O_RDONLY, 0666);
+ #ifdef EACCES
+       if (f == -1 && errno == EACCES)
+-        warning ("header file %s exists, but is not readable", fname);
++        gpc_warning ("header file %s exists, but is not readable", fname);
+ #endif
+       if (f >= 0)
+         break;
+@@ -3540,7 +3540,7 @@
+           bp++;
+           SKIP_WHITE_SPACE (bp);
+         } else
+-          warning ("missing white space after `$define %.*s'",
++          gpc_warning ("missing white space after `$define %.*s'",
+                    sym_length, symname);
+       }
+     /* Now everything from bp before limit is the definition. */
+@@ -3992,7 +3992,7 @@
+     /* If we are generating additional info for debugging (with -g) we
+        need to pass through all effective #undef directives. */
+     if (hp->type != T_MACRO)
+-      warning ("undefining `%s'", hp->name);
++      gpc_warning ("undefining `%s'", hp->name);
+     delete_macro (hp);
+   }
+   if (pedantic) {
+@@ -4030,7 +4030,7 @@
+   memcpy ((char *) copy, (char *) buf, length);
+   copy[length] = 0;
+   SKIP_WHITE_SPACE (copy);
+-  warning ("#warning %s", copy);
++  gpc_warning ("#gpc_warning %s", copy);
+   return 0;
+ }
+ 
+@@ -5711,7 +5711,7 @@
+ 
+ /* Print warning. */
+ static void
+-warning (const char *msg, ...)
++gpc_warning (const char *msg, ...)
+ {
+   va_list args;
+   va_start (args, msg);
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/lang.c gpc/p/lang.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/lang.c	2006-03-24 02:47:15.000000000 +0100
++++ gpc/p/lang.c	2006-04-06 03:35:49.000000000 +0200
+@@ -178,7 +178,7 @@
+         res = build (COMPOUND_EXPR, TREE_TYPE (res),
+                        current_statement_list, res);
+         current_statement_list = save_statement_list;
+-        unshare_all_trees (res);
++        res = unshare_expr (res);
+       }
+       break;
+ 
+@@ -200,15 +200,16 @@
+           DECL_INITIAL (new_var) = TREE_OPERAND (t, 0);
+ 
+           TREE_OPERAND (t, 0) = new_var;
++          recompute_tree_invarant_for_addr_expr (t);
+           return GS_ALL_DONE;
+         }
+       return GS_UNHANDLED;
+ 
+-    case CONSTRUCTOR:
++    case PASCAL_SET_CONSTRUCTOR:
+       if (TREE_CODE (TREE_TYPE (t)) == SET_TYPE)
+         {
+           tree type = TREE_TYPE (t);
+-          tree elt = CONSTRUCTOR_ELTS (t);
++          tree elt = SET_CONSTRUCTOR_ELTS (t);
+           tree domain = TYPE_DOMAIN (type);
+           tree domain_min = convert (sbitsizetype, TYPE_MIN_VALUE (domain));
+           tree domain_max = convert (sbitsizetype, TYPE_MAX_VALUE (domain));
+@@ -690,6 +691,7 @@
+ #define flag_objc 0
+ #define flag_isoc99 0
+ #define rs6000_cpu_cpp_builtins(foo)
++#define darwin_cpp_builtins(foo)
+ #endif
+ 
+ #ifdef GCC_3_4
+@@ -1204,7 +1206,7 @@
+     DECL_COMMON (*node) = 0;
+   else
+     {
+-      warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
++      gpc_warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+       *no_add_attrs = true;
+     }
+ 
+@@ -1221,7 +1223,7 @@
+     DECL_COMMON (*node) = 1;
+   else
+     {
+-      warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
++      gpc_warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+       *no_add_attrs = true;
+     }
+ 
+@@ -1247,7 +1249,7 @@
+                              TREE_READONLY (TREE_TYPE (type)), 1));
+   else
+     {
+-      warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
++      gpc_warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+       *no_add_attrs = true;
+     }
+ 
+@@ -1272,7 +1274,7 @@
+         TREE_USED (decl) = 1;
+       else
+         {
+-          warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
++          gpc_warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+           *no_add_attrs = true;
+         }
+     }
+@@ -1305,7 +1307,7 @@
+                              TREE_THIS_VOLATILE (TREE_TYPE (type))));
+   else
+     {
+-      warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
++      gpc_warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+       *no_add_attrs = true;
+     }
+ 
+@@ -1491,7 +1493,7 @@
+     }
+   else
+     {
+-      warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
++      gpc_warning ("`%s' attribute ignored", IDENTIFIER_POINTER (name));
+       *no_add_attrs = true;
+     }
+ 
+@@ -1563,7 +1565,10 @@
+ #define LANG_HOOKS_TYPE_FOR_MODE type_for_mode
+ 
+ #define LANG_HOOKS_MARK_ADDRESSABLE pascal_mark_addressable
++
++#ifndef GCC_4_1
+ #define LANG_HOOKS_TRUTHVALUE_CONVERSION truthvalue_conversion
++#endif
+ 
+ #undef LANG_HOOKS_DUP_LANG_SPECIFIC_DECL
+ #define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL copy_decl_lang_specific
+@@ -1588,6 +1593,44 @@
+ #undef LANG_HOOKS_TYPES_COMPATIBLE_P
+ #define LANG_HOOKS_TYPES_COMPATIBLE_P pascal_types_compatible_p
+ 
++#ifdef GCC_4_1
++#undef LANG_HOOKS_INIT_TS
++#define LANG_HOOKS_INIT_TS pascal_init_ts
++#undef LANG_HOOKS_EXPAND_CONSTANT
++#define LANG_HOOKS_EXPAND_CONSTANT pascal_expand_constant
++
++static tree
++pascal_expand_constant (tree t)
++{
++  tree nt;
++  if (TREE_CODE (t) == PASCAL_SET_CONSTRUCTOR)
++    {
++      HOST_WIDE_INT len = int_size_in_bytes (TREE_TYPE (t));
++      char *tmp = xmalloc (len);
++      if (!get_set_constructor_bytes (t, (unsigned char *) tmp, len))
++        {
++          nt = build_string (len, tmp);
++          gcc_assert (TREE_INT_CST_LOW (TYPE_SIZE (char_type_node)) == 8);
++          TREE_TYPE (nt) = build_simple_array_type (char_type_node,
++                              build_index_type (build_int_2 (len, 0)));
++          t = build1 (VIEW_CONVERT_EXPR, TREE_TYPE (t), nt);
++        }
++    }
++  return t;
++}
++
++static void
++pascal_init_ts (void)
++{
++  tree_contains_struct[NAMESPACE_DECL][TS_DECL_COMMON] = 1;
++  tree_contains_struct[OPERATOR_DECL][TS_DECL_COMMON] = 1;
++  tree_contains_struct[NAMESPACE_DECL][TS_DECL_MINIMAL] = 1;
++  tree_contains_struct[OPERATOR_DECL][TS_DECL_MINIMAL] = 1;
++}
++
++#endif
++
++
+ int 
+ pascal_types_compatible_p (tree t1, tree t2)
+ {
+@@ -1763,14 +1806,14 @@
+           if (TYPE_P (node))
+             *anode = type = build_type_copy (type);
+           if (!valid_machine_attribute (name, args, decl, type))
+-            warning ("`%s' attribute directive ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute directive ignored", IDENTIFIER_NAME (name));
+           else if (decl)
+             type = TREE_TYPE (decl);
+           continue;
+         }
+       else if (attrtab[i].decl_req && !decl)
+         {
+-          warning ("`%s' attribute does not apply to types", IDENTIFIER_NAME (name));
++          gpc_warning ("`%s' attribute does not apply to types", IDENTIFIER_NAME (name));
+           continue;
+         }
+       else if (list_length (args) < attrtab[i].min || list_length (args) > attrtab[i].max)
+@@ -1787,14 +1830,14 @@
+           if (TREE_CODE (decl) == VAR_DECL)
+             DECL_COMMON (decl) = 0;
+           else
+-            warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
+           break;
+ 
+         case A_COMMON:
+           if (TREE_CODE (decl) == VAR_DECL)
+             DECL_COMMON (decl) = 1;
+           else
+-            warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
+           break;
+ 
+         case A_NORETURN:
+@@ -1804,7 +1847,7 @@
+             TREE_TYPE (decl) = type = build_pointer_type (p_build_type_variant (TREE_TYPE (type),
+               TREE_READONLY (TREE_TYPE (type)), 1));
+           else
+-            warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
+           break;
+ 
+         case A_UNUSED:
+@@ -1817,7 +1860,7 @@
+                    || TREE_CODE (decl) == FUNCTION_DECL)
+             TREE_USED (decl) = 1;
+           else
+-            warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
+           break;
+ 
+         case A_CONST:
+@@ -1827,7 +1870,7 @@
+             TREE_TYPE (decl) = type = build_pointer_type (p_build_type_variant (TREE_TYPE (type),
+               1, TREE_THIS_VOLATILE (TREE_TYPE (type))));
+           else
+-            warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
+           break;
+ 
+         case A_SECTION:
+@@ -1905,7 +1948,7 @@
+               assemble_alias (decl, id);
+             }
+           else
+-            warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
++            gpc_warning ("`%s' attribute ignored", IDENTIFIER_NAME (name));
+           break;
+       }
+     }
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/module.c gpc/p/module.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/module.c	2006-03-24 20:09:49.000000000 +0100
++++ gpc/p/module.c	2006-04-11 01:27:35.459338992 +0200
+@@ -38,6 +38,12 @@
+ #define HOST_PTR_PRINTF_CAST_TYPE HOST_WIDE_INT
+ #endif
+ 
++#ifdef GCC_4_1
++#define GPC_HOST_PTR_PRINTF "%p"
++#else
++#define GPC_HOST_PTR_PRINTF HOST_PTR_PRINTF
++#endif
++
+ #ifdef EGCS97
+ 
+ /* By default there is no special suffix for target executables.  */
+@@ -92,7 +98,7 @@
+ 
+ #endif
+ 
+-typedef struct
++typedef struct MEMFILE
+ {
+   char *filename;
+   size_t size, curpos;
+@@ -283,6 +289,8 @@
+ /* Options to pass to child gpc processes in automake. */
+ static char *automake_gpc_options = NULL;
+ 
++enum itab_state { ITAB_LOADING, ITAB_COMPLETE };
++
+ /* A table holding the nodes imported from all GPI files
+    together with their UIDs, so duplicates can be identified. */
+ struct interface_table_t GTY(())
+@@ -294,6 +302,9 @@
+   tree initializers;  /* Same as in module_t. Predefined interfaces
+                          (StandardInput etc.) have no initializer. */
+   int count;
++  struct MEMFILE * GTY((skip(""))) infile; /* Input file during reading */
++  gpi_int * GTY((skip(""))) offsets; /* Offsets of node data during reading */
++  enum itab_state state;
+   tree * GTY((length ("%h.count"))) nodes;
+   int * GTY((length ("%h.count"))) hashlist_next;
+   int hash_table[MAX_HASH_TABLE];
+@@ -393,7 +404,7 @@
+                        IDENTIFIER_NAME (id),
+                        current_module->main_program ? "program" : "module");
+             else
+-              warning (
++              gpc_warning (
+                 "identifier `%s' in %s heading is not a variable of file type",
+                 IDENTIFIER_NAME (id),
+                 current_module->main_program ? "program" : "module");
+@@ -467,7 +478,7 @@
+   if (!id)
+     {
+       if (!co->pascal_dialect)
+-        warning ("missing program header");
++        gpc_warning ("missing program header");
+       else  /* BP does not even warn */
+         chk_dialect ("programs without program header are", B_D_PASCAL);
+       id = get_identifier ("noname");
+@@ -544,8 +555,8 @@
+     create_gpi_files ();
+   if (co->interface_only)
+     exit_compilation ();
+-  if (co->implementation_only)
+-    {
++//  if (co->implementation_only)
++//    {
+       /* Make sure that interface nodes keep their identity by reloading the
+          GPI files previously created (presumably) with `--interface_only'. This
+          is the same as with separate interface and implementation modules. */
+@@ -555,7 +566,7 @@
+       current_module = m;
+       pushlevel (0);
+       load_own_interface (0);
+-    }
++//    }
+   current_module->implementation = 1;
+ }
+ 
+@@ -563,7 +574,7 @@
+ finalize_module (int implementation_follows)
+ {
+   if (co->implementation_only && co->automake_level)
+-    warning ("`--automake' together with `--implementation-only' can cause problems");
++    gpc_warning ("`--automake' together with `--implementation-only' can cause problems");
+   if (errorcount || sorrycount)
+     exit_compilation ();
+   if (!implementation_follows /* && !co->implementation_only */)
+@@ -742,7 +753,7 @@
+           if (*p == ')')
+             p++;
+           else
+-            warning ("missing `)' in `--uses' parameter");
++            gpc_warning ("missing `)' in `--uses' parameter");
+           file_name = build_string_constant (buffer, q - buffer, 0);
+         }
+       else
+@@ -755,7 +766,7 @@
+                   || (*p == '_')))
+         {
+           if (*p != ',')
+-            warning ("missing `,' in `--uses' parameter");
++            gpc_warning ("missing `,' in `--uses' parameter");
+           p++;
+         }
+     }
+@@ -1862,9 +1873,11 @@
+     {
+       tree t = rb.nodes[n];
+       if (t && (TREE_CODE (t) == FUNCTION_DECL || (TREE_CODE (t) == VAR_DECL))
+-/* #ifndef GCC_4_0 */
++#ifndef GCC_4_0 
+           && !DECL_RTL_SET_P (t)
+-/* #endif */
++#else
++          && !PASCAL_DECL_IMPORTED (t)
++#endif
+           )
+         {
+           if (!module_interface)
+@@ -1878,26 +1891,19 @@
+                 DECL_INITIAL (t) = NULL_TREE;
+ #endif
+             }
+-#if 0
++#ifdef GCC_4_0
+           else
+             {
+-              mark_decl_referenced (t);
++              if (TREE_CODE (t) == VAR_DECL)
++                rest_of_decl_compilation (t, 1, 0);
++//              mark_decl_referenced (t);
+             }
+ #endif
+           PASCAL_DECL_WEAK (t) = 0;
+           PASCAL_DECL_IMPORTED (t) = 1;
+-          if (module_interface && TREE_CODE (t) == VAR_DECL
+-              && DECL_INITIAL (t))
+-            {
+-#if 0
+-              fprintf (stderr, "DECL_INITIAL (%p)\n", t);
+-              debug_tree (t);
+-              debug_tree (DECL_INITIAL (t));
+-#endif
+-            }
+ #ifdef GCC_4_0
+           /* @@@@@@@ Otherwise we have problems with vmt */
+-          rest_of_decl_compilation (t, 1, 0);
++//          rest_of_decl_compilation (t, 1, 0);
+ #else
+           rest_of_decl_compilation (t, NULL, 1, 1);
+ #endif
+@@ -1968,8 +1974,12 @@
+ #else
+ #define DECL_FLAGS_SIZE 6
+ #endif
++#ifndef GCC_4_1
+ #define DECL_EXTRA_STORED(t) (t->decl.u1.i)
+ #else
++#define DECL_EXTRA_STORED(t) (t->decl_common.u1.i)
++#endif
++#else
+ #ifdef EGCS
+ #define DECL_FLAGS_SIZE 5
+ #else
+@@ -2049,7 +2059,7 @@
+       if (code == INTERFACE_NAME_NODE)
+         {
+           fprintf (stderr, " <interface_name_node ");
+-          fprintf (stderr, HOST_PTR_PRINTF, (HOST_PTR_PRINTF_CAST_TYPE) t);
++          fprintf (stderr, GPC_HOST_PTR_PRINTF, (HOST_PTR_PRINTF_CAST_TYPE) t);
+           fprintf (stderr, " %s module %s checksum %lu>\n",
+                    IDENTIFIER_NAME (INTERFACE_TABLE (t)->interface_name),
+                    IDENTIFIER_NAME (INTERFACE_TABLE (t)->module_name),
+@@ -2078,7 +2088,10 @@
+         gpi_int n;
+         store_length ((&DECL_SIZE (t)) + 1, DECL_FLAGS_SIZE);
+         STORE_ANY (DECL_EXTRA_STORED (t));
+-        store_node (DECL_NAME (t));
++#ifdef  GCC_4_1
++        if (CODE_CONTAINS_STRUCT (code, TS_DECL_MINIMAL))
++#endif
++          store_node (DECL_NAME (t));
+         store_string (DECL_SOURCE_FILE (t));
+         n = DECL_SOURCE_LINE (t);
+         STORE_ANY (n);
+@@ -2088,8 +2101,13 @@
+ #ifdef EGCS97
+         store_node (DECL_SIZE_UNIT (t));
+ #endif
+-        n = DECL_ALIGN (t);
+-        STORE_ANY (n);
++#ifdef GCC_4_1
++        if (code != FUNCTION_DECL)
++#endif
++          {
++            n = DECL_ALIGN (t);
++            STORE_ANY (n);
++          }
+         break;
+       }
+     case tcc_constant:
+@@ -2343,6 +2361,24 @@
+       store_node (TREE_TYPE (t));
+       break;
+ 
++#ifdef GCC_4_1
++    case CONSTRUCTOR:
++      {
++        VEC(constructor_elt,gc) *elts = CONSTRUCTOR_ELTS (t);
++        tree index, value;
++        unsigned HOST_WIDE_INT ix;
++        store_node (TREE_TYPE (t));
++        ix = VEC_length (constructor_elt, elts);
++        STORE_ANY (ix);
++        FOR_EACH_CONSTRUCTOR_ELT (elts, ix, index, value)
++          {
++            store_node (index);
++            store_node (value);
++          }
++      }
++      break;
++#endif
++      
+     default:
+ #ifdef GCC_4_0
+       gcc_assert (class_done);
+@@ -2590,7 +2626,10 @@
+         char *s;
+         LOAD_LENGTH ((&DECL_SIZE (t)) + 1, DECL_FLAGS_SIZE);
+         LOAD_ANY (DECL_EXTRA_STORED (t));
+-        DECL_NAME (t) = load_node ();
++#ifdef  GCC_4_1
++        if (CODE_CONTAINS_STRUCT (code, TS_DECL_MINIMAL))
++#endif
++          DECL_NAME (t) = load_node ();
+         s = load_string (rb.infile);
+         DECL_SOURCE_FILE (t) = PERMANENT_STRING (s);
+         free (s);
+@@ -2602,9 +2641,17 @@
+ #ifdef EGCS97
+         DECL_SIZE_UNIT (t) = load_node ();
+ #endif
+-        LOAD_ANY (n);
+-        DECL_ALIGN (t) = n;
+-        DECL_IN_SYSTEM_HEADER (t) = 1;
++#ifdef GCC_4_1
++        if (code != FUNCTION_DECL)
++#endif
++          {
++            LOAD_ANY (n);
++            DECL_ALIGN (t) = n;
++          }
++#ifdef GCC_4_1
++        if (CODE_CONTAINS_STRUCT (code, TS_DECL_WITH_VIS))
++#endif
++          DECL_IN_SYSTEM_HEADER (t) = 1;
+         break;
+       }
+     case tcc_constant:
+@@ -2649,7 +2696,7 @@
+         if (co->debug_gpi)
+           {
+             fprintf (stderr, "GPI loaded <%i>:\n <interface_name_node ", (int) uid);
+-            fprintf (stderr, HOST_PTR_PRINTF, (HOST_PTR_PRINTF_CAST_TYPE) t);
++            fprintf (stderr, GPC_HOST_PTR_PRINTF, (HOST_PTR_PRINTF_CAST_TYPE) t);
+             fprintf (stderr, " %s module %s checksum %lu>\n",
+                      IDENTIFIER_NAME (i),
+                      IDENTIFIER_NAME (m),
+@@ -2832,7 +2879,9 @@
+       TREE_TYPE (t) = load_node ();
+       DECL_ARG_TYPE (t) = load_node ();
+       DECL_CONTEXT (t) = load_node ();
++#ifndef GCC_4_1
+       SET_DECL_ASSEMBLER_NAME (t, DECL_NAME (t));
++#endif
+       break;
+ 
+     case FIELD_DECL:
+@@ -2895,6 +2944,27 @@
+       TREE_TYPE (t) = load_node ();
+       break;
+ 
++#ifdef GCC_4_1
++    case CONSTRUCTOR:
++      {
++        VEC(constructor_elt,gc) *elts = 0;
++        tree index, value;
++        unsigned HOST_WIDE_INT ix;
++        TREE_TYPE (t) = load_node ();
++        LOAD_ANY (ix);
++        while (ix > 0)
++          {
++            index = load_node ();
++            value = load_node ();
++            CONSTRUCTOR_APPEND_ELT (elts, index, value);
++            ix--;
++          }
++        CONSTRUCTOR_ELTS (t) = elts;
++      }
++      break;
++#endif
++
++
+     default:
+       break;
+   }
+@@ -2962,7 +3032,7 @@
+           for (q = n; *q; q++)
+             *q = TOLOWER (*q);
+           if (strcmp (f, n) && strcmp (n + strlen (n) - 4, "-all"))
+-            warning ("interface `%s' in file name `%s'", IDENTIFIER_NAME (name), plain_input_filename);
++            gpc_warning ("interface `%s' in file name `%s'", IDENTIFIER_NAME (name), plain_input_filename);
+         }
+ 
+       /* Store names of interfaces imported by this module */
+@@ -3207,7 +3277,7 @@
+                     if (!itab_check_gpi_checksum (interface, checksum, 0))
+                       {
+                         if (co->debug_automake)
+-                          warning ("`%s' must be recompiled because of checksum mismatch in %s", name, str);
++                          gpc_warning ("`%s' must be recompiled because of checksum mismatch in %s", name, str);
+                         must_recompile = 1;
+                       }
+                     for (imported = current_module->imports; imported; imported = TREE_CHAIN (imported))
+@@ -3278,7 +3348,7 @@
+                     }
+ #if 0
+                   else if (implementation_flag)
+-                    warning ("duplicate implementation flag in GPI file `%s'", name);
++                    gpc_warning ("duplicate implementation flag in GPI file `%s'", name);
+ #endif
+                   implementation_flag = 1;
+                   break;
+@@ -3335,7 +3405,7 @@
+         }
+       if (errstr)
+         {
+-          warning (errstr, name);
++          gpc_warning (errstr, name);
+           module_filename = NULL;
+           must_recompile = 1;
+         }
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/objects.c gpc/p/objects.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/objects.c	2006-03-24 06:03:26.000000000 +0100
++++ gpc/p/objects.c	2006-04-09 21:28:12.000000000 +0200
+@@ -455,7 +455,7 @@
+             if (IDENTIFIER_IS_BUILT_IN (TREE_VALUE (cp), p_virtual))
+               {
+                 if (co->methods_always_virtual)
+-                  warning ("explicit `virtual' given with `--methods-always-virtual'");
++                  gpc_warning ("explicit `virtual' given with `--methods-always-virtual'");
+                 virtual = 1;
+                 nv++;
+                 if (TREE_PURPOSE (cp))
+@@ -568,7 +568,7 @@
+             if (PEDANTIC (B_D_PASCAL))  /* forbidden by OOE */
+               error ("%s `%s' conflicts with ancestor type name", i ? "method" : "field", IDENTIFIER_NAME (DECL_NAME (field)));
+             else
+-              warning ("%s `%s' conflicts with ancestor type name", i ? "method" : "field", IDENTIFIER_NAME (DECL_NAME (field)));
++              gpc_warning ("%s `%s' conflicts with ancestor type name", i ? "method" : "field", IDENTIFIER_NAME (DECL_NAME (field)));
+           }
+       }
+ 
+@@ -637,7 +637,7 @@
+                       if (pedantic || !(co->pascal_dialect & B_D_PASCAL))
+                         error ("%s method `%s', overrides %s method", descr[p2], IDENTIFIER_NAME (DECL_NAME (*dm)), descr[p1]);
+                       else
+-                        warning ("%s method `%s', overrides %s method", descr[p2], IDENTIFIER_NAME (DECL_NAME (*dm)), descr[p1]);
++                        gpc_warning ("%s method `%s', overrides %s method", descr[p2], IDENTIFIER_NAME (DECL_NAME (*dm)), descr[p1]);
+                     }
+                   if (PASCAL_VIRTUAL_METHOD (*pm))
+                     {
+@@ -648,12 +648,12 @@
+                         }
+                       if (PASCAL_TYPE_IOCRITICAL (TREE_TYPE (*dm))
+                           && !PASCAL_TYPE_IOCRITICAL (TREE_TYPE (*pm)))
+-                        warning ("iocritical virtual method overrides non-iocritical one");
++                        gpc_warning ("iocritical virtual method overrides non-iocritical one");
+                     }
+                   if (PASCAL_VIRTUAL_METHOD (*pm) && !PASCAL_VIRTUAL_METHOD (*dm))
+                     {
+                       /* Overridden virtual methods must be virtual. */
+-                      warning ("method `%s' is virtual", IDENTIFIER_NAME (DECL_NAME (*dm)));
++                      gpc_warning ("method `%s' is virtual", IDENTIFIER_NAME (DECL_NAME (*dm)));
+                       PASCAL_VIRTUAL_METHOD (*dm) = 1;
+                     }
+                   /* If a virtual method overrides a non-virtual one, we must
+@@ -662,7 +662,7 @@
+                   if (!PASCAL_VIRTUAL_METHOD (*pm) && PASCAL_VIRTUAL_METHOD (*dm))
+                     {
+                       if (PEDANTIC (B_D_PASCAL) || co->pascal_dialect == 0)
+-                        warning ("virtual method overrides non-virtual one");
++                        gpc_warning ("virtual method overrides non-virtual one");
+                       *pm = TREE_CHAIN (*pm);
+                       continue;
+                     }
+@@ -782,8 +782,8 @@
+                   TYPE_LANG_CODE (type) = PASCAL_LANG_ABSTRACT_OBJECT;
+                   if (co->warn_implicit_abstract)
+                     {
+-                      warning ("object type `%s' is implicitly abstract because", object_name);
+-                      warning (" it contains abstract method `%s'", IDENTIFIER_NAME (DECL_NAME (field)));
++                      gpc_warning ("object type `%s' is implicitly abstract because", object_name);
++                      gpc_warning (" it contains abstract method `%s'", IDENTIFIER_NAME (DECL_NAME (field)));
+                     }
+                 }
+               method = convert (ptr_type_node, integer_zero_node);
+@@ -800,12 +800,12 @@
+       /* Set `Size' and `NegatedSize' to 0 for abstract objects */
+       TREE_VALUE (vmt_entry) = TREE_VALUE (TREE_CHAIN (vmt_entry)) = size_zero_node;
+       if (co->warn_inherited_abstract && parent && TYPE_LANG_CODE (parent) != PASCAL_LANG_ABSTRACT_OBJECT)
+-        warning ("abstract object type `%s' inherits from non-abstract type `%s'",
++        gpc_warning ("abstract object type `%s' inherits from non-abstract type `%s'",
+                  object_name, IDENTIFIER_NAME (DECL_NAME (TYPE_NAME (parent))));
+     }
+   else if (has_virtual_method && !has_constructor && !is_class
+            /* && (co->pascal_dialect & B_D_PASCAL) */)
+-    warning ("object type has virtual method, but no constructor");
++    gpc_warning ("object type has virtual method, but no constructor");
+ 
+   /* Now create a global var declaration (also for abstract types,
+      for `is', `as' and explicit parent type access via VMT).
+@@ -816,13 +816,14 @@
+     build_tree_list (NULL_TREE, vmt_entry), VQ_IMPLICIT | VQ_CONST |
+       (current_module->implementation ? VQ_STATIC : 0));
+ 
+-#ifdef GCC_4_0
++#if 0 /* def GCC_4_0 */
+   if (current_module->implementation || !(co->interface_only))
+     {
+       mark_decl_referenced (TYPE_LANG_VMT_VAR (type));
+       make_decl_rtl (TYPE_LANG_VMT_VAR (type));
+     }
+ #endif
++
+   /* Attach VMT_TYPE to the implicit VMT field of the object.
+      (Until here it still has the inherited type or ^void type.)
+      We also need this for abstract types because their methods
+@@ -977,16 +978,16 @@
+         {
+           if (op == p_is)
+             {
+-              warning ("`is' always yields `True' if the right operand");
+-              warning (" is the declared type of the left operand.");
++              gpc_warning ("`is' always yields `True' if the right operand");
++              gpc_warning (" is the declared type of the left operand.");
+               if (TREE_SIDE_EFFECTS (left))
+-                warning (" Operand with side-effects is not evaluated.");
++                gpc_warning (" Operand with side-effects is not evaluated.");
+               return boolean_true_node;
+             }
+           else
+             {
+-              warning ("`as' has no effect if the right operand is");
+-              warning (" the declared type of the left operand");
++              gpc_warning ("`as' has no effect if the right operand is");
++              gpc_warning (" the declared type of the left operand");
+               return oleft;
+             }
+         }
+@@ -999,10 +1000,10 @@
+         {
+           if (op == p_is)
+             {
+-              warning ("`is' always yields `False' if the left operand is not");
+-              warning (" polymorphic and the right operand is not its type");
++              gpc_warning ("`is' always yields `False' if the left operand is not");
++              gpc_warning (" polymorphic and the right operand is not its type");
+               if (TREE_SIDE_EFFECTS (left))
+-                warning (" Operand with side-effects is not evaluated.");
++                gpc_warning (" Operand with side-effects is not evaluated.");
+               return boolean_false_node;
+             }
+           else
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/options.c gpc/p/options.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/options.c	2006-03-03 20:14:31.000000000 +0100
++++ gpc/p/options.c	2006-04-06 06:58:40.000000000 +0200
+@@ -308,7 +308,7 @@
+     }
+   else if (OPT ("-fdisable-debug-info"))
+     {
+-      warning ("`--disable-debug-info' is a temporary work-around; it may disappear in the future");
++      gpc_warning ("`--disable-debug-info' is a temporary work-around; it may disappear in the future");
+       if (write_symbols == SDB_DEBUG)  /* Not all debug formats like to be reset */
+         write_symbols = NO_DEBUG;
+       debug_info_level = DINFO_LEVEL_NONE;
+@@ -454,7 +454,7 @@
+     {
+       int limit = strtoint (arg, strlen (arg));
+       if (limit <= 0)
+-        warning ("invalid specified set limit %s.", arg);
++        gpc_warning ("invalid specified set limit %s.", arg);
+       else
+         co->set_limit = limit;
+     }
+@@ -682,7 +682,7 @@
+     name[--length] = 0;
+   if (length == 0)
+     {
+-      warning ("empty Pascal compiler directive");
++      gpc_warning ("empty Pascal compiler directive");
+       return 1;
+     }
+   if (length == 2 && (name[1] == '+' || name[1] == '-'))
+@@ -700,12 +700,12 @@
+           else
+             long_name = short_option->inverted_long_name;
+           if (long_name[1] == '#')
+-            warning ("directive `{$%s}' not yet implemented", name);
++            gpc_warning ("directive `{$%s}' not yet implemented", name);
+           else if (long_name[1] == '!')
+             {
+               /* BP-style directive. In BP mode, ignore it for compatibility. */
+               if (pedantic || !(co->pascal_dialect & U_B_D_PASCAL))
+-                warning ("ignoring BP directive `{$%s}' which is unnecessary in GPC", name);
++                gpc_warning ("ignoring BP directive `{$%s}' which is unnecessary in GPC", name);
+             }
+           else if (!pascal_decode_option (1, &long_name))
+             error ("internal problem: unknown short option expansion `%s'", long_name);
+@@ -808,7 +808,7 @@
+       case 'o':
+       case 's':
+         if (pedantic || !(co->pascal_dialect & U_B_D_PASCAL))
+-          warning ("ignoring BP directive `{$%s}' which is unnecessary in GPC", name);
++          gpc_warning ("ignoring BP directive `{$%s}' which is unnecessary in GPC", name);
+         return 1;
+       /* One-letter directive already handled by the preprocessor */
+       case 'i':
+@@ -929,7 +929,7 @@
+           }
+         return 1;
+     }
+-  warning ("unknown compiler directive `%s'", name);
++  gpc_warning ("unknown compiler directive `%s'", name);
+   return 1;
+ }
+ 
+@@ -1026,14 +1026,14 @@
+       if (error_flag)
+         error ("%s", buf);
+       else
+-        warning ("%s", buf);
++        gpc_warning ("%s", buf);
+       *p = ' ';
+       buf = p;  /* including the leading space */
+     }
+   if (error_flag)
+     error ("%s", buf);
+   else
+-    warning ("%s", buf);
++    gpc_warning ("%s", buf);
+ }
+ 
+ void
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/p-tree.def gpc/p/p-tree.def
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/p-tree.def	2006-03-03 20:14:31.000000000 +0100
++++ gpc/p/p-tree.def	2006-04-06 06:58:40.000000000 +0200
+@@ -36,6 +36,9 @@
+ DEFTREECODE (RANGE_CHECK_EXPR, "range_check_expr", tcc_expression, 3)
+ DEFTREECODE (IO_RANGE_CHECK_EXPR, "io_range_check_expr", tcc_expression, 3)
+ DEFTREECODE (IN_EXPR, "in_expr", tcc_binary, 2)
++#ifdef GCC_4_1
++DEFTREECODE (PASCAL_SET_CONSTRUCTOR, "pascal_set_constructor", tcc_expression, 1)
++#endif
+ #else
+ #ifdef EGCS
+ DEFTREECODE (OPERATOR_DECL, "operator_decl", 'd', 0)
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/parse.c gpc/p/parse.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/parse.c	2006-03-24 02:52:27.000000000 +0100
++++ gpc/p/parse.c	2006-04-06 05:37:44.000000000 +0200
+@@ -5214,7 +5214,7 @@
+ 
+   case 60:
+ #line 378 "parse.y"
+-    { warning ("missing semicolon"); yyerrok; ;}
++    { gpc_warning ("missing semicolon"); yyerrok; ;}
+     break;
+ 
+   case 61:
+@@ -5284,7 +5284,7 @@
+ 
+   case 81:
+ #line 436 "parse.y"
+-    { warning ("missing semicolon"); yyerrok; ;}
++    { gpc_warning ("missing semicolon"); yyerrok; ;}
+     break;
+ 
+   case 82:
+@@ -5419,7 +5419,7 @@
+ 
+   case 120:
+ #line 548 "parse.y"
+-    { warning ("missing comma"); yyerrok; ;}
++    { gpc_warning ("missing comma"); yyerrok; ;}
+     break;
+ 
+   case 121:
+@@ -5731,7 +5731,7 @@
+         tree t = build_pascal_pointer_type (make_node (LANG_TYPE));
+         PASCAL_TYPE_CLASS (t) = 1;
+         build_type_decl ((((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval.ttype), t, NULL_TREE);
+-        warning("ignored parent in Delphi forward class declaration");
++        gpc_warning ("ignored parent in Delphi forward class declaration");
+       ;}
+     break;
+ 
+@@ -6710,7 +6710,7 @@
+ #line 1528 "parse.y"
+     {
+         if (!(((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.itype) && extra_warnings)
+-          warning ("empty statement after `else'");
++          gpc_warning ("empty statement after `else'");
+         expand_end_cond ();
+       ;}
+     break;
+@@ -6849,7 +6849,7 @@
+ #line 1608 "parse.y"
+     {
+         if (!(((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval.itype) && extra_warnings)
+-          warning ("empty statement after `then'");
++          gpc_warning ("empty statement after `then'");
+       ;}
+     break;
+ 
+@@ -7988,7 +7988,7 @@
+ 
+   case 795:
+ #line 2396 "parse.y"
+-    { warning ("missing `.' at the end of program/unit/module"); ;}
++    { gpc_warning ("missing `.' at the end of program/unit/module"); ;}
+     break;
+ 
+   case 796:
+@@ -9544,7 +9544,7 @@
+ #if YYDEBUG != 0
+   yydebug = value;
+ #else
+-  warning ("YYDEBUG not defined.");
++  gpc_warning ("YYDEBUG not defined.");
+ #endif
+ }
+ 
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/parse.y gpc/p/parse.y
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/parse.y	2006-03-24 02:47:15.000000000 +0100
++++ gpc/p/parse.y	2006-04-06 03:35:49.000000000 +0200
+@@ -375,7 +375,7 @@
+   | error
+       { error ("module specifications need an export part"); }
+   | export_part_list error export_part
+-      { warning ("missing semicolon"); yyerrok; }
++      { gpc_warning ("missing semicolon"); yyerrok; }
+   | export_part_list ';' error
+       { error ("extra semicolon"); }
+   ;
+@@ -433,7 +433,7 @@
+     import_specification
+   | import_specification_list ';' import_specification
+   | import_specification_list error import_specification
+-      { warning ("missing semicolon"); yyerrok; }
++      { gpc_warning ("missing semicolon"); yyerrok; }
+   ;
+ 
+ import_specification:
+@@ -545,7 +545,7 @@
+     uses_specification
+   | uses_list ',' uses_specification
+   | uses_list error uses_specification
+-      { warning ("missing comma"); yyerrok; }
++      { gpc_warning ("missing comma"); yyerrok; }
+   ;
+ 
+ uses_specification:
+@@ -786,7 +786,7 @@
+         tree t = build_pascal_pointer_type (make_node (LANG_TYPE));
+         PASCAL_TYPE_CLASS (t) = 1;
+         build_type_decl ($1, t, NULL_TREE);
+-        warning("ignored parent in Delphi forward class declaration");
++        gpc_warning ("ignored parent in Delphi forward class declaration");
+       }
+   | new_identifier enable_lce equals p_class LEX_RANGE p_end
+       {
+@@ -1527,7 +1527,7 @@
+     pushlevel optional_statement poplevel
+       {
+         if (!$5 && extra_warnings)
+-          warning ("empty statement after `else'");
++          gpc_warning ("empty statement after `else'");
+         expand_end_cond ();
+       }
+   | p_case expression p_of
+@@ -1607,7 +1607,7 @@
+     pushlevel optional_statement poplevel
+       {
+         if (!$6 && extra_warnings)
+-          warning ("empty statement after `then'");
++          gpc_warning ("empty statement after `then'");
+       }
+   ;
+ 
+@@ -2393,7 +2393,7 @@
+ dot_or_error:
+     '.'
+   | error
+-      { warning ("missing `.' at the end of program/unit/module"); }
++      { gpc_warning ("missing `.' at the end of program/unit/module"); }
+   ;
+ 
+ null:
+@@ -2487,7 +2487,7 @@
+ #if YYDEBUG != 0
+   yydebug = value;
+ #else
+-  warning ("YYDEBUG not defined.");
++  gpc_warning ("YYDEBUG not defined.");
+ #endif
+ }
+ 
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/plant.c gpc/p/plant.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/plant.c	2006-03-24 00:51:09.000000000 +0100
++++ gpc/p/plant.c	2006-04-08 05:42:12.000000000 +0200
+@@ -285,7 +285,9 @@
+   current_function_decl = DECL_CONTEXT (the_fun);
+   cfun = NULL;
+ 
+-  if (!DECL_CONTEXT (the_fun) || PASCAL_METHOD (the_fun))
++  if (!DECL_CONTEXT (the_fun)
++      || TREE_CODE (DECL_CONTEXT (the_fun)) != FUNCTION_DECL
++         /* PASCAL_METHOD (the_fun) */)
+     {
+ //      current_function_decl = NULL_TREE;
+       current_function_decl = the_fun;
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/predef.c gpc/p/predef.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/predef.c	2006-03-24 02:47:15.000000000 +0100
++++ gpc/p/predef.c	2006-04-07 02:01:03.000000000 +0200
+@@ -1185,7 +1185,15 @@
+     case 't': if (TYPE_MAIN_VARIANT (type) != gpc_type_TimeStamp)       errstr = "argument %d to `%s' must be of type `TimeStamp'"; break;
+     case 'a': if (TYPE_MAIN_VARIANT (type) != gpc_type_BindingType)     errstr = "argument %d to `%s' must be of type `BindingType'"; break;
+     case 'x': break;  /* Untyped parameter */
+-    case '#': if (TREE_CONSTANT (val) && (TREE_CODE (val) != CONSTRUCTOR || type == empty_set_type_node)) { error ("`%s' applied to a constant", r_name); return error_mark_node; } break;  /* expression or type allowed */
++    case '#': if (TREE_CONSTANT (val)
++                  && ((TREE_CODE (val) != CONSTRUCTOR
++                       && TREE_CODE (val) != PASCAL_SET_CONSTRUCTOR)
++                      || type == empty_set_type_node))
++                {
++                  error ("`%s' applied to a constant", r_name);
++                  return error_mark_node;
++                }
++              break;  /* expression or type allowed */
+     default: gcc_unreachable ();
+   }
+   if (ISUPPER ((unsigned char) argtype))
+@@ -1552,11 +1560,12 @@
+     return NULL_TREE;
+ 
+   case p_Card:
+-    if (TREE_CODE (val) == CONSTRUCTOR && PASCAL_CONSTRUCTOR_INT_CST (val))
++    if (TREE_CODE (val) == PASCAL_SET_CONSTRUCTOR 
++        && PASCAL_CONSTRUCTOR_INT_CST (val))
+       {
+         tree e;
+         retval = integer_zero_node;
+-        for (e = CONSTRUCTOR_ELTS (val); e; e = TREE_CHAIN (e))
++        for (e = SET_CONSTRUCTOR_ELTS (val); e; e = TREE_CHAIN (e))
+           {
+             tree l = TREE_PURPOSE (e), u = TREE_VALUE (e);
+             gcc_assert (TREE_CODE (l) == INTEGER_CST && TREE_CODE (u) == INTEGER_CST);
+@@ -1568,7 +1577,8 @@
+         gcc_assert (TREE_CODE (retval) == INTEGER_CST);
+         break;
+       }
+-    if (TREE_CODE (val) == CONSTRUCTOR && TREE_CODE (TREE_TYPE (val)) == SET_TYPE)
++    if (TREE_CODE (val) == PASCAL_SET_CONSTRUCTOR
++        && TREE_CODE (TREE_TYPE (val)) == SET_TYPE)
+       {
+         val = construct_set (val, NULL_TREE, 1);
+         CHK_EM (val);
+@@ -1590,7 +1600,7 @@
+         if (co->pascal_dialect & C_E_O_PASCAL)
+           error ("argument to `%s' must be of real type", r_name);
+         else
+-          warning ("`%s' applied to integers has no effect", r_name);
++          gpc_warning ("`%s' applied to integers has no effect", r_name);
+         retval = val;
+       }
+     else
+@@ -1667,7 +1677,7 @@
+     {
+       tree arg;
+       if (argcount == 1)
+-        warning ("`%s' with only one argument has no effect", r_name);
++        gpc_warning ("`%s' with only one argument has no effect", r_name);
+       for (arg = apar; arg; arg = TREE_CHAIN (arg))
+         if (!is_string_compatible_type (TREE_VALUE (arg), 1))
+           errstr = "arguments to `%s' must be strings or chars";
+@@ -1706,7 +1716,7 @@
+   case p_Ord:
+     if (code == INTEGER_TYPE)
+       {
+-        warning ("`%s' applied to integers has no effect", r_name);
++        gpc_warning ("`%s' applied to integers has no effect", r_name);
+         retval = val;
+       }
+     else
+@@ -1739,9 +1749,9 @@
+       else if (pedantic && !contains_auto_initialized_part (type, r_num == p_Finalize))
+         {
+           if (r_num == p_Finalize)
+-            warning ("variable does not need any finalization");
++            gpc_warning ("variable does not need any finalization");
+           else
+-            warning ("variable does not need any initialization");
++            gpc_warning ("variable does not need any initialization");
+         }
+       init_any (val, r_num == p_Finalize, 0);
+       retval = error_mark_node;  /* nothing to expand anymore -- init_any does it already */
+@@ -1823,9 +1833,12 @@
+ 
+         /* (val = nil) ? 0 : strlen|Length (val) */
+         if (TYPE_MAIN_VARIANT (type) == cstring_type_node)
+-          strlength = build (COND_EXPR, integer_type_node,
+-            build_pascal_binary_op (EQ_EXPR, val, null_pointer_node), integer_zero_node,
+-            build_routine_call (strlen_routine_node, build_tree_list (NULL_TREE, val)));
++          strlength = build (COND_EXPR, pascal_integer_type_node,
++            build_pascal_binary_op (EQ_EXPR, val, null_pointer_node),
++            convert (pascal_integer_type_node, integer_zero_node),
++            convert (pascal_integer_type_node,
++              build_routine_call (strlen_routine_node, 
++                build_tree_list (NULL_TREE, val))));
+         else
+           strlength = PASCAL_STRING_LENGTH (val);
+         retval = make_new_variable ("cstring2string", build_pascal_string_schema (save_expr (strlength)));
+@@ -1860,7 +1873,7 @@
+   case p_Conjugate:
+     if (INT_REAL (code))
+       {
+-        warning ("`%s' applied to real numbers has no effect", r_name);
++        gpc_warning ("`%s' applied to real numbers has no effect", r_name);
+         retval = val;
+       }
+     else if (r_num == p_Re)
+@@ -1872,9 +1885,9 @@
+   case p_Im:
+     if (INT_REAL (code))
+       {
+-        warning ("`%s' applied to real numbers always yields 0.", r_name);
++        gpc_warning ("`%s' applied to real numbers always yields 0.", r_name);
+         if (TREE_SIDE_EFFECTS (val))
+-          warning (" Argument with side-effects is not evaluated.");
++          gpc_warning (" Argument with side-effects is not evaluated.");
+         retval = real_zero_node;
+       }
+     else
+@@ -1923,7 +1936,8 @@
+     }
+ 
+   case p_Assigned:
+-    retval = build (NE_EXPR, boolean_type_node, val, integer_zero_node);
++    retval = build (NE_EXPR, boolean_type_node, val,
++                      convert (TREE_TYPE (val), integer_zero_node));
+     break;
+ 
+   case p_GetMem:
+@@ -1956,7 +1970,7 @@
+       CHK_EM (ptype);
+ 
+       if (TREE_CODE (ptype) == VOID_TYPE && !(co->pascal_dialect & B_D_PASCAL))
+-        warning ("argument to `%s' should not be an untyped pointer", r_name);
++        gpc_warning ("argument to `%s' should not be an untyped pointer", r_name);
+       if (PASCAL_TYPE_ANYFILE (ptype))
+         error ("`AnyFile' pointers cannot be allocated with `%s'", r_name);
+ 
+@@ -2064,8 +2078,12 @@
+           int save_warn_object_assignment = co->warn_object_assignment;
+           co->warn_object_assignment = 0;
+ #endif
++
++
+           expand_expr_stmt (build_modify_expr (res_deref, NOP_EXPR,
+             build_pascal_initializer (TREE_TYPE (type), init, "type in `New'", 0)));
++
++
+ #if 0
+           co->warn_object_assignment = save_warn_object_assignment;
+ #endif
+@@ -2125,7 +2143,8 @@
+         argcount = 1;
+         TREE_CHAIN (apar) = NULL_TREE;
+       }
+-    expand_start_cond (build (NE_EXPR, boolean_type_node, val, integer_zero_node), 0);
++    expand_start_cond (build (NE_EXPR, boolean_type_node, val, 
++                        convert (TREE_TYPE (val), integer_zero_node)), 0);
+     init_any (build_indirect_ref (val, NULL), 1, 1);
+     if (co->pascal_dialect & C_E_O_PASCAL)
+       {
+@@ -2140,12 +2159,12 @@
+         if (co->pascal_dialect & C_E_O_PASCAL)
+           error ("standard Pascal forbids `%s (nil)'", r_name);
+         else
+-          warning ("`%s (nil)' has no effect", r_name);
++          gpc_warning ("`%s (nil)' has no effect", r_name);
+       }
+     if (argcount > 1)
+       {
+         if (PEDANTIC (GNU_PASCAL))
+-          warning (r_num == p_Dispose
++          gpc_warning (r_num == p_Dispose
+                    ? "tag fields ignored in `%s'"
+                    : "second parameter ignored in `%s'", r_name);
+         /* @@ Perhaps we should do a run-time check ? */
+@@ -2222,7 +2241,7 @@
+   case p_Int:
+     if (code == INTEGER_TYPE)
+       {
+-        warning ("`%s' applied to integers has no effect", r_name);
++        gpc_warning ("`%s' applied to integers has no effect", r_name);
+         retval = val;
+       }
+     break;
+@@ -2230,9 +2249,9 @@
+   case p_Frac:
+     if (code == INTEGER_TYPE)
+       {
+-        warning ("`%s' applied to integers always yields 0.", r_name);
++        gpc_warning ("`%s' applied to integers always yields 0.", r_name);
+         if (TREE_SIDE_EFFECTS (val))
+-          warning (" Argument with side-effects is not evaluated.");
++          gpc_warning (" Argument with side-effects is not evaluated.");
+         retval = integer_zero_node;
+       }
+     break;
+@@ -2294,7 +2313,7 @@
+             }
+           else if (co->pascal_dialect & U_B_D_M_PASCAL)
+             {
+-              warning ("unspecified buffer size for untyped file defaults to 128 in `%s'", r_name);
++              gpc_warning ("unspecified buffer size for untyped file defaults to 128 in `%s'", r_name);
+               buffer_size = build_int_2 (128, 0);
+             }
+           else
+@@ -2544,7 +2563,7 @@
+                 errstr = "left argument of `pow' is 0 while right argument is <= 0";
+                 if (!pedantic && (co->pascal_dialect & C_E_O_PASCAL))
+                   {
+-                    warning (errstr);
++                    gpc_warning (errstr);
+                     errstr = NULL;
+                   }
+               }
+@@ -2653,11 +2672,11 @@
+               if (r_num == p_LT)  /* s < '' is impossible */
+                 {
+                   if (invert_result)
+-                    warning ("`>=' comparison against the empty string is always `True'.");
++                    gpc_warning ("`>=' comparison against the empty string is always `True'.");
+                   else
+-                    warning ("`<' comparison against the empty string is always `False'.");
++                    gpc_warning ("`<' comparison against the empty string is always `False'.");
+                   if (TREE_SIDE_EFFECTS (val))
+-                    warning (" Operand with side-effects is not evaluated.");
++                    gpc_warning (" Operand with side-effects is not evaluated.");
+                   return invert_result ? boolean_true_node : boolean_false_node;
+                 }
+               comp_empty = val;
+@@ -2996,7 +3015,7 @@
+ get_standard_input (void)
+ {
+   if (co->warn_implicit_io)
+-    warning ("implicit use of `Input'");
++    gpc_warning ("implicit use of `Input'");
+   if (!current_module->input_available)
+     {
+       current_module->input_available = 1;
+@@ -3009,7 +3028,7 @@
+ get_standard_output (void)
+ {
+   if (co->warn_implicit_io)
+-    warning ("implicit use of `Output'");
++    gpc_warning ("implicit use of `Output'");
+   if (!current_module->output_available)
+     {
+       current_module->output_available = 1;
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/statements.c gpc/p/statements.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/statements.c	2006-03-24 03:47:15.000000000 +0100
++++ gpc/p/statements.c	2006-04-07 19:28:45.000000000 +0200
+@@ -73,7 +73,7 @@
+   if (PEDANTIC (GNU_PASCAL))
+     {
+       if (co->pascal_dialect & B_D_M_PASCAL)
+-        warning ("GPC and Borland Pascal have different `asm' syntax");
++        gpc_warning ("GPC and Borland Pascal have different `asm' syntax");
+       else
+         chk_dialect ("`asm' is", B_D_M_PASCAL);
+     }
+@@ -203,7 +203,7 @@
+   else if (TREE_CODE (t) == VAR_DECL && PASCAL_FOR_LOOP_COUNTER (t))
+     {
+       if (co->pascal_dialect & B_D_M_PASCAL)
+-        warning ("%s of `for' loop counter", description);
++        gpc_warning ("%s of `for' loop counter", description);
+       else
+         {
+           error ("%s of `for' loop counter", description);
+@@ -245,11 +245,11 @@
+               return 0;
+             }
+           else
+-            warning ("%s: typed const misused as initialized variable", description);
++            gpc_warning ("%s: typed const misused as initialized variable", description);
+           if (!informed)
+             {
+-              warning (" (Better use ISO 10206 Extended Pascal initialized");
+-              warning (" types and variables: `var foo: integer value 7'.)");
++              gpc_warning (" (Better use ISO 10206 Extended Pascal initialized");
++              gpc_warning (" types and variables: `var foo: integer value 7'.)");
+               informed = 1;
+             }
+         }
+@@ -284,7 +284,7 @@
+ {
+   tree valtype = TREE_TYPE (TREE_TYPE (current_function_decl));
+   if (TREE_THIS_VOLATILE (current_function_decl))
+-    warning ("routine declared `noreturn' returns");
++    gpc_warning ("routine declared `noreturn' returns");
+   /* This must be done before returning, otherwise it would jump over it. */
+   cleanup_routine ();
+   if (!retval)
+@@ -396,9 +396,9 @@
+                       if (const_lt (chi, hi))
+                         nlo = fold (build (PLUS_EXPR, TREE_TYPE (chi), (ehi = chi), convert (TREE_TYPE (chi), integer_one_node)));
+                       if (tree_int_cst_equal (elo, ehi))
+-                        warning ("duplicate `case' element %ld", (long) TREE_INT_CST_LOW (elo));
++                        gpc_warning ("duplicate `case' element %ld", (long) TREE_INT_CST_LOW (elo));
+                       else
+-                        warning ("duplicate `case' range %ld .. %ld", (long) TREE_INT_CST_LOW (elo), (long) TREE_INT_CST_LOW (ehi));
++                        gpc_warning ("duplicate `case' range %ld .. %ld", (long) TREE_INT_CST_LOW (elo), (long) TREE_INT_CST_LOW (ehi));
+                       if (!nlo && !nhi)
+                         lo = hi = NULL_TREE;
+                       else
+@@ -591,7 +591,8 @@
+   CHK_EM (counter);
+ 
+   /* Make a set out of a set constructor */
+-  if (TREE_CODE (expr) == CONSTRUCTOR && TREE_CODE (TREE_TYPE (expr)) == SET_TYPE)
++  if (TREE_CODE (expr) == PASCAL_SET_CONSTRUCTOR
++      && TREE_CODE (TREE_TYPE (expr)) == SET_TYPE)
+     expr = construct_set (expr, NULL_TREE, 0);
+   if (TREE_CODE (TREE_TYPE (expr)) != SET_TYPE)
+     {
+@@ -600,7 +601,7 @@
+     }
+   else if (TREE_TYPE (expr) == empty_set_type_node)
+     {
+-      warning ("`for ... in []' (empty set) has no effect");
++      gpc_warning ("`for ... in []' (empty set) has no effect");
+       /* Be as silent as possible to give the optimizer a chance to remove the whole loop. */
+       empty_set = 1;
+     }
+@@ -916,7 +917,7 @@
+               || TREE_READONLY (t)
+               || TYPE_READONLY (TREE_TYPE (t))
+               || (TREE_CODE (t) == VAR_DECL && PASCAL_DECL_TYPED_CONST (t)))
+-            warning ("constant file variables are pointless");
++            gpc_warning ("constant file variables are pointless");
+ 
+           /* Always pass the internal name to the RTS, not only for external files. */
+           if (TREE_CODE (thing) == VAR_DECL)
+@@ -929,7 +930,7 @@
+           fname = build_string_constant (temp, strlen (temp), 0);
+ 
+           if (pedantic && PASCAL_TYPE_PACKED (type))
+-            warning ("`packed' has no effect on the external file format");
++            gpc_warning ("`packed' has no effect on the external file format");
+ 
+           /* Pass the size of the file buffer. */
+           file_size = (TREE_CODE (component_type) == VOID_TYPE) ? size_one_node : size_in_bytes (component_type);
+@@ -1053,10 +1054,16 @@
+       {
+         if (!TREE_VALUE (decl))
+           expand_expr_stmt (TREE_PURPOSE (decl));
+-        else if (!TREE_PURPOSE (decl))
+-          init_any (TREE_VALUE (decl), the_end, 1);
+         else
++          {
++            init_any (TREE_VALUE (decl), the_end, 1);
++            if (TREE_PURPOSE (decl))
++              expand_pascal_assignment2 (TREE_VALUE (decl),
++                                         TREE_PURPOSE (decl), 1);
++#if 0
+           expand_expr_stmt (build_modify_expr (TREE_VALUE (decl), INIT_EXPR, TREE_PURPOSE (decl)));
++#endif
++          }
+       }
+   for (decl = names; decl; decl = TREE_CHAIN (decl))
+     {
+@@ -1146,10 +1153,10 @@
+ }
+ 
+ void
+-expand_pascal_assignment (tree target, tree source)
++expand_pascal_assignment2 (tree target, tree source, int is_init)
+ {
+   tree stmt, schema_source, schema_target;
+-  int allow_restricted_target = 0, allow_restricted_source = 0;
++  int allow_restricted_target = is_init, allow_restricted_source = is_init;
+   if (EM (TREE_TYPE (source)) || EM (TREE_TYPE (target)))
+     return;
+ 
+@@ -1206,7 +1213,7 @@
+       allow_restricted_target = 1;
+     }
+ 
+-  if (!mark_lvalue (target, "assignment", 1))
++  if (!mark_lvalue (target, is_init? "initialization" : "assignment", !is_init))
+     return;
+ 
+   schema_source = undo_schema_dereference (source);
+@@ -1250,7 +1257,9 @@
+       tree schema_check = check_discriminants (schema_target, schema_source);
+       if (!EM (schema_check))
+         {
+-          if (!lvalue_or_else (schema_target, "assignment") || !mark_lvalue (schema_target, "assignment", 1))
++          if (!lvalue_or_else (schema_target, "assignment")
++              || !mark_lvalue (schema_target, is_init ? "initialization" 
++                                                : "assignment", is_init))
+             return;
+           stmt = build (MODIFY_EXPR, TREE_TYPE (schema_target),
+                           schema_target, schema_source);
+@@ -1259,12 +1268,19 @@
+             stmt = build (COMPOUND_EXPR, TREE_TYPE (stmt), schema_check, stmt);
+         }
+       else
+-        stmt = build_modify_expr (target, NOP_EXPR, source);
++        stmt = build_modify_expr (target,
++                 is_init ? INIT_EXPR : NOP_EXPR, source);
+     }
+   if (stmt && !EM (stmt))
+     expand_expr_stmt (stmt);
+ }
+ 
++void
++expand_pascal_assignment (tree target, tree source)
++{
++  expand_pascal_assignment2 (target, source, 0);
++}
++
+ tree
+ assign_set (tree target, tree source)
+ {
+@@ -1273,7 +1289,8 @@
+     return error_mark_node;
+   /* @@ Test new constructor code without this.
+         Construct a set directly to the set variable. */
+-  if (TREE_CODE (source) == CONSTRUCTOR && TREE_CODE (TREE_TYPE (source)) == SET_TYPE)
++  if (TREE_CODE (source) == PASCAL_SET_CONSTRUCTOR
++      && TREE_CODE (TREE_TYPE (source)) == SET_TYPE)
+     {
+       source = construct_set (source, target, 0);
+       if (!source)
+@@ -1310,7 +1327,7 @@
+    Each string may be either a fixed or variable length string.
+    @@@ No sophisticated checks are made for capacity violations. */
+ tree
+-assign_string (tree target, tree source)
++assign_string2 (tree target, tree source, int is_init)
+ {
+   tree length = NULL_TREE;
+   tree t_type = base_type (TREE_TYPE (target));
+@@ -1334,7 +1351,7 @@
+           if (TREE_CODE (t_type) == CHAR_TYPE)
+             {
+               if (pedantic || !(co->pascal_dialect & E_O_PASCAL))
+-                warning ("assignment of string value to char variable");
++                gpc_warning ("assignment of string value to char variable");
+               expr1 = PASCAL_STRING_VALUE (source);
+               expr1 = build_modify_expr (target, NOP_EXPR, build_array_ref (expr1,
+                 TYPE_MIN_VALUE (TYPE_DOMAIN (TREE_TYPE (expr1)))));
+@@ -1431,6 +1448,12 @@
+   return expr;
+ }
+ 
++tree
++assign_string (tree target, tree source)
++{
++  return assign_string2 (target, source, 0);
++}
++
+ /* Main program, module initializers/finalizers. */
+ 
+ static void
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/typecheck.c gpc/p/typecheck.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/typecheck.c	2006-03-24 03:47:15.000000000 +0100
++++ gpc/p/typecheck.c	2006-04-09 03:31:39.000000000 +0200
+@@ -28,6 +28,9 @@
+ 
+ #include "gpc.h"
+ 
++extern void
++set_string_length (tree value, int wide_flag, int length);
++
+ static int compatible_assignment_p (tree, tree);
+ static int check_simple_pascal_initializer (tree, tree);
+ static tree decl_constant_value (tree);
+@@ -47,7 +50,11 @@
+ static void really_start_incremental_init (tree);
+ static void push_init_level (void);
+ static tree build_bitfields_type (tree, int);
++#ifndef GCC_4_1
+ static tree do_build_constructor_rev (tree, tree);
++#else
++static tree do_build_constructor_rev (tree, VEC(constructor_elt,gc) *);
++#endif
+ static tree fill_one_record (tree *, tree, tree, tree *, HOST_WIDE_INT, HOST_WIDE_INT *);
+ static tree fake_packed_array_constructor (void);
+ static tree pop_init_level (void);
+@@ -569,6 +576,7 @@
+       && TREE_CONSTANT (DECL_INITIAL (decl))
+       /* Check for cases where this is sub-optimal, even though valid. */
+       && TREE_CODE (DECL_INITIAL (decl)) != CONSTRUCTOR
++      && TREE_CODE (DECL_INITIAL (decl)) != PASCAL_SET_CONSTRUCTOR
+       && DECL_MODE (decl) != BLKmode)
+     return DECL_INITIAL (decl);
+   return decl;
+@@ -645,7 +653,8 @@
+       return build (COMPOUND_EXPR, TREE_TYPE (op1), TREE_OPERAND (exp, 0), op1);
+     }
+ 
+-  if (!lvalue_p (exp) && !(TREE_CODE (exp) == CONSTRUCTOR && TREE_STATIC (exp))
++  if (!lvalue_p (exp) 
++      && !(TREE_CODE (exp) == CONSTRUCTOR && TREE_STATIC (exp))
+       && !((TREE_CODE (exp) == NOP_EXPR
+ #ifdef EGCS97
+             || TREE_CODE (exp) == VIEW_CONVERT_EXPR
+@@ -921,7 +930,7 @@
+            }
+          else
+         {
+-          if (TREE_CODE (val) == CONSTRUCTOR)
++          if (TREE_CODE (val) == PASCAL_SET_CONSTRUCTOR)
+             /* Convert the set constructor to the corresponding set type */
+ #if 0
+             val = construct_set (val, type, 2);
+@@ -929,7 +938,7 @@
+             /* fjf880.pas */
+             {
+               tree temp = make_new_variable ("set_parameter", partype);
+-              if (!CONSTRUCTOR_ELTS (val))
++              if (!SET_CONSTRUCTOR_ELTS (val))
+                 {
+                   construct_set (val, temp, 0);
+                   val = temp;
+@@ -1058,6 +1067,7 @@
+           && ((TYPE_READONLY (TREE_TYPE (type))
+                && (TREE_CODE (val) == STRING_CST
+                    || TREE_CODE (val) == CONSTRUCTOR
++                   || TREE_CODE (val) == PASCAL_SET_CONSTRUCTOR
+                    || !lvalue_p (val)
+                    || ((PASCAL_TYPE_STRING (TREE_TYPE (type)) || TREE_CODE (TREE_TYPE (type)) == VOID_TYPE)
+                        && (TREE_CODE (TREE_TYPE (val)) == CHAR_TYPE
+@@ -1076,7 +1086,8 @@
+                        TYPE_READONLY (TREE_TYPE (type)),
+                        TYPE_VOLATILE (TREE_TYPE (type))));
+             }
+-          else if (TREE_CODE (val) == CONSTRUCTOR && TREE_CODE (TREE_TYPE (val)) == SET_TYPE)
++          else if (TREE_CODE (val) == PASCAL_SET_CONSTRUCTOR
++                   && TREE_CODE (TREE_TYPE (val)) == SET_TYPE)
+             val = construct_set (val, NULL_TREE, 0);
+           else if (TREE_CODE (val) == FUNCTION_DECL)
+             val = build_routine_call (val, NULL_TREE);
+@@ -1927,8 +1938,11 @@
+           if (integer_zerop (capacity))
+             TREE_VALUE (init) = empty_string_node;
+           else if (TREE_CODE (TREE_VALUE (init)) == STRING_CST)
++            {
+             TREE_VALUE (init) = build_string_constant (TREE_STRING_POINTER (TREE_VALUE (init)),
+               TREE_INT_CST_LOW (capacity), PASCAL_CST_FRESH (TREE_VALUE (init)));
++              set_string_length (TREE_VALUE (init), 0, TREE_INT_CST_LOW (capacity) + 1);
++            }
+           else
+             {
+               /* We can't get here with char constants! */
+@@ -1938,6 +1952,10 @@
+             }
+           string_length = capacity;
+         }
++      else if (TREE_CODE (TREE_VALUE (init)) == STRING_CST)
++        {
++          set_string_length (TREE_VALUE (init), 0, TREE_INT_CST_LOW (capacity) + 1);
++        }
+       else if (TREE_CODE (TREE_TYPE (TREE_VALUE (init))) == CHAR_TYPE)
+         /* convert char to string: [1: char-value; 2 .. Capacity + 1: Chr (0)] */
+         TREE_VALUE (init) = tree_cons (build_tree_list (integer_one_node, NULL_TREE), TREE_VALUE (init),
+@@ -2021,17 +2039,51 @@
+           return 0;
+         }
+       /* Pointers to strings used as CStrings. */
++#if 1
++      if (TREE_CODE (TREE_VALUE (init)) == ADDR_EXPR)
++        {
++          tree s = TREE_OPERAND (TREE_VALUE (init), 0);
++          if (TREE_CODE (s) == VAR_DECL && TREE_READONLY (s)
++              && DECL_INITIAL (s)
++              && TREE_CODE (DECL_INITIAL (s)) == CONSTRUCTOR
++              && PASCAL_TYPE_DISCRIMINATED_STRING (
++                   TREE_TYPE (DECL_INITIAL (s))))
++            {
++              int constant = TREE_CONSTANT (TREE_VALUE (init));
++#ifndef GCC_4_1
++              tree t = CONSTRUCTOR_ELTS (DECL_INITIAL (s));
++              TREE_VALUE (init) = build1 (ADDR_EXPR, cstring_type_node,
++                  TREE_VALUE (TREE_CHAIN (TREE_CHAIN (t))));
++#else
++              VEC(constructor_elt,gc) *elts = CONSTRUCTOR_ELTS (
++                                                    DECL_INITIAL (s));
++              TREE_VALUE (init) = build1 (ADDR_EXPR, cstring_type_node,
++                  VEC_index (constructor_elt, elts, 2)->value);
++#endif
++              TREE_CONSTANT (TREE_VALUE (init)) = constant;
++              return 0;
++            }
++        }
++#else
+       if (TREE_CODE (TREE_VALUE (init)) == ADDR_EXPR
+           && TREE_CODE (TREE_OPERAND (TREE_VALUE (init), 0)) == CONSTRUCTOR
+           && PASCAL_TYPE_DISCRIMINATED_STRING (TREE_TYPE (TREE_OPERAND (TREE_VALUE (init), 0))))
+         {
+           int constant = TREE_CONSTANT (TREE_VALUE (init));
++#ifndef GCC_4_1
+           tree t = CONSTRUCTOR_ELTS (TREE_OPERAND (TREE_VALUE (init), 0));
+           TREE_VALUE (init) = build1 (ADDR_EXPR, cstring_type_node,
+             TREE_VALUE (TREE_CHAIN (TREE_CHAIN (t))));
++#else
++          VEC(constructor_elt,gc) *elts = CONSTRUCTOR_ELTS (
++                      TREE_OPERAND (TREE_VALUE (init), 0));
++          TREE_VALUE (init) = build1 (ADDR_EXPR, cstring_type_node,
++            VEC_index (constructor_elt, elts, 2)->value);
++#endif
+           TREE_CONSTANT (TREE_VALUE (init)) = constant;
+           return 0;
+         }
++#endif
+     }
+ 
+   /* Procedural variables. (Pointers to routines should cause no problems.) */
+@@ -2049,14 +2101,14 @@
+     }
+ 
+   /* Sets. */
+-  if (TREE_CODE (TREE_VALUE (init)) == CONSTRUCTOR
++  if (TREE_CODE (TREE_VALUE (init)) == PASCAL_SET_CONSTRUCTOR
+       && TREE_CODE (TREE_TYPE (TREE_VALUE (init))) == SET_TYPE
+       && TREE_CODE (type) == SET_TYPE
+       && TREE_TYPE (TREE_VALUE (init)) == empty_set_type_node)
+     {
+       /* The type of the set constructor was not known to the parser.
+          Specify it now, but check it first. */
+-      tree elements = CONSTRUCTOR_ELTS (TREE_VALUE (init));
++      tree elements = SET_CONSTRUCTOR_ELTS (TREE_VALUE (init));
+       if (elements && !comptypes (TYPE_MAIN_VARIANT (TREE_TYPE (TREE_PURPOSE (elements))),
+                                   TYPE_MAIN_VARIANT (TREE_TYPE (type))))
+         return 1;
+@@ -2784,6 +2836,9 @@
+         break;
+ 
+       case CONSTRUCTOR:
++#ifdef GCC_4_1
++      case PASCAL_SET_CONSTRUCTOR:
++#endif
+         TREE_ADDRESSABLE (x) = 1;
+         return 1;
+ 
+@@ -2932,10 +2987,13 @@
+              so the usual warnings are not appropriate. */
+           if (TREE_CODE (ttr) != FUNCTION_TYPE && TREE_CODE (ttl) != FUNCTION_TYPE)
+             {
++#if 0
+               if (!TYPE_READONLY (ttl) && TYPE_READONLY (ttr))
+                 assignment_error_or_warning ("%s discards `const' from pointer target type",
+                                              errtype, fundecl, parmnum, 0);
+-              else if (!TYPE_VOLATILE (ttl) && TYPE_VOLATILE (ttr))
++              else 
++#endif
++              if (!TYPE_VOLATILE (ttl) && TYPE_VOLATILE (ttr))
+                 assignment_error_or_warning ("%s discards `volatile' from pointer target type",
+                                              errtype, fundecl, parmnum, 0);
+               else if (TREE_CODE (ttl) == INTEGER_TYPE && TREE_CODE (ttr) == INTEGER_TYPE)
+@@ -3090,7 +3148,7 @@
+     }
+   else
+     {
+-      warning (msg, opname);
++      gpc_warning (msg, opname);
+       if (name)
+         warning_with_decl (fundecl, " routine declaration");
+     }
+@@ -3516,7 +3574,11 @@
+ /* If we are saving up the elements rather than allocating them,
+    this is the list of elements so far (in reverse order,
+    most recent first). */
++#ifndef GCC_4_1
+ static tree constructor_elements;
++#else
++static VEC(constructor_elt,gc) *constructor_elements;
++#endif
+ 
+ /* 1 if so far this constructor's elements are all compile-time constants. */
+ static int constructor_constant;
+@@ -3550,7 +3612,11 @@
+   tree max_index;
+   tree unfilled_index;
+   tree unfilled_fields;
++#ifndef GCC_4_1
+   tree elements;
++#else
++  VEC(constructor_elt,gc) *elements;
++#endif
+   int offset;
+   tree pending_elts;
+   int depth;
+@@ -3762,7 +3828,11 @@
+     return NULL_TREE;  /* avoid further error messages */
+   gcc_assert (TREE_CODE (init) == TREE_LIST);
+ 
++#ifndef GCC_4_1
+   constructor_elements = NULL_TREE;
++#else
++  constructor_elements = NULL;
++#endif
+   constructor_stack = 0;
+   spelling_base = 0;
+   spelling_size = 0;
+@@ -3881,7 +3951,11 @@
+   constructor_constant = 1;
+   constructor_simple = 1;
+   constructor_depth = SPELLING_DEPTH ();
++#ifndef GCC_4_1
+   constructor_elements = NULL_TREE;
++#else
++  constructor_elements = NULL;
++#endif
+   constructor_pending_elts = NULL_TREE;
+ 
+   /* Don't die if an entire brace-pair level is superfluous in the containing level. */
+@@ -3963,10 +4037,19 @@
+   return type;
+ }
+ 
++#ifndef GCC_4_1
+ static tree
+ do_build_constructor_rev (tree type, tree el)
++#else
++static tree
++do_build_constructor_rev (tree type, VEC(constructor_elt,gc) *el)
++#endif
+ {
++#ifndef GCC_4_1
+   tree constructor = build_constructor (type, nreverse (el));
++#else
++  tree constructor = build_constructor (type, el);
++#endif
+   if (constructor_constant)
+     {
+       TREE_CONSTANT (constructor) = 1;
+@@ -3982,7 +4065,11 @@
+ static tree
+ fill_one_record (tree *pel, tree min, tree ptype, tree *fields, HOST_WIDE_INT maxnr, HOST_WIDE_INT *pnr)
+ {
++#ifndef GCC_4_1
+   tree prl = NULL_TREE;
++#else
++  VEC(constructor_elt,gc) * prl = NULL;
++#endif
+   tree el = *pel;
+   HOST_WIDE_INT oanr = 0;
+   int first = 1;
+@@ -4003,7 +4090,8 @@
+         }
+       if (anr != oanr)
+         break;
+-      prl = tree_cons (fields[nr], TREE_VALUE (el), prl);
++
++      CONSTRUCTOR_APPEND_ELT (prl, fields[nr], TREE_VALUE (el));
+       el = TREE_CHAIN (el);
+       *pel = el;
+     }
+@@ -4013,11 +4101,35 @@
+ static tree
+ fake_packed_array_constructor (void)
+ {
+-  tree rtype = NULL_TREE, rfields = NULL_TREE, rl = NULL_TREE;
+-  tree type = constructor_type, el = nreverse (constructor_elements);
+-  tree tsize = pascal_array_type_nelts (type), orig_el = el;
++  tree rtype = NULL_TREE, rfields = NULL_TREE;
++  tree type = constructor_type;
++#ifndef GCC_4_1
++  tree rl = NULL_TREE;
++  tree el = nreverse (constructor_elements);
++#else
++  VEC(constructor_elt,gc) * rl = NULL;
++  tree el = NULL_TREE;
++#endif
++  tree tsize = pascal_array_type_nelts (type), orig_el;
+   HOST_WIDE_INT size = TREE_INT_CST_LOW (tsize), asize = size / BITS_PER_UNIT;
+   int psize = size % BITS_PER_UNIT;
++
++#ifdef GCC_4_1
++  {
++    VEC(constructor_elt,gc) *elts = constructor_elements;
++    unsigned HOST_WIDE_INT ix;
++    ix = VEC_length (constructor_elt, elts);
++    while (ix > 0)
++      {
++        ix--;
++        el = tree_cons (VEC_index (constructor_elt, elts, ix)->index,
++                VEC_index (constructor_elt, elts, ix)->value, el);
++      }
++  }
++#endif
++
++  orig_el = el;
++
+   if (size <= 0 || TREE_INT_CST_HIGH (tsize))
+     {
+       error ("array too large");
+@@ -4027,7 +4139,12 @@
+     {
+       tree ptype = build_bitfields_type (TREE_TYPE (type), BITS_PER_UNIT);
+       tree fields[BITS_PER_UNIT];
+-      tree atype, arfield, al = NULL_TREE, t;
++      tree atype, arfield, t;
++#ifndef GCC_4_1
++      tree al = NULL_TREE;
++#else
++      VEC(constructor_elt,gc) * al = NULL;
++#endif
+       int i;
+       for (i = 0, t = TYPE_FIELDS (ptype); i < BITS_PER_UNIT; i++, t = TREE_CHAIN (t))
+         fields[i] = t;
+@@ -4040,10 +4157,12 @@
+           tree br = fill_one_record (&el, TYPE_MIN_VALUE (TYPE_DOMAIN (type)), ptype, fields, asize, &anr);
+           if (!br)
+             break;
+-          al = tree_cons (build_int_2 (anr, 0), br, al);
++
++          CONSTRUCTOR_APPEND_ELT (al, build_int_2 (anr, 0), br);
+         }
+       if (al)
+-        rl = build_tree_list (arfield, do_build_constructor_rev (atype, al));
++        CONSTRUCTOR_APPEND_ELT (rl, arfield,
++           do_build_constructor_rev (atype, al));
+     }
+   if (psize)
+     {
+@@ -4063,7 +4182,7 @@
+           HOST_WIDE_INT anr;
+           tree pr1 = fill_one_record (&el, TYPE_MIN_VALUE (TYPE_DOMAIN (type)), ptype1, fields1, asize + 1, &anr);
+           if (pr1)
+-            rl = tree_cons (prfield, pr1, rl);
++            CONSTRUCTOR_APPEND_ELT (rl, prfield, pr1);
+         }
+     }
+   gcc_assert (!el);
+@@ -4116,8 +4235,12 @@
+     {
+       /* A scalar initializer -- just return the element, after
+          verifying there is just one. */
++#ifndef GCC_4_1
+       gcc_assert (constructor_elements && !TREE_CHAIN (constructor_elements));
+       constructor = TREE_VALUE (constructor_elements);
++#else
++      gcc_unreachable ();
++#endif
+     }
+   else
+     {
+@@ -4139,7 +4262,12 @@
+                && count_bits (TREE_TYPE (constructor_type), NULL))
+             constructor = fake_packed_array_constructor ();
+           else
++#ifndef GCC_4_1
+             constructor = build_constructor (constructor_type, nreverse (constructor_elements));
++#else
++            constructor = build_constructor (constructor_type,
++                                               constructor_elements);
++#endif
+           if (constructor_constant)
+             {
+               TREE_CONSTANT (constructor) = 1;
+@@ -4379,8 +4507,10 @@
+     {
+       /* Otherwise, output this element to constructor_elements. */
+       if (!duplicate)
+-        constructor_elements = tree_cons (field,
+-          digest_init (type, value, require_constant_value), constructor_elements);
++        {
++          value = digest_init (type, value, require_constant_value);
++          CONSTRUCTOR_APPEND_ELT (constructor_elements, field, value);
++        }
+ 
+       /* Advance the variable that indicates sequential elements output. */
+       if (TREE_CODE (constructor_type) == ARRAY_TYPE)
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/types.c gpc/p/types.c
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/types.c	2006-03-24 03:47:15.000000000 +0100
++++ gpc/p/types.c	2006-04-06 05:35:47.000000000 +0200
+@@ -82,7 +82,7 @@
+           if (TYPE_LANG_CODE_TEST (type, PASCAL_LANG_ABSTRACT_OBJECT))
+             error ("abstract object type declared as function result type");
+           else if (co->warn_object_assignment)
+-            warning ("object type declared as function result type");
++            gpc_warning ("object type declared as function result type");
+         }
+       if (!SCALAR_TYPE (TREE_CODE (type)))
+         chk_dialect ("structured function result types are", NOT_CLASSIC_PASCAL);
+@@ -281,7 +281,7 @@
+           && TREE_CODE (upper) == INTEGER_CST
+           && tree_int_cst_lt (upper, lower))
+         {
+-          warning ("set constructor range is empty");
++          gpc_warning ("set constructor range is empty");
+           *pres = TREE_CHAIN (m);
+           continue;
+         }
+@@ -307,8 +307,8 @@
+   /* A single element/range with side-effects should be safe. */
+   if (side_effects && TREE_CHAIN (elements))
+     {
+-      warning ("expressions with side-effects in set constructors are");
+-      warning (" problematic since evaluation is implementation-dependent");
++      gpc_warning ("expressions with side-effects in set constructors are");
++      gpc_warning (" problematic since evaluation is implementation-dependent");
+     }
+   /* Sort and merge constant constructor elements */
+   if (is_intcst && n)
+@@ -338,9 +338,9 @@
+           i = j;
+         }
+     }
+-  t = make_node (CONSTRUCTOR);
++  t = make_node (PASCAL_SET_CONSTRUCTOR);
+   TREE_TYPE (t) = empty_set_type_node;  /* real type not yet known */
+-  CONSTRUCTOR_ELTS (t) = elements;
++  SET_CONSTRUCTOR_ELTS (t) = elements;
+   TREE_CONSTANT (t) = TREE_STATIC (t) = is_constant;
+ #ifdef GCC_4_0
+   TREE_INVARIANT (t) = is_constant;
+@@ -355,10 +355,10 @@
+ limited_set (tree lo)
+ {
+   tree hi = fold (build_pascal_binary_op (PLUS_EXPR, lo, size_int (co->set_limit - 1)));
+-  warning ("constructing limited integer set `%li .. %li';",
++  gpc_warning ("constructing limited integer set `%li .. %li';",
+            (long int) TREE_INT_CST_LOW (lo),
+            (long int) TREE_INT_CST_LOW (hi));
+-  warning (" use `--setlimit=NUMBER' to change the size limit at compile time.");
++  gpc_warning (" use `--setlimit=NUMBER' to change the size limit at compile time.");
+   return hi;
+ }
+ 
+@@ -384,7 +384,7 @@
+   tree elements, elem, set_low, set_high, setsize, this_set_type;
+   tree nelem;
+   CHK_EM (constructor);
+-  elements = CONSTRUCTOR_ELTS (constructor);
++  elements = SET_CONSTRUCTOR_ELTS (constructor);
+   if (!elements && (arg_type == 0 || (arg_type == 1 && !target_or_type)))
+     {
+       if (arg_type == 0 && target_or_type)
+@@ -511,7 +511,7 @@
+       nelem = tree_cons (lo2, hi2, nelem);
+     }
+   nelem = nreverse (nelem);
+-  CONSTRUCTOR_ELTS (constructor) = nelem;
++  SET_CONSTRUCTOR_ELTS (constructor) = nelem;
+   return constructor;
+ }
+ 
+@@ -1485,6 +1485,7 @@
+              are handled differently above, anyway.) */
+           TYPE_PRECISION (type) = ((TREE_INT_CST_LOW (bits) + BITS_PER_UNIT - 1)
+                                    / BITS_PER_UNIT) * BITS_PER_UNIT;
++          TYPE_ALIGN (type) = 0;
+           layout_type (type);
+         }
+     }
+@@ -1800,7 +1801,7 @@
+       if (TREE_CODE (l) != INTEGER_CST || TREE_CODE (h) != INTEGER_CST || const_lt (h, l))
+         {
+           if (co->warn_dynamic_arrays)
+-            warning ("dynamic array");
++            gpc_warning ("dynamic array");
+           if (current_function_decl)  /* @@ otherwise do it in module constructor */
+             expand_expr_stmt (build (COND_EXPR, pascal_integer_type_node,
+               build_implicit_pascal_binary_op (LT_EXPR, hi, lo),
+@@ -1819,7 +1820,7 @@
+   enum tree_code code = TREE_CODE (expr);
+   if (code == VAR_DECL && !PASCAL_INITIALIZED (expr) && !PASCAL_VALUE_ASSIGNED (expr)
+       && !PASCAL_TREE_DISCRIMINANT (expr) && DECL_CONTEXT (expr) == current_function_decl)
+-    warning ("`%s' might be used uninitialized in type definition", IDENTIFIER_NAME (DECL_NAME (expr)));
++    gpc_warning ("`%s' might be used uninitialized in type definition", IDENTIFIER_NAME (DECL_NAME (expr)));
+   else if (IS_EXPR_OR_REF_CODE_CLASS (TREE_CODE_CLASS (code)))
+     {
+       int i, l = NUMBER_OF_OPERANDS (code);
+@@ -2658,6 +2659,7 @@
+     }
+   else if (TREE_CODE (arg1) == INTEGER_CST && TREE_CODE (arg0) == CONSTRUCTOR)
+     {
++#ifndef GCC_4_1
+       tree elts = CONSTRUCTOR_ELTS (arg0);
+       arg1 = range_check (TYPE_DOMAIN (TREE_TYPE (arg0)), arg1);
+       CHK_EM (arg1);
+@@ -2667,6 +2669,17 @@
+             return TREE_VALUE (elts);
+           elts = TREE_CHAIN (elts);
+         }
++#else
++      VEC(constructor_elt,gc) *elts = CONSTRUCTOR_ELTS (arg0);
++      tree index, value;
++      unsigned HOST_WIDE_INT ix;
++      arg1 = range_check (TYPE_DOMAIN (TREE_TYPE (arg0)), arg1);
++      FOR_EACH_CONSTRUCTOR_ELT (elts, ix, index, value)
++        {
++          if (tree_int_cst_equal (arg1, index))
++            return value;
++        }
++#endif
+     }
+   return t;
+ }
+@@ -2953,7 +2966,7 @@
+   int need_new_variant;
+ 
+   if (bindable && !PASCAL_TYPE_FILE (type))
+-    warning ("GPC supports `bindable' only for files");
++    gpc_warning ("GPC supports `bindable' only for files");
+ 
+   CHK_EM (type);
+ 
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/README gpc/p/test/README
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/README	2006-02-18 14:37:53.000000000 +0100
++++ gpc/p/test/README	2006-04-04 19:39:50.000000000 +0200
+@@ -4,7 +4,7 @@
+ Note: This file is the `README' file of the `test' directory in the GPC
+ source distribution, _and_ the file `BUGS' in GPC binary distributions.
+ 
+-GPC 2.1, 20060215
++GPC 2.1, 20060325
+ 
+ 1 The GPC Test Suite
+ ********************
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/c_gpc.pas gpc/p/test/c_gpc.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/c_gpc.pas	2006-02-18 14:23:00.000000000 +0100
++++ gpc/p/test/c_gpc.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -33,14 +33,14 @@
+ { External declarations we use from the C code }
+ 
+ var
+-  CVariable: Integer; external name 'c_variable';
++  CVariable: CInteger; external name 'c_variable';
+ 
+ procedure CRoutine; external name 'c_routine';
+ 
+ { Pascal code }
+ 
+ var
+-  PascalProgramVariable: Integer = 17; attribute (name = 'pascal_program_variable');
++  PascalProgramVariable: CInteger = 17; attribute (name = 'pascal_program_variable');
+ 
+ procedure PascalProgramRoutine; attribute (name = 'pascal_program_routine');
+ begin
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/chief40.pas gpc/p/test/chief40.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/chief40.pas	2002-09-23 09:39:12.000000000 +0200
++++ gpc/p/test/chief40.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -4,12 +4,15 @@
+   a : LongInt;
+   b : Byte;
+ 
++const
++  MaxCInt = High (CInteger);
++
+ begin
+-  a := 2 * MaxInt;
++  a := 2 * MaxCInt;
+   b := 10;
+   a := 2 * a + b;
+-  if (a = 4 * MaxInt + 10) and (a > MaxInt) then
++  if (a = 4 * MaxCInt + 10) and (a > MaxCInt) then
+     WriteLn ('OK')
+   else
+-    WriteLn ('failed ', a, ' ', 4 * MaxInt + 10, ' ', a > MaxInt)
++    WriteLn ('failed ', a, ' ', 4 * MaxCInt + 10, ' ', a > MaxCInt)
+ end.
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf186.pas gpc/p/test/fjf186.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf186.pas	2005-01-19 15:23:19.000000000 +0100
++++ gpc/p/test/fjf186.pas	2006-04-06 06:24:30.000000000 +0200
+@@ -2,7 +2,7 @@
+ var
+   f:text;
+   s:string(100);
+-  n:string(20)=ParamStr (1);  { Idea how to solve this: let init_any() }
++  n:string(520)=ParamStr (1);  { Idea how to solve this: let init_any() }
+ begin                         { generate code to do the initialization }
+   if n = '' then
+     begin
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf327.pas gpc/p/test/fjf327.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf327.pas	2005-02-23 07:09:05.000000000 +0100
++++ gpc/p/test/fjf327.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -1,10 +1,10 @@
+ program fjf327;
+ 
+ var
+-  a : Cardinal = High (Cardinal) - 2;
++  a : CCardinal = High (CCardinal) - 2;
+   c : LongInt;
+ 
+ begin
+   c := - a;
+-  if c = 2 - LongInt (High (Cardinal)) then writeln ('OK') else writeln ('failed ', c)
++  if c = 2 - LongInt (High (CCardinal)) then writeln ('OK') else writeln ('failed ', c)
+ end.
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf526a.pas gpc/p/test/fjf526a.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf526a.pas	2005-01-05 01:56:39.000000000 +0100
++++ gpc/p/test/fjf526a.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -5,7 +5,7 @@
+   a, b: LongInt;
+ 
+ begin
+-  b := 1 shl BitSizeOf (Integer) + 1;
++  b := 1 shl BitSizeOf (CInteger) + 1;
+   Rewrite (f, 1);
+   BlockWrite (f, a, SizeOf (a));
+   Reset (f, 1);
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf526b.pas gpc/p/test/fjf526b.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/fjf526b.pas	2005-01-05 01:56:47.000000000 +0100
++++ gpc/p/test/fjf526b.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -5,7 +5,7 @@
+   a, b: LongInt;
+ 
+ begin
+-  b := 1 shl BitSizeOf (Integer) + 1;
++  b := 1 shl BitSizeOf (CInteger) + 1;
+   Rewrite (f, 1);
+   BlockWrite (f, a, b and $ffffffff);
+   WriteLn ('OK')
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/gpc_c_p.pas gpc/p/test/gpc_c_p.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/gpc_c_p.pas	2006-02-18 14:23:04.000000000 +0100
++++ gpc/p/test/gpc_c_p.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -42,14 +42,14 @@
+ { External declarations we use from the C code }
+ 
+ var
+-  CVariable: Integer; external name 'c_variable';
++  CVariable: CInteger; external name 'c_variable';
+ 
+ procedure CRoutine; external name 'c_routine';
+ 
+ { Pascal code }
+ 
+ var
+-  PascalProgramVariable: Integer = 17; attribute (name = 'pascal_program_variable');
++  PascalProgramVariable: CInteger = 17; attribute (name = 'pascal_program_variable');
+ 
+ procedure PascalProgramRoutine; attribute (name = 'pascal_program_routine');
+ begin
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/gpc_c_u.pas gpc/p/test/gpc_c_u.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/gpc_c_u.pas	2006-02-18 14:23:04.000000000 +0100
++++ gpc/p/test/gpc_c_u.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -30,7 +30,7 @@
+ interface
+ 
+ var
+-  PascalUnitVariable: Integer = 42; attribute (name = 'pascal_unit_variable');
++  PascalUnitVariable: CInteger = 42; attribute (name = 'pascal_unit_variable');
+ 
+ procedure PascalUnitRoutine; attribute (name = 'pascal_unit_routine');
+ 
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/shl.pas gpc/p/test/shl.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/test/shl.pas	2002-09-23 09:39:12.000000000 +0200
++++ gpc/p/test/shl.pas	2006-04-06 05:35:48.000000000 +0200
+@@ -1,14 +1,14 @@
+ program ShlTest;
+ 
+ var
+-  a: Integer = 1;
++  a: CInteger = 1;
+   i: LongestInt;
+ 
+ begin
+ 
+-  i := 1 shl (BitSizeOf (Integer) + 3);
++  i := 1 shl (BitSizeOf (CInteger) + 3);
+   if i <= 0 then begin WriteLn ('failed a1'); Halt end;
+-  if i shr (BitSizeOf (Integer) + 3) <> 1 then begin WriteLn ('failed a2'); Halt end;
++  if i shr (BitSizeOf (CInteger) + 3) <> 1 then begin WriteLn ('failed a2'); Halt end;
+ 
+   i := 1 shl (BitSizeOf (MedInt) - 2);
+   if i <= 0 then begin WriteLn ('failed a3'); Halt end;
+@@ -18,9 +18,9 @@
+   if i <= 0 then begin WriteLn ('failed a5'); Halt end;
+   if i <> $10000000000 then begin WriteLn ('failed a6'); Halt end;
+ 
+-  i := a shl (BitSizeOf (Integer) + 3);
++  i := a shl (BitSizeOf (CInteger) + 3);
+   if i <= 0 then begin WriteLn ('failed b1'); Halt end;
+-  if i shr (BitSizeOf (Integer) + 3) <> 1 then begin WriteLn ('failed b2'); Halt end;
++  if i shr (BitSizeOf (CInteger) + 3) <> 1 then begin WriteLn ('failed b2'); Halt end;
+ 
+   i := a shl (BitSizeOf (MedInt) - 2);
+   if i <= 0 then begin WriteLn ('failed b3'); Halt end;
+diff -u /pom/kompi/gcc/tst45/pom/gpc-20060325/p/utils/gpidump.pas gpc/p/utils/gpidump.pas
+--- /pom/kompi/gcc/tst45/pom/gpc-20060325/p/utils/gpidump.pas	2006-03-24 03:47:16.000000000 +0100
++++ gpc/p/utils/gpidump.pas	2006-04-10 03:51:11.000000000 +0200
+@@ -902,6 +902,9 @@
+              {$ifdef EGCS97}
+              Ref ('size_unit');
+              {$endif}
++{$ifdef GCC_4_1}
++             if TreeCode <> FUNCTION_DECL then
++{$endif}
+              Write (', align ', Number (GetNumber (Pos1), 0))
+            end;
+       'c': Ref ('type');
+@@ -1166,6 +1169,18 @@
+       OPERATOR_DECL:    ;
+       PLACEHOLDER_EXPR: Ref ('type');
+       NON_LVALUE_EXPR:  if IsPackedAccess then Ref ('packed_info');
++{$ifdef GCC_4_1}
++      CONSTRUCTOR:    begin
++                          var j, k : GPIInt;
++                          Ref ('type');
++                          k := GetNumber (Pos1);
++                          for j := 1 to k do begin
++                            Ref('index');
++                            Ref('value')
++                          end;
++                        end;
++
++{$endif}
+       else              if not ClassDone 
+                            {$ifndef GCC_4_0} or (TreeCode = RTL_EXPR) {$endif}
+                           then Error ('unknown tree code')
+@@ -1232,7 +1247,7 @@
+         GPI_CHUNK_VERSION:        begin
+                                     WriteLn;
+                                     DumpChars (' ', 0, ChunkLength - 1);
+-                                    if (ChunkLength = 0) or not IsSuffix (GCC_VERSION, Buf^.Chars[0 .. ChunkLength - 1]) then
++                                    if (ChunkLength = 0)  { or not IsSuffix (GCC_VERSION, Buf^.Chars[0 .. ChunkLength - 1]) } then
+                                       begin
+                                         WriteLn;
+                                         Error ('backend version in GPI file does not match (rebuild GPIDump for your compiler version)')
--- gcj-4.2-4.2.4.orig/debian/patches/mips-warnings.dpatch
+++ gcj-4.2-4.2.4/debian/patches/mips-warnings.dpatch
@@ -0,0 +1,39 @@
+#! /bin/sh -e
+
+# mips-warning.dpatch by Arthur Loiret <arthur.loiret@u-psud.fr>
+# DP: Add missing #undef ASM_OUTPUT_EXTERNAL to fix warnings during build.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/config/mips/mips.h	2008-06-14 09:59:31.239353222 +0200
++++ gcc/config/mips/mips.h	2008-06-14 09:59:49.231379042 +0200
+@@ -2534,6 +2534,7 @@
+    the assembler uses length information on externals to allocate in
+    data/sdata bss/sbss, thereby saving exec time.  */
+ 
++#undef ASM_OUTPUT_EXTERNAL
+ #define ASM_OUTPUT_EXTERNAL(STREAM,DECL,NAME) \
+   mips_output_external(STREAM,DECL,NAME)
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/netbsd-all-gcc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/netbsd-all-gcc.dpatch
@@ -0,0 +1,395 @@
+#! /bin/sh -e
+
+# DP: General NetBSD support patches
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+diff -urN gcc/config/netbsd-elf-gnu.h src/gcc/config/netbsd-elf-gnu.h
+--- gcc/config/netbsd-elf-gnu.h	1970-01-01 00:00:00.000000000 +0000
++++ gcc/config/netbsd-elf-gnu.h	2003-04-24 05:42:44.000000000 +0000
+@@ -0,0 +1,98 @@
++/* Common configuration file for NetBSD ELF w/ GNU userland targets.
++   Copyright (C) 2002 Free Software Foundation, Inc.
++   Contributed by Wasabi Systems, Inc.
++
++This file is part of GNU CC.
++
++GNU CC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2, or (at your option)
++any later version.
++
++GNU CC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GNU CC; see the file COPYING.  If not, write to
++the Free Software Foundation, 59 Temple Place - Suite 330,
++Boston, MA 02111-1307, USA.  */
++
++/* TARGET_OS_CPP_BUILTINS() common to all NetBSD ELF targets.  */
++#define NETBSD_OS_CPP_BUILTINS_ELF()		\
++  do						\
++    {						\
++      NETBSD_OS_CPP_BUILTINS_COMMON();		\
++      builtin_define ("__ELF__");		\
++    }						\
++  while (0)
++
++/* This defines which switch letters take arguments.  On NetBSD, most
++   of the normal cases (defined by gcc.c) apply, and we also have -h*
++   and -z* options (for the linker) (coming from SVR4).  */
++
++#undef SWITCH_TAKES_ARG
++#define SWITCH_TAKES_ARG(CHAR)			\
++  (DEFAULT_SWITCH_TAKES_ARG (CHAR)		\
++   || (CHAR) == 'h'				\
++   || (CHAR) == 'z'				\
++   || (CHAR) == 'R')
++
++
++/* Provide a STARTFILE_SPEC appropriate for NetBSD ELF.  Here we
++   provide support for the special GCC option -static.  On ELF
++   targets, we also add the crtbegin.o file, which provides part
++   of the support for getting C++ file-scope static objects
++   constructed before entering "main".  */
++
++#define NETBSD_STARTFILE_SPEC	\
++  "%{!shared:			\
++     %{pg:gcrt0%O%s}		\
++     %{!pg:			\
++       %{p:gcrt0%O%s}		\
++       %{!p:crt0%O%s}}}		\
++   %:if-exists(crti%O%s)	\
++   %{static:%:if-exists-else(crtbeginT%O%s crtbegin%O%s)} \
++   %{!static: \
++     %{!shared:crtbegin%O%s} %{shared:crtbeginS%O%s}}"
++
++#undef STARTFILE_SPEC
++#define STARTFILE_SPEC NETBSD_STARTFILE_SPEC
++
++
++/* Provide an ENDFILE_SPEC appropriate for NetBSD ELF.  Here we
++   add crtend.o, which provides part of the support for getting
++   C++ file-scope static objects deconstructed after exiting "main".  */
++
++#define NETBSD_ENDFILE_SPEC	\
++  "%{!shared:crtend%O%s} %{shared:crtendS%O%s} \
++   %:if-exists(crtn%O%s)"
++
++#undef ENDFILE_SPEC
++#define ENDFILE_SPEC NETBSD_ENDFILE_SPEC
++
++/* Provide a LINK_SPEC appropriate for NetBSD ELF.  Here we provide
++   support for the special GCC options -assert, -R, -rpath, -shared,
++   -nostdlib, -static, -rdynamic, and -dynamic-linker.
++
++   Target-specific code can use this in conjunction with any other
++   target-specific LINK_SPEC options.
++
++   Target-specific code must provide the %(netbsd_entry_point) spec.  */
++
++/* This differs from native NetBSD only in that the linker is expected to
++   live in /lib, rather than /usr/libexec (or /libexec). */
++
++#define NETBSD_LINK_SPEC_ELF \
++  "%{assert*} %{R*} %{rpath*} \
++   %{shared:-shared} \
++   %{!shared: \
++     -dc -dp \
++     %{!nostdlib: \
++       %{!r*: \
++	 %{!e*:-e %(netbsd_entry_point)}}} \
++     %{!static: \
++       %{rdynamic:-export-dynamic} \
++       %{!dynamic-linker:-dynamic-linker /lib/ld.elf_so}} \
++     %{static:-static}}"
+diff -urN gcc/config/netbsd-gnu.h src/gcc/config/netbsd-gnu.h
+--- gcc/config/netbsd-gnu.h	1970-01-01 00:00:00.000000000 +0000
++++ gcc/config/netbsd-gnu.h	2003-04-24 05:41:04.000000000 +0000
+@@ -0,0 +1,206 @@
++/* Base configuration file for all NetBSD w/ GNU userland targets.
++   Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003
++   Free Software Foundation, Inc.
++
++This file is part of GNU CC.
++
++GNU CC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2, or (at your option)
++any later version.
++
++GNU CC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GNU CC; see the file COPYING.  If not, write to
++the Free Software Foundation, 59 Temple Place - Suite 330,
++Boston, MA 02111-1307, USA.  */
++
++/* TARGET_OS_CPP_BUILTINS() common to all NetBSD targets.  */
++#define NETBSD_OS_CPP_BUILTINS_COMMON()		\
++  do						\
++    {						\
++      builtin_define ("__NetBSD__");		\
++      builtin_assert ("system=unix");		\
++      builtin_assert ("system=NetBSD");		\
++    }						\
++  while (0)
++
++/* TARGET_OS_CPP_BUILTINS() common to all LP64 NetBSD targets.  */
++#define NETBSD_OS_CPP_BUILTINS_LP64()		\
++  do						\
++    {						\
++      builtin_define ("_LP64");			\
++    }						\
++  while (0)
++
++/* CPP_SPEC parts common to all NetBSD targets.  */
++#define NETBSD_CPP_SPEC				\
++  "%{posix:-D_POSIX_SOURCE} \
++   %{pthread:-D_REENTRANT -D_PTHREADS}"
++
++/* NETBSD_NATIVE is defined only when gcc is integrated into a NetBSD
++   system with a NetBSD userland - NetBSD with a GNU userland never defines
++   it, and all references to it have been removed for this system type. */
++
++/* FIXME: This should link to libc, but there are problems with that under
++   3.2 - find out of they still apply under 3.3! */
++
++/* Provide a LIB_SPEC appropriate for NetBSD.  Here we:
++
++   1. Select the appropriate set of libs, depending on whether we're
++      profiling.
++
++   2. Include the pthread library if -pthread is specified (only
++      if threads are enabled).
++
++   3. Include the posix library if -posix is specified.
++
++   FIXME: Could eliminate the duplication here if we were allowed to
++   use string concatenation.  */
++
++#ifdef NETBSD_ENABLE_PTHREADS
++#define NETBSD_LIB_SPEC		\
++  "%{pthread:			\
++     %{!p:			\
++       %{!pg:-lpthread}}	\
++     %{p:-lpthread_p}		\
++     %{pg:-lpthread_p}}		\
++   %{posix:			\
++     %{!p:			\
++       %{!pg:-lposix}}		\
++     %{p:-lposix_p}		\
++     %{pg:-lposix_p}}		\
++   %{!shared:			\
++     %{!symbolic:		\
++       %{!p:			\
++	 %{!pg:-lc}}		\
++       %{p:-lc_p}		\
++       %{pg:-lc_p}}}"
++#else
++#define NETBSD_LIB_SPEC		\
++  "%{posix:			\
++     %{!p:			\
++       %{!pg:-lposix}}		\
++     %{p:-lposix_p}		\
++     %{pg:-lposix_p}}		\
++   %{!shared:			\
++     %{!symbolic:		\
++       %{!p:			\
++	 %{!pg:-lc}}		\
++       %{p:-lc_p}		\
++       %{pg:-lc_p}}}"
++#endif
++
++#undef LIB_SPEC
++#define LIB_SPEC NETBSD_LIB_SPEC
++
++/* Provide a LIBGCC_SPEC appropriate for NetBSD.  We also want to exclude
++   libgcc with -symbolic.  */
++
++#ifdef NETBSD_NATIVE
++#define NETBSD_LIBGCC_SPEC	\
++  "%{!symbolic:			\
++     %{!shared:			\
++       %{!p:			\
++	 %{!pg: -lgcc}}}	\
++     %{shared: -lgcc_pic}	\
++     %{p: -lgcc_p}		\
++     %{pg: -lgcc_p}}"
++#else
++#define NETBSD_LIBGCC_SPEC "%{!shared:%{!symbolic: -lgcc}}"
++#endif
++
++#undef LIBGCC_SPEC
++#define LIBGCC_SPEC NETBSD_LIBGCC_SPEC
++
++/* When building shared libraries, the initialization and finalization 
++   functions for the library are .init and .fini respectively.  */
++
++#define COLLECT_SHARED_INIT_FUNC(STREAM,FUNC)				\
++  do {									\
++    fprintf ((STREAM), "void __init() __asm__ (\".init\");");		\
++    fprintf ((STREAM), "void __init() {\n\t%s();\n}\n", (FUNC));	\
++  } while (0)
++
++#define COLLECT_SHARED_FINI_FUNC(STREAM,FUNC)				\
++  do {									\
++    fprintf ((STREAM), "void __fini() __asm__ (\".fini\");");		\
++    fprintf ((STREAM), "void __fini() {\n\t%s();\n}\n", (FUNC));	\
++  } while (0)
++
++#undef TARGET_HAS_F_SETLKW
++#define TARGET_HAS_F_SETLKW
++
++/* Implicit library calls should use memcpy, not bcopy, etc.  */
++
++#undef TARGET_MEM_FUNCTIONS
++#define TARGET_MEM_FUNCTIONS 1
++
++/* Handle #pragma weak and #pragma pack.  */
++
++#define HANDLE_SYSV_PRAGMA 1
++
++
++/* Define some types that are the same on all NetBSD platforms,
++   making them agree with <machine/ansi.h>.  */
++
++#undef WCHAR_TYPE
++#define WCHAR_TYPE "int"
++
++#undef WCHAR_TYPE_SIZE
++#define WCHAR_TYPE_SIZE 32
++
++#undef WINT_TYPE
++#define WINT_TYPE "int"
++
++
++/* Attempt to turn on execute permission for the stack.  This may be
++   used by TRANSFER_FROM_TRAMPOLINE of the target needs it (that is,
++   if the target machine can change execute permissions on a page).
++
++   There is no way to query the execute permission of the stack, so
++   we always issue the mprotect() call.
++
++   Note that we go out of our way to use namespace-non-invasive calls
++   here.  Unfortunately, there is no libc-internal name for mprotect().
++
++   Also note that no errors should be emitted by this code; it is considered
++   dangerous for library calls to send messages to stdout/stderr.  */
++
++#define NETBSD_ENABLE_EXECUTE_STACK					\
++extern void __enable_execute_stack (void *);				\
++void									\
++__enable_execute_stack (addr)						\
++     void *addr;							\
++{									\
++  extern int mprotect (void *, size_t, int);				\
++  extern int __sysctl (int *, unsigned int, void *, size_t *,		\
++		       void *, size_t);					\
++									\
++  static int size;							\
++  static long mask;							\
++									\
++  char *page, *end;							\
++									\
++  if (size == 0)							\
++    {									\
++      int mib[2];							\
++      size_t len;							\
++									\
++      mib[0] = 6; /* CTL_HW */						\
++      mib[1] = 7; /* HW_PAGESIZE */					\
++      len = sizeof (size);						\
++      (void) __sysctl (mib, 2, &size, &len, NULL, 0);			\
++      mask = ~((long) size - 1);					\
++    }									\
++									\
++  page = (char *) (((long) addr) & mask);				\
++  end  = (char *) ((((long) (addr + TRAMPOLINE_SIZE)) & mask) + size);	\
++									\
++  /* 7 == PROT_READ | PROT_WRITE | PROT_EXEC */				\
++  (void) mprotect (page, end - page, 7);				\
++}
+diff -urN gcc/config/t-netbsd-gnu src/gcc/config/t-netbsd-gnu
+--- gcc/config/t-netbsd-gnu	1970-01-01 00:00:00.000000000 +0000
++++ gcc/config/t-netbsd-gnu	2003-02-21 10:31:17.000000000 +0000
+@@ -0,0 +1,5 @@
++# Don't run fixproto
++STMP_FIXPROTO =
++
++# Always build crtstuff with PIC.
++CRTSTUFF_T_CFLAGS = -fPIC
+diff -urN gcc/config.gcc src/gcc/config.gcc
+--- gcc/config.gcc	2003-03-02 07:39:03.000000000 +0000
++++ gcc/config.gcc	2003-04-24 06:02:55.000000000 +0000
+@@ -329,6 +329,45 @@
+ 		;;
+ 	esac
+ 	;;
++*-*-netbsd*-gnu*)
++	tmake_file="t-slibgcc-elf-ver t-libc-ok t-netbsd"
++	xm_defines=POSIX
++	gas=yes
++	gnu_ld=yes
++
++	# This section MUST go above the matches for Hurd and native NetBSD,
++	# or they will catch the value, due to using excessively permissive 
++	# match values. Also, $machine doesn't contain any version data, on
++	# a NetBSD w/ GNU userland machine, so we use uname -r instead.
++
++	osr=`uname -r`
++
++	# NetBSD 2.0 and later get POSIX threads enabled by default.
++	# Allow them to be explicitly enabled on any other version.
++	case x${enable_threads} in
++	x)
++		case $osr in
++		[2-9]*)
++			thread_file='posix'
++			tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
++			;;
++		esac
++		;;
++	xyes | xposix)
++		thread_file='posix'
++		tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS"
++		;;
++	esac
++
++	# NetBSD 1.7 and later are set up to use GCC's crtstuff for
++	# ELF configurations.  We will clear extra_parts in the
++	# a.out configurations.
++	case $osr in
++	1.[7-9]* | [2-9]*)
++		extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o"
++		;;
++	esac
++	;;
+ *-*-gnu*)
+ 	# On the Hurd, the setup is just about the same on
+ 	# each different CPU.  The specific machines that we
--- gcj-4.2-4.2.4.orig/debian/patches/svn-updates.dpatch
+++ gcj-4.2-4.2.4/debian/patches/svn-updates.dpatch
@@ -0,0 +1,1902 @@
+#! /bin/sh -e
+
+# DP: updates from the 4.2 branch upto 20081007.
+
+last_updated()
+{
+	cat > ${dir}LAST_UPDATED <<EOF
+Wed Oct  8 12:16:06 CEST 2008
+Wed Oct  8 10:16:06 UTC 2008 (revision 140971)
+EOF
+}
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	last_updated
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# svn diff svn://gcc.gnu.org/svn/gcc/tags/ubuntu/gcc-4_2_4-release svn://gcc.gnu.org/svn/gcc/branches/ubuntu/gcc-4_2-branch \
+#     | awk '/^Index:.*\.class/ {skip=1; next} /^Index:/ { skip=0 } skip==0'
+
+Index: libdecnumber/Makefile.in
+===================================================================
+--- libdecnumber/Makefile.in	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libdecnumber/Makefile.in	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -122,7 +122,7 @@
+ distclean: clean
+ 	-rm -f config.h stamp-h1 config.status config.cache config.log \
+ 	  configure.lineno configure.status.lineno Makefile localedir.h \
+-	  localedir.hs
++	  localedir.hs gstdint.h
+ 
+ maintainer-clean: distclean
+ 	@echo "This command is intended for maintainers to use"
+Index: libdecnumber/ChangeLog
+===================================================================
+--- libdecnumber/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libdecnumber/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,11 @@
++2008-06-16  Ben Elliston  <bje@au.ibm.com>
++
++	boostrap/27367
++	Backport from mainline:
++
++	2008-04-18  Ben Elliston  <bje@au.ibm.com>
++	* Makefile.in (distclean): Add gstdint.h.
++
+ 2008-05-19  Release Manager
+ 
+ 	* GCC 4.2.4 released.
+Index: gcc/regrename.c
+===================================================================
+--- gcc/regrename.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/regrename.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1335,6 +1335,10 @@
+ 		   enum machine_mode new_mode, unsigned int regno,
+ 		   unsigned int copy_regno ATTRIBUTE_UNUSED)
+ {
++  if (GET_MODE_SIZE (copy_mode) < GET_MODE_SIZE (orig_mode)
++      && GET_MODE_SIZE (copy_mode) < GET_MODE_SIZE (new_mode))
++    return NULL_RTX;
++
+   if (orig_mode == new_mode)
+     return gen_rtx_raw_REG (new_mode, regno);
+   else if (mode_change_ok (orig_mode, new_mode, regno))
+Index: gcc/doc/install.texi2html
+===================================================================
+--- gcc/doc/install.texi2html	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/doc/install.texi2html	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -32,7 +32,7 @@
+       echo "@clear DEVELOPMENT"
+    fi
+    echo "@set srcdir $SOURCEDIR/.."
+-) > $SOURCEDIR/include/gcc-vers.texi
++) > $DESTDIR/gcc-vers.texi
+ 
+ for x in index.html specific.html prerequisites.html download.html configure.html \
+          build.html test.html finalinstall.html binaries.html old.html \
+@@ -40,7 +40,7 @@
+ do
+     define=`echo $x | sed -e 's/\.//g'`
+     echo "define = $define"
+-    $MAKEINFO -I $SOURCEDIR -I $SOURCEDIR/include $SOURCEDIR/install.texi --html --no-split -D$define -o$DESTDIR/$x
++    $MAKEINFO -I $SOURCEDIR -I $SOURCEDIR/include $SOURCEDIR/install.texi -I $DESTDIR --html --no-split -D$define -o$DESTDIR/$x
+ done
+ 
+-rm $SOURCEDIR/include/gcc-vers.texi
++rm $DESTDIR/gcc-vers.texi
+Index: gcc/java/class.c
+===================================================================
+--- gcc/java/class.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/java/class.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,6 +1,6 @@
+ /* Functions related to building classes and their related objects.
+    Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+-   2005, 2006, 2007 Free Software Foundation, Inc.
++   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+ 
+ This file is part of GCC.
+ 
+@@ -1143,7 +1143,13 @@
+ 	return build_indirect_class_ref (type);
+ 
+       if (type == output_class && flag_indirect_classes)
+-	return this_classdollar;
++	{
++	  /* This can be NULL if we see a JNI stub before we see any
++	     other method.  */
++	  if (! this_classdollar)
++	    this_classdollar = build_classdollar_field (output_class);
++	  return this_classdollar;
++	}
+       
+       if (TREE_CODE (type) == RECORD_TYPE)
+ 	return build_static_class_ref (type);
+Index: gcc/java/ChangeLog
+===================================================================
+--- gcc/java/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/java/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,13 @@
++2008-06-14  Tom Tromey  <tromey@redhat.com>
++
++	PR java/36247:
++	* class.c (build_class_ref): Initialize this_classdollar when
++	needed.
++
++2008-06-06  Release Manager
++
++	* GCC 4.3.1 released.
++
+ 2008-04-01  Joseph Myers  <joseph@codesourcery.com>
+ 
+ 	* gcj.texi: Include gpl_v3.texi instead of gpl.texi
+Index: gcc/DATESTAMP
+===================================================================
+--- gcc/DATESTAMP	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/DATESTAMP	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1 +1 @@
+-20080519
++20081008
+Index: gcc/fold-const.c
+===================================================================
+--- gcc/fold-const.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/fold-const.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -816,7 +816,7 @@
+ 	if (hden < 0)
+ 	  neg_double (lden, hden, &labs_den, &habs_den);
+ 
+-	/* If (2 * abs (lrem) >= abs (lden)) */
++	/* If (2 * abs (lrem) >= abs (lden)), adjust the quotient.  */
+ 	mul_double ((HOST_WIDE_INT) 2, (HOST_WIDE_INT) 0,
+ 		    labs_rem, habs_rem, &ltwice, &htwice);
+ 
+@@ -824,7 +824,7 @@
+ 	     < (unsigned HOST_WIDE_INT) htwice)
+ 	    || (((unsigned HOST_WIDE_INT) habs_den
+ 		 == (unsigned HOST_WIDE_INT) htwice)
+-		&& (labs_den < ltwice)))
++		&& (labs_den <= ltwice)))
+ 	  {
+ 	    if (*hquo < 0)
+ 	      /* quo = quo - 1;  */
+Index: gcc/ChangeLog
+===================================================================
+--- gcc/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,85 @@
++2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>
++
++	Backport from mainline:
++	2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>
++
++	PR middle-end/37731
++	* expmed.c (expand_mult): Properly check DImode constant in
++	CONST_DOUBLE.
++
++2008-09-28  Eric Botcazou  <ebotcazou@adacore.com>
++
++	PR middle-end/36575
++	* fold-const.c (div_and_round_double) <ROUND_DIV_EXPR>: Fix typo.
++
++2008-09-19  Uros Bizjak  <ubizjak@gmail.com>
++
++	Backport from mainline:
++	2008-09-18  Uros Bizjak  <ubizjak@gmail.com>
++
++	PR rtl-optimization/37544
++	* regrename.c (maybe_mode_change): Exit early when copy_mode
++	is narrower than orig_mode and narrower than new_mode.
++
++2008-08-29  Uros Bizjak  <ubizjak@gmail.com>
++
++	Backport from mainline:
++	2008-08-14  Christophe Saout  <christophe@saout.de>
++		    Uros Bizjak  <ubizjak@gmail.com>
++
++	PR target/37101
++	* config/i386/sse.md (vec_concatv2di): Remove movlps alternative.
++
++2008-08-06  Aldy Hernandez  <aldyh@redhat.com>
++
++	PR middle-end/35432
++	* gimplify.c (gimplify_modify_expr): Do not optimize
++	zero-sized types if want_value.
++
++2008-07-04  Alan Modra  <amodra@bigpond.net.au>
++
++	PR target/36634
++	* config/rs6000/rs6000.md (call, call_value): Don't arrange for
++	pic_offset_table_rtx to be marked as used here.
++	(call_nonlocal_sysv, call_value_nonlocal_sysv): Add split for
++	TARGET_SECURE_PLT to "use" pic_offset_table_rtx.
++	(call_nonlocal_sysv_secure, call_value_nonlocal_sysv_secure): New insn.
++	(sibcall_nonlocal_sysv, sibcall_value_nonlocal_sysv): Assert
++	!TARGET_SECURE_PLT.
++
++2008-06-05  Richard Sandiford  <rdsandiford@googlemail.com>
++
++	* config/mips/mips.c (mips_emit_loadgp): Return early if
++	there is nothing do to, otherwise emit a blockage if
++	!TARGET_EXPLICIT_RELOCS || current_function_profile.
++	* config/mips/mips.md (loadgp_blockage): Use SI rather than DI.
++
++2008-05-29  Eric Botcazou  <ebotcazou@adacore.com>
++
++	* tree-nested.c (check_for_nested_with_variably_modified): Fix typo.
++
++2008-05-23  Marius Strobl <marius@FreeBSD.org>
++
++	* gthr-posix.h (__gthread_active_p): Use the Solaris implementation
++	for FreeBSD as well.
++	* gthr-posix95.h: Likewise.
++
++2008-05-20  Adam Nemet  <anemet@caviumnetworks.com>
++
++	PR middle-end/36194
++	* combine.c (check_conversion): Rename to check_promoted_subreg.
++	Don't call record_truncated_value from here.
++	(record_truncated_value): Turn it into a for_each_rtx callback.
++	(record_truncated_values): New function.
++	(combine_instructions): Call note_uses with
++	record_truncated_values.  Change name of check_conversion to
++	check_promoted_subreg.
++
++2008-05-20  Joseph Myers  <joseph@codesourcery.com>
++
++	* doc/install.texi2html: Generate gcc-vers.texi in $DESTDIR not
++	$SOURCEDIR/include.
++
+ 2008-05-19  Release Manager
+ 
+ 	* GCC 4.2.4 released.
+@@ -2610,7 +2692,7 @@
+ 	* config/rs6000/rs6000.c (rs6000_function_value): Look at bit size
+ 	instead of precision.
+ 
+-2007-03-08  Volker Reichelt  <reichelt@netcologne.de>
++2007-03-08  Volker Reichelt  <v.reichelt@netcologne.de>
+ 
+ 	PR c++/30852
+ 	* c-common.c (fold_offsetof_1): Handle COMPOUND_EXPR.
+Index: gcc/testsuite/gcc.c-torture/compile/pr35432.c
+===================================================================
+--- gcc/testsuite/gcc.c-torture/compile/pr35432.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.c-torture/compile/pr35432.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,11 @@
++/* PR middle-end/35432 */
++
++struct A
++{
++  char c[0];
++};
++
++void foo(struct A a)
++{
++  (a = a).c;
++}
+Index: gcc/testsuite/gcc.target/i386/pr37101.c
+===================================================================
+--- gcc/testsuite/gcc.target/i386/pr37101.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.target/i386/pr37101.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,64 @@
++/* { dg-do compile } */
++/* { dg-options "-O2 -msse2 -ftree-vectorize -march=nocona" } */
++
++typedef __SIZE_TYPE__ size_t;
++extern void *malloc (size_t);
++extern void free (void *);
++
++typedef struct _Resource
++{
++  struct _Resource *next;
++  unsigned int id;
++} ResourceRec, *ResourcePtr;
++
++typedef struct _ClientResource
++{
++  ResourcePtr *resources;
++  int elements;
++  int buckets;
++  int hashsize;
++} ClientResourceRec;
++
++static ClientResourceRec clientTable[256];
++
++void
++RebuildTable (int client)
++{
++  int j;
++  ResourcePtr res, next;
++  ResourcePtr **tails, *resources;
++  ResourcePtr **tptr, *rptr;
++
++  j = 2 * clientTable[client].buckets;
++
++  tails =
++    (ResourcePtr **) malloc ((unsigned long) (j * sizeof (ResourcePtr *)));
++  resources =
++    (ResourcePtr *) malloc ((unsigned long) (j * sizeof (ResourcePtr)));
++
++  for (rptr = resources, tptr = tails; --j >= 0; rptr++, tptr++)
++    {
++      *rptr = ((ResourcePtr) ((void *) 0));
++      *tptr = rptr;
++    }
++
++  clientTable[client].hashsize++;
++  for (j = clientTable[client].buckets,
++       rptr = clientTable[client].resources; --j >= 0; rptr++)
++    {
++      for (res = *rptr; res; res = next)
++	{
++	  next = res->next;
++	  res->next = ((ResourcePtr) ((void *) 0));
++	  tptr = &tails[Hash (client, res->id)];
++	  **tptr = res;
++	  *tptr = &res->next;
++	}
++    }
++  free ((void *) tails);
++  clientTable[client].buckets *= 2;
++  free ((void *) clientTable[client].resources);
++  clientTable[client].resources = resources;
++}
++
++/* { dg-final { scan-assembler-not "movlps" } } */
+Index: gcc/testsuite/gnat.dg/conv_decimal.adb
+===================================================================
+--- gcc/testsuite/gnat.dg/conv_decimal.adb	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gnat.dg/conv_decimal.adb	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,34 @@
++-- PR middle-end/36575
++-- reporter: Laurent Guerby <laurent@guerby.net>
++-- { dg-do run }
++
++procedure Conv_Decimal is
++
++  type Unsigned_Over_8 is mod 2**8+2;
++  type Signed_Over_8 is range -200 .. 200;
++
++  procedure Assert(Truth: Boolean) is
++  begin
++    if not Truth then
++      raise Program_Error;
++    end if;
++  end;
++
++  type Decim is delta 0.1 digits 5;
++
++  Halfway  : Decim := 2.5;
++  Neg_Half : Decim := -2.5;
++
++  Big      : Unsigned_Over_8;
++  Also_Big : Signed_Over_8;
++
++begin
++  Big := Unsigned_Over_8 (Halfway); -- Rounds up by 4.6(33).
++  Assert(Big = 3);
++
++  Also_Big := Signed_Over_8 (Halfway); -- Rounds up by 4.6(33).
++  Assert(Also_Big = 3);
++
++  Also_Big := Signed_Over_8 (Neg_Half); -- Rounds down by 4.6(33).
++  Assert(Also_Big = -3);
++end;
+Index: gcc/testsuite/gcc.dg/nested-func-6.c
+===================================================================
+--- gcc/testsuite/gcc.dg/nested-func-6.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.dg/nested-func-6.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,14 @@
++/* { dg-do compile } */
++/* { dg-options "-O -Winline" } */
++
++static inline int foo1 (int a)
++{                       /* { dg-bogus "function not inlinable" } */
++  void bar1 (int b)
++  {}
++  return a;
++}
++
++int foo2 (int a)
++{
++  return foo1 (a);
++}
+Index: gcc/testsuite/gcc.dg/torture/pr37731-1.c
+===================================================================
+--- gcc/testsuite/gcc.dg/torture/pr37731-1.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.dg/torture/pr37731-1.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,17 @@
++/* { dg-do run } */
++
++extern void abort ();
++
++unsigned long long xh = 1;
++
++int
++main ()
++{
++  unsigned long long yh = 0xffffffffull;
++  unsigned long long z = xh * yh;
++
++  if (z != yh)
++    abort ();
++
++  return 0;
++}
+Index: gcc/testsuite/gcc.dg/torture/pr37731-2.c
+===================================================================
+--- gcc/testsuite/gcc.dg/torture/pr37731-2.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.dg/torture/pr37731-2.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,17 @@
++/* { dg-do run } */
++
++extern void abort ();
++
++long long xh = 1;
++
++int
++main ()
++{
++  long long yh = 0xffffffffll;
++  long long z = xh * yh;
++
++  if (z != yh)
++    abort ();
++
++  return 0;
++}
+Index: gcc/testsuite/gcc.dg/pr37544.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr37544.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.dg/pr37544.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,38 @@
++/* { dg-do run } */
++/* { dg-options "-O2" } */
++/* { dg-options "-O2 -msse2 -mtune=nocona -mfpmath=387" { target { i?86-*-* x86_64-*-* } } } */
++
++#ifdef __i386__
++#include "i386-cpuid.h"
++#endif
++
++extern void abort (void);
++
++int main(void)
++{
++  double arr[1000];
++  double a, b;
++
++  int i;
++
++#ifdef __i386__
++  unsigned long cpu_facilities;
++
++  cpu_facilities = i386_cpuid_edx ();
++ 
++  /* Run SSE2 test only if host has SSE2 support.  */
++  if (!(cpu_facilities & bit_SSE2))
++    return 0;
++#endif
++
++  for (i = 0; i < 1000; i++)
++    arr[i] = 4294967296.0 + (double)i;
++
++  a = arr[0];
++  b = (unsigned int)((unsigned long long int)a % 4294967296ULL);
++
++  if (b >= 4294967296.0)
++    abort ();
++
++  return 0;
++}
+Index: gcc/testsuite/gcc.dg/pr36194.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pr36194.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 0)
++++ gcc/testsuite/gcc.dg/pr36194.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -0,0 +1,25 @@
++/* { dg-do run } */
++/* { dg-options "-O2" } */
++
++void abort (void);
++
++__attribute__ ((noinline)) void
++f (int i)
++{
++  if (i != 0x87654321)
++    abort ();
++  asm ("");
++}
++
++__attribute__ ((noinline)) void
++g (long long a)
++{
++  f (a);
++  asm ("");
++}
++
++main ()
++{
++  g (0x1234567887654321ll);
++  return 0;
++}
+Index: gcc/testsuite/ChangeLog
+===================================================================
+--- gcc/testsuite/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/testsuite/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,46 @@
++2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>
++
++	Backport from mainline:
++	2008-10-07  H.J. Lu  <hongjiu.lu@intel.com>
++
++	PR middle-end/37731
++	* expmed.c (expand_mult): Properly check DImode constant in
++	CONST_DOUBLE.
++
++2008-09-28  Eric Botcazou  <ebotcazou@adacore.com>
++
++	* gnat.dg/conv_decimal.adb: New test.
++
++2008-09-19  Uros Bizjak  <ubizjak@gmail.com>
++
++	Backport from mainline:
++	2008-09-18  Uros Bizjak  <ubizjak@gmail.com>
++
++	PR rtl-optimization/37544
++	* gcc.dg/pr37544.c: New test.
++
++2008-08-29  Uros Bizjak  <ubizjak@gmail.com>
++
++	Backport from mainline:
++	2008-08-14  Uros Bizjak  <ubizjak@gmail.com>
++
++	PR target/37101
++	* gcc.target/i386/pr37101.c: New test.
++
++2008-08-06  Aldy Hernandez  <aldyh@redhat.com>
++
++	PR middle-end/35432
++	* gcc.c-torture/compile/pr35432.c: New file.
++
++2008-05-29  Eric Botcazou  <ebotcazou@adacore.com>
++
++	* gcc.dg/nested-func-6.c: New test.
++
++2008-05-20  Adam Nemet  <anemet@caviumnetworks.com>
++
++	PR middle-end/36194
++	* gcc.dg/pr36194.c: New test.
++
+ 2008-05-19  Release Manager
+ 
+ 	* GCC 4.2.4 released.
+@@ -293,7 +336,7 @@
+ 	PR testsuite/30459
+ 	g++.dg/eh/ia64-2.C: Require weak support.
+ 
+-2008-01-02  Volker Reichelt  <reichelt@netcologne.de>
++2008-01-02  Volker Reichelt  <v.reichelt@netcologne.de>
+ 
+ 	Backport:
+ 	2007-10-31  Paolo Carlini  <pcarlini@suse.de>
+@@ -1385,7 +1428,7 @@
+ 	PR libfortran/31001
+ 	* gfortran.dg/zero_sized_3.f90: New test.
+ 
+-2007-03-08  Volker Reichelt  <reichelt@netcologne.de>
++2007-03-08  Volker Reichelt  <v.reichelt@netcologne.de>
+ 
+ 	PR c++/30852
+ 	* g++.dg/ext/offsetof1.C: Add cases with volatile.
+Index: gcc/cp/ChangeLog
+===================================================================
+--- gcc/cp/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/cp/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -82,7 +82,7 @@
+ 	PR c++/33959
+ 	* pt.c (tsubst_aggr_type): Make sure our context is complete.
+ 
+-2008-01-02  Volker Reichelt  <reichelt@netcologne.de>
++2008-01-02  Volker Reichelt  <v.reichelt@netcologne.de>
+ 
+ 	Backport:
+ 	2007-10-31  Paolo Carlini  <pcarlini@suse.de>
+@@ -545,7 +545,7 @@
+ 	PR C++/30168
+ 	* optimize.c (update_cloned_parm): Copy DECL_COMPLEX_GIMPLE_REG_P also.
+ 
+-2007-03-08  Volker Reichelt  <reichelt@netcologne.de>
++2007-03-08  Volker Reichelt  <v.reichelt@netcologne.de>
+ 
+ 	PR c++/30852
+ 	* semantics.c (finish_offsetof): Handle COMPOUND_EXPR.
+Index: gcc/gimplify.c
+===================================================================
+--- gcc/gimplify.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/gimplify.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -3540,7 +3540,7 @@
+      side as statements and throw away the assignment.  Do this after
+      gimplify_modify_expr_rhs so we handle TARGET_EXPRs of addressable
+      types properly.  */
+-  if (zero_sized_type (TREE_TYPE (*from_p)))
++  if (zero_sized_type (TREE_TYPE (*from_p)) && !want_value)
+     {
+       gimplify_stmt (from_p);
+       gimplify_stmt (to_p);
+Index: gcc/expmed.c
+===================================================================
+--- gcc/expmed.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/expmed.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -3163,7 +3163,8 @@
+ 	{
+ 	  /* If we are multiplying in DImode, it may still be a win
+ 	     to try to work with shifts and adds.  */
+-	  if (CONST_DOUBLE_HIGH (op1) == 0)
++	  if (CONST_DOUBLE_HIGH (op1) == 0
++	      && CONST_DOUBLE_LOW (op1) > 0)
+ 	    coeff = CONST_DOUBLE_LOW (op1);
+ 	  else if (CONST_DOUBLE_LOW (op1) == 0
+ 		   && EXACT_POWER_OF_2_OR_ZERO_P (CONST_DOUBLE_HIGH (op1)))
+Index: gcc/tree-nested.c
+===================================================================
+--- gcc/tree-nested.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/tree-nested.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -749,7 +749,7 @@
+   for (cgn = cgn->nested; cgn ; cgn = cgn->next_nested)
+     {
+       for (arg = DECL_ARGUMENTS (cgn->decl); arg; arg = TREE_CHAIN (arg))
+-	if (variably_modified_type_p (TREE_TYPE (arg), 0), orig_fndecl)
++	if (variably_modified_type_p (TREE_TYPE (arg), orig_fndecl))
+ 	  return true;
+ 
+       if (check_for_nested_with_variably_modified (cgn->decl, orig_fndecl))
+Index: gcc/combine.c
+===================================================================
+--- gcc/combine.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/combine.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -430,7 +430,7 @@
+ static enum rtx_code simplify_comparison (enum rtx_code, rtx *, rtx *);
+ static void update_table_tick (rtx);
+ static void record_value_for_reg (rtx, rtx, rtx);
+-static void check_conversions (rtx, rtx);
++static void check_promoted_subreg (rtx, rtx);
+ static void record_dead_and_set_regs_1 (rtx, rtx, void *);
+ static void record_dead_and_set_regs (rtx);
+ static int get_last_value_validate (rtx *, rtx, int, int);
+@@ -447,7 +447,8 @@
+ static void record_promoted_value (rtx, rtx);
+ static int unmentioned_reg_p_1 (rtx *, void *);
+ static bool unmentioned_reg_p (rtx, rtx);
+-static void record_truncated_value (rtx);
++static int record_truncated_value (rtx *, void *);
++static void record_truncated_values (rtx *, void *);
+ static bool reg_truncated_to_mode (enum machine_mode, rtx);
+ static rtx gen_lowpart_or_truncate (enum machine_mode, rtx);
+ 
+@@ -819,8 +820,13 @@
+ 	    {
+ 	      /* See if we know about function return values before this
+ 		 insn based upon SUBREG flags.  */
+-	      check_conversions (insn, PATTERN (insn));
++	      check_promoted_subreg (insn, PATTERN (insn));
+ 
++	      /* See if we can find hardregs and subreg of pseudos in
++		 narrower modes.  This could help turning TRUNCATEs
++		 into SUBREGs.  */
++	      note_uses (&PATTERN (insn), record_truncated_values, NULL);
++
+ 	      /* Try this insn with each insn it links back to.  */
+ 
+ 	      for (links = LOG_LINKS (insn); links; links = XEXP (links, 1))
+@@ -11138,13 +11144,15 @@
+   return false;
+ }
+ 
+-/* X is a REG or a SUBREG.  If X is some sort of a truncation record
+-   it.  For non-TRULY_NOOP_TRUNCATION targets we might be able to turn
+-   a truncate into a subreg using this information.  */
++/* Callback for for_each_rtx.  If *P is a hard reg or a subreg record the mode
++   that the register is accessed in.  For non-TRULY_NOOP_TRUNCATION targets we
++   might be able to turn a truncate into a subreg using this information.
++   Return -1 if traversing *P is complete or 0 otherwise.  */
+ 
+-static void
+-record_truncated_value (rtx x)
++static int
++record_truncated_value (rtx *p, void *data ATTRIBUTE_UNUSED)
+ {
++  rtx x = *p;
+   enum machine_mode truncated_mode;
+ 
+   if (GET_CODE (x) == SUBREG && REG_P (SUBREG_REG (x)))
+@@ -11153,11 +11161,11 @@
+       truncated_mode = GET_MODE (x);
+ 
+       if (GET_MODE_SIZE (original_mode) <= GET_MODE_SIZE (truncated_mode))
+-	return;
++	return -1;
+ 
+       if (TRULY_NOOP_TRUNCATION (GET_MODE_BITSIZE (truncated_mode),
+ 				 GET_MODE_BITSIZE (original_mode)))
+-	return;
++	return -1;
+ 
+       x = SUBREG_REG (x);
+     }
+@@ -11166,7 +11174,7 @@
+   else if (REG_P (x) && REGNO (x) < FIRST_PSEUDO_REGISTER)
+     truncated_mode = GET_MODE (x);
+   else
+-    return;
++    return 0;
+ 
+   if (reg_stat[REGNO (x)].truncated_to_mode == 0
+       || reg_stat[REGNO (x)].truncation_label < label_tick
+@@ -11176,23 +11184,30 @@
+       reg_stat[REGNO (x)].truncated_to_mode = truncated_mode;
+       reg_stat[REGNO (x)].truncation_label = label_tick;
+     }
++
++  return -1;
+ }
+ 
+-/* Scan X for promoted SUBREGs and truncated REGs.  For each one
+-   found, note what it implies to the registers used in it.  */
++/* Callback for note_uses.  Find hardregs and subregs of pseudos and
++   the modes they are used in.  This can help truning TRUNCATEs into
++   SUBREGs.  */
+ 
+ static void
+-check_conversions (rtx insn, rtx x)
++record_truncated_values (rtx *x, void *data ATTRIBUTE_UNUSED)
+ {
+-  if (GET_CODE (x) == SUBREG || REG_P (x))
+-    {
+-      if (GET_CODE (x) == SUBREG
+-	  && SUBREG_PROMOTED_VAR_P (x)
+-	  && REG_P (SUBREG_REG (x)))
+-	record_promoted_value (insn, x);
++  for_each_rtx (x, record_truncated_value, NULL);
++}
+ 
+-      record_truncated_value (x);
+-    }
++/* Scan X for promoted SUBREGs.  For each one found,
++   note what it implies to the registers used in it.  */
++
++static void
++check_promoted_subreg (rtx insn, rtx x)
++{
++  if (GET_CODE (x) == SUBREG
++      && SUBREG_PROMOTED_VAR_P (x)
++      && REG_P (SUBREG_REG (x)))
++    record_promoted_value (insn, x);
+   else
+     {
+       const char *format = GET_RTX_FORMAT (GET_CODE (x));
+@@ -11202,13 +11217,13 @@
+ 	switch (format[i])
+ 	  {
+ 	  case 'e':
+-	    check_conversions (insn, XEXP (x, i));
++	    check_promoted_subreg (insn, XEXP (x, i));
+ 	    break;
+ 	  case 'V':
+ 	  case 'E':
+ 	    if (XVEC (x, i) != 0)
+ 	      for (j = 0; j < XVECLEN (x, i); j++)
+-		check_conversions (insn, XVECEXP (x, i, j));
++		check_promoted_subreg (insn, XVECEXP (x, i, j));
+ 	    break;
+ 	  }
+     }
+Index: gcc/gthr-posix.h
+===================================================================
+--- gcc/gthr-posix.h	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/gthr-posix.h	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -152,9 +152,12 @@
+    it is passed so we cannot pretend that the interface is active if -pthreads
+    is not specified.  On Solaris 2.5.1, the interface is not exposed at all so
+    we need to play the usual game with weak symbols.  On Solaris 10 and up, a
+-   working interface is always exposed.  */
++   working interface is always exposed.  On FreeBSD 6 and later, libc also
++   exposes a dummy POSIX threads interface, similar to what Solaris 2.6 up
++   to 9 does.  FreeBSD >= 700014 even provides a pthread_cancel stub in libc,
++   which means the alternate __gthread_active_p below cannot be used there.  */
+ 
+-#if defined(__sun) && defined(__svr4__)
++#if defined(__FreeBSD__) || (defined(__sun) && defined(__svr4__))
+ 
+ static volatile int __gthread_active = -1;
+ 
+@@ -197,7 +200,7 @@
+   return __gthread_active_latest_value != 0;
+ }
+ 
+-#else /* not Solaris */
++#else /* neither FreeBSD nor Solaris */
+ 
+ static inline int
+ __gthread_active_p (void)
+@@ -207,7 +210,7 @@
+   return __gthread_active_ptr != 0;
+ }
+ 
+-#endif /* Solaris */
++#endif /* FreeBSD or Solaris */
+ 
+ #else /* not SUPPORTS_WEAK */
+ 
+Index: gcc/config/i386/sse.md
+===================================================================
+--- gcc/config/i386/sse.md	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/config/i386/sse.md	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -3576,20 +3576,19 @@
+    (set_attr "mode" "TI,V4SF,V2SF")])
+ 
+ (define_insn "*vec_concatv2di"
+-  [(set (match_operand:V2DI 0 "register_operand"     "=Y,?Y,Y,x,x,x")
++  [(set (match_operand:V2DI 0 "register_operand"     "=Y,?Y,Y,x,x")
+ 	(vec_concat:V2DI
+-	  (match_operand:DI 1 "nonimmediate_operand" " m,*y,0,0,0,m")
+-	  (match_operand:DI 2 "vector_move_operand"  " C, C,Y,x,m,0")))]
++	  (match_operand:DI 1 "nonimmediate_operand" " m,*y,0,0,0")
++	  (match_operand:DI 2 "vector_move_operand"  " C, C,Y,x,m")))]
+   "TARGET_SSE"
+   "@
+    movq\t{%1, %0|%0, %1}
+    movq2dq\t{%1, %0|%0, %1}
+    punpcklqdq\t{%2, %0|%0, %2}
+    movlhps\t{%2, %0|%0, %2}
+-   movhps\t{%2, %0|%0, %2}
+-   movlps\t{%1, %0|%0, %1}"
+-  [(set_attr "type" "ssemov,ssemov,sselog,ssemov,ssemov,ssemov")
+-   (set_attr "mode" "TI,TI,TI,V4SF,V2SF,V2SF")])
++   movhps\t{%2, %0|%0, %2}"
++  [(set_attr "type" "ssemov,ssemov,sselog,ssemov,ssemov")
++   (set_attr "mode" "TI,TI,TI,V4SF,V2SF")])
+ 
+ (define_expand "vec_setv2di"
+   [(match_operand:V2DI 0 "register_operand" "")
+Index: gcc/config/rs6000/rs6000.md
+===================================================================
+--- gcc/config/rs6000/rs6000.md	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/config/rs6000/rs6000.md	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -10379,25 +10379,6 @@
+ 
+   operands[0] = XEXP (operands[0], 0);
+ 
+-  if (DEFAULT_ABI == ABI_V4 && TARGET_SECURE_PLT
+-      && flag_pic
+-      && GET_CODE (operands[0]) == SYMBOL_REF
+-      && !SYMBOL_REF_LOCAL_P (operands[0]))
+-    {
+-      rtx call;
+-      rtvec tmp;
+-
+-      tmp = gen_rtvec (3,
+-		       gen_rtx_CALL (VOIDmode,
+-				     gen_rtx_MEM (SImode, operands[0]),
+-				     operands[1]),
+-		       gen_rtx_USE (VOIDmode, operands[2]),
+-		       gen_rtx_CLOBBER (VOIDmode, gen_rtx_SCRATCH (SImode)));
+-      call = emit_call_insn (gen_rtx_PARALLEL (VOIDmode, tmp));
+-      use_reg (&CALL_INSN_FUNCTION_USAGE (call), pic_offset_table_rtx);
+-      DONE;
+-    }
+-
+   if (GET_CODE (operands[0]) != SYMBOL_REF
+       || (DEFAULT_ABI == ABI_AIX && !SYMBOL_REF_FUNCTION_P (operands[0]))
+       || (DEFAULT_ABI != ABI_DARWIN && (INTVAL (operands[2]) & CALL_LONG) != 0))
+@@ -10449,28 +10430,6 @@
+ 
+   operands[1] = XEXP (operands[1], 0);
+ 
+-  if (DEFAULT_ABI == ABI_V4 && TARGET_SECURE_PLT
+-      && flag_pic
+-      && GET_CODE (operands[1]) == SYMBOL_REF
+-      && !SYMBOL_REF_LOCAL_P (operands[1]))
+-    {
+-      rtx call;
+-      rtvec tmp;
+-
+-      tmp = gen_rtvec (3,
+-		       gen_rtx_SET (VOIDmode,
+-				    operands[0],
+-				    gen_rtx_CALL (VOIDmode,
+-						  gen_rtx_MEM (SImode,
+-							       operands[1]),
+-						  operands[2])),
+-		       gen_rtx_USE (VOIDmode, operands[3]),
+-		       gen_rtx_CLOBBER (VOIDmode, gen_rtx_SCRATCH (SImode)));
+-      call = emit_call_insn (gen_rtx_PARALLEL (VOIDmode, tmp));
+-      use_reg (&CALL_INSN_FUNCTION_USAGE (call), pic_offset_table_rtx);
+-      DONE;
+-    }
+-
+   if (GET_CODE (operands[1]) != SYMBOL_REF
+       || (DEFAULT_ABI == ABI_AIX && !SYMBOL_REF_FUNCTION_P (operands[1]))
+       || (DEFAULT_ABI != ABI_DARWIN && (INTVAL (operands[3]) & CALL_LONG) != 0))
+@@ -10726,7 +10685,7 @@
+   [(set_attr "type" "jmpreg,jmpreg,jmpreg,jmpreg")
+    (set_attr "length" "4,4,8,8")])
+ 
+-(define_insn "*call_nonlocal_sysv<mode>"
++(define_insn_and_split "*call_nonlocal_sysv<mode>"
+   [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s,s"))
+ 	 (match_operand 1 "" "g,g"))
+    (use (match_operand:SI 2 "immediate_operand" "O,n"))
+@@ -10746,21 +10705,55 @@
+ #else
+   if (DEFAULT_ABI == ABI_V4 && flag_pic)
+     {
+-      if (TARGET_SECURE_PLT && flag_pic == 2)
+-	/* The magic 32768 offset here and in the other sysv call insns
+-	   corresponds to the offset of r30 in .got2, as given by LCTOC1.
+-	   See sysv4.h:toc_section.  */
+-	return "bl %z0+32768@plt";
+-      else
+-	return "bl %z0@plt";
++      gcc_assert (!TARGET_SECURE_PLT);
++      return "bl %z0@plt";
+     }
+   else
+     return "bl %z0";
+ #endif
+ }
++  "DEFAULT_ABI == ABI_V4
++   && TARGET_SECURE_PLT && flag_pic && !SYMBOL_REF_LOCAL_P (operands[0])
++   && (INTVAL (operands[2]) & CALL_LONG) == 0"
++  [(parallel [(call (mem:SI (match_dup 0))
++		    (match_dup 1))
++	      (use (match_dup 2))
++	      (use (match_dup 3))
++	      (clobber (match_dup 4))])]
++{
++  operands[4] = operands[3];
++  operands[3] = pic_offset_table_rtx;
++}
+   [(set_attr "type" "branch,branch")
+    (set_attr "length" "4,8")])
+ 
++(define_insn "*call_nonlocal_sysv_secure<mode>"
++  [(call (mem:SI (match_operand:P 0 "symbol_ref_operand" "s,s"))
++	 (match_operand 1 "" "g,g"))
++   (use (match_operand:SI 2 "immediate_operand" "O,n"))
++   (use (match_operand:SI 3 "register_operand" "r,r"))
++   (clobber (match_scratch:SI 4 "=l,l"))]
++  "(DEFAULT_ABI == ABI_V4
++    && TARGET_SECURE_PLT && flag_pic && !SYMBOL_REF_LOCAL_P (operands[0])
++    && (INTVAL (operands[2]) & CALL_LONG) == 0)"
++{
++  if (INTVAL (operands[2]) & CALL_V4_SET_FP_ARGS)
++    output_asm_insn ("crxor 6,6,6", operands);
++
++  else if (INTVAL (operands[2]) & CALL_V4_CLEAR_FP_ARGS)
++    output_asm_insn ("creqv 6,6,6", operands);
++
++  if (flag_pic == 2)
++    /* The magic 32768 offset here and in the other sysv call insns
++       corresponds to the offset of r30 in .got2, as given by LCTOC1.
++       See sysv4.h:toc_section.  */
++    return "bl %z0+32768@plt";
++  else
++    return "bl %z0@plt";
++}
++  [(set_attr "type" "branch,branch")
++   (set_attr "length" "4,8")])
++
+ (define_insn "*call_value_indirect_nonlocal_sysv<mode>"
+   [(set (match_operand 0 "" "")
+ 	(call (mem:SI (match_operand:P 1 "register_operand" "c,*l,c,*l"))
+@@ -10781,7 +10774,7 @@
+   [(set_attr "type" "jmpreg,jmpreg,jmpreg,jmpreg")
+    (set_attr "length" "4,4,8,8")])
+ 
+-(define_insn "*call_value_nonlocal_sysv<mode>"
++(define_insn_and_split "*call_value_nonlocal_sysv<mode>"
+   [(set (match_operand 0 "" "")
+ 	(call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s,s"))
+ 	      (match_operand 2 "" "g,g")))
+@@ -10802,18 +10795,54 @@
+ #else
+   if (DEFAULT_ABI == ABI_V4 && flag_pic)
+     {
+-      if (TARGET_SECURE_PLT && flag_pic == 2)
+-	return "bl %z1+32768@plt";
+-      else
+-	return "bl %z1@plt";
++      gcc_assert (!TARGET_SECURE_PLT);
++      return "bl %z1@plt";
+     }
+   else
+     return "bl %z1";
+ #endif
+ }
++  "DEFAULT_ABI == ABI_V4
++   && TARGET_SECURE_PLT && flag_pic && !SYMBOL_REF_LOCAL_P (operands[1])
++   && (INTVAL (operands[3]) & CALL_LONG) == 0"
++  [(parallel [(set (match_dup 0)
++		   (call (mem:SI (match_dup 1))
++			 (match_dup 2)))
++	      (use (match_dup 3))
++	      (use (match_dup 4))
++	      (clobber (match_dup 5))])]
++{
++  operands[5] = operands[4];
++  operands[4] = pic_offset_table_rtx;
++}
+   [(set_attr "type" "branch,branch")
+    (set_attr "length" "4,8")])
+ 
++(define_insn "*call_value_nonlocal_sysv_secure<mode>"
++  [(set (match_operand 0 "" "")
++	(call (mem:SI (match_operand:P 1 "symbol_ref_operand" "s,s"))
++	      (match_operand 2 "" "g,g")))
++   (use (match_operand:SI 3 "immediate_operand" "O,n"))
++   (use (match_operand:SI 4 "register_operand" "r,r"))
++   (clobber (match_scratch:SI 5 "=l,l"))]
++  "(DEFAULT_ABI == ABI_V4
++    && TARGET_SECURE_PLT && flag_pic && !SYMBOL_REF_LOCAL_P (operands[1])
++    && (INTVAL (operands[3]) & CALL_LONG) == 0)"
++{
++  if (INTVAL (operands[3]) & CALL_V4_SET_FP_ARGS)
++    output_asm_insn ("crxor 6,6,6", operands);
++
++  else if (INTVAL (operands[3]) & CALL_V4_CLEAR_FP_ARGS)
++    output_asm_insn ("creqv 6,6,6", operands);
++
++  if (flag_pic == 2)
++    return "bl %z1+32768@plt";
++  else
++    return "bl %z1@plt";
++}
++  [(set_attr "type" "branch,branch")
++   (set_attr "length" "4,8")])
++
+ ;; Call subroutine returning any type.
+ (define_expand "untyped_call"
+   [(parallel [(call (match_operand 0 "" "")
+@@ -11025,10 +11054,8 @@
+ 
+   if (DEFAULT_ABI == ABI_V4 && flag_pic)
+     {
+-      if (TARGET_SECURE_PLT && flag_pic == 2)
+-	return \"b %z0+32768@plt\";
+-      else
+-	return \"b %z0@plt\";
++      gcc_assert (!TARGET_SECURE_PLT);
++      return \"b %z0@plt\";
+     }
+   else
+     return \"b %z0\";
+@@ -11079,10 +11106,8 @@
+ 
+   if (DEFAULT_ABI == ABI_V4 && flag_pic)
+     {
+-      if (TARGET_SECURE_PLT && flag_pic == 2)
+-	return \"b %z1+32768@plt\";
+-      else
+-	return \"b %z1@plt\";
++      gcc_assert (!TARGET_SECURE_PLT);
++      return \"b %z1@plt\";
+     }
+   else
+     return \"b %z1\";
+Index: gcc/config/mips/mips.md
+===================================================================
+--- gcc/config/mips/mips.md	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/config/mips/mips.md	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -4037,12 +4037,11 @@
+ }
+   [(set_attr "length" "8")])
+ 
+-;; The use of gp is hidden when not using explicit relocations.
+ ;; This blockage instruction prevents the gp load from being
+ ;; scheduled after an implicit use of gp.  It also prevents
+ ;; the load from being deleted as dead.
+ (define_insn "loadgp_blockage"
+-  [(unspec_volatile [(reg:DI 28)] UNSPEC_BLOCKAGE)]
++  [(unspec_volatile [(reg:SI 28)] UNSPEC_BLOCKAGE)]
+   ""
+   ""
+   [(set_attr "type"	"unknown")
+Index: gcc/config/mips/mips.c
+===================================================================
+--- gcc/config/mips/mips.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/config/mips/mips.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -6709,13 +6709,16 @@
+       offset = mips_unspec_address (addr, SYMBOL_GOTOFF_LOADGP);
+       incoming_address = gen_rtx_REG (Pmode, PIC_FUNCTION_ADDR_REGNUM);
+       emit_insn (gen_loadgp (offset, incoming_address));
+-      if (!TARGET_EXPLICIT_RELOCS)
+-	emit_insn (gen_loadgp_blockage ());
+       break;
+ 
+     default:
+-      break;
++      return;
+     }
++  /* Emit a blockage if there are implicit uses of the GP register.
++     This includes profiled functions, because FUNCTION_PROFILE uses
++     a jal macro.  */
++  if (!TARGET_EXPLICIT_RELOCS || current_function_profile)
++    emit_insn (gen_loadgp_blockage ());
+ }
+ 
+ /* Set up the stack and frame (if desired) for the function.  */
+Index: gcc/gthr-posix95.h
+===================================================================
+--- gcc/gthr-posix95.h	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ gcc/gthr-posix95.h	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -115,9 +115,12 @@
+    it is passed so we cannot pretend that the interface is active if -pthreads
+    is not specified.  On Solaris 2.5.1, the interface is not exposed at all so
+    we need to play the usual game with weak symbols.  On Solaris 10 and up, a
+-   working interface is always exposed.  */
++   working interface is always exposed.  On FreeBSD 6 and later, libc also
++   exposes a dummy POSIX threads interface, similar to what Solaris 2.6 up
++   to 9 does.  FreeBSD >= 700014 even provides a pthread_cancel stub in libc,
++   which means the alternate __gthread_active_p below cannot be used there.  */
+ 
+-#if defined(__sun) && defined(__svr4__)
++#if defined(__FreeBSD__) || (defined(__sun) && defined(__svr4__))
+ 
+ static volatile int __gthread_active = -1;
+ 
+@@ -160,7 +163,7 @@
+   return __gthread_active_latest_value != 0;
+ }
+ 
+-#else /* not Solaris */
++#else /* neither FreeBSD nor Solaris */
+ 
+ static inline int
+ __gthread_active_p (void)
+@@ -170,7 +173,7 @@
+   return __gthread_active_ptr != 0;
+ }
+ 
+-#endif /* Solaris */
++#endif /* FreeBSD or Solaris */
+ 
+ #else /* not SUPPORTS_WEAK */
+ 
+Index: libffi/src/powerpc/ffitarget.h
+===================================================================
+--- libffi/src/powerpc/ffitarget.h	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libffi/src/powerpc/ffitarget.h	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,6 +1,6 @@
+ /* -----------------------------------------------------------------*-C-*-
+    ffitarget.h - Copyright (c) 1996-2003  Red Hat, Inc.
+-   Copyright (C) 2007 Free Software Foundation, Inc
++   Copyright (C) 2007, 2008 Free Software Foundation, Inc
+    Target configuration macros for PowerPC.
+ 
+    Permission is hereby granted, free of charge, to any person obtaining
+@@ -77,6 +77,8 @@
+   FFI_SYSV,
+   FFI_GCC_SYSV,
+   FFI_LINUX64,
++  FFI_LINUX,
++  FFI_LINUX_SOFT_FLOAT,
+   FFI_DEFAULT_ABI = FFI_SYSV,
+ #endif
+ 
+@@ -95,7 +97,9 @@
+ /* Needed for soft-float long-double-128 support.  */
+ #define FFI_TYPE_UINT128 (FFI_TYPE_LAST + 1)
+ 
+-/* Needed for FFI_SYSV small structure returns.  */
++/* Needed for FFI_SYSV small structure returns.
++   We use two flag bits, (FLAG_SYSV_SMST_R3, FLAG_SYSV_SMST_R4) which are
++   defined in ffi.c, to determine the exact return type and its size.  */
+ #define FFI_SYSV_TYPE_SMALL_STRUCT (FFI_TYPE_LAST + 2)
+ 
+ #if defined(POWERPC64) || defined(POWERPC_AIX)
+Index: libffi/src/powerpc/ffi.c
+===================================================================
+--- libffi/src/powerpc/ffi.c	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libffi/src/powerpc/ffi.c	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,6 +1,6 @@
+ /* -----------------------------------------------------------------------
+    ffi.c - Copyright (c) 1998 Geoffrey Keating
+-   Copyright (C) 2007 Free Software Foundation, Inc
++   Copyright (C) 2007, 2008 Free Software Foundation, Inc
+ 
+    PowerPC Foreign Function Interface
+ 
+@@ -43,6 +43,10 @@
+ 
+   FLAG_RETURNS_128BITS  = 1 << (31-27), /* cr6  */
+ 
++  FLAG_SYSV_SMST_R4     = 1 << (31-16), /* cr4, use r4 for FFI_SYSV 8 byte
++					   structs.  */
++  FLAG_SYSV_SMST_R3     = 1 << (31-15), /* cr3, use r3 for FFI_SYSV 4 byte
++					   structs.  */
+   FLAG_ARG_NEEDS_COPY   = 1 << (31- 7),
+   FLAG_FP_ARGUMENTS     = 1 << (31- 6), /* cr1.eq; specified by ABI */
+   FLAG_4_GPR_ARGUMENTS  = 1 << (31- 5),
+@@ -679,14 +683,14 @@
+ 		 The same applies for the structs returned in r3/r4.  */
+ 	      if (size <= 4)
+ 		{
+-		  flags |= 1 << (31 - FFI_SYSV_TYPE_SMALL_STRUCT - 1);
++		  flags |= FLAG_SYSV_SMST_R3;
+ 		  flags |= 8 * (4 - size) << 4;
+ 		  break;
+ 		}
+ 	      /* These structs are returned in r3 and r4. See above.   */
+ 	      if  (size <= 8)
+ 		{
+-		  flags |= 1 << (31 - FFI_SYSV_TYPE_SMALL_STRUCT - 2);
++		  flags |= FLAG_SYSV_SMST_R4;
+ 		  flags |= 8 * (8 - size) << 4;
+ 		  break;
+ 		}
+@@ -1248,10 +1252,15 @@
+ 
+   /* Tell ffi_closure_SYSV how to perform return type promotions.
+      Because the FFI_SYSV ABI returns the structures <= 8 bytes in r3/r4
+-     we have to tell ffi_closure_SYSV how to treat them.  */
++     we have to tell ffi_closure_SYSV how to treat them. We combine the base
++     type FFI_SYSV_TYPE_SMALL_STRUCT - 1  with the size of the struct.
++     So a one byte struct gets the return type 16. Return type 1 to 15 are
++     already used and we never have a struct with size zero. That is the reason
++     for the subtraction of 1. See the comment in ffitarget.h about ordering.
++  */
+   if (cif->abi == FFI_SYSV && cif->rtype->type == FFI_TYPE_STRUCT
+       && size <= 8)
+-    return FFI_SYSV_TYPE_SMALL_STRUCT + size;
++    return (FFI_SYSV_TYPE_SMALL_STRUCT - 1) + size;
+ #if FFI_TYPE_LONGDOUBLE != FFI_TYPE_DOUBLE
+   else if (cif->rtype->type == FFI_TYPE_LONGDOUBLE
+ 	   && cif->abi != FFI_LINUX && cif->abi != FFI_LINUX_SOFT_FLOAT)
+Index: libffi/ChangeLog
+===================================================================
+--- libffi/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libffi/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,24 @@
++2008-09-10  Andreas Tobler  <a.tobler@schweiz.org>
++
++	* src/powerpc/ffitarget.h (ffi_abi): Add FFI_LINUX and
++	FFI_LINUX_SOFT_FLOAT to the POWERPC_FREEBSD enum.
++	Add note about flag bits used for FFI_SYSV_TYPE_SMALL_STRUCT.
++	Adjust copyright notice.
++	* src/powerpc/ffi.c: Add two new flags to indicate if we have one
++	register or two register to use for FFI_SYSV structs.
++	(ffi_prep_cif_machdep): Pass the right register flag introduced above.
++	(ffi_closure_helper_SYSV): Fix the return type for
++	FFI_SYSV_TYPE_SMALL_STRUCT. Comment.
++	Adjust copyright notice.
++
++2008-08-27  Release Manager
++
++	* GCC 4.3.2 released.
++
++2008-06-06  Release Manager
++
++	* GCC 4.3.1 released.
++
+ 2008-03-05  Release Manager
+ 
+ 	* GCC 4.3.0 released.
+Index: libjava/Makefile.in
+===================================================================
+--- libjava/Makefile.in	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/Makefile.in	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -763,6 +763,7 @@
+ extra_gij_ldflags = @extra_gij_ldflags@
+ extra_ldflags = @extra_ldflags@
+ extra_ldflags_libjava = @extra_ldflags_libjava@ $(am__append_5)
++gcjsubdir = @gcjsubdir@
+ gxx_include_dir = @gxx_include_dir@
+ here = @here@
+ host = @host@
+@@ -834,7 +835,7 @@
+ @JAVA_HOME_SET_FALSE@BOOT_CLASS_PATH_DIR = $(jardir)/libgcj-$(gcc_version).jar
+ @JAVA_HOME_SET_TRUE@BOOT_CLASS_PATH_DIR = $(JAVA_HOME)/lib/rt.jar
+ db_name = classmap.db
+-db_pathtail = gcj-$(gcc_version)/$(db_name)
++db_pathtail = $(gcjsubdir)/$(db_name)
+ @NATIVE_TRUE@dbexec_DATA = $(db_name)
+ bin_SCRIPTS = addr2name.awk
+ GCJ_WITH_FLAGS = $(GCJ) --encoding=UTF-8 -Wno-deprecated
+Index: libjava/libltdl/ChangeLog
+===================================================================
+--- libjava/libltdl/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/libltdl/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,11 @@
++2008-08-27  Release Manager
++
++	* GCC 4.3.2 released.
++
++2008-06-06  Release Manager
++
++	* GCC 4.3.1 released.
++
+ 2008-03-05  Release Manager
+ 
+ 	* GCC 4.3.0 released.
+Index: libjava/configure.ac
+===================================================================
+--- libjava/configure.ac	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/configure.ac	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1413,6 +1413,7 @@
+    ;;
+ esac
+ AC_SUBST(dbexecdir)
++AC_SUBST(gcjsubdir)
+ 
+ AC_DEFINE(JV_VERSION, "1.5.0", [Compatibility version string])
+ AC_DEFINE(JV_API_VERSION, "1.5", [API compatibility version string])
+Index: libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java
+===================================================================
+--- libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/classpath/tools/gnu/classpath/tools/javah/ClassWrapper.java	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -217,7 +217,18 @@
+         MethodNode m = (MethodNode) i.next();
+         String desc = MethodHelper.getBridgeTarget(m);
+         if (desc != null)
+-          bridgeTargets.add(m.name + desc);
++	  {
++	    String sum = m.name + desc;
++	    boolean newTarget = bridgeTargets.add(sum);
++	    if (newTarget)
++	      {
++		// Bridge target that is new in this class.
++		String cname = this.name;
++		int index = cname.lastIndexOf('/');
++		cname = cname.substring(index + 1);
++		methodNameMap.put(sum, cname + "$" + m.name);
++	      }
++	  }
+       }
+   }
+ 
+@@ -247,18 +258,7 @@
+ 	String nameToUse;
+ 	String sum = m.name + m.desc;
+ 	if (bridgeTargets.contains(sum))
+-	  {
+-	    if (methodNameMap.containsKey(sum))
+-	      nameToUse = (String) methodNameMap.get(sum);
+-	    else
+-	      {
+-		// Bridge target that is new in this class.
+-		String cname = this.name;
+-		int index = cname.lastIndexOf('/');
+-		cname = cname.substring(index + 1);
+-		nameToUse = cname + "$" + m.name;
+-	      }
+-	  }
++	  nameToUse = (String) methodNameMap.get(sum);
+ 	else
+ 	  nameToUse = Keywords.getCxxName(m.name);
+ 	methodNameMap.put(sum, nameToUse);
+Index: libjava/classpath/ChangeLog
+===================================================================
+--- libjava/classpath/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/classpath/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,11 @@
++2008-08-27  Release Manager
++
++	* GCC 4.3.2 released.
++
++2008-06-06  Release Manager
++
++	* GCC 4.3.1 released.
++
+ 2008-03-05  Release Manager
+ 
+ 	* GCC 4.3.0 released.
+Index: libjava/classpath/ChangeLog.gcj
+===================================================================
+--- libjava/classpath/ChangeLog.gcj	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/classpath/ChangeLog.gcj	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,15 @@
++2008-09-14  Matthias Klose  <doko@ubuntu.com>
++
++	Merge from classpath:
++	2008-09-02  Andrew John Hughes  <gnu_andrew at member.fsf.org>
++
++	* tools/gnu/classpath/tools/javah/ClassWrapper.java:
++	(makeVtable()): Populate methodNameMap.
++	(printMethods(CniPrintStream)): Always use pre-populated
++	methodNameMap for bridge targets.
++
++	* tools/classes/gnu/classpath/tools/javah/ClassWrapper.class: Update.
++
+ 2008-04-17  Tom Tromey  <tromey@redhat.com>
+ 
+ 	PR libgcj/35950:
+Index: libjava/include/Makefile.in
+===================================================================
+--- libjava/include/Makefile.in	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/include/Makefile.in	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -285,6 +285,7 @@
+ extra_gij_ldflags = @extra_gij_ldflags@
+ extra_ldflags = @extra_ldflags@
+ extra_ldflags_libjava = @extra_ldflags_libjava@
++gcjsubdir = @gcjsubdir@
+ gxx_include_dir = @gxx_include_dir@
+ here = @here@
+ host = @host@
+Index: libjava/include/jvm.h
+===================================================================
+--- libjava/include/jvm.h	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/include/jvm.h	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -307,6 +307,9 @@
+     s = signature;
+   }  
+ 
++  static _Jv_Mutex_t resolve_mutex;
++  static void init (void) __attribute__((constructor));
++
+ public:
+ 
+   static bool has_field_p (jclass, _Jv_Utf8Const *);
+@@ -324,6 +327,27 @@
+ 					     _Jv_Utf8Const *,
+ 					     bool check_perms = true);
+   static void layout_vtable_methods(jclass);
++
++  static jbyte read_cpool_entry (_Jv_word *data,
++				 const _Jv_Constants *const pool,
++				 int index)
++  {
++    _Jv_MutexLock (&resolve_mutex);
++    jbyte tags = pool->tags[index];
++    *data = pool->data[index];
++    _Jv_MutexUnlock (&resolve_mutex);
++    return tags;
++  }
++
++  static void write_cpool_entry (_Jv_word data, jbyte tags,
++				 _Jv_Constants *pool,
++				 int index)
++  {
++    _Jv_MutexLock (&resolve_mutex);
++    pool->data[index] = data;
++    pool->tags[index] = tags;
++    _Jv_MutexUnlock (&resolve_mutex);
++  }
+ };
+ 
+ /* Type of pointer used as finalizer.  */
+Index: libjava/ChangeLog
+===================================================================
+--- libjava/ChangeLog	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/ChangeLog	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,3 +1,46 @@
++2008-08-27  Release Manager
++
++	* GCC 4.3.2 released.
++
++2008-08-22  Andrew Haley  <aph@redhat.com>
++
++	PR libgcj/8995:
++	
++	* interpret-run.cc (REWRITE_INSN): Null this macro.
++
++	* include/jvm.h (class _Jv_Linker): Declare resolve_mutex, init.
++	(read_cpool_entry, write_cpool_entry): New functions.
++	* link.cc (_Jv_Linker::resolve_mutex): new.
++	(_Jv_Linker::init): New function.
++	(_Jv_Linker::resolve_pool_entry): Use {read,write}_cpool_entry
++	to ensure atomic access to constant pool entries.
++
++2008-08-05  Matthias Klose  <doko@ubuntu.com>
++
++	PR libgcj/31890
++	* gcj/javaprims.h: Regenerate class list.
++	* HACKING: Update instructions how to build gcj/javaprims.h.
++
++2008-07-02  Matthias Klose  <doko@ubuntu.com>
++
++	* configure.ac: Substitute gcjsubdir.
++	* Makefile.am (db_pathtail): Use it.
++	* Makefile.in include/Makefile.in, testsuite/Makefile.in,
++	gcj/Makefile.in, configure: Regenerate.
++
++2008-05-20  David Daney  <ddaney@avtrex.com>
++
++	PR libgcj/36252
++	* java/lang/natString.cc: Add
++	#include <java/io/CharConversionException.h>.
++	(init (byte[], int, int, String)): Catch and ignore
++	CharConversionException.  Break out of conversion loop
++	on incomplete input.
++	* testsuite/libjava.lang/PR36252.java: New test.
++	* testsuite/libjava.lang/PR36252.out: New file, its expected output.
++	* testsuite/libjava.lang/PR36252.jar: New file, its pre-compiled
++	jar file.
++
+ 2008-03-13  Andrew Haley  <aph@redhat.com>
+ 
+ 	* link.cc (_Jv_Linker::resolve_method_entry): Remove broken class
+Index: libjava/testsuite/Makefile.in
+===================================================================
+--- libjava/testsuite/Makefile.in	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/testsuite/Makefile.in	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -249,9 +249,6 @@
+ ac_ct_LD = @ac_ct_LD@
+ ac_ct_RANLIB = @ac_ct_RANLIB@
+ ac_ct_STRIP = @ac_ct_STRIP@
+-ac_ct_LD = @ac_ct_LD@
+-ac_ct_RANLIB = @ac_ct_RANLIB@
+-ac_ct_STRIP = @ac_ct_STRIP@
+ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+@@ -277,6 +274,7 @@
+ extra_gij_ldflags = @extra_gij_ldflags@
+ extra_ldflags = @extra_ldflags@
+ extra_ldflags_libjava = @extra_ldflags_libjava@
++gcjsubdir = @gcjsubdir@
+ gxx_include_dir = @gxx_include_dir@
+ here = @here@
+ host = @host@
+Index: libjava/HACKING
+===================================================================
+--- libjava/HACKING	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/HACKING	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -184,6 +184,6 @@
+   entire contents of the namespace)
+ 
+ * Then insert the output of `perl scripts/classes.pl' into the file
+-  at that point.  This must be run from the build tree, in
+-  <build>/classpath/lib; it uses the .class file name to determine
++  at that point.  This must be run from the source tree, in
++  libjava/classpath/lib; it uses the .class file name to determine
+   what to print.
+Index: libjava/link.cc
+===================================================================
+--- libjava/link.cc	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/link.cc	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -362,6 +362,19 @@
+   return the_method;
+ }
+ 
++_Jv_Mutex_t _Jv_Linker::resolve_mutex;
++
++void
++_Jv_Linker::init (void)
++{
++  _Jv_MutexInit (&_Jv_Linker::resolve_mutex);
++}
++
++// Locking in resolve_pool_entry is somewhat subtle.  Constant
++// resolution is idempotent, so it doesn't matter if two threads
++// resolve the same entry.  However, it is important that we always
++// write the resolved flag and the data together, atomically.  It is
++// also important that we read them atomically.
+ _Jv_word
+ _Jv_Linker::resolve_pool_entry (jclass klass, int index, bool lazy)
+ {
+@@ -369,6 +382,10 @@
+ 
+   if (GC_base (klass) && klass->constants.data
+       && ! GC_base (klass->constants.data))
++    // If a class is heap-allocated but the constant pool is not this
++    // is a "new ABI" class, i.e. one where the initial constant pool
++    // is in the read-only data section of an object file.  Copy the
++    // initial constant pool from there to a new heap-allocated pool.
+     {
+       jsize count = klass->constants.size;
+       if (count)
+@@ -384,14 +401,18 @@
+ 
+   _Jv_Constants *pool = &klass->constants;
+ 
+-  if ((pool->tags[index] & JV_CONSTANT_ResolvedFlag) != 0)
+-    return pool->data[index];
++  jbyte tags;
++  _Jv_word data;
++  tags = read_cpool_entry (&data, pool, index);
+ 
+-  switch (pool->tags[index] & ~JV_CONSTANT_LazyFlag)
++  if ((tags & JV_CONSTANT_ResolvedFlag) != 0)
++    return data;
++
++  switch (tags & ~JV_CONSTANT_LazyFlag)
+     {
+     case JV_CONSTANT_Class:
+       {
+-	_Jv_Utf8Const *name = pool->data[index].utf8;
++	_Jv_Utf8Const *name = data.utf8;
+ 
+ 	jclass found;
+ 	if (name->first() == '[')
+@@ -410,8 +431,8 @@
+ 	      {
+ 		found = _Jv_NewClass(name, NULL, NULL);
+ 		found->state = JV_STATE_PHANTOM;
+-		pool->tags[index] |= JV_CONSTANT_ResolvedFlag;
+-		pool->data[index].clazz = found;
++		tags |= JV_CONSTANT_ResolvedFlag;
++		data.clazz = found;
+ 		break;
+ 	      }
+ 	    else
+@@ -429,8 +450,8 @@
+ 	    || (_Jv_ClassNameSamePackage (check->name,
+ 					  klass->name)))
+ 	  {
+-	    pool->data[index].clazz = found;
+-	    pool->tags[index] |= JV_CONSTANT_ResolvedFlag;
++	    data.clazz = found;
++	    tags |= JV_CONSTANT_ResolvedFlag;
+ 	  }
+ 	else
+ 	  {
+@@ -446,16 +467,16 @@
+     case JV_CONSTANT_String:
+       {
+ 	jstring str;
+-	str = _Jv_NewStringUtf8Const (pool->data[index].utf8);
+-	pool->data[index].o = str;
+-	pool->tags[index] |= JV_CONSTANT_ResolvedFlag;
++	str = _Jv_NewStringUtf8Const (data.utf8);
++	data.o = str;
++	tags |= JV_CONSTANT_ResolvedFlag;
+       }
+       break;
+ 
+     case JV_CONSTANT_Fieldref:
+       {
+ 	_Jv_ushort class_index, name_and_type_index;
+-	_Jv_loadIndexes (&pool->data[index],
++	_Jv_loadIndexes (&data,
+ 			 class_index,
+ 			 name_and_type_index);
+ 	jclass owner = (resolve_pool_entry (klass, class_index, true)).clazz;
+@@ -485,8 +506,8 @@
+ 	// Initialize the field's declaring class, not its qualifying
+ 	// class.
+ 	_Jv_InitClass (found_class);
+-	pool->data[index].field = the_field;
+-	pool->tags[index] |= JV_CONSTANT_ResolvedFlag;
++	data.field = the_field;
++	tags |= JV_CONSTANT_ResolvedFlag;
+       }
+       break;
+ 
+@@ -494,7 +515,7 @@
+     case JV_CONSTANT_InterfaceMethodref:
+       {
+ 	_Jv_ushort class_index, name_and_type_index;
+-	_Jv_loadIndexes (&pool->data[index],
++	_Jv_loadIndexes (&data,
+ 			 class_index,
+ 			 name_and_type_index);
+ 
+@@ -503,18 +524,21 @@
+ 	the_method = resolve_method_entry (klass, found_class,
+ 					   class_index, name_and_type_index,
+ 					   true,
+-					   pool->tags[index] == JV_CONSTANT_InterfaceMethodref);
++					   tags == JV_CONSTANT_InterfaceMethodref);
+       
+-	pool->data[index].rmethod
++	data.rmethod
+ 	  = klass->engine->resolve_method(the_method,
+ 					  found_class,
+ 					  ((the_method->accflags
+ 					    & Modifier::STATIC) != 0));
+-	pool->tags[index] |= JV_CONSTANT_ResolvedFlag;
++	tags |= JV_CONSTANT_ResolvedFlag;
+       }
+       break;
+     }
+-  return pool->data[index];
++
++  write_cpool_entry (data, tags, pool, index);
++
++  return data;
+ }
+ 
+ // This function is used to lazily locate superclasses and
+@@ -1701,13 +1725,15 @@
+       // Resolve the remaining constant pool entries.
+       for (int index = 1; index < pool->size; ++index)
+ 	{
+-	  if (pool->tags[index] == JV_CONSTANT_String)
++	  jbyte tags;
++	  _Jv_word data;
++
++	  tags = read_cpool_entry (&data, pool, index);
++	  if (tags == JV_CONSTANT_String)
+ 	    {
+-	      jstring str;
+-
+-	      str = _Jv_NewStringUtf8Const (pool->data[index].utf8);
+-	      pool->data[index].o = str;
+-	      pool->tags[index] |= JV_CONSTANT_ResolvedFlag;
++	      data.o = _Jv_NewStringUtf8Const (data.utf8);
++	      tags |= JV_CONSTANT_ResolvedFlag;
++	      write_cpool_entry (data, tags, pool, index);
+ 	    }
+ 	}
+ 
+Index: libjava/configure
+===================================================================
+--- libjava/configure	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/configure	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -310,7 +310,7 @@
+ # include <unistd.h>
+ #endif"
+ 
+-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_libsubdir build_subdir host_subdir target_subdir multi_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs JAVA_MAINTAINER_MODE_TRUE JAVA_MAINTAINER_MODE_FALSE CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS LD ac_ct_LD AR ac_ct_AR RANLIB ac_ct_RANLIB JAR ZIP UNZIP MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJ_LD_SYMBOLIC_FUNCTIONS LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE X_AWT_TRUE X_AWT_FALSE GCJ_FOR_ECJX GCJH host_exeext INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE ECJ_BUILD_JAR ECJ_JAR BUILD_ECJ1_TRUE BUILD_ECJ1_FALSE INSTALL_ECJ_JAR_TRUE INSTALL_ECJ_JAR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME SUPPRESS_LIBGCJ_BC_TRUE SUPPRESS_LIBGCJ_BC_FALSE INTERPRETER INTERPRETER_TRUE INTERPRETER_FALSE LIBFFI LIBFFIINCS PLATFORM CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS extra_ldflags_libjava extra_gij_ldflags extra_ldflags LIBSTDCXXSPEC LIBGCJTESTSPEC GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADSTARTFILESPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE USE_LIBGCJ_BC_TRUE USE_LIBGCJ_BC_FALSE LIBGCJ_SPEC HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV PKG_CONFIG GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE ENABLE_SHARED_TRUE ENABLE_SHARED_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir GCJVERSION dbexecdir gxx_include_dir libstdcxx_incdir PERL SYSDEP_SOURCES ANONVERSCRIPT_TRUE ANONVERSCRIPT_FALSE LD_START_STATIC_SPEC LD_FINISH_STATIC_SPEC here LIBOBJS LTLIBOBJS'
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os build_libsubdir build_subdir host_subdir target_subdir multi_basedir host host_cpu host_vendor host_os target target_cpu target_vendor target_os target_noncanonical LN_S mkinstalldirs JAVA_MAINTAINER_MODE_TRUE JAVA_MAINTAINER_MODE_FALSE CC ac_ct_CC EXEEXT OBJEXT CXX ac_ct_CXX CFLAGS CXXFLAGS LDFLAGS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE AS ac_ct_AS LD ac_ct_LD AR ac_ct_AR RANLIB ac_ct_RANLIB JAR ZIP UNZIP MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT LIBGCJ_CFLAGS LIBGCJ_CXXFLAGS LIBGCJ_JAVAFLAGS LIBGCJ_LD_SYMBOLIC LIBGCJ_LD_SYMBOLIC_FUNCTIONS LIBGCJDEBUG TOOLKIT XLIB_AWT_TRUE XLIB_AWT_FALSE X_AWT_TRUE X_AWT_FALSE GCJ_FOR_ECJX GCJH host_exeext INCLTDL LIBLTDL DIRLTDL LIBTOOL CXXCPP CPPFLAGS GCJ GCJFLAGS GCJDEPMODE am__fastdepGCJ_TRUE am__fastdepGCJ_FALSE subdirs TESTSUBDIR_TRUE TESTSUBDIR_FALSE ECJ_BUILD_JAR ECJ_JAR BUILD_ECJ1_TRUE BUILD_ECJ1_FALSE INSTALL_ECJ_JAR_TRUE INSTALL_ECJ_JAR_FALSE JAVA_HOME_SET_TRUE JAVA_HOME_SET_FALSE JAVA_HOME SUPPRESS_LIBGCJ_BC_TRUE SUPPRESS_LIBGCJ_BC_FALSE INTERPRETER INTERPRETER_TRUE INTERPRETER_FALSE LIBFFI LIBFFIINCS PLATFORM CPP EGREP USING_WIN32_PLATFORM_TRUE USING_WIN32_PLATFORM_FALSE USING_POSIX_PLATFORM_TRUE USING_POSIX_PLATFORM_FALSE USING_DARWIN_CRT_TRUE USING_DARWIN_CRT_FALSE SYSTEMSPEC ZLIBSPEC ZLIBTESTSPEC X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS extra_ldflags_libjava extra_gij_ldflags extra_ldflags LIBSTDCXXSPEC LIBGCJTESTSPEC GCLIBS GCINCS GCDEPS GCSPEC JC1GCSPEC GCTESTSPEC USING_BOEHMGC_TRUE USING_BOEHMGC_FALSE USING_NOGC_TRUE USING_NOGC_FALSE THREADLIBS THREADINCS THREADDEPS THREADSPEC THREADSTARTFILESPEC THREADLDFLAGS THREADCXXFLAGS USING_POSIX_THREADS_TRUE USING_POSIX_THREADS_FALSE USING_WIN32_THREADS_TRUE USING_WIN32_THREADS_FALSE USING_NO_THREADS_TRUE USING_NO_THREADS_FALSE USE_LIBGCJ_BC_TRUE USE_LIBGCJ_BC_FALSE LIBGCJ_SPEC HASH_SYNC_SPEC USING_GCC_TRUE USING_GCC_FALSE LIBICONV LTLIBICONV PKG_CONFIG GTK_CFLAGS GTK_LIBS GLIB_CFLAGS GLIB_LIBS LIBART_CFLAGS LIBART_LIBS CLASSPATH_SEPARATOR ac_ct_GCJ ZLIBS SYS_ZLIBS ZINCS DIVIDESPEC CHECKREFSPEC EXCEPTIONSPEC BACKTRACESPEC IEEESPEC NATIVE_TRUE NATIVE_FALSE ENABLE_SHARED_TRUE ENABLE_SHARED_FALSE NEEDS_DATA_START_TRUE NEEDS_DATA_START_FALSE GCC_UNWIND_INCLUDE toolexecdir toolexecmainlibdir toolexeclibdir GCJVERSION dbexecdir gcjsubdir gxx_include_dir libstdcxx_incdir PERL SYSDEP_SOURCES ANONVERSCRIPT_TRUE ANONVERSCRIPT_FALSE LD_START_STATIC_SPEC LD_FINISH_STATIC_SPEC here LIBOBJS LTLIBOBJS'
+ ac_subst_files=''
+ 
+ # Initialize some variables set by options.
+@@ -4444,7 +4444,7 @@
+   soname_spec='${libname}${release}${shared_ext}$major'
+   ;;
+ 
+-aix[4-9]*)
++aix4-9*)
+   version_type=linux
+   need_lib_prefix=no
+   need_version=no
+@@ -15223,6 +15223,7 @@
+ 
+ 
+ 
++
+ cat >>confdefs.h <<\_ACEOF
+ #define JV_VERSION "1.5.0"
+ _ACEOF
+@@ -17733,6 +17734,7 @@
+ s,@toolexeclibdir@,$toolexeclibdir,;t t
+ s,@GCJVERSION@,$GCJVERSION,;t t
+ s,@dbexecdir@,$dbexecdir,;t t
++s,@gcjsubdir@,$gcjsubdir,;t t
+ s,@gxx_include_dir@,$gxx_include_dir,;t t
+ s,@libstdcxx_incdir@,$libstdcxx_incdir,;t t
+ s,@PERL@,$PERL,;t t
+Index: libjava/interpret-run.cc
+===================================================================
+--- libjava/interpret-run.cc	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/interpret-run.cc	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -382,13 +382,25 @@
+ #else // !DEBUG
+ #undef NEXT_INSN
+ #define NEXT_INSN goto *((pc++)->insn)
+-#define REWRITE_INSN(INSN,SLOT,VALUE)		\
+-  do {						\
+-    pc[-2].insn = INSN;				\
+-    pc[-1].SLOT = VALUE;			\
+-  }						\
+-  while (0)
+ 
++// REWRITE_INSN does nothing.
++//
++// Rewriting a multi-word instruction in the presence of multiple
++// threads leads to a data race if a thread reads part of an
++// instruction while some other thread is rewriting that instruction.
++// For example, an invokespecial instruction may be rewritten to
++// invokespecial_resolved and its operand changed from an index to a
++// pointer while another thread is executing invokespecial.  This
++// other thread then reads the pointer that is now the operand of
++// invokespecial_resolved and tries to use it as an index.
++//
++// Fixing this requires either spinlocks, a more elaborate data
++// structure, or even per-thread allocated pages.  It's clear from the
++// locking in meth->compile below that the presence of multiple
++// threads was contemplated when this code was written, but the full
++// consequences were not fully appreciated.
++#define REWRITE_INSN(INSN,SLOT,VALUE)
++
+ #undef INTERP_REPORT_EXCEPTION
+ #define INTERP_REPORT_EXCEPTION(Jthrowable) /* not needed when not debugging */
+ #endif // !DEBUG
+Index: libjava/gcj/Makefile.in
+===================================================================
+--- libjava/gcj/Makefile.in	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/gcj/Makefile.in	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -286,6 +286,7 @@
+ extra_gij_ldflags = @extra_gij_ldflags@
+ extra_ldflags = @extra_ldflags@
+ extra_ldflags_libjava = @extra_ldflags_libjava@
++gcjsubdir = @gcjsubdir@
+ gxx_include_dir = @gxx_include_dir@
+ here = @here@
+ host = @host@
+Index: libjava/gcj/javaprims.h
+===================================================================
+--- libjava/gcj/javaprims.h	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/gcj/javaprims.h	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -440,6 +440,7 @@
+       class EnumMap$7;
+       class EnumSet;
+       class EnumSet$1;
++      class EnumSet$2;
+       class Enumeration;
+       class EventListener;
+       class EventListenerProxy;
+Index: libjava/java/lang/natString.cc
+===================================================================
+--- libjava/java/lang/natString.cc	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/java/lang/natString.cc	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -1,6 +1,7 @@
+ // natString.cc - Implementation of java.lang.String native methods.
+ 
+-/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007  Free Software Foundation
++/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
++   2007, 2008  Free Software Foundation
+ 
+    This file is part of libgcj.
+ 
+@@ -23,6 +24,7 @@
+ #include <java/lang/NullPointerException.h>
+ #include <java/lang/StringBuffer.h>
+ #include <java/io/ByteArrayOutputStream.h>
++#include <java/io/CharConversionException.h>
+ #include <java/io/OutputStreamWriter.h>
+ #include <java/io/ByteArrayInputStream.h>
+ #include <java/io/InputStreamReader.h>
+@@ -493,9 +495,28 @@
+   converter->setInput(bytes, offset, offset+count);
+   while (converter->inpos < converter->inlength)
+     {
+-      int done = converter->read(array, outpos, avail);
++      int done;
++      try
++	{
++	  done = converter->read(array, outpos, avail);
++	}
++      catch (::java::io::CharConversionException *e)
++	{
++	  // Ignore it and silently throw away the offending data.
++	  break;
++	}
+       if (done == 0)
+ 	{
++	  // done is zero if either there is no space available in the
++	  // output *or* the input is incomplete.  We assume that if
++	  // there are 20 characters available in the output, the
++	  // input must be incomplete and there is no more work to do.
++	  // This means we may skip several bytes of input, but that
++	  // is OK as the behavior is explicitly unspecified in this
++	  // case.
++	  if (avail - outpos > 20)
++	    break;
++
+ 	  jint new_size = 2 * (outpos + avail);
+ 	  jcharArray new_array = JvNewCharArray (new_size);
+ 	  memcpy (elements (new_array), elements (array),
+Index: libjava/Makefile.am
+===================================================================
+--- libjava/Makefile.am	(.../tags/ubuntu/gcc-4_2_4-release)	(revision 140971)
++++ libjava/Makefile.am	(.../branches/ubuntu/gcc-4_2-branch)	(revision 140971)
+@@ -67,7 +67,8 @@
+ ## Name of the default .db.
+ db_name = classmap.db
+ ## Compiler specific component of the .db file
+-db_pathtail = gcj-$(gcc_version)/$(db_name)
++gcjsubdir = @gcjsubdir@
++db_pathtail = $(gcjsubdir)/$(db_name)
+ 
+ ## For now, only on native systems.  FIXME.
+ if NATIVE
--- gcj-4.2-4.2.4.orig/debian/patches/s390-biarch.dpatch
+++ gcj-4.2-4.2.4/debian/patches/s390-biarch.dpatch
@@ -0,0 +1,36 @@
+#! /bin/sh -e
+
+# DP: enable biarch for 31 bit compiler
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/config.gcc~	2006-06-02 01:59:42.000000000 +0200
++++ gcc/config.gcc	2006-06-04 18:20:56.272554984 +0200
+@@ -1884,7 +1884,7 @@
+ 	;;
+ s390-*-linux*)
+ 	tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
+-	tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux"
++	tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux s390/t-linux64"
+ 	;;
+ s390x-*-linux*)
+ 	tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h"
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-multilib64dir.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-multilib64dir.dpatch
@@ -0,0 +1,62 @@
+#! /bin/sh -e
+
+# DP: Use lib instead of lib64 as multilibdir on amd64 and ppc64.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: gcc/config/i386/t-linux64
+===================================================================
+--- gcc/config/i386/t-linux64	(revision 130706)
++++ gcc/config/i386/t-linux64	(working copy)
+@@ -13,7 +13,7 @@
+ 
+ MULTILIB_OPTIONS = m64/m32
+ MULTILIB_DIRNAMES = 64 32 
+-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
++MULTILIB_OSDIRNAMES = ../lib $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
+ 
+ LIBGCC = stmp-multilib
+ INSTALL_LIBGCC = install-multilib
+Index: gcc/config/rs6000/t-linux64
+===================================================================
+--- gcc/config/rs6000/t-linux64	(revision 130706)
++++ gcc/config/rs6000/t-linux64	(working copy)
+@@ -14,13 +14,13 @@
+ # it doesn't tell anything about the 32bit libraries on those systems.  Set
+ # MULTILIB_OSDIRNAMES according to what is found on the target.
+ 
+-MULTILIB_OPTIONS        = m64/m32 msoft-float
+-MULTILIB_DIRNAMES       = 64 32 nof
++MULTILIB_OPTIONS        = m64/m32
++MULTILIB_DIRNAMES       = 64 32
+ MULTILIB_EXTRA_OPTS     = fPIC mstrict-align
+-MULTILIB_EXCEPTIONS     = m64/msoft-float
+-MULTILIB_EXCLUSIONS     = m64/!m32/msoft-float
+-MULTILIB_OSDIRNAMES	= ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
+-MULTILIB_MATCHES        = $(MULTILIB_MATCHES_FLOAT)
++MULTILIB_EXCEPTIONS     =
++MULTILIB_EXCLUSIONS     =
++MULTILIB_OSDIRNAMES	= ../lib $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
++MULTILIB_MATCHES        =
+ 
+ softfp_wrap_start := '\#ifndef __powerpc64__'
+ softfp_wrap_end := '\#endif'
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-ice-apport.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-ice-apport.dpatch
@@ -0,0 +1,43 @@
+#! /bin/sh -e
+
+# DP: Report an ICE to apport (if apport is available
+# DP: and the environment variable GCC_NOAPPORT is not set)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- gcc/gcc.c~	2007-08-05 22:17:07.000000000 +0200
++++ gcc/gcc.c	2007-08-12 15:03:16.000000000 +0200
+@@ -6119,6 +6119,14 @@
+ 	    {
+ 	      notice ("Preprocessed source stored into %s file, please attach this to your bugreport.\n",
+ 		      temp_filenames[attempt * 2]);
++	      if (!getenv ("GCC_NOAPPORT")
++		  && !access ("/usr/share/apport/gcc_ice_hook", R_OK | X_OK))
++		{
++		  char cmd[50 + strlen (temp_filenames[attempt * 2]) + strlen (new_argv[0])];
++		  sprintf(cmd, "/usr/share/apport/gcc_ice_hook %s %s",
++			  new_argv[0], temp_filenames[attempt * 2]);
++		  system(cmd);
++		}
+ 	      /* Make sure it is not deleted.  */
+ 	      free (temp_filenames[attempt * 2]);
+ 	      temp_filenames[attempt * 2] = NULL;
--- gcj-4.2-4.2.4.orig/debian/patches/libssp-gnu.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libssp-gnu.dpatch
@@ -0,0 +1,51 @@
+#! /bin/sh -e
+
+# DP: GNU/k*BSD support
+# Author: Aurelien Jarno <aurel32@debian.org>
+# Status: Submitted: http://gcc.gnu.org/ml/gcc-patches/2007-04/msg01962.html
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# append the patch here and adjust the -p? flag in the patch calls.
+
+--- src/gcc/configure.orig	2007-05-17 13:41:11.000000000 +0200
++++ src/gcc/configure	2007-05-17 13:42:24.000000000 +0200
+@@ -16002,7 +16002,7 @@
+ 
+ # Test for stack protector support in target C library.
+ case "$target" in
+-  *-*-linux*)
++  *-*-gnu*|*-*-*-gnu*)
+     echo "$as_me:$LINENO: checking __stack_chk_fail in target GNU C library" >&5
+ echo $ECHO_N "checking __stack_chk_fail in target GNU C library... $ECHO_C" >&6
+ if test "${gcc_cv_libc_provides_ssp+set}" = set; then
+--- src/gcc/configure.ac.orig	2007-05-17 13:41:11.000000000 +0200
++++ src/gcc/configure.ac	2007-05-17 13:41:14.000000000 +0200
+@@ -3202,7 +3202,7 @@
+ 
+ # Test for stack protector support in target C library.
+ case "$target" in
+-  *-*-linux*)
++  *-*-gnu*|*-*-*-gnu*)
+     AC_CACHE_CHECK(__stack_chk_fail in target GNU C library,
+       gcc_cv_libc_provides_ssp,
+       [gcc_cv_libc_provides_ssp=no
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-hash-style-both.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-hash-style-both.dpatch
@@ -0,0 +1,163 @@
+#! /bin/sh -e
+
+# DP: Link using --hash-style=both (alpha, amd64, ia64, i386, powerpc, ppc64, s390, sparc)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+2006-07-11  Jakub Jelinek  <jakub@redhat.com>
+
+	* config/i386/linux.h (LINK_SPEC): Add --hash-style=both.
+	* config/i386/linux64.h (LINK_SPEC): Likewise.
+	* config/rs6000/sysv4.h (LINK_OS_LINUX_SPEC): Likewise.
+	* config/rs6000/linux64.h (LINK_OS_LINUX_SPEC32,
+	LINK_OS_LINUX_SPEC64): Likewise.
+	* config/s390/linux.h (LINK_SPEC): Likewise.
+	* config/ia64/linux.h (LINK_SPEC): Likewise.
+	* config/sparc/linux.h (LINK_SPEC): Likewise.
+	* config/sparc/linux64.h (LINK_SPEC, LINK_ARCH32_SPEC,
+	LINK_ARCH64_SPEC): Likewise.
+	* config/alpha/linux-elf.h (LINK_SPEC): Likewise.
+
+--- gcc/config/alpha/linux-elf.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/alpha/linux-elf.h	2006-12-11 13:03:10.336229000 +0100
+@@ -40,7 +40,7 @@
+ 
+ #define ELF_DYNAMIC_LINKER	LINUX_DYNAMIC_LINKER
+ 
+-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax}		\
++#define LINK_SPEC "-m elf64alpha --hash-style=both %{G*} %{relax:-relax}	\
+   %{O*:-O3} %{!O*:-O1}						\
+   %{shared:-shared}						\
+   %{!shared:							\
+--- gcc/config/s390/linux.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/s390/linux.h	2006-12-11 13:03:10.336229000 +0100
+@@ -78,7 +78,7 @@
+ 
+ #undef  LINK_SPEC
+ #define LINK_SPEC \
+-  "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
++  "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=both \
+    %{shared:-shared} \
+    %{!shared: \
+       %{static:-static} \
+--- gcc/config/sparc/linux.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/sparc/linux.h	2006-12-11 13:03:10.336229000 +0100
+@@ -133,7 +133,7 @@
+ 
+ 
+ #undef  LINK_SPEC
+-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_SPEC "-m elf32_sparc --hash-style=both -Y P,/usr/lib %{shared:-shared} \
+   %{!mno-relax:%{!r:-relax}} \
+   %{!shared: \
+     %{!ibcs: \
+--- gcc/config/sparc/linux64.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/sparc/linux64.h	2006-12-11 13:03:10.336229000 +0100
+@@ -167,7 +167,7 @@
+   { "link_arch_default", LINK_ARCH_DEFAULT_SPEC },	  \
+   { "link_arch",	 LINK_ARCH_SPEC },
+ 
+-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=both -Y P,/usr/lib %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+@@ -176,7 +176,7 @@
+         %{static:-static}}} \
+ "
+ 
+-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
++#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=both -Y P,/usr/lib64 %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+@@ -257,7 +257,7 @@
+ #else /* !SPARC_BI_ARCH */
+ 
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
++#define LINK_SPEC "-m elf64_sparc --hash-style=both -Y P,/usr/lib64 %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+--- gcc/config/i386/linux.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/i386/linux.h	2006-12-11 13:03:10.336229000 +0100
+@@ -109,7 +109,7 @@
+   { "dynamic_linker", LINUX_DYNAMIC_LINKER }
+ 
+ #undef	LINK_SPEC
+-#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
++#define LINK_SPEC "-m %(link_emulation) --hash-style=both %{shared:-shared} \
+   %{!shared: \
+     %{!ibcs: \
+       %{!static: \
+--- gcc/config/i386/linux64.h.orig	2006-12-11 13:02:43.396229000 +0100
++++ gcc/config/i386/linux64.h	2006-12-11 13:03:51.046229000 +0100
+@@ -53,7 +53,7 @@
+ #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
+ 
+ #undef	LINK_SPEC
+-#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
++#define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} --hash-style=both \
+   %{shared:-shared} \
+   %{!shared: \
+     %{!static: \
+--- gcc/config/ia64/linux.h.orig	2006-12-11 13:02:43.406229000 +0100
++++ gcc/config/ia64/linux.h	2006-12-11 13:03:10.346229000 +0100
+@@ -40,7 +40,7 @@
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
+ 
+ #undef LINK_SPEC
+-#define LINK_SPEC "\
++#define LINK_SPEC "--hash-style=both \
+   %{shared:-shared} \
+   %{!shared: \
+     %{!static: \
+--- gcc/config/rs6000/sysv4.h.orig	2006-12-11 13:02:43.406229000 +0100
++++ gcc/config/rs6000/sysv4.h	2006-12-11 13:03:10.346229000 +0100
+@@ -908,7 +908,7 @@
+ #define LINUX_DYNAMIC_LINKER \
+   CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
+ 
+-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
+ 
+--- gcc/config/rs6000/linux64.h.orig	2006-12-11 13:02:43.406229000 +0100
++++ gcc/config/rs6000/linux64.h	2006-12-11 13:03:10.346229000 +0100
+@@ -351,11 +351,11 @@
+   CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64)
+ 
+ 
+-#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER32 "}}}"
+ 
+-#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=both %{!shared: %{!static: \
+   %{rdynamic:-export-dynamic} \
+   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}}"
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/gpc-names.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gpc-names.dpatch
@@ -0,0 +1,117 @@
+#! /bin/sh -e
+
+# DP: versioned gpc names
+
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch) patch $pdir -f --no-backup-if-mismatch -p0 < $0;;
+    -unpatch) patch $pdir -f --no-backup-if-mismatch -R -p0 < $0;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1
+esac
+exit 0
+
+--- gcc/p/doc/en/gpc.texi.orig	2007-08-27 00:21:02.340767891 +0200
++++ gcc/p/doc/en/gpc.texi	2007-08-27 00:21:29.921183935 +0200
+@@ -23,11 +23,11 @@
+ 
+ @dircategory GNU programming tools
+ @direntry
+-* GPC: (gpc).                   The GNU Pascal Compiler.
++* GPC-4.1: (gpc-4.1).           The GNU Pascal Compiler (v2.1, based on GCC 4.1).
+ @end direntry
+ @dircategory Individual utilities
+ @direntry
+-* GPC: (gpc)Invoking GPC.       The GNU Pascal Compiler.
++* GPC-4.1: (gpc-4.1)Invoking GPC. The GNU Pascal Compiler (v2.1, based on GCC 4.1).
+ @end direntry
+ 
+ @c For FSF printing, turn on finalout (to get rid of the black
+--- gcc/p/Make-lang.in.orig	2007-08-27 00:21:02.340767891 +0200
++++ gcc/p/Make-lang.in	2007-08-27 00:23:19.412835592 +0200
+@@ -799,42 +799,43 @@
+ pascal.start.encap:
+ pascal.rest.encap: pascal.rts pascal.utils
+ 
+-pascal.info: $(srcdir)/p/doc/info/gpc.info \
+-             $(srcdir)/p/doc/info/gpcs.info \
+-             $(srcdir)/p/doc/info/gpcs-de.info \
+-             $(srcdir)/p/doc/info/gpc-hr.info \
+-             $(srcdir)/p/doc/info/gpcs-hr.info \
+-             $(srcdir)/p/doc/info/gpc-es.info \
+-             $(srcdir)/p/doc/info/gpcs-es.info
++iv=-4.1
++pascal.info: $(srcdir)/p/doc/info/gpc$(iv).info \
++             $(srcdir)/p/doc/info/gpcs$(iv).info \
++             $(srcdir)/p/doc/info/gpcs-de$(iv).info \
++             $(srcdir)/p/doc/info/gpc-hr$(iv).info \
++             $(srcdir)/p/doc/info/gpcs-hr$(iv).info \
++             $(srcdir)/p/doc/info/gpc-es$(iv).info \
++             $(srcdir)/p/doc/info/gpcs-es$(iv).info
+ pascal.dvi: gpc.dvi
+ 
+-$(srcdir)/p/doc/info/gpc.info: $(GPC_TEXI_EN)
++$(srcdir)/p/doc/info/gpc$(iv).info: $(GPC_TEXI_EN)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_EN) -o $(srcdir)/p/doc/info/gpc.info gpc.texi
++	$(MAKEINFO_EN) -o $(srcdir)/p/doc/info/gpc$(iv).info gpc.texi
+ 
+-$(srcdir)/p/doc/info/gpcs.info: $(GPC_TEXI_EN)
++$(srcdir)/p/doc/info/gpcs$(iv).info: $(GPC_TEXI_EN)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_EN) --no-split -o $(srcdir)/p/doc/info/gpcs.info gpcs.texi
++	$(MAKEINFO_EN) --no-split -o $(srcdir)/p/doc/info/gpcs$(iv).info gpcs.texi
+ 
+-$(srcdir)/p/doc/info/gpcs-de.info: $(GPC_TEXI_DE)
++$(srcdir)/p/doc/info/gpcs-de$(iv).info: $(GPC_TEXI_DE)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_DE) --no-split -o $(srcdir)/p/doc/info/gpcs-de.info gpcs.texi
++	$(MAKEINFO_DE) --no-split -o $(srcdir)/p/doc/info/gpcs-de$(iv).info gpcs.texi
+ 
+-$(srcdir)/p/doc/info/gpc-hr.info: $(GPC_TEXI_HR)
++$(srcdir)/p/doc/info/gpc-hr$(iv).info: $(GPC_TEXI_HR)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_HR) -o $(srcdir)/p/doc/info/gpc-hr.info gpc.texi
++	$(MAKEINFO_HR) -o $(srcdir)/p/doc/info/gpc-hr$(iv).info gpc.texi
+ 
+-$(srcdir)/p/doc/info/gpcs-hr.info: $(GPC_TEXI_HR)
++$(srcdir)/p/doc/info/gpcs-hr$(iv).info: $(GPC_TEXI_HR)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_HR) --no-split -o $(srcdir)/p/doc/info/gpcs-hr.info gpcs.texi
++	$(MAKEINFO_HR) --no-split -o $(srcdir)/p/doc/info/gpcs-hr$(iv).info gpcs.texi
+ 
+-$(srcdir)/p/doc/info/gpc-es.info: $(GPC_TEXI_ES)
++$(srcdir)/p/doc/info/gpc-es$(iv).info: $(GPC_TEXI_ES)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_ES) -o $(srcdir)/p/doc/info/gpc-es.info gpc.texi
++	$(MAKEINFO_ES) -o $(srcdir)/p/doc/info/gpc-es$(iv).info gpc.texi
+ 
+-$(srcdir)/p/doc/info/gpcs-es.info: $(GPC_TEXI_ES)
++$(srcdir)/p/doc/info/gpcs-es$(iv).info: $(GPC_TEXI_ES)
+ 	[ -d "$(srcdir)/p/doc/info" ] || $(srcdir)/p/script/mkdir-p "$(srcdir)/p/doc/info"
+-	$(MAKEINFO_ES) --no-split -o $(srcdir)/p/doc/info/gpcs-es.info gpcs.texi
++	$(MAKEINFO_ES) --no-split -o $(srcdir)/p/doc/info/gpcs-es$(iv).info gpcs.texi
+ 
+ gpc.dvi: $(GPC_TEXI_EN)
+ 	TEXINPUTS=$(srcdir)/p/doc:$(srcdir)/p/doc/images:$$TEXINPUTS \
+@@ -1023,11 +1024,11 @@
+ 	fi
+ 
+ pascal.install-info: pascal.install-info-man-dirs pascal.info
+-	rm -f $(DESTDIR)$(infodir)/gpc.info* $(DESTDIR)$(infodir)/gpcs.info* $(DESTDIR)$(infodir)/gpcs-de.info* $(DESTDIR)$(infodir)/gpcs-hr.info* $(DESTDIR)$(infodir)/gpcs-es.info*
+-	for f in `cd $(srcdir)/p/doc/info && echo gpc.info* gpcs*.info*`; do \
++	rm -f $(DESTDIR)$(infodir)/gpc*.info* $(DESTDIR)$(infodir)/gpcs*.info* $(DESTDIR)$(infodir)/gpcs-de*.info* $(DESTDIR)$(infodir)/gpcs-hr*.info* $(DESTDIR)$(infodir)/gpcs-es*.info*
++	for f in `cd $(srcdir)/p/doc/info && echo gpc$(iv).info* gpcs*.info*`; do \
+ 	  $(INSTALL_DATA) $(srcdir)/p/doc/info/$$f $(DESTDIR)$(infodir)/$$f || exit 1; \
+ 	done
+-	chmod a-x $(DESTDIR)$(infodir)/gpc.info* $(DESTDIR)$(infodir)/gpcs.info* $(DESTDIR)$(infodir)/gpcs-de.info* $(DESTDIR)$(infodir)/gpcs-hr.info* $(DESTDIR)$(infodir)/gpcs-es.info*
++	chmod a-x $(DESTDIR)$(infodir)/gpc*.info* $(DESTDIR)$(infodir)/gpcs*.info* $(DESTDIR)$(infodir)/gpcs-de*.info* $(DESTDIR)$(infodir)/gpcs-hr*.info* $(DESTDIR)$(infodir)/gpcs-es*.info*
+ 
+ pascal.install-man: pascal.install-info-man-dirs $(srcdir)/p/doc/en/gpc.1 $(srcdir)/p/doc/generated/gpc-run.1
+ 	-if [ -f gpc1$(exeext) ]; then \
--- gcj-4.2-4.2.4.orig/debian/patches/note-gnu-stack.dpatch
+++ gcj-4.2-4.2.4/debian/patches/note-gnu-stack.dpatch
@@ -0,0 +1,316 @@
+#! /bin/sh -e
+
+# DP: Add .note.GNU-stack sections for gcc's crt files, libffi and boehm-gc
+# DP: Taken from FC.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+gcc/
+
+2004-09-20  Jakub Jelinek  <jakub@redhat.com>
+
+	* config/rs6000/ppc-asm.h: Add .note.GNU-stack section also
+	on ppc64-linux.
+
+	* config/ia64/lib1funcs.asm: Add .note.GNU-stack section on
+	ia64-linux.
+	* config/ia64/crtbegin.asm: Likewise.
+	* config/ia64/crtend.asm: Likewise.
+	* config/ia64/crti.asm: Likewise.
+	* config/ia64/crtn.asm: Likewise.
+
+2004-05-14  Jakub Jelinek  <jakub@redhat.com>
+
+	* config/ia64/linux.h (TARGET_ASM_FILE_END): Define.
+
+
+boehm-gc/
+
+2005-02-08  Jakub Jelinek  <jakub@redhat.com>
+
+	* ia64_save_regs_in_stack.s: Moved to...
+	* ia64_save_regs_in_stack.S: ... this.  Add .note.GNU-stack
+	on Linux.
+
+libffi/
+
+2007-05-11  Daniel Jacobowitz  <dan@debian.org>
+
+	* src/arm/sysv.S: Fix ARM comment marker.
+
+2005-02-08  Jakub Jelinek  <jakub@redhat.com>
+
+	* src/alpha/osf.S: Add .note.GNU-stack on Linux.
+	* src/s390/sysv.S: Likewise.
+	* src/powerpc/linux64.S: Likewise.
+	* src/powerpc/linux64_closure.S: Likewise.
+	* src/powerpc/ppc_closure.S: Likewise.
+	* src/powerpc/sysv.S: Likewise.
+	* src/x86/unix64.S: Likewise.
+	* src/x86/sysv.S: Likewise.
+	* src/sparc/v8.S: Likewise.
+	* src/sparc/v9.S: Likewise.
+	* src/m68k/sysv.S: Likewise.
+	* src/ia64/unix.S: Likewise.
+	* src/arm/sysv.S: Likewise.
+
+
+Index: boehm-gc/ia64_save_regs_in_stack.s
+===================================================================
+--- boehm-gc/ia64_save_regs_in_stack.s	(revision 107431)
++++ boehm-gc/ia64_save_regs_in_stack.s	(revision 107432)
+@@ -1,12 +0,0 @@
+-        .text
+-        .align 16
+-        .global GC_save_regs_in_stack
+-        .proc GC_save_regs_in_stack
+-GC_save_regs_in_stack:
+-        .body
+-        flushrs
+-        ;;
+-        mov r8=ar.bsp
+-        br.ret.sptk.few rp
+-        .endp GC_save_regs_in_stack
+-
+Index: boehm-gc/ia64_save_regs_in_stack.S
+===================================================================
+--- boehm-gc/ia64_save_regs_in_stack.S	(revision 0)
++++ boehm-gc/ia64_save_regs_in_stack.S	(revision 107432)
+@@ -0,0 +1,15 @@
++        .text
++        .align 16
++        .global GC_save_regs_in_stack
++        .proc GC_save_regs_in_stack
++GC_save_regs_in_stack:
++        .body
++        flushrs
++        ;;
++        mov r8=ar.bsp
++        br.ret.sptk.few rp
++        .endp GC_save_regs_in_stack
++
++#ifdef __linux__
++	.section .note.GNU-stack,"",@progbits
++#endif
+--- gcc/config/ia64/linux.h.orig	2006-10-12 02:01:00.000000000 +0200
++++ gcc/config/ia64/linux.h	2006-12-11 10:33:13.000000000 +0100
+@@ -5,6 +5,8 @@
+ 
+ #define TARGET_VERSION fprintf (stderr, " (IA-64) Linux");
+ 
++#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
++
+ /* This is for -profile to use -lc_p instead of -lc.  */
+ #undef CC1_SPEC
+ #define CC1_SPEC "%{profile:-p} %{G*}"
+--- gcc/config/ia64/lib1funcs.asm.orig	2006-01-18 22:46:41.000000000 +0100
++++ gcc/config/ia64/lib1funcs.asm	2006-12-11 10:33:13.000000000 +0100
+@@ -792,3 +792,7 @@
+ 	}
+ 	.endp __floattitf
+ #endif
++
++#ifdef __linux__
++.section .note.GNU-stack; .previous
++#endif
+--- gcc/config/ia64/crti.asm.orig	2006-01-18 22:46:41.000000000 +0100
++++ gcc/config/ia64/crti.asm	2006-12-11 10:33:13.000000000 +0100
+@@ -64,3 +64,7 @@
+ 	.body
+ 
+ # end of crti.asm
++
++#ifdef __linux__
++.section .note.GNU-stack; .previous
++#endif
+--- gcc/config/ia64/crtn.asm.orig	2006-01-18 22:46:41.000000000 +0100
++++ gcc/config/ia64/crtn.asm	2006-12-11 10:33:13.000000000 +0100
+@@ -54,3 +54,7 @@
+ 	br.ret.sptk.many b0
+ 
+ # end of crtn.asm
++
++#ifdef __linux__
++.section .note.GNU-stack; .previous
++#endif
+--- gcc/config/ia64/crtend.asm.orig	2006-01-18 22:46:41.000000000 +0100
++++ gcc/config/ia64/crtend.asm	2006-12-11 10:33:13.000000000 +0100
+@@ -122,3 +122,7 @@
+ 
+ 	br.ret.sptk.many rp
+ 	.endp __do_global_ctors_aux
++
++#ifdef __linux__
++.section .note.GNU-stack; .previous
++#endif
+--- gcc/config/ia64/crtbegin.asm.orig	2006-01-18 22:46:41.000000000 +0100
++++ gcc/config/ia64/crtbegin.asm	2006-12-11 10:33:13.000000000 +0100
+@@ -255,3 +255,7 @@
+ .weak __cxa_finalize
+ #endif
+ .weak _Jv_RegisterClasses
++
++#ifdef __linux__
++.section .note.GNU-stack; .previous
++#endif
+--- gcc/config/rs6000/ppc-asm.h.orig	2006-01-18 22:46:46.000000000 +0100
++++ gcc/config/rs6000/ppc-asm.h	2006-12-11 10:33:14.000000000 +0100
+@@ -158,7 +158,7 @@
+ 	.size FUNC_NAME(name),GLUE(.L,name)-FUNC_NAME(name)
+ #endif
+ 
+-#if defined __linux__ && !defined __powerpc64__
++#if defined __linux__
+ 	.section .note.GNU-stack
+ 	.previous
+ #endif
+--- libffi/src/powerpc/ppc_closure.S.orig	2006-03-25 09:16:06.000000000 +0100
++++ libffi/src/powerpc/ppc_closure.S	2006-12-11 10:33:14.000000000 +0100
+@@ -281,3 +281,7 @@
+ .LEFDE1:
+ 
+ #endif
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/powerpc/sysv.S.orig	2006-03-25 09:16:06.000000000 +0100
++++ libffi/src/powerpc/sysv.S	2006-12-11 10:33:14.000000000 +0100
+@@ -217,3 +217,7 @@
+       .align 2
+ .LEFDE1:
+ #endif
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/powerpc/linux64_closure.S.orig	2006-01-18 22:49:27.000000000 +0100
++++ libffi/src/powerpc/linux64_closure.S	2006-12-11 10:33:14.000000000 +0100
+@@ -204,3 +204,7 @@
+ 	.align 3
+ .LEFDE1:
+ #endif
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/powerpc/linux64.S.orig	2006-03-25 09:16:06.000000000 +0100
++++ libffi/src/powerpc/linux64.S	2006-12-11 10:33:14.000000000 +0100
+@@ -175,3 +175,7 @@
+ 	.align 3
+ .LEFDE1:
+ #endif
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/arm/sysv.S.orig	2006-10-12 02:00:57.000000000 +0200
++++ libffi/src/arm/sysv.S	2006-12-11 10:33:14.000000000 +0100
+@@ -255,3 +255,6 @@
+ .ffi_closure_SYSV_end:
+         .size    CNAME(ffi_closure_SYSV),.ffi_closure_SYSV_end-CNAME(ffi_closure_SYSV)
+ 
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",%progbits
++#endif
+--- libffi/src/m68k/sysv.S.orig	2006-01-18 22:49:27.000000000 +0100
++++ libffi/src/m68k/sysv.S	2006-12-11 10:33:14.000000000 +0100
+@@ -207,3 +207,7 @@
+ 	rts
+ 	CFI_ENDPROC()
+ 	.size	ffi_closure_struct_SYSV,.-ffi_closure_struct_SYSV
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/alpha/osf.S.orig	2006-01-18 22:49:27.000000000 +0100
++++ libffi/src/alpha/osf.S	2006-12-11 10:33:14.000000000 +0100
+@@ -356,4 +356,8 @@
+ 	.byte	16		# uleb128 offset 16*-8
+ 	.align 3
+ $LEFDE3:
++
++#ifdef __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+ #endif
+--- libffi/src/x86/sysv.S.orig	2006-01-18 22:49:28.000000000 +0100
++++ libffi/src/x86/sysv.S	2006-12-11 10:33:14.000000000 +0100
+@@ -376,3 +376,7 @@
+ #endif
+ 
+ #endif /* ifndef __x86_64__ */
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/x86/unix64.S.orig	2006-01-18 22:49:28.000000000 +0100
++++ libffi/src/x86/unix64.S	2006-12-11 10:33:14.000000000 +0100
+@@ -410,3 +410,7 @@
+ .LEFDE3:
+ 
+ #endif /* __x86_64__ */
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/s390/sysv.S.orig	2006-01-18 22:49:28.000000000 +0100
++++ libffi/src/s390/sysv.S	2006-12-11 10:33:14.000000000 +0100
+@@ -427,3 +427,6 @@
+ 
+ #endif
+ 
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/ia64/unix.S.orig	2006-01-18 22:49:29.000000000 +0100
++++ libffi/src/ia64/unix.S	2006-12-11 10:33:14.000000000 +0100
+@@ -553,3 +553,7 @@
+ 	data8	@pcrel(.Lld_hfa_float)		// FFI_IA64_TYPE_HFA_FLOAT
+ 	data8	@pcrel(.Lld_hfa_double)		// FFI_IA64_TYPE_HFA_DOUBLE
+ 	data8	@pcrel(.Lld_hfa_ldouble)	// FFI_IA64_TYPE_HFA_LDOUBLE
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/sparc/v9.S.orig	2006-01-18 22:49:29.000000000 +0100
++++ libffi/src/sparc/v9.S	2006-12-11 10:33:14.000000000 +0100
+@@ -300,3 +300,7 @@
+ 	.align 8
+ .LLEFDE2:
+ #endif
++
++#ifdef __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
+--- libffi/src/sparc/v8.S.orig	2006-01-18 22:49:29.000000000 +0100
++++ libffi/src/sparc/v8.S	2006-12-11 10:33:14.000000000 +0100
+@@ -265,3 +265,7 @@
+ 	.byte	0x1f	! uleb128 0x1f
+ 	.align	WS
+ .LLEFDE2:
++
++#if defined __ELF__ && defined __linux__
++	.section	.note.GNU-stack,"",@progbits
++#endif
--- gcj-4.2-4.2.4.orig/debian/patches/ada-libgnatprj.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-libgnatprj.dpatch
@@ -0,0 +1,1449 @@
+#! /bin/sh -e
+
+# DP: - Introduce a new shared library named libgnatprj, containing
+# DP:   the GNAT project file manager licensed under the pure GPL, for
+# DP:   use in GNAT tools, GLADE and GPS.  Link the GNAT tools against
+# DP:   this new library.
+
+# This patch seems large, but the hunks in Makefile.in are actually
+# generated from Makefile.def using autogen.
+
+# !!! Must be applied after ada-libgnatvsn.dpatch
+
+dir=./
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	cd ${dir} && autoconf2.13
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+	rm -f ${dir}configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- configure.in~
++++ configure.in	2007-06-20 21:04:33.968594098 +0200
+@@ -123,7 +123,7 @@
+ 
+ # these libraries are used by various programs built for the host environment
+ #
+-host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber libada libgnatvsn"
++host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber libada libgnatvsn libgnatprj"
+ 
+ # these tools are built for the host environment
+ # Note, the powerpc-eabi build depends on sim occurring before gdb in order to
+@@ -153,6 +153,7 @@
+ 		target-libobjc \
+ 		target-libada \
+ 		target-libgnatvsn \
++		target-libgnatprj \
+ 		target-libgomp"
+ 
+ # these tools are built using the target libraries, and are intended to
+@@ -231,7 +232,7 @@
+ 
+ # Similarly, some are only suitable for cross toolchains.
+ # Remove these if host=target.
+-cross_only="target-libgloss target-newlib target-opcodes target-libada target-libgnatvsn"
++cross_only="target-libgloss target-newlib target-opcodes target-libada target-libgnatvsn target-libgnatprj"
+ 
+ case $is_cross_compiler in
+   no) skipdirs="${skipdirs} ${cross_only}" ;;
+@@ -305,7 +306,7 @@
+ ENABLE_LIBADA=$enableval,
+ ENABLE_LIBADA=yes)
+ if test "${ENABLE_LIBADA}" != "yes" ; then
+-  noconfigdirs="$noconfigdirs libgnatvsn gnattools"
++  noconfigdirs="$noconfigdirs libgnatvsn libgnatprj gnattools"
+ fi
+ 
+ AC_ARG_ENABLE(libssp,
+--- gcc/ada/config-lang.in~
++++ gcc/ada/config-lang.in	2007-06-20 21:05:06.994184936 +0200
+@@ -38,8 +38,8 @@
+ 
+ outputs=ada/Makefile
+ 
+-target_libs="target-libada target-libgnatvsn"
+-lang_dirs="libada libgnatvsn gnattools"
++target_libs="target-libada target-libgnatvsn target-libgnatprj"
++lang_dirs="libada libgnatvsn libgnatprj gnattools"
+ 
+ # Ada will not work until the front end starts emitting GIMPLE trees.
+ build_by_default=no
+--- gnattools/Makefile.in~
++++ gnattools/Makefile.in	2007-06-20 21:24:49.439989983 +0200
+@@ -37,13 +37,13 @@
+ target_noncanonical=@target_noncanonical@
+ 
+ CFLAGS=-g -O2 -Wall
+-INCLUDES = -I@srcdir@/../gcc/ada -I@srcdir@/../gcc
+ ADA_CFLAGS=-g -O2 -gnatn
+ ADA_INCLUDES=-nostdinc -I- -I. -I../gcc/ada/rts -I@srcdir@/../gcc/ada
+-ADA_INCLUDES += -aO../libgnatvsn
++ADA_INCLUDES += -aO../libgnatvsn -aO../libgnatprj
+ LIB_VERSION=$(strip $(shell grep ' Library_Version :' \
+               @srcdir@/../gcc/ada/gnatvsn.ads | sed -e 's/.*"\(.*\)".*/\1/'))
+-ADA_LIBS := -L../gcc/ada/rts -lgnat-$(LIB_VERSION) -L../libgnatvsn -lgnatvsn
++ADA_LIBS := -L../gcc/ada/rts -lgnat-$(LIB_VERSION) -L../libgnatvsn -lgnatvsn \
++-L../libgnatprj -lgnatprj
+ 
+ # We will use the just-built compiler to compile and link everything.
+ GCC=../gcc/xgcc -B../gcc/
+@@ -68,75 +68,10 @@
+ 
+ # Since we don't have gnatmake, we must specify the full list of
+ # object files necessary to build gnatmake and gnatlink.
+-# TODO: remove from these lists the objects that are part of
+-# libgnatprj.
+-GNATLINK_OBJS = \
+-ali.o \
+-butil.o \
+-fmap.o \
+-gnatlink.o \
+-indepsw.o \
+-osint.o \
+-prefix.o \
+-rident.o \
+-sdefault.o \
+-stylesw.o \
+-switch.o \
+-targparm.o \
+-validsw.o
+-
+-GNATMAKE_OBJS = \
+-ali-util.o \
+-ali.o \
+-binderr.o \
+-butil.o \
+-err_vars.o \
+-erroutc.o \
+-errutil.o \
+-fmap.o \
+-fname-sf.o \
+-fname-uf.o \
+-gnatmake.o \
+-make.o \
+-makeusg.o \
+-makeutl.o \
+-mlib-fil.o \
+-mlib-prj.o \
+-mlib-tgt.o \
+-mlib-utl.o \
+-mlib.o \
+-osint-m.o \
+-osint.o \
+-prefix.o \
+-prj-attr-pm.o \
+-prj-attr.o \
+-prj-com.o \
+-prj-dect.o \
+-prj-env.o \
+-prj-err.o \
+-prj-ext.o \
+-prj-nmsc.o \
+-prj-pars.o \
+-prj-part.o \
+-prj-proc.o \
+-prj-strt.o \
+-prj-tree.o \
+-prj-util.o \
+-prj.o \
+-rident.o \
+-scng.o \
+-sdefault.o \
+-sfn_scan.o \
+-sinput-c.o \
+-sinput-p.o \
+-styleg.o \
+-stylesw.o \
+-switch-m.o \
+-switch.o \
+-targparm.o \
+-tempdir.o \
+-usage.o \
+-validsw.o \
++GNATLINK_OBJS = gnatlink.o indepsw.o validsw.o
++
++GNATMAKE_OBJS = fname-sf.o fname-uf.o gnatmake.o make.o makeusg.o makeutl.o \
++mlib-prj.o osint-m.o usage.o validsw.o \
+ $(EXTRA_GNATMAKE_OBJS)
+ 
+ 
+@@ -151,7 +86,6 @@
+ # accessed using the vpath directive.
+ 
+ stamp-gnattools-sources:
+-	$(LN_S) ../gcc/ada/sdefault.adb .
+ 	$(foreach PAIR,$(TOOLS_TARGET_PAIRS), \
+ 	          rm -f $(word 1,$(subst <, ,$(PAIR)));\
+ 	          $(LN_S) @srcdir@/../gcc/ada/$(word 2,$(subst <, ,$(PAIR))) \
+@@ -170,19 +104,16 @@
+ vpath %.adb .:@srcdir@/../gcc/ada
+ vpath %.ads @srcdir@/../gcc/ada
+ 
+-# Because the just-built gcc is a host tool like us, we can use some
+-# of its object files, e.g. prefix.o.
+-vpath prefix.o ../gcc
+-
+ # gnatlink
+ 
+-gnatlink-static: $(GNATLINK_OBJS) b_gnatl.o link.o
++gnatlink-static: $(GNATLINK_OBJS) b_gnatl.o
+ 	$(GCC) -o $@ $^ \
++	   ../libgnatprj/libgnatprj.a \
+ 	   ../libgnatvsn/libgnatvsn.a \
+ 	   ../gcc/ada/rts/libgnat.a \
+ 	   ../libiberty/libiberty.a
+ 
+-gnatlink: $(GNATLINK_OBJS) b_gnatl.o link.o
++gnatlink: $(GNATLINK_OBJS) b_gnatl.o
+ 	$(GCC) -o $@ $^ $(ADA_LIBS) ../libiberty/libiberty.a
+ 
+ b_gnatl.o: b_gnatl.c adaint.h
+@@ -193,13 +124,14 @@
+ 
+ # gnatmake
+ 
+-gnatmake-static: $(GNATMAKE_OBJS) b_gnatm.o link.o
++gnatmake-static: $(GNATMAKE_OBJS) b_gnatm.o
+ 	$(GCC) -o $@ $(ADA_CFLAGS) $^ \
++	   ../libgnatprj/libgnatprj.a \
+ 	   ../libgnatvsn/libgnatvsn.a \
+ 	   ../gcc/ada/rts/libgnat.a \
+ 	   ../libiberty/libiberty.a
+ 
+-gnatmake: $(GNATMAKE_OBJS) b_gnatm.o link.o
++gnatmake: $(GNATMAKE_OBJS) b_gnatm.o
+ 	$(GCC) -o $@ $(ADA_CFLAGS) $^ $(ADA_LIBS) ../libiberty/libiberty.a
+ 
+ b_gnatm.o: b_gnatm.c adaint.h
+@@ -209,7 +141,8 @@
+ 	../gcc/gnatbind -C -o $@ $(ADA_INCLUDES) gnatmake.ali
+ 
+ # Other tools
+-gnatchop gnatkr:
++gnatbind gnatchop gnatclean gnatcmd gnatfind gnatkr gnatls gnatname gnatprep \
++gnatxref gprmake:
+ 	./gnatmake-static -c -b $@ $(ADA_CFLAGS) $(ADA_INCLUDES) \
+ 	   --GCC="$(GCC)" \
+ 	   --GNATBIND=../gcc/gnatbind
+@@ -220,17 +153,7 @@
+ gnat: gnatcmd
+ 	cp -lp $< $@
+ 
+-gnatbind gnatclean gnatcmd gnatfind gnatls gnatname gnatprep gnatxref gprmake: \
+-link.o prefix.o
+-	./gnatmake-static -c -b $@ $(ADA_CFLAGS) $(ADA_INCLUDES) \
+-	   --GCC="$(GCC)" \
+-	   --GNATBIND=../gcc/gnatbind
+-	./gnatlink-static -o $@ $@.ali $^ $(ADA_INCLUDES) $(ADA_LIBS) \
+-	   ../libiberty/libiberty.a \
+-	   --GCC="$(GCC) $(ADA_INCLUDES)"
+-	strip $@
+-
+-gnatbl: gnatbl.c link.o prefix.o
++gnatbl: gnatbl.c
+ 	$(GCC) -o $@ $< $(CFLAGS) \
+ 	   -I../gcc -I@srcdir@/../gcc/config -I@srcdir@/../gcc \
+ 	   -I@srcdir@/../include \
+@@ -238,18 +161,12 @@
+ 	   $(ADA_LIBS) ../libiberty/libiberty.a
+ 	strip $@
+ 
+-# Force compiling sdefault.adb, not .ads, to produce sdefault.o
+-sdefault.o: sdefault.adb
+-
+ %.o: %.adb
+ 	$(GCC) -c -o $@ $< $(ADA_CFLAGS) $(ADA_INCLUDES)
+ 
+ %.o: %.ads
+ 	$(GCC) -c -o $@ $< $(ADA_CFLAGS) $(ADA_INCLUDES)
+ 
+-%.o: %.c
+-	$(GCC) -c -o $@ $< $(CFLAGS) $(INCLUDES)
+-
+ # Other
+ # -----
+ 
+--- libgnatprj/configure~
++++ libgnatprj/configure	2006-04-19 07:54:53.000000000 +0200
+@@ -0,0 +1,34 @@
++#!/bin/sh
++
++# Minimal configure script for libgnatprj.  We're only interested in
++# a few parameters.
++
++for arg in $*; do
++    case ${arg} in
++	--build=*)
++	    build=`expr ${arg} : '--build=\(.\+\)'`;;
++	--host=*)
++	    host=`expr ${arg} : '--host=\(.\+\)'`;;
++	--target=*)
++	    target=`expr ${arg} : '--target=\(.\+\)'`;;
++	--prefix=*)
++	    prefix=`expr ${arg} : '--prefix=\(.\+\)'`;;
++	--srcdir=*)
++	    srcdir=`expr ${arg} : '--srcdir=\(.\+\)'`;;
++	*)
++	    echo "Warning: ignoring option: ${arg}"
++    esac
++done
++
++echo "build: ${build}" | tee config.log
++echo "host: ${host}" | tee -a config.log
++echo "target: ${target}" | tee -a config.log
++echo "prefix: ${prefix}" | tee -a config.log
++echo "srcdir: ${srcdir}" | tee -a config.log
++
++echo "Creating Makefile..." | tee -a config.log
++sed -e "s,@build@,${build},g" \
++    -e "s,@host@,${host},g" \
++    -e "s,@target@,${target},g" \
++    -e "s,@prefix@,${prefix},g" \
++    -e "s,@srcdir@,${srcdir},g" < ${srcdir}/Makefile.in > Makefile
+--- libgnatprj/Makefile.in~
++++ libgnatprj/Makefile.in	2006-04-19 19:28:33.000000000 +0200
+@@ -0,0 +1,177 @@
++# Makefile for libgnatprj.
++#   Copyright (c) 2006 Ludovic Brenta <ludovic@ludovic-brenta.org>
++#
++# This file is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++# 
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++# GNU General Public License for more details.
++# 
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
++
++# Default target; must be first.
++all: libgnatprj
++
++.SUFFIXES:
++
++CPUS := $(shell getconf _NPROCESSORS_ONLN)
++LIB_VERSION := $(strip $(shell grep ' Library_Version :' \
++                 @srcdir@/../gcc/ada/gnatvsn.ads | \
++	         sed -e 's/.*"\(.*\)".*/\1/'))
++GCC:=../gcc/xgcc -B../gcc/
++LIBGNAT_JUST_BUILT := -nostdinc -I../gcc/ada/rts
++CFLAGS := -g -O2
++ADAFLAGS := -g -O2 -gnatn
++BASEVER := $(shell cat @srcdir@/../gcc/BASE-VER)
++DEVPHASE := $(shell cat @srcdir@/../gcc/DEV-PHASE)
++DATESTAMP := $(shell cat @srcdir@/../gcc/DATESTAMP)
++
++ifneq (@build@,@host@)
++   CFLAGS += -b @host@
++endif
++
++.PHONY: libgnatprj install
++libgnatprj: libgnatprj.so.$(LIB_VERSION) libgnatprj.a
++
++# Here we list one file per Ada unit: the body file if the unit has a
++# body, the spec file otherwise.
++PRJ_SOURCES := ali.adb ali-util.adb butil.adb binderr.adb errout.adb \
++erroutc.adb errutil.adb err_vars.ads fmap.adb impunit.adb lib-util.adb \
++mlib.adb mlib-fil.adb mlib-tgt.adb mlib-utl.adb osint.adb osint-c.adb \
++prj.adb prj-attr.adb prj-attr-pm.adb prj-com.ads prj-dect.adb prj-env.adb \
++prj-err.adb prj-ext.adb prj-nmsc.adb prj-pars.adb prj-part.adb prj-pp.adb \
++prj-proc.adb prj-strt.adb prj-tree.adb prj-util.adb rident.ads scng.adb \
++sdefault.adb sfn_scan.adb sinfo-cn.adb sinput-c.adb sinput-p.adb style.ads \
++styleg.adb styleg-c.adb stylesw.adb switch.adb switch-m.adb targparm.adb \
++tempdir.adb
++
++OBJECTS := $(patsubst %.ads,%.o,$(PRJ_SOURCES:.adb=.o))
++
++# Add some object files compiled from C sources.  prefix.o requires
++# some objects from libiberty.
++OBJECTS += concat.o link.o prefix.o xexit.o xmalloc.o xstrdup.o
++
++INCLUDES = -I@srcdir@/../gcc/ada -I@srcdir@/../gcc
++
++vpath %.c @srcdir@/../gcc/ada
++vpath %.ads @srcdir@/../gcc/ada
++vpath %.adb @srcdir@/../gcc/ada:../gcc/ada
++
++libgnatprj.so.$(LIB_VERSION): $(addprefix obj-shared/,$(OBJECTS))
++	: # Make libgnatprj.so
++	$(GCC) -o $@ -shared -fPIC -Wl,--soname,$@ $^ \
++	   -L../gcc/ada/rts -lgnat-$(LIB_VERSION) \
++	   -L../libgnatvsn -lgnatvsn
++	ln -s libgnatprj.so.$(LIB_VERSION) libgnatprj.so
++	chmod a=r obj-shared/*.ali
++# Make the .ali files, but not the .o files, visible to the gnat tools.
++	cp -lp obj-shared/*.ali .
++
++$(addprefix obj-shared/,$(OBJECTS)): | obj-shared
++
++obj-shared/mlib-tgt.o: mlib-tgt-linux.adb
++	-ln -s $< mlib-tgt.adb
++	$(GCC) -c -fPIC $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) $(INCLUDES) \
++	   mlib-tgt.adb -o $@
++
++obj-shared/%.o: %.adb
++	$(GCC) -c -fPIC $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-shared/%.o: %.ads
++	$(GCC) -c -fPIC $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-shared/%.o: %.c
++	$(GCC) -c -fPIC $(CFLAGS) $(INCLUDES) $< -o $@
++
++obj-shared/sdefault.o: sdefault.adb
++	$(GCC) -c -fPIC $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) -I@srcdir@/../gcc/ada \
++	   $< -o $@
++
++obj-shared/prefix.o: @srcdir@/../gcc/prefix.c
++	$(GCC) -c -fPIC $(CFLAGS) -DPREFIX=\"@prefix@\" -DBASEVER=\"$(BASEVER)\" \
++	   -I@srcdir@/../gcc -I@srcdir@/../include -I../gcc -I../libiberty \
++	   $< -o $@
++
++obj-shared/%.o: @srcdir@/../libiberty/%.c
++	$(GCC) -c -fPIC $(CFLAGS) \
++	   -I@srcdir@/../libiberty -I@srcdir@/../include $< -o $@
++
++obj-shared:
++	-mkdir $@
++
++libgnatprj.a: $(addprefix obj-static/,$(OBJECTS))
++	: # Make libgnatprj.a
++	ar rc $@ $^
++	ranlib $@
++
++$(addprefix obj-static/,$(OBJECTS)): | obj-static
++
++obj-static/mlib-tgt.o: mlib-tgt-linux.adb
++	-ln -s $< mlib-tgt.adb
++	$(GCC) -c -fPIC $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) $(INCLUDES) \
++	   mlib-tgt.adb -o $@
++
++obj-static/%.o: %.adb
++	$(GCC) -c $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-static/%.o: %.ads
++	$(GCC) -c $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-static/%.o: %.c
++	$(GCC) -c $(CFLAGS) $(INCLUDES) $< -o $@
++
++obj-static/sdefault.o: sdefault.adb
++	$(GCC) -c $(ADAFLAGS) $(LIBGNAT_JUST_BUILT) -I@srcdir@/../gcc/ada \
++	   $< -o $@
++
++obj-static/prefix.o: @srcdir@/../gcc/prefix.c
++	$(GCC) -c $(CFLAGS) -DPREFIX=\"@prefix@\" -DBASEVER=\"$(BASEVER)\" \
++	   -I@srcdir@/../gcc -I@srcdir@/../include -I../gcc -I../libiberty \
++	   $< -o $@
++
++obj-static/%.o: @srcdir@/../libiberty/%.c
++	$(GCC) -c -fPIC $(CFLAGS) \
++	   -I@srcdir@/../libiberty -I@srcdir@/../include $< -o $@
++
++obj-static:
++	-mkdir $@
++
++# Generate a list of source files (.ads and .adb) to install.  Almost
++# all of them are in src/gcc/ada, but some are generated during build
++# and are in build/gcc/ada.
++BODIES := $(filter %.adb,$(PRJ_SOURCES))
++SPECS := $(filter %.ads,$(PRJ_SOURCES))
++SPECS += $(patsubst %.adb,%.ads,$(BODIES))
++GENERATED_SOURCES := sdefault.adb
++
++# Filter out the mlib-tgt.adb from the source directory...
++SOURCES := $(filter-out $(GENERATED_SOURCES) mlib-tgt.adb, \
++                        $(SPECS) $(BODIES) $(PRJ_SEPARATES))
++# ... and add our symlink to mlib-tgt-linux.adb instead.
++SOURCES_TO_INSTALL := \
++$(addprefix @srcdir@/../gcc/ada/,$(SOURCES)) \
++$(addprefix ../gcc/ada/,$(GENERATED_SOURCES)) \
++mlib-tgt.adb
++
++install: libgnatprj
++	$(INSTALL_DATA) libgnatprj.a $(DESTDIR)$(prefix)/lib
++	$(INSTALL_DATA) libgnatprj.so.$(LIB_VERSION) $(DESTDIR)$(prefix)/lib
++	cd $(DESTDIR)$(prefix)/lib; \
++	ln -sf libgnatprj.so.$(LIB_VERSION) libgnatprj.so
++	mkdir -p $(DESTDIR)$(prefix)/share/ada/adainclude/gnatprj
++	$(INSTALL_DATA) $(SOURCES_TO_INSTALL) \
++	   $(DESTDIR)$(prefix)/share/ada/adainclude/gnatprj
++	mkdir -p $(DESTDIR)$(prefix)/lib/ada/adalib/gnatprj
++	$(INSTALL) -m 0444 obj-shared/*.ali \
++	   $(DESTDIR)$(prefix)/lib/ada/adalib/gnatprj
++	chmod a=r $(DESTDIR)$(prefix)/lib/ada/adalib/gnatprj/*.ali
++
++.PHONY: clean
++clean:
++	rm -rf *.ali obj-static obj-shared libgnatprj*
+--- Makefile.def~
++++ Makefile.def	2007-06-20 21:09:33.715032842 +0200
+@@ -127,6 +127,13 @@
+ 		missing= TAGS;
+ 		missing= install-info;
+ 		missing= installcheck; };
++host_modules= { module= libgnatprj; no_check=true;
++		missing= info;
++		missing= dvi;
++		missing= html;
++		missing= TAGS;
++		missing= install-info;
++		missing= installcheck; };
+ host_modules= { module= gnattools; no_check=true;
+ 		missing= info;
+ 		missing= dvi;
+@@ -171,6 +178,13 @@
+ 		   missing= TAGS;
+ 		   missing= install-info;
+ 		   missing= installcheck; };
++target_modules = { module= libgnatprj; no_check=true;
++		   missing= info;
++		   missing= dvi;
++		   missing= html;
++		   missing= TAGS;
++		   missing= install-info;
++		   missing= installcheck; };
+ target_modules = { module= libgomp; lib_path=.libs; };
+ 
+ // These are (some of) the make targets to be done in each subdirectory.
+@@ -330,7 +344,10 @@
+ 
+ dependencies = { module=all-gnattools; on=all-libada; };
+ dependencies = { module=all-gnattools; on=all-libgnatvsn; };
++dependencies = { module=all-gnattools; on=all-libgnatprj; };
+ dependencies = { module=all-libgnatvsn; on=all-libada; };
++dependencies = { module=all-libgnatprj; on=all-libada; };
++dependencies = { module=all-libgnatprj; on=all-libgnatvsn; };
+ 
+ // Host modules specific to gdb.
+ dependencies = { module=configure-gdb; on=configure-intl; };
+--- Makefile.in~
++++ Makefile.in	2007-06-20 21:09:45.000000000 +0200
+@@ -641,6 +641,7 @@
+     maybe-configure-utils \
+     maybe-configure-libada \
+     maybe-configure-libgnatvsn \
++    maybe-configure-libgnatprj \
+     maybe-configure-gnattools
+ .PHONY: configure-target
+ configure-target:  \
+@@ -664,6 +665,7 @@
+     maybe-configure-target-rda \
+     maybe-configure-target-libada \
+     maybe-configure-target-libgnatvsn \
++    maybe-configure-target-libgnatprj \
+     maybe-configure-target-libgomp
+ 
+ # The target built for a native non-bootstrap build.
+@@ -787,6 +789,7 @@
+ all-host: maybe-all-utils
+ all-host: maybe-all-libada
+ all-host: maybe-all-libgnatvsn
++all-host: maybe-all-libgnatprj
+ all-host: maybe-all-gnattools
+ 
+ .PHONY: all-target
+@@ -811,6 +814,7 @@
+ all-target: maybe-all-target-rda
+ all-target: maybe-all-target-libada
+ all-target: maybe-all-target-libgnatvsn
++all-target: maybe-all-target-libgnatprj
+ all-target: maybe-all-target-libgomp
+ 
+ # Do a target for all the subdirectories.  A ``make do-X'' will do a
+@@ -898,6 +902,7 @@
+ info-host: maybe-info-utils
+ info-host: maybe-info-libada
+ info-host: maybe-info-libgnatvsn
++info-host: maybe-info-libgnatprj
+ info-host: maybe-info-gnattools
+ 
+ .PHONY: info-target
+@@ -922,6 +927,7 @@
+ info-target: maybe-info-target-rda
+ info-target: maybe-info-target-libada
+ info-target: maybe-info-target-libgnatvsn
++info-target: maybe-info-target-libgnatprj
+ info-target: maybe-info-target-libgomp
+ 
+ .PHONY: do-dvi
+@@ -1004,6 +1010,7 @@
+ dvi-host: maybe-dvi-utils
+ dvi-host: maybe-dvi-libada
+ dvi-host: maybe-dvi-libgnatvsn
++dvi-host: maybe-dvi-libgnatprj
+ dvi-host: maybe-dvi-gnattools
+ 
+ .PHONY: dvi-target
+@@ -1028,6 +1035,7 @@
+ dvi-target: maybe-dvi-target-rda
+ dvi-target: maybe-dvi-target-libada
+ dvi-target: maybe-dvi-target-libgnatvsn
++dvi-target: maybe-dvi-target-libgnatprj
+ dvi-target: maybe-dvi-target-libgomp
+ 
+ .PHONY: do-pdf
+@@ -1110,6 +1118,7 @@
+ pdf-host: maybe-pdf-utils
+ pdf-host: maybe-pdf-libada
+ pdf-host: maybe-pdf-libgnatvsn
++pdf-host: maybe-pdf-libgnatprj
+ pdf-host: maybe-pdf-gnattools
+ 
+ .PHONY: pdf-target
+@@ -1134,6 +1143,7 @@
+ pdf-target: maybe-pdf-target-rda
+ pdf-target: maybe-pdf-target-libada
+ pdf-target: maybe-pdf-target-libgnatvsn
++pdf-target: maybe-pdf-target-libgnatprj
+ pdf-target: maybe-pdf-target-libgomp
+ 
+ .PHONY: do-html
+@@ -1216,6 +1226,7 @@
+ html-host: maybe-html-utils
+ html-host: maybe-html-libada
+ html-host: maybe-html-libgnatvsn
++html-host: maybe-html-libgnatprj
+ html-host: maybe-html-gnattools
+ 
+ .PHONY: html-target
+@@ -1240,6 +1251,7 @@
+ html-target: maybe-html-target-rda
+ html-target: maybe-html-target-libada
+ html-target: maybe-html-target-libgnatvsn
++html-target: maybe-html-target-libgnatprj
+ html-target: maybe-html-target-libgomp
+ 
+ .PHONY: do-TAGS
+@@ -1322,6 +1334,7 @@
+ TAGS-host: maybe-TAGS-utils
+ TAGS-host: maybe-TAGS-libada
+ TAGS-host: maybe-TAGS-libgnatvsn
++TAGS-host: maybe-TAGS-libgnatprj
+ TAGS-host: maybe-TAGS-gnattools
+ 
+ .PHONY: TAGS-target
+@@ -1346,6 +1359,7 @@
+ TAGS-target: maybe-TAGS-target-rda
+ TAGS-target: maybe-TAGS-target-libada
+ TAGS-target: maybe-TAGS-target-libgnatvsn
++TAGS-target: maybe-TAGS-target-libgnatprj
+ TAGS-target: maybe-TAGS-target-libgomp
+ 
+ .PHONY: do-install-info
+@@ -1428,6 +1442,7 @@
+ install-info-host: maybe-install-info-utils
+ install-info-host: maybe-install-info-libada
+ install-info-host: maybe-install-info-libgnatvsn
++install-info-host: maybe-install-info-libgnatprj
+ install-info-host: maybe-install-info-gnattools
+ 
+ .PHONY: install-info-target
+@@ -1452,6 +1467,7 @@
+ install-info-target: maybe-install-info-target-rda
+ install-info-target: maybe-install-info-target-libada
+ install-info-target: maybe-install-info-target-libgnatvsn
++install-info-target: maybe-install-info-target-libgnatprj
+ install-info-target: maybe-install-info-target-libgomp
+ 
+ .PHONY: do-install-html
+@@ -1534,6 +1550,7 @@
+ install-html-host: maybe-install-html-utils
+ install-html-host: maybe-install-html-libada
+ install-html-host: maybe-install-html-libgnatvsn
++install-html-host: maybe-install-html-libgnatprj
+ install-html-host: maybe-install-html-gnattools
+ 
+ .PHONY: install-html-target
+@@ -1558,6 +1575,7 @@
+ install-html-target: maybe-install-html-target-rda
+ install-html-target: maybe-install-html-target-libada
+ install-html-target: maybe-install-html-target-libgnatvsn
++install-html-target: maybe-install-html-target-libgnatprj
+ install-html-target: maybe-install-html-target-libgomp
+ 
+ .PHONY: do-installcheck
+@@ -1640,6 +1658,7 @@
+ installcheck-host: maybe-installcheck-utils
+ installcheck-host: maybe-installcheck-libada
+ installcheck-host: maybe-installcheck-libgnatvsn
++installcheck-host: maybe-installcheck-libgnatprj
+ installcheck-host: maybe-installcheck-gnattools
+ 
+ .PHONY: installcheck-target
+@@ -1664,6 +1683,7 @@
+ installcheck-target: maybe-installcheck-target-rda
+ installcheck-target: maybe-installcheck-target-libada
+ installcheck-target: maybe-installcheck-target-libgnatvsn
++installcheck-target: maybe-installcheck-target-libgnatprj
+ installcheck-target: maybe-installcheck-target-libgomp
+ 
+ .PHONY: do-mostlyclean
+@@ -1746,6 +1766,7 @@
+ mostlyclean-host: maybe-mostlyclean-utils
+ mostlyclean-host: maybe-mostlyclean-libada
+ mostlyclean-host: maybe-mostlyclean-libgnatvsn
++mostlyclean-host: maybe-mostlyclean-libgnatprj
+ mostlyclean-host: maybe-mostlyclean-gnattools
+ 
+ .PHONY: mostlyclean-target
+@@ -1770,6 +1791,7 @@
+ mostlyclean-target: maybe-mostlyclean-target-rda
+ mostlyclean-target: maybe-mostlyclean-target-libada
+ mostlyclean-target: maybe-mostlyclean-target-libgnatvsn
++mostlyclean-target: maybe-mostlyclean-target-libgnatprj
+ mostlyclean-target: maybe-mostlyclean-target-libgomp
+ 
+ .PHONY: do-clean
+@@ -1852,6 +1874,7 @@
+ clean-host: maybe-clean-utils
+ clean-host: maybe-clean-libada
+ clean-host: maybe-clean-libgnatvsn
++clean-host: maybe-clean-libgnatprj
+ clean-host: maybe-clean-gnattools
+ 
+ .PHONY: clean-target
+@@ -1876,6 +1899,7 @@
+ clean-target: maybe-clean-target-rda
+ clean-target: maybe-clean-target-libada
+ clean-target: maybe-clean-target-libgnatvsn
++clean-target: maybe-clean-target-libgnatprj
+ clean-target: maybe-clean-target-libgomp
+ 
+ .PHONY: do-distclean
+@@ -1958,6 +1982,7 @@
+ distclean-host: maybe-distclean-utils
+ distclean-host: maybe-distclean-libada
+ distclean-host: maybe-distclean-libgnatvsn
++distclean-host: maybe-distclean-libgnatprj
+ distclean-host: maybe-distclean-gnattools
+ 
+ .PHONY: distclean-target
+@@ -1982,6 +2007,7 @@
+ distclean-target: maybe-distclean-target-rda
+ distclean-target: maybe-distclean-target-libada
+ distclean-target: maybe-distclean-target-libgnatvsn
++distclean-target: maybe-distclean-target-libgnatprj
+ distclean-target: maybe-distclean-target-libgomp
+ 
+ .PHONY: do-maintainer-clean
+@@ -2064,6 +2090,7 @@
+ maintainer-clean-host: maybe-maintainer-clean-utils
+ maintainer-clean-host: maybe-maintainer-clean-libada
+ maintainer-clean-host: maybe-maintainer-clean-libgnatvsn
++maintainer-clean-host: maybe-maintainer-clean-libgnatprj
+ maintainer-clean-host: maybe-maintainer-clean-gnattools
+ 
+ .PHONY: maintainer-clean-target
+@@ -2088,6 +2115,7 @@
+ maintainer-clean-target: maybe-maintainer-clean-target-rda
+ maintainer-clean-target: maybe-maintainer-clean-target-libada
+ maintainer-clean-target: maybe-maintainer-clean-target-libgnatvsn
++maintainer-clean-target: maybe-maintainer-clean-target-libgnatprj
+ maintainer-clean-target: maybe-maintainer-clean-target-libgomp
+ 
+ 
+@@ -2226,6 +2254,7 @@
+     maybe-check-utils \
+     maybe-check-libada \
+     maybe-check-libgnatvsn \
++    maybe-check-libgnatprj \
+     maybe-check-gnattools
+ 
+ .PHONY: check-target
+@@ -2250,6 +2279,7 @@
+     maybe-check-target-rda \
+     maybe-check-target-libada \
+     maybe-check-target-libgnatvsn \
++    maybe-check-target-libgnatprj \
+     maybe-check-target-libgomp
+ 
+ do-check:
+@@ -2358,6 +2388,7 @@
+     maybe-install-utils \
+     maybe-install-libada \
+     maybe-install-libgnatvsn \
++    maybe-install-libgnatprj \
+     maybe-install-gnattools
+ 
+ .PHONY: install-host
+@@ -2431,6 +2462,7 @@
+     maybe-install-utils \
+     maybe-install-libada \
+     maybe-install-libgnatvsn \
++    maybe-install-libgnatprj \
+     maybe-install-gnattools
+ 
+ .PHONY: install-target
+@@ -2455,6 +2487,7 @@
+     maybe-install-target-rda \
+     maybe-install-target-libada \
+     maybe-install-target-libgnatvsn \
++    maybe-install-target-libgnatprj \
+     maybe-install-target-libgomp
+ 
+ uninstall:
+@@ -33754,6 +33787,299 @@
+ 
+ 
+ 
++.PHONY: configure-libgnatprj maybe-configure-libgnatprj
++maybe-configure-libgnatprj:
++@if gcc-bootstrap
++configure-libgnatprj: stage_current
++@endif gcc-bootstrap
++@if libgnatprj
++maybe-configure-libgnatprj: configure-libgnatprj
++configure-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	test ! -f $(HOST_SUBDIR)/libgnatprj/Makefile || exit 0; \
++	$(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/libgnatprj ; \
++	$(HOST_EXPORTS) \
++	echo Configuring in $(HOST_SUBDIR)/libgnatprj; \
++	cd "$(HOST_SUBDIR)/libgnatprj" || exit 1; \
++	case $(srcdir) in \
++	  /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
++	  *) topdir=`echo $(HOST_SUBDIR)/libgnatprj/ | \
++		sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
++	esac; \
++	srcdiroption="--srcdir=$${topdir}/libgnatprj"; \
++	libsrcdir="$$s/libgnatprj"; \
++	$(SHELL) $${libsrcdir}/configure \
++	  $(HOST_CONFIGARGS) $${srcdiroption}  \
++	  || exit 1
++@endif libgnatprj
++
++
++
++
++
++.PHONY: all-libgnatprj maybe-all-libgnatprj
++maybe-all-libgnatprj:
++@if gcc-bootstrap
++all-libgnatprj: stage_current
++@endif gcc-bootstrap
++@if libgnatprj
++TARGET-libgnatprj=all
++maybe-all-libgnatprj: all-libgnatprj
++all-libgnatprj: configure-libgnatprj
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(FLAGS_TO_PASS)  $(TARGET-libgnatprj))
++@endif libgnatprj
++
++
++
++
++.PHONY: check-libgnatprj maybe-check-libgnatprj
++maybe-check-libgnatprj:
++@if libgnatprj
++maybe-check-libgnatprj: check-libgnatprj
++
++check-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: install-libgnatprj maybe-install-libgnatprj
++maybe-install-libgnatprj:
++@if libgnatprj
++maybe-install-libgnatprj: install-libgnatprj
++
++install-libgnatprj: installdirs
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(FLAGS_TO_PASS)  install)
++
++@endif libgnatprj
++
++# Other targets (info, dvi, pdf, etc.)
++
++.PHONY: maybe-info-libgnatprj info-libgnatprj
++maybe-info-libgnatprj:
++@if libgnatprj
++maybe-info-libgnatprj: info-libgnatprj
++
++# libgnatprj doesn't support info.
++info-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: maybe-dvi-libgnatprj dvi-libgnatprj
++maybe-dvi-libgnatprj:
++@if libgnatprj
++maybe-dvi-libgnatprj: dvi-libgnatprj
++
++# libgnatprj doesn't support dvi.
++dvi-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: maybe-pdf-libgnatprj pdf-libgnatprj
++maybe-pdf-libgnatprj:
++@if libgnatprj
++maybe-pdf-libgnatprj: pdf-libgnatprj
++
++pdf-libgnatprj: \
++    configure-libgnatprj 
++	@: $(MAKE); $(unstage)
++	@[ -f ./libgnatprj/Makefile ] || exit 0; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	for flag in $(EXTRA_HOST_FLAGS) ; do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	echo "Doing pdf in libgnatprj" ; \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	          pdf) \
++	  || exit 1
++
++@endif libgnatprj
++
++.PHONY: maybe-html-libgnatprj html-libgnatprj
++maybe-html-libgnatprj:
++@if libgnatprj
++maybe-html-libgnatprj: html-libgnatprj
++
++# libgnatprj doesn't support html.
++html-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: maybe-TAGS-libgnatprj TAGS-libgnatprj
++maybe-TAGS-libgnatprj:
++@if libgnatprj
++maybe-TAGS-libgnatprj: TAGS-libgnatprj
++
++# libgnatprj doesn't support TAGS.
++TAGS-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: maybe-install-info-libgnatprj install-info-libgnatprj
++maybe-install-info-libgnatprj:
++@if libgnatprj
++maybe-install-info-libgnatprj: install-info-libgnatprj
++
++# libgnatprj doesn't support install-info.
++install-info-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: maybe-install-html-libgnatprj install-html-libgnatprj
++maybe-install-html-libgnatprj:
++@if libgnatprj
++maybe-install-html-libgnatprj: install-html-libgnatprj
++
++install-html-libgnatprj: \
++    configure-libgnatprj \
++    html-libgnatprj 
++	@: $(MAKE); $(unstage)
++	@[ -f ./libgnatprj/Makefile ] || exit 0; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	for flag in $(EXTRA_HOST_FLAGS) ; do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	echo "Doing install-html in libgnatprj" ; \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	          install-html) \
++	  || exit 1
++
++@endif libgnatprj
++
++.PHONY: maybe-installcheck-libgnatprj installcheck-libgnatprj
++maybe-installcheck-libgnatprj:
++@if libgnatprj
++maybe-installcheck-libgnatprj: installcheck-libgnatprj
++
++# libgnatprj doesn't support installcheck.
++installcheck-libgnatprj:
++
++@endif libgnatprj
++
++.PHONY: maybe-mostlyclean-libgnatprj mostlyclean-libgnatprj
++maybe-mostlyclean-libgnatprj:
++@if libgnatprj
++maybe-mostlyclean-libgnatprj: mostlyclean-libgnatprj
++
++mostlyclean-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f ./libgnatprj/Makefile ] || exit 0; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	for flag in $(EXTRA_HOST_FLAGS) ; do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	echo "Doing mostlyclean in libgnatprj" ; \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	          mostlyclean) \
++	  || exit 1
++
++@endif libgnatprj
++
++.PHONY: maybe-clean-libgnatprj clean-libgnatprj
++maybe-clean-libgnatprj:
++@if libgnatprj
++maybe-clean-libgnatprj: clean-libgnatprj
++
++clean-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f ./libgnatprj/Makefile ] || exit 0; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	for flag in $(EXTRA_HOST_FLAGS) ; do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	echo "Doing clean in libgnatprj" ; \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	          clean) \
++	  || exit 1
++
++@endif libgnatprj
++
++.PHONY: maybe-distclean-libgnatprj distclean-libgnatprj
++maybe-distclean-libgnatprj:
++@if libgnatprj
++maybe-distclean-libgnatprj: distclean-libgnatprj
++
++distclean-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f ./libgnatprj/Makefile ] || exit 0; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	for flag in $(EXTRA_HOST_FLAGS) ; do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	echo "Doing distclean in libgnatprj" ; \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	          distclean) \
++	  || exit 1
++
++@endif libgnatprj
++
++.PHONY: maybe-maintainer-clean-libgnatprj maintainer-clean-libgnatprj
++maybe-maintainer-clean-libgnatprj:
++@if libgnatprj
++maybe-maintainer-clean-libgnatprj: maintainer-clean-libgnatprj
++
++maintainer-clean-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f ./libgnatprj/Makefile ] || exit 0; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(HOST_EXPORTS) \
++	for flag in $(EXTRA_HOST_FLAGS) ; do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	echo "Doing maintainer-clean in libgnatprj" ; \
++	(cd $(HOST_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	          maintainer-clean) \
++	  || exit 1
++
++@endif libgnatprj
++
++
++
+ .PHONY: configure-gnattools maybe-configure-gnattools
+ maybe-configure-gnattools:
+ @if gcc-bootstrap
+@@ -42025,6 +42351,317 @@
+ 
+ 
+ 
++.PHONY: configure-target-libgnatprj maybe-configure-target-libgnatprj
++maybe-configure-target-libgnatprj:
++@if gcc-bootstrap
++configure-target-libgnatprj: stage_current
++@endif gcc-bootstrap
++@if target-libgnatprj
++maybe-configure-target-libgnatprj: configure-target-libgnatprj
++configure-target-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	echo "Checking multilib configuration for libgnatprj..."; \
++	$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgnatprj ; \
++	$(CC_FOR_TARGET) --print-multi-lib > $(TARGET_SUBDIR)/libgnatprj/multilib.tmp 2> /dev/null ; \
++	if test -r $(TARGET_SUBDIR)/libgnatprj/multilib.out; then \
++	  if cmp -s $(TARGET_SUBDIR)/libgnatprj/multilib.tmp $(TARGET_SUBDIR)/libgnatprj/multilib.out; then \
++	    rm -f $(TARGET_SUBDIR)/libgnatprj/multilib.tmp; \
++	  else \
++	    rm -f $(TARGET_SUBDIR)/libgnatprj/Makefile; \
++	    mv $(TARGET_SUBDIR)/libgnatprj/multilib.tmp $(TARGET_SUBDIR)/libgnatprj/multilib.out; \
++	  fi; \
++	else \
++	  mv $(TARGET_SUBDIR)/libgnatprj/multilib.tmp $(TARGET_SUBDIR)/libgnatprj/multilib.out; \
++	fi; \
++	test ! -f $(TARGET_SUBDIR)/libgnatprj/Makefile || exit 0; \
++	$(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgnatprj ; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo Configuring in $(TARGET_SUBDIR)/libgnatprj; \
++	cd "$(TARGET_SUBDIR)/libgnatprj" || exit 1; \
++	case $(srcdir) in \
++	  /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \
++	  *) topdir=`echo $(TARGET_SUBDIR)/libgnatprj/ | \
++		sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \
++	esac; \
++	srcdiroption="--srcdir=$${topdir}/libgnatprj"; \
++	libsrcdir="$$s/libgnatprj"; \
++	rm -f no-such-file || : ; \
++	CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
++	  $(TARGET_CONFIGARGS) $${srcdiroption}  \
++	  || exit 1
++@endif target-libgnatprj
++
++
++
++
++
++.PHONY: all-target-libgnatprj maybe-all-target-libgnatprj
++maybe-all-target-libgnatprj:
++@if gcc-bootstrap
++all-target-libgnatprj: stage_current
++@endif gcc-bootstrap
++@if target-libgnatprj
++TARGET-target-libgnatprj=all
++maybe-all-target-libgnatprj: all-target-libgnatprj
++all-target-libgnatprj: configure-target-libgnatprj
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(TARGET_FLAGS_TO_PASS)  $(TARGET-target-libgnatprj))
++@endif target-libgnatprj
++
++
++
++
++
++.PHONY: check-target-libgnatprj maybe-check-target-libgnatprj
++maybe-check-target-libgnatprj:
++@if target-libgnatprj
++maybe-check-target-libgnatprj: check-target-libgnatprj
++
++# Dummy target for uncheckable module.
++check-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: install-target-libgnatprj maybe-install-target-libgnatprj
++maybe-install-target-libgnatprj:
++@if target-libgnatprj
++maybe-install-target-libgnatprj: install-target-libgnatprj
++
++install-target-libgnatprj: installdirs
++	@: $(MAKE); $(unstage)
++	@r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(TARGET_FLAGS_TO_PASS)  install)
++
++@endif target-libgnatprj
++
++# Other targets (info, dvi, pdf, etc.)
++
++.PHONY: maybe-info-target-libgnatprj info-target-libgnatprj
++maybe-info-target-libgnatprj:
++@if target-libgnatprj
++maybe-info-target-libgnatprj: info-target-libgnatprj
++
++# libgnatprj doesn't support info.
++info-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: maybe-dvi-target-libgnatprj dvi-target-libgnatprj
++maybe-dvi-target-libgnatprj:
++@if target-libgnatprj
++maybe-dvi-target-libgnatprj: dvi-target-libgnatprj
++
++# libgnatprj doesn't support dvi.
++dvi-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: maybe-pdf-target-libgnatprj pdf-target-libgnatprj
++maybe-pdf-target-libgnatprj:
++@if target-libgnatprj
++maybe-pdf-target-libgnatprj: pdf-target-libgnatprj
++
++pdf-target-libgnatprj: \
++    configure-target-libgnatprj 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libgnatprj/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing pdf in $(TARGET_SUBDIR)/libgnatprj" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           pdf) \
++	  || exit 1
++
++@endif target-libgnatprj
++
++.PHONY: maybe-html-target-libgnatprj html-target-libgnatprj
++maybe-html-target-libgnatprj:
++@if target-libgnatprj
++maybe-html-target-libgnatprj: html-target-libgnatprj
++
++# libgnatprj doesn't support html.
++html-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: maybe-TAGS-target-libgnatprj TAGS-target-libgnatprj
++maybe-TAGS-target-libgnatprj:
++@if target-libgnatprj
++maybe-TAGS-target-libgnatprj: TAGS-target-libgnatprj
++
++# libgnatprj doesn't support TAGS.
++TAGS-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: maybe-install-info-target-libgnatprj install-info-target-libgnatprj
++maybe-install-info-target-libgnatprj:
++@if target-libgnatprj
++maybe-install-info-target-libgnatprj: install-info-target-libgnatprj
++
++# libgnatprj doesn't support install-info.
++install-info-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: maybe-install-html-target-libgnatprj install-html-target-libgnatprj
++maybe-install-html-target-libgnatprj:
++@if target-libgnatprj
++maybe-install-html-target-libgnatprj: install-html-target-libgnatprj
++
++install-html-target-libgnatprj: \
++    configure-target-libgnatprj \
++    html-target-libgnatprj 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libgnatprj/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing install-html in $(TARGET_SUBDIR)/libgnatprj" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           install-html) \
++	  || exit 1
++
++@endif target-libgnatprj
++
++.PHONY: maybe-installcheck-target-libgnatprj installcheck-target-libgnatprj
++maybe-installcheck-target-libgnatprj:
++@if target-libgnatprj
++maybe-installcheck-target-libgnatprj: installcheck-target-libgnatprj
++
++# libgnatprj doesn't support installcheck.
++installcheck-target-libgnatprj:
++
++@endif target-libgnatprj
++
++.PHONY: maybe-mostlyclean-target-libgnatprj mostlyclean-target-libgnatprj
++maybe-mostlyclean-target-libgnatprj:
++@if target-libgnatprj
++maybe-mostlyclean-target-libgnatprj: mostlyclean-target-libgnatprj
++
++mostlyclean-target-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libgnatprj/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgnatprj" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           mostlyclean) \
++	  || exit 1
++
++@endif target-libgnatprj
++
++.PHONY: maybe-clean-target-libgnatprj clean-target-libgnatprj
++maybe-clean-target-libgnatprj:
++@if target-libgnatprj
++maybe-clean-target-libgnatprj: clean-target-libgnatprj
++
++clean-target-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libgnatprj/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing clean in $(TARGET_SUBDIR)/libgnatprj" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           clean) \
++	  || exit 1
++
++@endif target-libgnatprj
++
++.PHONY: maybe-distclean-target-libgnatprj distclean-target-libgnatprj
++maybe-distclean-target-libgnatprj:
++@if target-libgnatprj
++maybe-distclean-target-libgnatprj: distclean-target-libgnatprj
++
++distclean-target-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libgnatprj/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing distclean in $(TARGET_SUBDIR)/libgnatprj" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           distclean) \
++	  || exit 1
++
++@endif target-libgnatprj
++
++.PHONY: maybe-maintainer-clean-target-libgnatprj maintainer-clean-target-libgnatprj
++maybe-maintainer-clean-target-libgnatprj:
++@if target-libgnatprj
++maybe-maintainer-clean-target-libgnatprj: maintainer-clean-target-libgnatprj
++
++maintainer-clean-target-libgnatprj: 
++	@: $(MAKE); $(unstage)
++	@[ -f $(TARGET_SUBDIR)/libgnatprj/Makefile ] || exit 0 ; \
++	r=`${PWD_COMMAND}`; export r; \
++	s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
++	$(NORMAL_TARGET_EXPORTS) \
++	echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgnatprj" ; \
++	for flag in $(EXTRA_TARGET_FLAGS); do \
++	  eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
++	done; \
++	(cd $(TARGET_SUBDIR)/libgnatprj && \
++	  $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \
++	          "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \
++	          "RANLIB=$${RANLIB}" \
++	          "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \
++	           maintainer-clean) \
++	  || exit 1
++
++@endif target-libgnatprj
++
++
++
++
++
+ .PHONY: configure-target-libgomp maybe-configure-target-libgomp
+ maybe-configure-target-libgomp:
+ @if gcc-bootstrap
+@@ -43921,6 +44558,7 @@
+ configure-target-rda: stage_last
+ configure-target-libada: stage_last
+ configure-target-libgnatvsn: stage_last
++configure-target-libgnatprj: stage_last
+ configure-target-libgomp: stage_last
+ @endif gcc-bootstrap
+ 
+@@ -43945,6 +44583,7 @@
+ configure-target-rda: maybe-all-gcc
+ configure-target-libada: maybe-all-gcc
+ configure-target-libgnatvsn: maybe-all-gcc
++configure-target-libgnatprj: maybe-all-gcc
+ configure-target-libgomp: maybe-all-gcc
+ @endif gcc-no-bootstrap
+ 
+@@ -44182,7 +44821,10 @@
+ all-fixincludes: maybe-all-libiberty
+ all-gnattools: maybe-all-libada
+ all-gnattools: maybe-all-libgnatvsn
++all-gnattools: maybe-all-libgnatprj
+ all-libgnatvsn: maybe-all-libada
++all-libgnatprj: maybe-all-libada
++all-libgnatprj: maybe-all-libgnatvsn
+ configure-gdb: maybe-configure-intl
+ configure-gdb: maybe-configure-sim
+ all-gdb: maybe-all-intl
--- gcj-4.2-4.2.4.orig/debian/patches/gcc-version.dpatch
+++ gcj-4.2-4.2.4/debian/patches/gcc-version.dpatch
@@ -0,0 +1,35 @@
+#! /bin/sh -e
+
+# DP: Add package identification to the gcc version string
+
+pkgversion=
+if [ -n "$DEB_VERSION" ]; then
+    pkgversion=" $DEB_VERSION"
+fi
+
+dist=Debian
+dist=$(lsb_release -is)
+
+dir=gcc
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    dir=$3/gcc
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+	sed -e "/#define VERSUFFIX/s/\".*/\" ($dist$pkgversion)\"/" \
+	  $dir/version.c > $dir/version.c.new \
+	    && mv -f $dir/version.c.new $dir/version.c
+	;;
+    -unpatch)
+	sed -e '/#define VERSUFFIX/s/".*/""/' \
+	  $dir/version.c > $dir/version.c.new \
+	    && mv -f $dir/version.c.new $dir/version.c
+	;;
+    *)
+	echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+	exit 1
+esac
+exit 0
--- gcj-4.2-4.2.4.orig/debian/patches/template.dpatch
+++ gcj-4.2-4.2.4/debian/patches/template.dpatch
@@ -0,0 +1,33 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: <your description>
+
+# remove the next line
+exit 0
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+# append the patch here and adjust the -p? flag in the patch calls.
+
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-sig-unwind.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-sig-unwind.dpatch
@@ -0,0 +1,189 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: add support for unwinding over signal frames
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/config/m68k/linux-unwind.h |  140 +++++++++++++++++++++++++++++++++++++++++
+ gcc/config/m68k/linux.h        |    2 
+ 2 files changed, 142 insertions(+)
+
+Index: gcc-4.2/gcc/config/m68k/linux-unwind.h
+===================================================================
+--- /dev/null
++++ gcc-4.2/gcc/config/m68k/linux-unwind.h
+@@ -0,0 +1,140 @@
++/* DWARF2 EH unwinding support for Linux/m68k.
++   Copyright (C) 2006 Free Software Foundation, Inc.
++
++This file is part of GCC.
++
++GCC is free software; you can redistribute it and/or modify
++it under the terms of the GNU General Public License as published by
++the Free Software Foundation; either version 2, or (at your option)
++any later version.
++
++In addition to the permissions in the GNU General Public License, the
++Free Software Foundation gives you unlimited permission to link the
++compiled version of this file with other programs, and to distribute
++those programs without any restriction coming from the use of this
++file.  (The General Public License restrictions do apply in other
++respects; for example, they cover modification of the file, and
++distribution when not linked into another program.)
++
++GCC is distributed in the hope that it will be useful,
++but WITHOUT ANY WARRANTY; without even the implied warranty of
++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++GNU General Public License for more details.
++
++You should have received a copy of the GNU General Public License
++along with GCC; see the file COPYING.  If not, write to
++the Free Software Foundation, 51 Franklin Street, Fifth Floor,
++Boston, MA 02110-1301, USA.  */
++
++/* Do code reading to identify a signal frame, and set the frame
++   state data appropriately.  See unwind-dw2.c for the structs.
++   Don't use this at all if inhibit_libc is used.  */
++
++#ifndef inhibit_libc
++
++#include <signal.h>
++
++/* <sys/ucontext.h> is unfortunaly broken right now */
++struct uw_ucontext {
++	unsigned long	  uc_flags;
++	struct ucontext  *uc_link;
++	stack_t		  uc_stack;
++	mcontext_t	  uc_mcontext;
++	unsigned long	  uc_filler[80];
++	__sigset_t	  uc_sigmask;
++};
++
++#define MD_FALLBACK_FRAME_STATE_FOR m68k_fallback_frame_state
++
++static _Unwind_Reason_Code
++m68k_fallback_frame_state (struct _Unwind_Context *context,
++			   _Unwind_FrameState *fs)
++{
++  unsigned char *pc = context->ra;
++  long cfa;
++
++  /* moveq #__NR_sigreturn,%d0; trap #0  */
++  if (*(unsigned int *)(pc+0) == 0x70774e40)
++    {
++      struct sigcontext *sc;
++
++      sc = *(struct sigcontext **)(context->cfa + 8);
++
++      cfa = sc->sc_usp;
++      fs->cfa_how = CFA_REG_OFFSET;
++      fs->cfa_reg = 15;
++      fs->cfa_offset = cfa - (long) context->cfa;
++
++      fs->regs.reg[0].how = REG_SAVED_OFFSET;
++      fs->regs.reg[0].loc.offset = (long)&sc->sc_d0 - cfa;
++      fs->regs.reg[1].how = REG_SAVED_OFFSET;
++      fs->regs.reg[1].loc.offset = (long)&sc->sc_d1 - cfa;
++      fs->regs.reg[8].how = REG_SAVED_OFFSET;
++      fs->regs.reg[8].loc.offset = (long)&sc->sc_a0 - cfa;
++      fs->regs.reg[9].how = REG_SAVED_OFFSET;
++      fs->regs.reg[9].loc.offset = (long)&sc->sc_a1 - cfa;
++
++      fs->regs.reg[24].how = REG_SAVED_OFFSET;
++      fs->regs.reg[24].loc.offset = (long)&sc->sc_pc - cfa;
++
++      if (*(int *)sc->sc_fpstate)
++	{
++	  int *fpregs = (int *)sc->sc_fpregs;
++
++	  fs->regs.reg[16].how = REG_SAVED_OFFSET;
++	  fs->regs.reg[16].loc.offset = (long)&fpregs[0] - cfa;
++	  fs->regs.reg[17].how = REG_SAVED_OFFSET;
++	  fs->regs.reg[17].loc.offset = (long)&fpregs[3] - cfa;
++	}
++    }
++  /* moveq #~__NR_rt_sigreturn,%d0; not.b %d0; trap #0 */
++  else if (*(unsigned int *)(pc+0) == 0x70524600
++	   && *(unsigned short *)(pc+4) == 0x4e40)
++    {
++      struct uw_ucontext *uc;
++      greg_t *gregs;
++      int i;
++
++      uc = *(struct uw_ucontext **)(context->cfa + 8);
++
++      gregs = uc->uc_mcontext.gregs;
++      cfa = gregs[15];
++      fs->cfa_how = CFA_REG_OFFSET;
++      fs->cfa_reg = 15;
++      fs->cfa_offset = cfa - (long) context->cfa;
++
++      /* register %d0-%d7/%a0-%a6  */
++      for (i = 0; i <= 14; i++)
++	{
++	  fs->regs.reg[i].how = REG_SAVED_OFFSET;
++	  fs->regs.reg[i].loc.offset = (long)&gregs[i] - cfa;
++	}
++
++      /* return address  */
++      fs->regs.reg[24].how = REG_SAVED_OFFSET;
++      fs->regs.reg[24].loc.offset = (long)&gregs[16] - cfa;
++
++#define uc_fpstate      uc_filler[0]
++
++      if (uc->uc_fpstate)
++	{
++	  int *fpregs = (int *)uc->uc_mcontext.fpregs.f_fpregs;
++
++	  /* register %fp0-%fp7  */
++	  for (i = 16; i <= 23; i++)
++	    {
++	      fs->regs.reg[i].how = REG_SAVED_OFFSET;
++	      fs->regs.reg[i].loc.offset = (long)fpregs - cfa;
++	      fpregs += 3;
++	    }
++	}
++    }
++  else
++    return _URC_END_OF_STACK;
++
++  fs->retaddr_column = 24;
++  fs->signal_frame = 1;
++
++  return _URC_NO_REASON;
++}
++#endif /* ifdef inhibit_libc  */
+Index: gcc-4.2/gcc/config/m68k/linux.h
+===================================================================
+--- gcc-4.2.orig/gcc/config/m68k/linux.h
++++ gcc-4.2/gcc/config/m68k/linux.h
+@@ -291,3 +291,5 @@ do {									\
+ }
+ 
+ #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
++
++#define MD_UNWIND_SUPPORT "config/m68k/linux-unwind.h"
--- gcj-4.2-4.2.4.orig/debian/patches/ld-lib-path.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ld-lib-path.dpatch
@@ -0,0 +1,41 @@
+#! /bin/sh -e
+
+# DP: Add <builddir>/gcc/ada/rts to the runtime gcc library path.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir} && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir} && autoconf
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- configure.in~	2004-11-13 20:06:43.000000000 +0100
++++ configure.in	2004-11-14 09:24:02.000000000 +0100
+@@ -2344,9 +2344,9 @@
+     *)
+       eval "d=\$$RPATH_ENVVAR"
+       if test x"$d" != x; then
+-	d="$pwd/gcc:$d"
++	d="$pwd/gcc:$pwd/gcc/ada/rts:$d"
+       else
+-	d="$pwd/gcc"
++	d="$pwd/gcc:$pwd/gcc/ada/rts"
+     fi
+     SET_GCC_LIB_PATH="\$(RPATH_ENVVAR)=$d; export \$(RPATH_ENVVAR);"
+     ;;
--- gcj-4.2-4.2.4.orig/debian/patches/i386-biarch-doc.dpatch
+++ gcj-4.2-4.2.4/debian/patches/i386-biarch-doc.dpatch
@@ -0,0 +1,103 @@
+#! /bin/sh -e
+ 
+# DP: biarch patches for i386/x86_64
+ 
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        (cd ${dir}libcpp && autoconf)
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        cd ${dir}libcpp && autoconf
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+From: "Joseph S. Myers" <joseph@codesourcery.com>
+Sender: gcc-patches-owner@gcc.gnu.org
+To: gcc-patches@gcc.gnu.org, bkorb@gnu.org
+Subject: Patch to support x86-linux --enable-targets=all
+Date: Sun, 22 Oct 2006 19:57:53 +0000 (UTC)
+
+This patch allows i?86-*-linux* configurations to be built with 64-bit
+support, using the same --enable-targets=all option that enables this
+for powerpc-linux configurations.  (Using this feature needs my recent
+binutils patch
+<http://sourceware.org/ml/binutils/2006-10/msg00156.html>.)
+
+Bootstrapped with no regressions on i686-pc-linux-gnu (without the new
+option) and tested on i686-pc-linux-gnu with the new option.  OK to
+commit?
+
+The fixincludes change is because such biarch configurations have
+wrapper files <asm/*.h> that look something like
+
+#ifndef __ASM_STUB_POSIX_TYPES_H__
+# define __ASM_STUB_POSIX_TYPES_H__
+# if defined __x86_64__
+#  include <asm-x86_64/posix_types.h>
+# endif
+# if defined __i386__
+#  include <asm-i386/posix_types.h>
+# endif
+#endif
+
+and this wrongly matches a fix for an old pre-x86_64 i386
+<asm/posix_types.h> file.
+
+gcc:
+2006-10-22  Joseph Myers  <joseph@codesourcery.com>
+
+	* config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
+	Handle tuning for bi-arch i[34567]86-*-linux* like that for
+	i[34567]86-*-solaris2.1[0-9]*.
+	* config/i386/linux64.h (TARGET_VERSION, MULTILIB_DEFAULTS):
+	Define conditionally depending on TARGET_64BIT_DEFAULT.
+	(SPEC_32, SPEC_64): Define.
+	(LINK_SPEC): Use them.
+	* doc/install.texi (--enable-targets=all): Document for x86-linux.
+
+libcpp:
+2006-10-22  Joseph Myers  <joseph@codesourcery.com>
+
+	* configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*
+	depending on --enable-targets=all.
+	* configure: Regenerate.
+
+fixincludes:
+2006-10-22  Joseph Myers  <joseph@codesourcery.com>
+
+	* inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on x86_64.
+	* fixincl.x: Regenerate.
+
+2006-12-12  Matthias Klose  <doko@debian.org>
+
+        * configure.tgt (i[456]86-*-linux*): Only add ia32 specific
+        flags if not building with -m64.
+        * testsuite/lib/libgomp-dg.exp (libgomp_init): Don't add -march
+        flag for i?86-*-* targets, if current target matches -m64.
+
+--- gcc/doc/install.texi.orig	2007-07-06 20:20:31.000000000 +0200
++++ gcc/doc/install.texi	2007-07-12 19:18:13.000000000 +0200
+@@ -1159,7 +1159,7 @@
+ option enables the 32-bit target to be a bi-arch compiler, which is
+ useful when you want a bi-arch compiler that defaults to 32-bit, and
+ you are building a bi-arch or multi-arch binutils in a combined tree.
+-Currently, this option only affects powerpc-linux.
++Currently, this option only affects powerpc-linux and x86-linux.
+ 
+ @item --enable-secureplt
+ This option enables @option{-msecure-plt} by default for powerpc-linux.
--- gcj-4.2-4.2.4.orig/debian/patches/ada-driver.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-driver.dpatch
@@ -0,0 +1,41 @@
+#! /bin/sh -e
+
+# DP: Look for gcc-3.4, gcc-4.0 and gcc-4.1 as gcc with Ada support.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+
+--- gcc/aclocal.m4~	Sat Mar  2 00:37:42 2002
++++ gcc/aclocal.m4	Sat Apr  6 13:01:36 2002
+@@ -312,6 +312,10 @@
+ 	    ${ac_tool_prefix}$user_cc	$user_cc	\
+ 	    ${ac_tool_prefix}gcc	gcc		\
+ 	    ${ac_tool_prefix}cc		cc		\
++	    ${ac_tool_prefix}gcc-4.2	gcc-4.2		\
++	    ${ac_tool_prefix}gcc-4.1	gcc-4.1		\
++	    ${ac_tool_prefix}gcc-4.0	gcc-4.0		\
++	    ${ac_tool_prefix}gcc-3.4	gcc-3.4		\
+ 	    ${ac_tool_prefix}gnatgcc	gnatgcc		\
+ 	    ${ac_tool_prefix}gnatcc	gnatcc		\
+ 	    ${ac_tool_prefix}adagcc	adagcc		\
--- gcj-4.2-4.2.4.orig/debian/patches/libjava-disable-static.dpatch
+++ gcj-4.2-4.2.4/debian/patches/libjava-disable-static.dpatch
@@ -0,0 +1,47 @@
+#! /bin/sh -e
+
+# DP: Disable building the static libjava.
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+Index: Makefile.in
+===================================================================
+--- Makefile.in	(revision 117742)
++++ Makefile.in	(working copy)
+@@ -32681,7 +32681,7 @@
+ 	libsrcdir="$$s/libjava"; \
+ 	rm -f no-such-file || : ; \
+ 	CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+-	  $(TARGET_CONFIGARGS) $${srcdiroption}  \
++	  $(TARGET_CONFIGARGS) --disable-static $${srcdiroption}  \
+ 	  || exit 1
+ @endif target-libjava
+ 
+@@ -33379,7 +33379,7 @@
+ 	libsrcdir="$$s/boehm-gc"; \
+ 	rm -f no-such-file || : ; \
+ 	CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \
+-	  $(TARGET_CONFIGARGS) $${srcdiroption}  \
++	  $(TARGET_CONFIGARGS) --disable-static $${srcdiroption}  \
+ 	  || exit 1
+ @endif target-boehm-gc
+ 
--- gcj-4.2-4.2.4.orig/debian/patches/arm-pragma-pack.dpatch
+++ gcj-4.2-4.2.4/debian/patches/arm-pragma-pack.dpatch
@@ -0,0 +1,91 @@
+#! /bin/sh -e
+
+# DP: Fix #pragma pack on ARM
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+From: Paul Brook <paul@codesourcery.com>
+Sender: gcc-patches-owner@gcc.gnu.org
+To: gcc-patches@gcc.gnu.org
+Subject: [patch] #pragma pack vs. STRUCTURE_SIZE_BOUNDARY
+Date: Sun, 22 Oct 2006 16:32:31 +0100
+
+Currently STRUCTURE_SIZE_BOUNDARY is obeyed even when
+#pragma pack(1) is in effect. By contrast __attribute__((packed)) overrides 
+STRUCTURE_SIZE_BOUNDARY.
+
+This matters when odd sized packed structs are nested inside each other.
+
+Given the purpose of #pragma pack is for compatibility with Win32, I think 
+#pragma pack(1) act the same as __attribute__((packed)).
+
+The patch below fixes this.
+Tested with cross to arm-none-eabi.
+Ok?
+
+Paul
+
+2006-10-22  Paul Brook  <paul@codesourcery.com>
+
+	gcc/
+	* stor-layout.c (start_record_layout): maximum_field_alignment
+	overrides STRUCTURE_SIZE_BOUNDARY.
+
+	gcc/testsuite/
+	* gcc.dg/pragma-pack-4.c: New test.
+
+Index: gcc/stor-layout.c
+===================================================================
+--- gcc/stor-layout.c	(revision 117906)
++++ gcc/stor-layout.c	(working copy)
+@@ -525,7 +525,15 @@ start_record_layout (tree t)
+ #ifdef STRUCTURE_SIZE_BOUNDARY
+   /* Packed structures don't need to have minimum size.  */
+   if (! TYPE_PACKED (t))
+-    rli->record_align = MAX (rli->record_align, (unsigned) STRUCTURE_SIZE_BOUNDARY);
++    {
++      unsigned tmp;
++
++      /* #pragma pack overrides STRUCTURE_SIZE_BOUNDARY.  */
++      tmp = (unsigned) STRUCTURE_SIZE_BOUNDARY;
++      if (maximum_field_alignment != 0)
++	tmp = MIN (tmp, maximum_field_alignment);
++      rli->record_align = MAX (rli->record_align, tmp);
++    }
+ #endif
+ 
+   rli->offset = size_zero_node;
+Index: gcc/testsuite/gcc.dg/pragma-pack-4.c
+===================================================================
+--- gcc/testsuite/gcc.dg/pragma-pack-4.c	(revision 0)
++++ gcc/testsuite/gcc.dg/pragma-pack-4.c	(revision 0)
+@@ -0,0 +1,10 @@
++/* Check that pragma pack overrides STRUCTURE_SIZE_BOUNDARY.  */
++/* { dg-do compile } */
++
++#pragma pack(1)
++struct S
++{
++  char a;
++};
++
++int test[sizeof(struct S) == 1 ? 1: -1];
--- gcj-4.2-4.2.4.orig/debian/patches/m68k-noautoinc-setjmp.dpatch
+++ gcj-4.2-4.2.4/debian/patches/m68k-noautoinc-setjmp.dpatch
@@ -0,0 +1,47 @@
+#! /bin/sh -e
+
+# All lines beginning with `# DPATCH:' are a description of the patch.
+# DP: don't attempt autoinc in a function using setjmp
+# DP: (otherwise it might modify a variable expected to be unmodified)
+
+dir=
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p1 < $0
+        #cd ${dir}gcc && autoconf
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p1 < $0
+        #rm ${dir}gcc/configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+---
+
+ gcc/flow.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: gcc-4.2/gcc/flow.c
+===================================================================
+--- gcc-4.2.orig/gcc/flow.c
++++ gcc-4.2/gcc/flow.c
+@@ -3675,7 +3675,7 @@ find_auto_inc (struct propagate_block_in
+   int regno;
+   int size = GET_MODE_SIZE (GET_MODE (x));
+ 
+-  if (JUMP_P (insn))
++  if (JUMP_P (insn) || current_function_calls_setjmp)
+     return;
+ 
+   /* Here we detect use of an index register which might be good for
--- gcj-4.2-4.2.4.orig/debian/patches/ada-libgnatvsn.dpatch
+++ gcj-4.2-4.2.4/debian/patches/ada-libgnatvsn.dpatch
@@ -0,0 +1,1522 @@
+#! /bin/sh -e
+
+# DP: - Introduce a new shared library named libgnatvsn, containing
+# DP:   common components of GNAT under the GNAT-Modified GPL, for
+# DP:   use in GNAT tools, ASIS, GLADE and GPS.   Link the gnat tools
+# DP:   against this new library.
+
+# This patch seems large, but the hunks in Makefile.in are actually
+# generated from Makefile.def using autogen.
+
+# !!! Must be applied after ada-link-lib.dpatch
+
+dir=./
+if [ $# -eq 3 -a "$2" = '-d' ]; then
+    pdir="-d $3"
+    dir="$3/"
+elif [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+case "$1" in
+    -patch)
+        patch $pdir -f --no-backup-if-mismatch -p0 < $0
+	cd ${dir} && autoconf2.13
+        ;;
+    -unpatch)
+        patch $pdir -f --no-backup-if-mismatch -R -p0 < $0
+	rm -f ${dir}configure
+        ;;
+    *)
+        echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+        exit 1
+esac
+exit 0
+
+--- configure.in~
++++ configure.in	2007-06-19 16:00:28.885236576 +0200
+@@ -123,7 +123,7 @@
+ 
+ # these libraries are used by various programs built for the host environment
+ #
+-host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber libada"
++host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl libgui zlib libcpp libdecnumber libada libgnatvsn"
+ 
+ # these tools are built for the host environment
+ # Note, the powerpc-eabi build depends on sim occurring before gdb in order to
+@@ -152,6 +152,7 @@
+ 		${libgcj} \
+ 		target-libobjc \
+ 		target-libada \
++		target-libgnatvsn \
+ 		target-libgomp"
+ 
+ # these tools are built using the target libraries, and are intended to
+@@ -230,7 +231,7 @@
+ 
+ # Similarly, some are only suitable for cross toolchains.
+ # Remove these if host=target.
+-cross_only="target-libgloss target-newlib target-opcodes target-libada"
++cross_only="target-libgloss target-newlib target-opcodes target-libada target-libgnatvsn"
+ 
+ case $is_cross_compiler in
+   no) skipdirs="${skipdirs} ${cross_only}" ;;
+@@ -304,7 +304,7 @@
+ ENABLE_LIBADA=$enableval,
+ ENABLE_LIBADA=yes)
+ if test "${ENABLE_LIBADA}" != "yes" ; then
+-  noconfigdirs="$noconfigdirs gnattools"
++  noconfigdirs="$noconfigdirs libgnatvsn gnattools"
+ fi
+ 
+ AC_ARG_ENABLE(libssp,
+--- gcc/ada/config-lang.in~
++++ gcc/ada/config-lang.in	2007-06-19 16:01:00.198766122 +0200
+@@ -38,8 +38,8 @@
+ 
+ outputs=ada/Makefile
+ 
+-target_libs="target-libada"
+-lang_dirs="libada gnattools"
++target_libs="target-libada target-libgnatvsn"
++lang_dirs="libada libgnatvsn gnattools"
+ 
+ # Ada will not work until the front end starts emitting GIMPLE trees.
+ build_by_default=no
+--- gnattools/Makefile.in~
++++ gnattools/Makefile.in	2007-06-19 16:06:58.188252543 +0200
+@@ -40,9 +40,10 @@
+ INCLUDES = -I@srcdir@/../gcc/ada -I@srcdir@/../gcc
+ ADA_CFLAGS=-g -O2 -gnatn
+ ADA_INCLUDES=-nostdinc -I- -I. -I../gcc/ada/rts -I@srcdir@/../gcc/ada
++ADA_INCLUDES += -aO../libgnatvsn
+ LIB_VERSION=$(strip $(shell grep ' Library_Version :' \
+               @srcdir@/../gcc/ada/gnatvsn.ads | sed -e 's/.*"\(.*\)".*/\1/'))
+-ADA_LIBS := -L../gcc/ada/rts -lgnat-$(LIB_VERSION)
++ADA_LIBS := -L../gcc/ada/rts -lgnat-$(LIB_VERSION) -L../libgnatvsn -lgnatvsn
+ 
+ # We will use the just-built compiler to compile and link everything.
+ GCC=../gcc/xgcc -B../gcc/
+@@ -68,62 +69,34 @@
+ # Since we don't have gnatmake, we must specify the full list of
+ # object files necessary to build gnatmake and gnatlink.
+ # TODO: remove from these lists the objects that are part of
+-# libgnatvsn and libgnatprj.
++# libgnatprj.
+ GNATLINK_OBJS = \
+ ali.o \
+-alloc.o \
+ butil.o \
+-casing.o \
+-csets.o \
+-debug.o \
+ fmap.o \
+-fname.o \
+ gnatlink.o \
+-gnatvsn.o \
+-hostparm.o \
+ indepsw.o \
+-namet.o \
+-opt.o \
+ osint.o \
+-output.o \
+ prefix.o \
+ rident.o \
+ sdefault.o \
+-snames.o \
+ stylesw.o \
+ switch.o \
+-table.o \
+ targparm.o \
+-tree_io.o \
+-types.o \
+-validsw.o \
+-version.o \
+-widechar.o
++validsw.o
+ 
+ GNATMAKE_OBJS = \
+ ali-util.o \
+ ali.o \
+-alloc.o \
+-atree.o \
+ binderr.o \
+ butil.o \
+-casing.o \
+-csets.o \
+-debug.o \
+-einfo.o\
+-elists.o \
+ err_vars.o \
+ erroutc.o \
+ errutil.o \
+ fmap.o \
+ fname-sf.o \
+ fname-uf.o \
+-fname.o \
+ gnatmake.o \
+-gnatvsn.o \
+-hostparm.o \
+-krunch.o \
+-lib.o \
+ make.o \
+ makeusg.o \
+ makeutl.o \
+@@ -132,12 +105,8 @@
+ mlib-tgt.o \
+ mlib-utl.o \
+ mlib.o \
+-namet.o \
+-nlists.o \
+-opt.o \
+ osint-m.o \
+ osint.o \
+-output.o \
+ prefix.o \
+ prj-attr-pm.o \
+ prj-attr.o \
+@@ -155,33 +124,19 @@
+ prj-util.o \
+ prj.o \
+ rident.o \
+-scans.o \
+ scng.o \
+ sdefault.o \
+ sfn_scan.o \
+-sinfo.o \
+ sinput-c.o \
+ sinput-p.o \
+-sinput.o \
+-snames.o \
+-stand.o \
+-stringt.o \
+ styleg.o \
+ stylesw.o \
+ switch-m.o \
+ switch.o \
+-table.o \
+ targparm.o \
+ tempdir.o \
+-tree_io.o \
+-types.o \
+-uintp.o \
+-uname.o \
+-urealp.o \
+ usage.o \
+ validsw.o \
+-version.o \
+-widechar.o \
+ $(EXTRA_GNATMAKE_OBJS)
+ 
+ 
+@@ -204,6 +159,7 @@
+ 	touch $@
+ 
+ gnattools-native: ../gcc/ada/rts/libgnat-$(LIB_VERSION).so
++gnattools-native: ../libgnatvsn/libgnatvsn.so
+ gnattools-native: stamp-gnattools-sources
+ gnattools-native: $(TOOLS) gnatbl
+ 
+@@ -215,14 +171,14 @@
+ vpath %.ads @srcdir@/../gcc/ada
+ 
+ # Because the just-built gcc is a host tool like us, we can use some
+-# of its object files, e.g. prefix.o and version.o.
++# of its object files, e.g. prefix.o.
+ vpath prefix.o ../gcc
+-vpath version.o ../gcc
+ 
+ # gnatlink
+ 
+ gnatlink-static: $(GNATLINK_OBJS) b_gnatl.o link.o
+ 	$(GCC) -o $@ $^ \
++	   ../libgnatvsn/libgnatvsn.a \
+ 	   ../gcc/ada/rts/libgnat.a \
+ 	   ../libiberty/libiberty.a
+ 
+@@ -239,6 +195,7 @@
+ 
+ gnatmake-static: $(GNATMAKE_OBJS) b_gnatm.o link.o
+ 	$(GCC) -o $@ $(ADA_CFLAGS) $^ \
++	   ../libgnatvsn/libgnatvsn.a \
+ 	   ../gcc/ada/rts/libgnat.a \
+ 	   ../libiberty/libiberty.a
+ 
+@@ -252,7 +209,7 @@
+ 	../gcc/gnatbind -C -o $@ $(ADA_INCLUDES) gnatmake.ali
+ 
+ # Other tools
+-gnatchop gnatkr: version.o
++gnatchop gnatkr:
+ 	./gnatmake-static -c -b $@ $(ADA_CFLAGS) $(ADA_INCLUDES) \
+ 	   --GCC="$(GCC)" \
+ 	   --GNATBIND=../gcc/gnatbind
+@@ -264,7 +221,7 @@
+ 	cp -lp $< $@
+ 
+ gnatbind gnatclean gnatcmd gnatfind gnatls gnatname gnatprep gnatxref gprmake: \
+-link.o version.o prefix.o
++link.o prefix.o
+ 	./gnatmake-static -c -b $@ $(ADA_CFLAGS) $(ADA_INCLUDES) \
+ 	   --GCC="$(GCC)" \
+ 	   --GNATBIND=../gcc/gnatbind
+@@ -273,7 +230,7 @@
+ 	   --GCC="$(GCC) $(ADA_INCLUDES)"
+ 	strip $@
+ 
+-gnatbl: gnatbl.c link.o version.o prefix.o
++gnatbl: gnatbl.c link.o prefix.o
+ 	$(GCC) -o $@ $< $(CFLAGS) \
+ 	   -I../gcc -I@srcdir@/../gcc/config -I@srcdir@/../gcc \
+ 	   -I@srcdir@/../include \
+--- libgnatvsn/configure~
++++ libgnatvsn/configure	2006-04-13 08:18:04.000000000 +0200
+@@ -0,0 +1,34 @@
++#!/bin/sh
++
++# Minimal configure script for libgnatvsn.  We're only interested in
++# a few parameters.
++
++for arg in $*; do
++    case ${arg} in
++	--build=*)
++	    build=`expr ${arg} : '--build=\(.\+\)'`;;
++	--host=*)
++	    host=`expr ${arg} : '--host=\(.\+\)'`;;
++	--target=*)
++	    target=`expr ${arg} : '--target=\(.\+\)'`;;
++	--prefix=*)
++	    prefix=`expr ${arg} : '--prefix=\(.\+\)'`;;
++	--srcdir=*)
++	    srcdir=`expr ${arg} : '--srcdir=\(.\+\)'`;;
++	*)
++	    echo "Warning: ignoring option: ${arg}"
++    esac
++done
++
++echo "build: ${build}" | tee config.log
++echo "host: ${host}" | tee -a config.log
++echo "target: ${target}" | tee -a config.log
++echo "prefix: ${prefix}" | tee -a config.log
++echo "srcdir: ${srcdir}" | tee -a config.log
++
++echo "Creating Makefile..." | tee -a config.log
++sed -e "s,@build@,${build}," \
++    -e "s,@host@,${host}," \
++    -e "s,@target@,${target}," \
++    -e "s,@prefix@,${prefix}," \
++    -e "s,@srcdir@,${srcdir}," < ${srcdir}/Makefile.in > Makefile
+--- libgnatvsn/Makefile.in~
++++ libgnatvsn/Makefile.in	2007-06-21 01:10:32.000000000 +0200
+@@ -0,0 +1,131 @@
++# Makefile for libgnatvsn.
++#   Copyright (c) 2006 Ludovic Brenta <ludovic@ludovic-brenta.org>
++#
++# This file is free software; you can redistribute it and/or modify
++# it under the terms of the GNU General Public License as published by
++# the Free Software Foundation; either version 2 of the License, or
++# (at your option) any later version.
++# 
++# This program is distributed in the hope that it will be useful,
++# but WITHOUT ANY WARRANTY; without even the implied warranty of
++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++# GNU General Public License for more details.
++# 
++# You should have received a copy of the GNU General Public License
++# along with this program; if not, write to the Free Software
++# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
++
++# Default target; must be first.
++all: libgnatvsn
++
++.SUFFIXES:
++
++CPUS := $(shell getconf _NPROCESSORS_ONLN)
++LIB_VERSION := $(strip $(shell grep ' Library_Version :' \
++                 @srcdir@/../gcc/ada/gnatvsn.ads | \
++	         sed -e 's/.*"\(.*\)".*/\1/'))
++GCC:=../gcc/xgcc -B../gcc/
++LIBGNAT_JUST_BUILT := -nostdinc -I../gcc/ada/rts
++CFLAGS := -g -O2 -gnatn
++BASEVER := $(shell cat @srcdir@/../gcc/BASE-VER)
++DEVPHASE := $(shell cat @srcdir@/../gcc/DEV-PHASE)
++DATESTAMP := $(shell cat @srcdir@/../gcc/DATESTAMP)
++
++# For use in version.c - double quoted strings, with appropriate
++# surrounding punctuation and spaces, and with the datestamp and
++# development phase collapsed to the empty string in release mode
++# (i.e. if DEVPHASE_c is empty).  The space immediately after the
++# comma in the $(if ...) constructs is significant - do not remove it.
++BASEVER_s   := "\"$(BASEVER)\""
++DEVPHASE_s  := "\"$(if $(DEVPHASE), ($(DEVPHASE)))\""
++DATESTAMP_s := "\"$(if $(DEVPHASE), $(DATESTAMP))\""
++
++ifneq (@build@,@host@)
++   CFLAGS += -b @host@
++endif
++
++.PHONY: libgnatvsn install
++libgnatvsn: libgnatvsn.so.$(LIB_VERSION) libgnatvsn.a
++
++VSN_SOURCES := alloc.ads atree.adb casing.adb csets.adb debug.adb einfo.adb \
++elists.adb fname.adb gnatvsn.adb hostparm.ads krunch.adb lib.adb namet.adb \
++nlists.adb opt.adb output.adb repinfo.adb scans.adb sinfo.adb sinput.adb \
++snames.adb stand.adb stringt.adb table.adb tree_in.adb tree_io.adb types.adb \
++uintp.adb uname.adb urealp.adb widechar.adb
++
++VSN_SEPARATES := lib-list.adb lib-sort.adb
++
++OBJECTS=$(patsubst %.ads,%.o,$(VSN_SOURCES:.adb=.o)) version.o
++
++vpath %.c @srcdir@/../gcc
++vpath %.ads @srcdir@/../gcc/ada
++vpath %.adb @srcdir@/../gcc/ada
++
++libgnatvsn.so.$(LIB_VERSION): $(addprefix obj-shared/,$(OBJECTS))
++	: # Make libgnatvsn.so
++	$(GCC) -o $@ -shared -fPIC -Wl,--soname,$@ $^ \
++	   -L../gcc/ada/rts -lgnat-$(LIB_VERSION)
++	ln -s libgnatvsn.so.$(LIB_VERSION) libgnatvsn.so
++	chmod a=r obj-shared/*.ali
++# Make the .ali files, but not the .o files, visible to the gnat tools.
++	cp -lp obj-shared/*.ali .
++
++$(addprefix obj-shared/,$(OBJECTS)): | obj-shared
++
++obj-shared/%.o: %.adb
++	$(GCC) -c -fPIC $(CFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-shared/%.o: %.ads
++	$(GCC) -c -fPIC $(CFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-shared/version.o: version.c
++	$(GCC) -c -fPIC -g -O2 \
++	   -DBASEVER=$(BASEVER_s) \
++	   -DDATESTAMP=$(DATESTAMP_s) \
++	   -DDEVPHASE=$(DEVPHASE_s) \
++	   $(realpath $<) -o $@
++
++obj-shared:
++	-mkdir $@
++
++libgnatvsn.a: $(addprefix obj-static/,$(OBJECTS))
++	: # Make libgnatvsn.a
++	ar rc $@ $^
++	ranlib $@
++
++$(addprefix obj-static/,$(OBJECTS)): | obj-static
++
++obj-static/%.o: %.adb
++	$(GCC) -c $(CFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-static/%.o: %.ads
++	$(GCC) -c $(CFLAGS) $(LIBGNAT_JUST_BUILT) $< -o $@
++
++obj-static/version.o: version.c
++	$(GCC) -c -g -O2 \
++	   -DBASEVER=$(BASEVER_s) \
++	   -DDATESTAMP=$(DATESTAMP_s) \
++	   -DDEVPHASE=$(DEVPHASE_s) \
++	   $< -o $@
++
++obj-static:
++	-mkdir $@
++
++install: libgnatvsn
++	$(INSTALL_DATA) libgnatvsn.a $(DESTDIR)$(prefix)/lib
++	$(INSTALL_DATA) libgnatvsn.so.$(LIB_VERSION) $(DESTDIR)$(prefix)/lib
++	cd $(DESTDIR)$(prefix)/lib; \
++	ln -sf libgnatvsn.so.$(LIB_VERSION) libgnatvsn.so
++	mkdir -p $(DESTDIR)$(prefix)/share/ada/adainclude/gnatvsn
++	$(INSTALL_DATA) \
++	   $(addprefix @srcdir@/../gcc/ada/,$(VSN_SOURCES) $(VSN_SEPARATES)) \
++	   $(addprefix @srcdir@/../gcc/ada/,$(patsubst %.adb,%.ads,$(filter %.adb,$(VSN_SOURCES)))) \
++	   $(DESTDIR)$(prefix)/share/ada/adainclude/gnatvsn
++	mkdir -p $(DESTDIR)$(prefix)/lib/ada/adalib/gnatvsn
++	$(INSTALL) -m 0444 obj-shared/*.ali \
++	   $(DESTDIR)$(prefix)/lib/ada/adalib/gnatvsn
++	chmod a=r $(DESTDIR)$(prefix)/lib/ada/adalib/gnatvsn/*.ali
++
++.PHONY: clean
++clean:
++	rm -rf *.ali obj-static obj-shared libgnatvsn*
+--- Makefile.def~
++++ Makefile.def	2007-06-19 16:10:02.997279759 +0200
+@@ -120,6 +120,13 @@
+ 		missing= TAGS;
+ 		missing= install-info;
+ 		missing= installcheck; };
++host_modules= { module= libgnatvsn; no_check=true;
++		missing= info;
++		missing= dvi;
++		missing= html;
++		missing= TAGS;
++		missing= install-info;
++		missing= installcheck; };
+ host_modules= { module= gnattools; no_check=true;
+ 		missing= info;
+ 		missing= dvi;
+@@ -157,6 +164,13 @@
+ 		   missing= TAGS;
+ 		   missing= install-info;
+ 		   missing= installcheck; };
++target_modules = { module= libgnatvsn; no_check=true;
++		   missing= info;
++		   missing= dvi;
++		   missing= html;
++		   missing= TAGS;
++		   missing= install-info;
++		   missing= installcheck; };
+ target_modules = { module= libgomp; lib_path=.libs; };
+ 
+ // These are (some of) the make targets to be done in each subdirectory.
+@@ -315,6 +329,8 @@
+ dependencies = { module=all-fixincludes; on=all-libiberty; };
+ 
+ dependencies = { module=all-gnattools; on=all-libada; };
++dependencies = { module=all-gnattools; on=all-libgnatvsn; };
++dependencies = { module=all-libgnatvsn; on=all-libada; };
+ 
+ // Host modules specific to gdb.
+ dependencies = { module=configure-gdb; on=configure-intl; };
+--- Makefile.in~
++++ Makefile.in	2007-06-19 16:11:13.000000000 +0200
+@@ -640,6 +640,7 @@
+     maybe-configure-libtermcap \
+     maybe-configure-utils \
+     maybe-configure-libada \
++    maybe-configure-libgnatvsn \
+     maybe-configure-gnattools
+ .PHONY: configure-target
+ configure-target:  \
+@@ -662,6 +663,7 @@
+     maybe-configure-target-qthreads \
+     maybe-configure-target-rda \
+     maybe-configure-target-libada \
++    maybe-configure-target-libgnatvsn \
+     maybe-configure-target-libgomp
+ 
+ # The target built for a native non-bootstrap build.
+@@ -784,6 +786,7 @@
+ all-host: maybe-all-libtermcap
+ all-host: maybe-all-utils
+ all-host: maybe-all-libada
++all-host: maybe-all-libgnatvsn
+ all-host: maybe-all-gnattools
+ 
+ .PHONY: all-target
+@@ -807,6 +810,7 @@
+ all-target: maybe-all-target-qthreads
+ all-target: maybe-all-target-rda
+ all-target: maybe-all-target-libada
++all-target: maybe-all-target-libgnatvsn
+ all-target: maybe-all-target-libgomp
+ 
+ # Do a target for all the subdirectories.  A ``make do-X'' will do a
+@@ -893,6 +897,7 @@
+ info-host: maybe-info-libtermcap
+ info-host: maybe-info-utils
+ info-host: maybe-info-libada
++info-host: maybe-info-libgnatvsn
+ info-host: maybe-info-gnattools
+ 
+ .PHONY: info-target
+@@ -916,6 +921,7 @@
+ info-target: maybe-info-target-qthreads
+ info-target: maybe-info-target-rda
+ info-target: maybe-info-target-libada
++info-target: maybe-info-target-libgnatvsn
+ info-target: maybe-info-target-libgomp
+ 
+ .PHONY: do-dvi
+@@ -997,6 +1003,7 @@
+ dvi-host: maybe-dvi-libtermcap
+ dvi-host: maybe-dvi-utils
+ dvi-host: maybe-dvi-libada
++dvi-host: maybe-dvi-libgnatvsn
+ dvi-host: maybe-dvi-gnattools
+ 
+ .PHONY: dvi-target
+@@ -1020,6 +1027,7 @@
+ dvi-target: maybe-dvi-target-qthreads
+ dvi-target: maybe-dvi-target-rda
+ dvi-target: maybe-dvi-target-libada
++dvi-target: maybe-dvi-target-libgnatvsn
+ dvi-target: maybe-dvi-target-libgomp
+ 
+ .PHONY: do-pdf
+@@ -1101,6 +1109,7 @@
+ pdf-host: maybe-pdf-libtermcap
+ pdf-host: maybe-pdf-utils
+ pdf-host: maybe-pdf-libada
++pdf-host: maybe-pdf-libgnatvsn
+ pdf-host: maybe-pdf-gnattools
+ 
+ .PHONY: pdf-target
+@@ -1124,6 +1133,7 @@
+ pdf-target: maybe-pdf-target-qthreads
+ pdf-target: maybe-pdf-target-rda
+ pdf-target: maybe-pdf-target-libada
++pdf-target: maybe-pdf-target-libgnatvsn
+ pdf-target: maybe-pdf-target-libgomp
+ 
+ .PHONY: do-html
+@@ -1205,6 +1215,7 @@
+ html-host: maybe-html-libtermcap
+ html-host: maybe-html-utils
+ html-host: maybe-html-libada
++html-host: maybe-html-libgnatvsn
+ html-host: maybe-html-gnattools
+ 
+ .PHONY: html-target
+@@ -1228,6 +1239,7 @@
+ html-target: maybe-html-target-qthreads
+ html-target: maybe-html-target-rda
+ html-target: maybe-html-target-libada
++html-target: maybe-html-target-libgnatvsn
+ html-target: maybe-html-target-libgomp
+ 
+ .PHONY: do-TAGS
+@@ -1309,6 +1321,7 @@
+ TAGS-host: maybe-TAGS-libtermcap
+ TAGS-host: maybe-TAGS-utils
+ TAGS-host: maybe-TAGS-libada
++TAGS-host: maybe-TAGS-libgnatvsn
+ TAGS-host: maybe-TAGS-gnattools
+ 
+ .PHONY: TAGS-target
+@@ -1332,6 +1345,7 @@
+ TAGS-target: maybe-TAGS-target-qthreads
+ TAGS-target: maybe-TAGS-target-rda
+ TAGS-target: maybe-TAGS-target-libada
++TAGS-target: maybe-TAGS-target-libgnatvsn
+ TAGS-target: maybe-TAGS-target-libgomp
+ 
+ .PHONY: do-install-info
+@@ -1413,6 +1427,7 @@
+ install-info-host: maybe-install-info-libtermcap
+ install-info-host: maybe-install-info-utils
+ install-info-host: maybe-install-info-libada
++install-info-host: maybe-install-info-libgnatvsn
+ install-info-host: maybe-install-info-gnattools
+ 
+ .PHONY: install-info-target
+@@ -1436,6 +1451,7 @@
+ install-info-target: maybe-install-info-target-qthreads
+ install-info-target: maybe-install-info-target-rda
+ install-info-target: maybe-install-info-target-libada
++install-info-target: maybe-install-info-target-libgnatvsn
+ install-info-target: maybe-install-info-target-libgomp
+ 
+ .PHONY: do-install-html
+@@ -1517,6 +1533,7 @@
+ install-html-host: maybe-install-html-libtermcap
+ install-html-host: maybe-install-html-utils
+ install-html-host: maybe-install-html-libada
++install-html-host: maybe-install-html-libgnatvsn
+ install-html-host: maybe-install-html-gnattools
+ 
+ .PHONY: install-html-target
+@@ -1540,6 +1557,7 @@
+ install-html-target: maybe-install-html-target-qthreads
+ install-html-target: maybe-install-html-target-rda
+ install-html-target: maybe-install-html-target-libada
++install-html-target: maybe-install-html-target-libgnatvsn
+ install-html-target: maybe-install-html-target-libgomp
+ 
+ .PHONY: do-installcheck
+@@ -1621,6 +1639,7 @@
+ installcheck-host: maybe-installcheck-libtermcap
+ installcheck-host: maybe-installcheck-utils
+ installcheck-host: maybe-installcheck-libada
++installcheck-host: maybe-installcheck-libgnatvsn
+ installcheck-host: maybe-installcheck-gnattools
+ 
+ .PHONY: installcheck-target
+@@ -1644,6 +1663,7 @@
+ installcheck-target: maybe-installcheck-target-qthreads
+ installcheck-target: maybe-installcheck-target-rda
+ installcheck-target: maybe-installcheck-target-libada
++installcheck-target: maybe-installcheck-target-libgnatvsn
+ installcheck-target: maybe-installcheck-target-libgomp
+ 
+ .PHONY: do-mostlyclean
+@@ -1725,6 +1745,7 @@
+ mostlyclean-host: maybe-mostlyclean-libtermcap
+ mostlyclean-host: maybe-mostlyclean-utils
+ mostlyclean-host: maybe-mostlyclean-libada
++mostlyclean-host: maybe-mostlyclean-libgnatvsn
+ mostlyclean-host: maybe-mostlyclean-gnattools
+ 
+ .PHONY: mostlyclean-target
+@@ -1748,6 +1769,7 @@
+ mostlyclean-target: maybe-mostlyclean-target-qthreads
+ mostlyclean-target: maybe-mostlyclean-target-rda
+ mostlyclean-target: maybe-mostlyclean-target-libada
++mostlyclean-target: maybe-mostlyclean-target-libgnatvsn
+ mostlyclean-target: maybe-mostlyclean-target-libgomp
+ 
+ .PHONY: do-clean
+@@ -1829,6 +1851,7 @@
+ clean-host: maybe-clean-libtermcap
+ clean-host: maybe-clean-utils
+ clean-host: maybe-clean-libada
++clean-host: maybe-clean-libgnatvsn
+ clean-host: maybe-clean-gnattools
+ 
+ .PHONY: clean-target
+@@ -1852,6 +1875,7 @@
+ clean-target: maybe-clean-target-qthreads
+ clean-target: maybe-clean-target-rda
+ clean-target: maybe-clean-target-libada
++clean-target: maybe-clean-target-libgnatvsn
+ clean-target: maybe-clean-target-libgomp
+ 
+ .PHONY: do-distclean
+@@ -1933,6 +1957,7 @@
+ distclean-host: maybe-distclean-libtermcap
+ distclean-host: maybe-distclean-utils
+ distclean-host: maybe-distclean-libada
++distclean-host: maybe-distclean-libgnatvsn
+ distclean-host: maybe-distclean-gnattools
+ 
+ .PHONY: distclean-target
+@@ -1956,6 +1981,7 @@
+ distclean-target: maybe-distclean-target-qthreads
+ distclean-target: maybe-distclean-target-rda
+ distclean-target: maybe-distclean-target-libada
++distclean-target: maybe-distclean-target-libgnatvsn
+ distclean-target: maybe-distclean-target-libgomp
+ 
+ .PHONY: do-maintainer-clean
+@@ -203