When using a QDateEdit widget with calendarPopup set to true, if the year is changed using the QCalendarWidget (once the popup is activated) adds a comma "," to the year. It appears that when the title area of the control is updated the year is treated as a 4 digit number that is formatted based on the current locale group seperator.
It seems that the following does provide a workaround:
From the QtDocs for QLocale:
|QLocale::OmitGroupSeparator||0x01||If this option is set, the number-to-string functions will not insert group separators in their return values. The default is to insert group separators.|
It does appear from a quick review of the Qt code that QLocale::toString() is used quite often in QCalendarWidget.
I was able to reproduce this behavior using the calendar widget example (https://code.qt.io/cgit/qt/qtbase.git/tree/examples/widgets/widgets/calendarwidget?h=5.15) by modifying Window::createDatesGroupBox() and calling the setCalendarPopup(true) for the minimumDateEdit, currentDateEdit, and maximumDateEdit widgets. Then running the example application, activating one of the 3 calendar popups and changing the year.