Redeclaration of local variables (?)
Posted in 1992
Jonathon, You wrote: >>I had the message: >>ut_merge.c Line 4351 redeclaration of prepare_sel_ > >This is therefore probably a C compiler error message. If it came >from 4GL, the file referenced would be ut_merge.4gl; if it came from >ESQL, the file referenced would be ut_merge.ec. Also, the message >format is more like that used by the C compiler... Sorry. Well of course you're right and I new the message was not from c4gl itself by then, I merely mentioned this so that folks would know I was working from make and not from the programmers environment. >In fact, I would expect an error message to refer to the .ec file even >if the compiler was compiling the C produced from the .ec file... I would expect that. But both this version and 4.10.... on the Sparc always state blah.c. Only lowly 1.10.00B states blah.ec. >When you checked the source, did you look at the I4GL code or the generated >C code? I would expect your observation to be valid for both, which would >then indicate a broken C compiler -- however, you don't get many broken >C compilers on Unix boxes, so it needs more careful scrutiny. I must admit that so far I've only checked the 4GL. I fixed this particular variable by making it global. The reason I did this was because it, amongst other variables, were listed in ld's list of undefined symbols. I've grepped for all of these variables in the 4gl code and the objects are in the library. >Have you tracked down the declarations of prepare_sel_ in the C code? >Are these internal to the function or external to them? If internal and >the compiler is wittering, then you have a seriously defective compiler. >If external, then we have a question of what is being done on your other >machines where it does work. Where are the variables declared on those >other machines? Thanks for the hint. As you might guess, I don't often program in C. >None of this is a definitive answer, but to give one would need much more >information than should be sent over the net... Accepted. Again, thanks very much. Regards Neil Neil S. Briscoe Telephone: +44 252 376737 System Administrator Fax: +44 252 376644 Email: neil@salmon.demon.co.uk nbriscoe@cix.compulink.co.uk Bartec Medical Systems Ltd. Impression House Invincible Road "!##@!** Listen who swears Farnborough Christopher Robin has fallen downstairs" Hants GU14 7NP -- The Goodies Book of Criminal Records England "A man is incomplete until he's married -- then he's finished!" -- seen on a desktop calendar