Studio custom Canvas subclasses can fail to compile when base type casing is non-canonical
- Status
- Fixed
- Fixed in
- v26.5.5
- Source discussion
- https://forum.objo.dev/d/74-bug-compiler
- Last updated
- 2026-05-21
Public summary
Studio can fail to compile a desktop project when a custom control subclass inherits from a built-in control using different casing, for example Inherits canvas instead of Inherits Canvas.
ObjoBasic identifiers are case-insensitive, so this should behave exactly like the canonical spelling. Instead, Studio could preserve the non-canonical base type casing in designer metadata, assign a hidden default Text value to the custom Canvas control, and then generate layout code that tries to set a Text property on a Canvas subclass. The visible compiler error is Type 'myCanvas' has no property 'Text'.
Expected behaviour: Studio treats built-in control base types case-insensitively and does not emit unsupported designer property assignments.