Eli Zaretskii <address@hidden
> schrieb am Sa., 22. Apr. 2017 um 09:42 Uhr:
> From: Philipp Stephani <address@hidden>
> Date: Fri, 21 Apr 2017 22:05:58 +0200
> nsterm.m:6969:8: error: member reference base type 'enum z_group' is not a structure or union
> if (!NILP (FRAME_Z_GROUP (f)))
It should compare against z_group_none instead.
Pushed eb52828a43 to fix.
> (Tangentially, is there any reason not to define Lisp_Object as struct
> unconditionally, to avoid such coding errors?)
Yes, it produces slower code.
Are you sure that's still the case? I've just diffed the assembly output for editfns.c with and without --enable-check-lisp-object-type, they seem identical (apart from minor diffs due to different register allocation and instruction ordering). Replacing a primitive value with a struct containing such a value should never degrade performance; that would be a compiler bug.