Page 1 of 1

r1293 ACC error

Posted: Tue Nov 18, 2008 3:37 am
by Enjay
When I try to test the latest ACC by compiling the Zdoom Community WAD ACS file, I get this:

Code: Select all

**** ERROR ****
Line 119 in file "F:\Doom\zdoomutils\zdoomcmp1.acs" ...
F:\Doom\zdoomutils\zdoomcmp1.acs:119: Invalid declarator.
> }*/
>   ^
And here is the code in question:

Code: Select all

// [GRB] Removed, useless
/*script 71 (void)
{
        ambientsound ("misc/chat", 127);
        print (s:"\cCThis Door can't be opened!");
}

script 72 OPEN
//sparks at the door in T667 room
{
        thing_activate(3);
        delay(70);
        thing_activate(4);
        delay(35);
        thing_activate(3);
        delay(95);
        thing_activate(3);
        delay(10);
        thing_activate(4);
        delay(70);
        restart;
}*/ 
The "problem" line is the last one and, as far as I can tell, it is a legitimate end to a bit of commented out code. It certainly doesn't flag up on previous versions of ACC.

Re: r1293 ACC error

Posted: Tue Nov 18, 2008 10:15 pm
by Jim
I uncommented that code and found that the problem line is actually this one:

Code: Select all

print (s:"\cCThis Door can't be opened!");
I'd guess the new include code (responsible for that warning I fixed) has screwed things up. I made sure that my fix did not create this problem, so this issue has also existed before the very latest version.

As for the comment being parsed, there may have been yet another parsing error earlier.

Obviously, ACS is not a friendly compiler as far as error messages, even without this bug.

Re: r1293 ACC error

Posted: Mon Dec 15, 2008 10:26 pm
by randi
This is the same as this bug. Three lines were accidentally removed from token.c, which broke processing of strings with backslash characters.
Jim wrote:this issue has also existed before the very latest version.
Actually, it was introduced at the same time.
Jim wrote:Obviously, ACS is not a friendly compiler as far as error messages, even without this bug.
I'd say it's fine, as long as it's tokenizing properly.