diff --git a/ChangeLog b/ChangeLog index 4041e6f40..edb3cefbe 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2007-12-15 Steven Borley * Added automake warning and output verbosity to autogen.sh + * src/frontend/spiceif.c: Avoid invalid lvalue assignment errors when + calling the macro _foo(). Needed for gcc4 which no longer supports + lvalue cast bogosity. 2007-12-14 Steven Borley * Added missing .cvsignore file to the tests directories and some diff --git a/src/frontend/spiceif.c b/src/frontend/spiceif.c index 4a7a8e433..d4b833be1 100644 --- a/src/frontend/spiceif.c +++ b/src/frontend/spiceif.c @@ -1277,7 +1277,10 @@ do {\ _foo(ckt->CKTbreaks,double,ckt->CKTbreakSize); - _foo((TSKtask *)ft_curckt->ci_curTask,TSKtask,1); + { /* avoid invalid lvalue assignment errors in the macro _foo() */ + TSKtask * lname = (TSKtask *)ft_curckt->ci_curTask; + _foo(lname,TSKtask,1); + } /* To stop the Free */ ((TSKtask *)ft_curckt->ci_curTask)->TSKname = NULL; @@ -1285,7 +1288,10 @@ do {\ _foo(((TSKtask *)ft_curckt->ci_curTask)->TSKname,char,-1); - _foo(((TRANan *)((TSKtask *)ft_curckt->ci_curTask)->jobs),TRANan,1); + { /* avoid invalid lvalue assignment errors in the macro _foo() */ + TRANan * lname = (TRANan *)((TSKtask *)ft_curckt->ci_curTask)->jobs; + _foo(lname,TRANan,1); + } ((TSKtask *)ft_curckt->ci_curTask)->jobs->JOBname = NULL; ckt->CKTcurJob = (JOB *)((TSKtask *)ft_curckt->ci_curTask)->jobs;