Stefan Monnier writes: >>> This will automatically fix all such code. The only problem with it is >>> that there is > >> .. (in principle).. > > Not just in principle. A quick "grep '(message.*%%' lisp/**/*.el" shows > a fair number. > >>> code out there that calls message with a single arg and expects >>> `message' to dequote "%%" into "%". > >> Indeed. We should leave `message' itelf alone. > > Actually, I'd prefer changing message, but I already suggested it and it > was rejected (maybe I even installed the change and then backed it out, > can't remember). > The problem I wanted to address with this change was not just to fix > existing code but to try and avoid such bugs in the future as well. How about the following (hopefully more or less exhaustive) patch? Not all occurences might have the proper caution (or too much) regarding possible nil arguments, though.