It looks like there are a number of other system SObject fields that are similarly expressed as "complexvalue". I'll see if I can assess a concrete data type for these fields safely and update the offline symbol table generator to do so. If not, I'll update the illegal assignment inspection to ignore these particular fields so that you don't get this type of false positive. If I have to go that route, things like extract refactorings won't infer the proper type, but you won't see these types of errors.
Scott Wellsrepo owner
Good news. I can concretely isolate these fields and give them the correct data type at OST generation time. The other fields which are documented as being of type "complexvalue" (and which are reported as such by the API) should in fact be of type Object at runtime. I've just committed a fix for this for inclusion in the next non-Spring '21 build, likely next Thursday.
That’s great news, thanks for looking into this so fast :)