Since I updated to Unity 4.1 (and later 4.1.1), the IntelliSense in MonoDevelop doesn’t work correctly. Not that it ever worked really well, but now its a lot worse than before.
“using UnityEngine” has a warning saying “Parser Warning: Invalid conditional define symbol ‘2’”.
And for example Collections.Generic doesn’t IntelliSense at all.
Built-in arrays of many object types has no IntelliSense for .Length and such, and will instead act as if they are single objects.
Been having this one for a while now with this one project and hadn’t been able to figure it out until now. Same parser warning thing as OP except with 9 instead of 2. Figured I’d post with this reply for others who may run into this.
Solution (in MD): “Right click the project, go to Options → Build → Compiler. You can add the constants where it says Define Symbols.”
credit:
No idea how my ‘9’ got in there but at the end of the list of conditionals, sure enough, there it was. Sure enough, removing it set things right again