PascalCase differs from camelCase by one character, and in some languages that character changes the semantics rather than the style.
Go uses capitalisation as an access modifier
An identifier starting with an uppercase letter is exported from its package; a lowercase one is not. Case-converting a field list in Go is not cosmetic โ it changes what is visible outside the package, and a JSON marshaller will silently omit unexported fields.
Reserved words survive conversion
class, type, for and new are reserved in various languages, and Class or Type may still collide with a built-in. A generator that converts labels to identifiers needs a reserved-word list and a suffixing strategy, or it emits code that does not compile.
Serialisation boundaries need explicit mapping
An API returning snake_case consumed by code using PascalCase types requires a mapping layer. Relying on a framework's automatic conversion works until a field contains an acronym or a digit, at which point the automatic rule and the API's actual name diverge and the field silently deserialises as null.
Try it: Convert to PascalCase on SeoWolf's Notepad.