emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Patch] Enable byte-compile-error-on-wran for error-free files in li


From: Stefan Monnier
Subject: Re: [Patch] Enable byte-compile-error-on-wran for error-free files in lisp/
Date: Thu, 22 Feb 2018 00:24:37 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

> I am trying to keep warnings from lingering. The
> string-{to,as}-{multi,uni}byte family of functions have been deprecated
> since June 2016, which are some of the functions I see the most in the
> deprecation warnings. Stuff like that.

Indeed, these turn out to be difficult to fix:
- the potential replacement code is subtly different and it usually
  requires a detailed understanding of the code to know what's the right fix.
- in many places those function calls were added when Emacs's handling of
  `eight-bit` chars was different and it's difficult to know how that's
  affected by subsequent changes.
- there are various situations where there's no really good replacement.
  I guess that means that while they are marked as obsolete we really
  won't be getting rid of them any time soon.  And we can probably just
  silence the remaining warnings with `with-no-warnings` but only after
  we clearly document the need to use this function and what it would
  need to do otherwise.

> Hmm, sounds like its better to just not do that with files distributed
> in parallel. I don't have a problem with that (most files is better than
> no files after all), but I have no idea which ones are and are not 'core
> only' files. Guidance requested.

Good question.  After contributing to Emacs for almost 20 years
I generally "just know", but it's not 100% and it's not written down
anywhere for those who don't have that 20 year head start.

I agree it would be useful to document it.  Eli, John, any idea what
would be the best way to document those things?  Should we just add
a "Unbundled: yes" to the pseudo-headers, or maybe just (ab)use the
typical "URL: ..." pseudo-header for that?

As for which files are affected, I can't remember offhand, but a first
approximation is: org/*, mh-e/*, cc-*, vhdl and verilog, antlr and
those files mentioned in elpa.git/externals-list?


        Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]