Define id to the correct type.

Found this while working on pr16247. The fix for that bug will cause clang to
reject this.