Update compiled-time class checking
Abstract class for compiled-time checking
Compiled-time check for Date annotation type