OK, hands up, I didn't read the Wiki article close enough.
Anyway, DST in the UK is "Spring Forward, Fall Back"
In the spring, we put the clocks forward 1 hour, and call it "British Summer Time".
In the fall, we put the clocks back 1 hour, to restore it to UTC.
British Summer Time begins on the last Sunday of March and ends on the last Sunday of October. Clocks are "adjusted" at 0100 hrs on those Sundays.
That is enough given info to code when DST should be enabled in the Controller if required, all we need is to determine the "Last Sunday in March", to turn it on at 0100hrs, and the "Last Sunday in October" to turn it off. So knowing the day of the week is essential.
Anyway, I have determined that the WallClock (In a ControlLogix L62 Version 19 at least) has an issue being SSV'd which starts sometime around 17/04/2262 (dd/mm/yyyy)
It's hard to determine the exact time of day the problem arises, to be honest it seems to move around for some strange reason, as you try to "home-in" on it, dates and times that previously failed would work ok again.
The clock does seem to "ride" through if set before the problem was observed, and continue as a clock should, it's just a problem setting it. I suspect there is a glitch in the maths that the WallClock does to convert the DINT[7] array data supplied by the SSV into the 64-bit "CurrentValue", which has been observed to go negative when SSVing dates around then.
All very academic, and I won't lose any sleep over it... 2262 lol!
But if you are engaged in writing code for a "time-travel machine", just be careful where (when) you put yourself.
edit: On the subject of your "corner" cases, Timbert, most of the systems I have worked on have NOT used DST for production data for the reasons you stated. That doesn't mean they don't display DST times on the HMIs and SCADAs, but production data collected for statistical and historical purposes has mostly been stamped UTC.
Most production data revolves around rates, and that infers a time-period, so having all times UTC is beneficial... EndTime - StartTime = ProductionTime regardless of DST adjustments that introduce errors twice a year.
The WallClock on the Logix5000 processors can give you both attributes....
DateTime - unadjusted (UTC)
LocalDateTime - adjusted to the specified locale (DST) - if enabled !
The 64-bit "CurrentValue" is just a count of the number of microseconds since 00:00:00 on Jan 1st, 1970