ID:2403401
 
(See the best response by Kaiochao.)
Code:
            domino_high

name = "High School"

base
layer = TURF_LAYER +1

SOUTH/icon = 'domino_high_01.dmi'
NORTH
icon = 'domino_high_02.dmi'
icon_state = "1"

rails
icon = 'domino_high_02.dmi'
icon_state = "2"
mouse_opacity = 0
layer = M_LAYER +10


Problem description:

"error: expected expression"

So I just started getting this error and I have absolutely no idea why.

This code is just defining some objs.

It's on the...

icon        = 'domino_high_02.dmi'


line above. under the base object.

This particular piece of coding has not changed since the last time I compiled and I keep copies of my most recent 10 or so versions of my code just incase something unexpected happens and I balls up a massive chunk of code.

I tried to compile one of my older versions again and it wouldn't compile giving me the same error on the same line.

These versions of code have previously compiled fine with absolutely no problems.

I have updated my version of BYOND since the last time I compiled to a newer version of the 512 beta, so I'm assuming that's the issue? Is anyone else running into this? Im currently running 512.1448.

I'm going to try and find an older installer and see.
I had the installer for 512.1429 still on my pc and I tried that out. The code is compiling just fine now.

Is this a bug then?
Best response
SOUTH and NORTH have been made into #define preprocessor macros, so this:
                    SOUTH/icon      = 'domino_high_01.dmi'
NORTH
icon = 'domino_high_02.dmi'
icon_state = "1"
is actually compiling as:
                    2/icon      = 'domino_high_01.dmi'
1
icon = 'domino_high_02.dmi'
icon_state = "1"
which isn't valid.
So I'm going to have to change these object type paths moving forward. Wonderful.