Subject: bug#20592: the `display' property messes the `face' properties after `concat'

From: Eli Zaretskii <[email-masked]>
Date: Thu, 25 Jun 2015 22:42:15 +0300

> Date: Thu, 25 Jun 2015 21:16:41 +0200
> From: Alexander Shukaev <[email-masked]>
> Cc: Stefan Monnier <[email-masked]>, [email-masked]
> 
> Not sure how this complies with what Eli said:
> 
>     The behavior you observe is because the ':eval' construct expects to
>     produce a single string with either the same common face spec on all
>     of its characters, or no faces at all. You cannot use ':eval' to
>     produce a string that has more than one face spec on its different
>     characters; if you do, only the face spec of the first character of
>     the string will be honored.
> 
> but I've still managed to work it out in the following way:

It does comply, AFAIU: you produced a list, not a string.  Each string
in the list still needs to have a single face on all of its
characters.