Subject: bug#11604: USE_LISP_UNION_TYPE + USE_LSB_TAG cleanup.

From: Paul Eggert <[email-masked]>
Date: Sun, 03 Jun 2012 00:37:22 -0700

On 06/03/2012 12:26 AM, Andreas Schwab wrote:
> You don't need a bitfield for that, just a
> struct around EMACS_INT.

That thought had also occurred to me.  I avoided it only
because it would be a bigger change.  But it would also
work and it would clean things up further.

My impression is that the union + bitfield was the original implementation,
that it was replaced long ago by integers for performance reasons, and that
the only remaining reason for the union is for debugging.
For example, "./configure --help" says:

  --enable-use-lisp-union-type
                          use a union for the Lisp_Object data type. This is
                          only useful for development for catching certain
                          types of bugs.