Generator expression question

I’m not sure about the syntax but what I see is that you’re trying to use generator expressions where standard cmake-time constructs would suffice because they are not dependent on some properties known only at generation-time but on simple variables.
Therefore I’d again suggest:

if(ARM_PLATFORM STREQUAL "ModelSim")
    target_compile_definitions(${EXECUTABLE} PRIVATE __FILE_INCOMPLETE)
endif()

The only thing that I can think of regarding the syntax is whitespace. I strongly suspect that your generator expression actually gets split into 3 arguments waaaay before it has a chance to get evaluated because of the whitespace you’ve put there.