CXXDefaultArgExpr has an invalid SourceLocation

Hi, everyone. In tracking down a static analyzer crash I found that CXXDefaultArgExpr has an invalid SourceLocation, but also stores a separate "use location" that tracks where it was requested. Is there any reason for this? Can we just make the "use location" be the location you get from getLocStart/getLocEnd?

(Also, currently that location is the start of the CallExpr, but it seems reasonable to me to make it the close-paren location, if there is one.)