Subject: bug#21391: 24.5; `thing-at-point' should return a string

From: Eli Zaretskii <[email-masked]>
Date: Mon, 14 Nov 2016 17:34:08 +0200

> Date: Sun, 13 Nov 2016 18:43:52 -0800 (PST)
> From: Drew Adams <[email-masked]>
> Cc: [email-masked]
> 
> d> 2. Make `thing-at-point', as before, return just what the
>       firat `if' clause returns, if that clause is taken.
>       IOW, move the removal of text properties (from non-nil
>       NO-PROPERTIES) into the second `if' clause.

Why would we want to do that?  AFAIU, it would require the function
that is the value of the thing-at-point property to second-guess what
the caller of thing-at-point wants, something it has no means to do.

If thing-at-point is called with NO-PROPERTIES non-nil, and the
thing-at-point property returns a string, then any properties should
be removed from that string, exactly as in the other case.  I don't
see why we should single out that one use case.

I think the only change that makes sense at this point is to replace
sequencep by stringp, as Tino originally proposed.  Other than that,
there are no problems here that we need to solve.