Aggregates are a declared limitation. A project declaring CREATE AGGREGATE gets a clear diagnostic — SQL Server aggregates are CLR assemblies the model cannot express — instead of a wrong CREATE FUNCTION.
Changed
datetime and datetime2 are two types, and both are preserved. A user who writes datetime gets datetime; datetime2 round-trips verbatim. The model’s canonical datetime no longer silently upgrades to datetime2.
System types are captured bare. A built-in outside the model’s vocabulary (money, xml, both datetimes) introspects under its own bare name — the engine’s vocabulary is addressed bare — while user-defined types keep their owning schema.