Explaining compile time assert