Using xHarbour.com's xBuild compiler, I was getting "Error E0030 Syntax error at '7'". It occurred at a FIELD declaration line, and I determined that '7' had nothing to do with it. The problem was that one of the fields listed had the name "IDNO" all in caps. As soon as I changed it to "IDno" - mixed case - then the problem went away. There was no variable declaration in any .ch files going into the preprocessor that conflicted to account for this. So it seems there can be case sensitivity and maybe some "magic words" that can cause problems.
Anyway, I'm just suggesting that if you get this E0030 error on some variable that is stated all in upper case, you could try changing the case from upper to lower of some characters to see if that will work. It worked for me. Don't know why.
Error E0030 problem and solution
- Roger Seiler
- Posts: 223
- Joined: Thu Dec 01, 2005 3:34 pm
- Location: Nyack, New York, USA
- Contact:
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Error E0030 problem and solution
Roger,
Thanks for sharing it.
My advise is to migrate to Harbour, or at least, try to compile that code that fails with it, so you can see if there is a difference.
Thanks for sharing it.
My advise is to migrate to Harbour, or at least, try to compile that code that fails with it, so you can see if there is a difference.
Re: Error E0030 problem and solution
IDNO is defined in winuser.ch
- Roger Seiler
- Posts: 223
- Joined: Thu Dec 01, 2005 3:34 pm
- Location: Nyack, New York, USA
- Contact:
Re: Error E0030 problem and solution
Thanks, Patrizio, regarding Winuser.ch . Mystery solved!
Winuser.ch is in ..xhb\include where IDNO is defined as 7, which explains why the error message I got mentioned 7.
Anyone using xHarbour should take a look at Winuser.ch in order to be aware of variable names that get defined there and which could conflict with one's own variable names. Fortunately, all names defined in Winuser.ch are in all-caps, so if every var that you name has a mix of upper and lower case, you won't have a conflict with names used in Winuser.ch .
Winuser.ch is in ..xhb\include where IDNO is defined as 7, which explains why the error message I got mentioned 7.
Anyone using xHarbour should take a look at Winuser.ch in order to be aware of variable names that get defined there and which could conflict with one's own variable names. Fortunately, all names defined in Winuser.ch are in all-caps, so if every var that you name has a mix of upper and lower case, you won't have a conflict with names used in Winuser.ch .