The language codes sr-ec (Serbian in Cyrillic script) and sr-el (Serbian in Latin script) are not conform to BCP 47. BCP 47 explicit declares sr-Cyrl and sr-Latn as language codes.
The internal language codes can be in lower case: sr-cyrl and sr-latn. LanguageCode::bcp47() creates the capital letters.
The current language codes should exist as alias for compatibility.