Search Issue Tracker
Fixed in 2021.1
Votes
1
Found in
2020.1.0a7
2020.2
2020.2.0b2
Issue ID
1279339
Regression
Yes
Unity doesn't recognise the script as Monobehaviour script when there's a grave accent in an #if false block inside a namespace
How to reproduce:
1. Open the attached "ScriptBreakingUnity" project
2. In the Project window select the "breakit" script
3. Open the Inspector (Window->General->Inspector)
Expected results: There's no "No MonoBehaviour scripts in the file, or their names do not match the file name." message
Actual results: There's a "No MonoBehaviour scripts in the file, or their names do not match the file name." message
Reproducible with: 2020.1.0a7, 2020.1.6f1, 2020.2.0b3
Not reproducible with: 2018.4.27f1, 2019.4.11f1, 2020.1.0a6
Notes:
- 2020.1.0a7 is the first version where the issue appears when creating a new project (not upgrading/downgrading)
- Upgrading a project with the script up to Unity 2020.1.0a14 will not reproduce the issue if it wasn't there initially
- When downgrading a project that has the issue to Unity 2020.1.0a2 or later will keep the issue around but resetting packages sometimes fixes it
- If the #if block with the grave accent is not inside a namespace Unity will not throw any errors and will recognise the script as MonoBehaviour
- If the #if block is set to true, the Console will throw the "Unexpected character" error and the Editor will accept the script as MonoBehaviour script
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Shadows are not cast when you first Blit the Shadow map and then set it back to Buffer
- Changes to instanced detail mesh material don't immediately apply
- [uGUI] Vertices retrieved from GetUIVertexStream method cannot be modified when adjusting them through script
- Scroll bar scrolls less in the Package Manager packages than elsewhere when pressing on the empty scroll bar area to scroll
- Undo.RegisterCreatedObjectUndo dirties the scene, but no actual changes to Scene are made
Resolution Note (fix version 2021.1):
Fixed in 2021.1.0a2