Skip to content

Fix runaway deprecation suppression

Field.h had a runaway deprecation suppression where the pragmas to suppress deprecation warnings were turned on but not properly turned off. This caused deprecation warnings to be turned off for anything including Field.h (directly or indirectly), and consequently lots of use of deprecated features went unnoticed.

The majority of the warnings were caused by the use of the deprecated Cast, CopyTo, and ResetTypes methods of UnknownArrayHandle (or VariantArrayHandle). Both Cast and CopyTo have been subsumed by AsArrayHandle (to make the functionality more clear). ResetTypes now requires a second template argument to define the storage types to try.

Merge request reports