www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - Forward reference hell in the DWT. Obviously it's a bug.

Here is a full subject story
http://www.dsource.org/forums/viewtopic.php?t=228

I attached the archived source for the 'simplified DWT' version what was
stripped from the real DWT for eliminatig the problem of  D compiler.

The archive has a three version of the same widget classes.

Source folders in it are
\src_fine - is tweaked version. It doesn't have any errors and can be
linked.
\src_crash - crashes the DMD 0.94 and previous versions too
\src_f_ref - gives the forward reference. I can say error description is far
from the clarity and as for me it doesn't give a clue for solving the
problem.

The main difference between those three sources can be found in the
control.d and widget.d files. The 'private import' directive position is
really make sence.

Hope the source will help you Walter to fix a bug because DWT stuck with it
and can't efficiently go further.

Regards, Yuriy.




begin 666 simplified_dwt_f_ref_error.zip
M4$L#!!0`` ```+PYV3 ````````````````*````<W)C7V-R87-H+U!+`P04
M``(```"\.=DP````````````````# ```'-R8U]C<F%S:"]D=W0O4$L#!!0`
M` ```+PYV3 ````````````````6````<W)C7V-R87-H+V1W="]W:61G971S
M+U!+`P04``(`" `F2;XP'?.]'YL````E`0``(0```'-R8U]C<F%S:"]D=W0O
M=VED9V5T<R]C;VUP;W-I=&4N9(V-,0^"0 Q&9_HK.F)B8)>1U<W1.!S'19L4
M[G(M$D/X[YX2,"[&K?GZ\AYTOAW883MJ,5)[=2J%]5WP0NHJ !#I;M0AI2GJ
M%R8V>F;3<.)^8-;WFL"7:VB8+%HV(EBO$3S :3/A!%"6?]FR>CGQ?$$US9%$
MTZHWDGR'T[SEWLNG%DQTO>Z1>D71![L$IV0F0W 1\_6]O"I(GAF>4$L#!!0`
M` `(`""<WC 5_Q-AG ```#<!```?````<W)C7V-R87-H+V1W="]W:61G971S
M+V-O;G1R;VPN9'V.,0Z#, Q%9WP*CU149"_JQ"$ZTQ"UE *)8 .J$'=O(*)J
M.[#8\O?S_X;.M8,UV$Y23M0^C'"I72_!V0K !QH;,4B==T%^H-0K4.H`TBYJ
M3&)6K^%N2:.V#3/6*0(O>-M0G _#OGVR>A_0-\'T\0>0)W%^PGD!4,6>M(G_
M\!FI%V1Y61-YR'CP)F"^+].B FP]+I.*UT_0`H6"6.$-4$L#!!0`` `(`,E%
MOC"F>]HU= ```,P````?````<W)C7V-R87-H+V1W="]W:61G971S+V1I<W!L
M87DN9./ERLU/*<U)54 I+]$KSTQ)3RTIUDO)+"[(2:RTYN4"07W] J+,LL22
M5(7,W(+\HA(4I<GY>25%^3E I06E23F9R0K).8G%Q0HN$#,4JL$RQ!G Z0SA
M* !-*/'(+"E)+2YQQK2 )".S6$,39'(M2+06XDQ>+ !02P,$% `"`` `N$6^
M,.*2:.*4````& $``"(```!S<F-?8W)A<V O9'=T+W=I9&=E=',O<V-R;VQL
M86)L92YDA8Y!#H(P$$77]A2SQ,3 7I8<P1.4,M%)AK;I3"6&<'<;"! WNOW_
MY?UOQC!D1A FK2<:[JA2BTN!V?:,K3$QT=,J`HTQ)/WB7/!:R-8TS4^J9$*Z
MRG+/Y,#VHLDZ!<=6!&[''ERAVZ0P_YG^2/5!4IUA7 [_FG0[`M$F]'H!\ JB
M+\8"E\\GR1$35'N]5:TIGL6\`5!+`P04``(`" "!0[XP[]]]&Y,````1`0``
M' ```'-R8U]C<F%S:"]D=W0O=VED9V5T<R]W:61G970N9(V.,0Z#, Q%Y_ 4
M'ENI  . ;KU#YY!$K:4`46R*$.+N34,HZM;)]O?W^X9NL*-W:">I)K(/)UQJ
M`Q BO;0XI"X,47X\ECAX/3> ((RM)X.Z98G:"!JOF?&>C; `U/4_'%"WK<4#
M3;T R^Q=6LN3^'3&984],"LE)NCH>KG ]R(Y07T<51[QNH-4P2=E.SI>2. 5
MWE!+`P04``(`" !81;XPMYP`G',```"3````% ```'-R8U]C<F%S:"]30V]N
M<W1R=6-TX^5**\K/54C/R4]2R,PMR"\J`;-YN:"<_&(XL[ 2R.;E2LTK4[!5
M<,TKRRS*S\M-S2O1</4+L\TOUDN%"&F"% 4'.0,5:?!R*0`!R$ -]93R$OWR
MS)3TU))B?2V]%'5-!5XN3:B!> %%^>E%B;D:0'V:`%!+`P04``(```"\.=DP
M````````````````" ```'-R8U]F7W)E9B]02P,$% `"`` `9$6^,+><`)QS
M````DP```!0```!S<F-?9E]R968O4T-O;G-T<G5C=./E2BO*SU5(S\E/4LC,
M+< O* &S>;F G/QB.+.X$LCFY4K-*U.P57#-*\LLRL_+3<TKT7#U"[/-+]9+
MA0AI A0%!SD#%6GP<BD``<A #?64\A+]\LR4]-228GTMO11U305>+DVH 7H!
M1?GI18FY&D!]F !02P,$% `"````O#G9, ````````````````X```!S<F-?
M9E]R968O9'=T+U!+`P04``(```"\.=DP````````````````% ```'-R8U]F
M7W)E9B]D=W0O=VED9V5T<R]02P,$% `"`` `X9O>,!WSO1^;````)0$``"$`
M``!S<F-?9E]R968O9'=T+W=I9&=E=',O8V]M<&]S:71E+F2-C3$/ D ,1F?Z
M*SIB8F"7D=7-T3 <QT6;%.YR+1)#^.^>$C NQJWY^O(>=+X=V&$[:C%2>W4J
MA?5=\$+J*H 0Z6[4(:4IZA<F-GIFTW#B?F#6]YK EVMHF"Q:-B)8KQ$\X&DS
MX010EG_9LGHY\7Q!-<V11-.J-Y)\A].\Y=[+IQ9,=+WND7I%T0>[!*=D)D-P
M$?/UO;PJ2)X9GE!+`P04``(`" ";2KXP?6CXNYT````W`0``'P```'-R8U]F
M7W)E9B]D=W0O=VED9V5T<R]C;VYT<F]L+F2-CD$. D ,1=?T%%UB,+"7N.(0
MKG%HM,G 3*9%8 AW=V""B2Z,FS;]??V_T+MNM(3=I.7$W8U42N,&#<[6`#[P
MHU5"[KT+^ &E7O]"C(N:L-+J-%XM&S2V%<$F!> )+QN*,T!5_>F4-?N O TT
MQ!] [RSY`><E^A1[UB9^PT?D05'T:2GRD,GH*6"^+].BAFP]+I.*YW?0`D4%
ML<(+4$L#!!0`` `(`&4ZOC"F>]HU= ```,P````?````<W)C7V9?<F5F+V1W
M="]W:61G971S+V1I<W!L87DN9./ERLU/*<U)54 I+]$KSTQ)3RTIUDO)+"[(
M2:RTYN4"07W] J+,LL225(7,W(+\HA(4I<GY>25%^3E I06E23F9R0K).8G%
MQ0HN$#,4JL$RQ!G Z0SA* !-*/'(+"E)+2YQQK2 )".S6$,39'(M2+06XDQ>
M+ !02P,$% `"`` `Q)O>,.*2:.*4````& $``"(```!S<F-?9E]R968O9'=T
M+W=I9&=E=',O<V-R;VQL86)L92YDA8Y!#H(P$$77]A2SQ,3 7I8<P1.4,M%)
MAK;I3"6&<'<;"! WNOW_Y?UOQC!D1A FK2<:[JA2BTN!V?:,K3$QT=,J`HTQ
M)/WB7/!:R-8TS4^J9$*ZRG+/Y,#VHLDZ!<=6!&[''ERAVZ0P_YG^2/5!4IUA
M7 [_FG0[`M$F]'H!\ JB+\8"E\\GR1$35'N]5:TIGL6\`5!+`P04``(`" "'
M.KXPB:RQT9,````1`0``' ```'-R8U]F7W)E9B]D=W0O=VED9V5T<R]W:61G
M970N9(V.,0Z#, Q%Y_ 4'ENI  . ;KU#YY!$K:4`46R*$.+N34,HZM;)]O?W
M^X9NL*-W:">I)K(/)UQJ`U#7(=)+BT/JPA#EQV6) ]=S`PK"V'HRJ%N6J(V 
M\9H9[]F("\ _%%"WK<4#3+T R^Q=6LN3^'3&984]+BLE).CH>KG ]R(Y07T<
M51[QNH-4P2=E.SI>2. 5WE!+`P04``(```"\.=DP````````````````"0``
M`'-R8U]F:6YE+U!+`P04``(`" !O1;XPMYP`G',```"3````$P```'-R8U]F
M:6YE+U-#;VYS=')U8W3CY4HKRL]52,_)3U+(S"W(+RH!LWFYH)S\8CBSN!+(
MYN5*S2M3L%5PS2O++,K/RTW-*]%P]0NSS2_62X4(:8(4!0<Y`Q5I\'(I``'(
M0 WUE/(2_?+,E/34DF)]+;T4=4T%7BY-J(%Z`47YZ46)N1I ?9H`4$L#!!0`
M` ```+PYV3 ````````````````-````<W)C7V9I;F4O9'=T+U!+`P04``(`
M``"\.=DP````````````````%0```'-R8U]F:6YE+V1W="]W:61G971S+U!+
M`P04``(`" "O.+XP'?.]'YL````E`0``( ```'-R8U]F:6YE+V1W="]W:61G
M971S+V-O;7!O<VET92YDC8TQ#X) #$9G^BLZ8F) EY'5S=$X',=%FQ3N<BT2
M0_COGA(P+L:M^?KR'G2^'=AA.VHQ4GMU*H7U7?!"ZBJ $.ENU"&E*>H7)C9Z
M9M-PXGY UO>:P)=K:) L6C8B6*\1/.!I,^$$4)9_V;)Z.?%\037-D433JC>2
M?(?3O.7>RZ<63'2][I%Z1=$'NP2G9"9#<!'S];V\*DB>&9Y02P,$% `"`` `
M#IS>,!7_$V&>````-P$``!X```!S<F-?9FEN92]D=W0O=VED9V5T<R]C;VYT
M<F]L+F1]CC$. S ,16=\"H]45&0OZL0A.M,0M98"B6(#JA!W;R"B:CNPV/+W
M\_^&SK6#-=A.4D[4/HQPJ5TOP=D*P <:&S%(G7=!?J#4*U#J`-(N:DQB5J_A
M;DFCM TSUBD"+WC;4)P/P[Y]LGH?T#?!]/$'D"=Q?L)Y`5#%GK2)__ 9J1=D
M>5D3><AX\"9 OB_3HH)L/2Z3BM=/T *% ECA#5!+`P04``(`" !$1;XPIGO:
M-78```#,````' ```'-R8U]F:6YE+V1W="]W:61G971S+V1I<W!L87DN9./E
MRLU/*<U)54 I+]$KSTQ)3RTIUDO)+"[(2:RTYN4"07W] J+,LL225(7,W(+\
MHA(4I<GY>25%^3E I06E23F9R0K).8G%Q0HN$#,4JL$RQ!G Z0SA* !-*/'(
M+"E)+2YQQK2 )".S6$,39'(M2+06XDQ>+ !02P,$% `"`` `:CB^,.*2:.*4
M````& $``"$```!S<F-?9FEN92]D=W0O=VED9V5T<R]S8W)O;&QA8FQE+F2%
MCD$. C 01=?V%+/$Q,!>EAS!$Y0RT4F&MNE,)89P=QL(&#>Z_?_E_6_&,&1&
M&":M)QKNJ%*+2X'9]HRM,3'1TRH"C3$D_>)<\%K(UC3-3ZID0KK*<L_DP/:B
MR3H%QU8$;L<>7*';I##_F?Y(]4%2G6%>#O^:=#L"T2;T> 'R"J(OQ *7SR?)
M$1-4>[U5K2F>Q;P!4$L#!!0`` `(`+TXOC")K+'1DP```!$!```=````<W)C
M7V9I;F4O9'=T+W=I9&=E=',O=VED9V5T+F2-CC$. S ,1>?X%!Y;J8(#H&Z]
M0^>01*VE`%%LBA#B[DU#*.K6R?;W]_N&;K"C=V GJ2:R#R=<: -0UR'22XM#
MZL(0Y<=EB8/7<P,*PMAZ,JA;EJB-H/&:&>_9B O /Q10MZW%`TR](,OL75K+
MD_ATQF6%/2XK)23HZ'JYX/<B.4%]'%4>\;J#5,$G93LZ7DCH%=Y02P$"% `4
M``(```"\.=DP````````````````" ```````````# `````````<W)C7V-R
M87-H+U!+`0(4`!0`` ```+PYV3 ````````````````.````````````, ``
M`" ```!S<F-?8W)A<V O9'=T+U!+`0(4`!0`` ```+PYV3 `````````````
M```6````````````, ```%0```!S<F-?8W)A<V O9'=T+W=I9&=E=',O4$L!
M`A0`% `"`` `)DF^,!WSO1^;````)0$``"$```````````` ````B ```'-R
M8U]C<F%S:"]D=W0O=VED9V5T<R]C;VUP;W-I=&4N9%!+`0(4`!0`` `(`""<
MWC 5_Q-AG ```#<!```?````````````( ```&(!``!S<F-?8W)A<V O9'=T
M+W=I9&=E=',O8V]N=')O;"YD4$L!`A0`% `"`` `R46^,*9[VC5V````S ``
M`!\```````````` ````/0(``'-R8U]C<F%S:"]D=W0O=VED9V5T<R]D:7-P
M;&%Y+F102P$"% `4``(`" "X1;XPXI)HXI0````8`0``( ```````````" `
M``#P` ``<W)C7V-R87-H+V1W="]W:61G971S+W-C<F]L;&%B;&4N9%!+`0(4
M`!0`` `(`(%#OC#OWWT;DP```!$!```>````````````( ```,0#``!S<F-?
M8W)A<V O9'=T+W=I9&=E=',O=VED9V5T+F102P$"% `4``(`" !81;XPMYP`
MG',```"3````% ```````````" ```"3! ``<W)C7V-R87-H+U-#;VYS=')U
M8W102P$"% `4``(```"\.=DP````````````````" ```````````# ````X
M!0``<W)C7V9?<F5F+U!+`0(4`!0`` `(`&1%OC"WG "<<P```),````4````
M````````( ```& %``!S<F-?9E]R968O4T-O;G-T<G5C=%!+`0(4`!0`` ``
M`+PYV3 ````````````````.````````````, ````4&``!S<F-?9E]R968O
M9'=T+U!+`0(4`!0`` ```+PYV3 ````````````````6````````````, ``
M`#$&``!S<F-?9E]R968O9'=T+W=I9&=E=',O4$L!`A0`% `"`` `X9O>,!WS
MO1^;````)0$``"$```````````` ````908``'-R8U]F7W)E9B]D=W0O=VED
M9V5T<R]C;VUP;W-I=&4N9%!+`0(4`!0`` `(`)M*OC!]:/B[G0```#<!```?
M````````````( ```#\'``!S<F-?9E]R968O9'=T+W=I9&=E=',O8V]N=')O
M;"YD4$L!`A0`% `"`` `93J^,*9[VC5V````S ```!\```````````` ````
M&0 ``'-R8U]F7W)E9B]D=W0O=VED9V5T<R]D:7-P;&%Y+F102P$"% `4``(`
M" #$F]XPXI)HXI0````8`0``( ```````````" ```#," ``<W)C7V9?<F5F
M+V1W="]W:61G971S+W-C<F]L;&%B;&4N9%!+`0(4`!0`` `(`(<ZOC")K+'1
MDP```!$!```>````````````( ```* )``!S<F-?9E]R968O9'=T+W=I9&=E
M=',O=VED9V5T+F102P$"% `4``(```"\.=DP````````````````"0``````
M`````# ```!O" ``<W)C7V9I;F4O4$L!`A0`% `"`` `;T6^,+><`)QS````
MDP```!,```````````` ````E H``'-R8U]F:6YE+U-#;VYS=')U8W102P$"
M% `4``(```"\.=DP````````````````#0```````````# ````Z"P``<W)C
M7V9I;F4O9'=T+U!+`0(4`!0`` ```+PYV3 ````````````````5````````
M````, ```&4+``!S<F-?9FEN92]D=W0O=VED9V5T<R]02P$"% `4``(`" "O
M.+XP'?.]'YL````E`0``( ```````````" ```"8"P``<W)C7V9I;F4O9'=T
M+W=I9&=E=',O8V]M<&]S:71E+F102P$"% `4``(`" `.G-XP%?\389X````W
M`0``' ```````````" ```!Q# ``<W)C7V9I;F4O9'=T+W=I9&=E=',O8V]N
M=')O;"YD4$L!`A0`% `"`` `1$6^,*9[VC5V````S ```!X```````````` 
M````2PT``'-R8U]F:6YE+V1W="]W:61G971S+V1I<W!L87DN9%!+`0(4`!0`
M` `(`&HXOC#BDFCBE ```! !```A````````````( ```/T-``!S<F-?9FEN
M92]D=W0O=VED9V5T<R]S8W)O;&QA8FQE+F102P$"% `4``(`" "].+XPB:RQ
MT9,````1`0``'0```````````" ```#0# ``<W)C7V9I;F4O9'=T+W=I9&=E
A=',O=VED9V5T+F102P4&`````!L`&P!T!P``G \`````
`
end
Jun 30 2004