emacs-devel
[Top][All Lists]
Advanced

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

Re: Suspicious warning in W64 build


From: Richard Copley
Subject: Re: Suspicious warning in W64 build
Date: Sat, 9 Sep 2017 12:17:14 +0100

On 9 September 2017 at 11:42, Eli Zaretskii <address@hidden> wrote:
>> From: Richard Copley <address@hidden>
>> Date: Sat, 9 Sep 2017 10:36:28 +0100
>> Cc: Angelo Graziosi <address@hidden>, Emacs Development <address@hidden>
>>
>> >> That conversion happens often, e.g., in normalize_filename.
>> >
>> > What conversion is that?
>>
>> The down-casing of the drive letter in a native or MSYS file name.
>
> But find-file-noselect insists on comparing file names as simple
> case-sensitive strings.  Which will fail in a few more interesting
> cases.
>
>> > For starters, can you or Angelo tell where did that upper-case "C:/"
>> > originate from?
>>
>> You can see the warnings, for example, by invoking configure by
>> absolute file name with an upper-case drive letter before running make.
>>
>> Usually one uses a relative path and the problem can't arise.
>>
>> I used to see this when I used a complicated Perl script to build
>> Emacs. The upper-case drive letter was just an artifact. It was
>> derived from the current directory of the calling command prompt.
>
> So you are saying that upper-case C:/ comes from the user?  And if the
> user configures Emacs with a lower-case c:/, the problem will never
> happen?  If so, would binding find-file-suppress-same-file-warnings
> non-nil in autoload-find-generated-file solve the problem?  (This is
> less drastic than invoking find-file-noselect with a non-nil 2nd
> argument.)
>
>> > Also, are there other places in the build process
>> > that display file names with the upper-case drive letter?
>>
>> Yes. Transcript attached.
>
> I see a lot of warnings in that log.  It's a pity no one reports them,
> let alone works on fixing them.  (I don't see any of them on my
> systems.)

I assumed nobody was interested, since there were so many. My
mistake, sorry.

Reporting the warnings by email and answering questions about what
happens when one makes various changes isn't the most convenient
edit-compile-test cycle I've seen. You have your reasons for using an
old version of the compiler. Can you install MSYS2 and MinGW-W64
somewhere just for build testing? It would be less frustrating.

At least some of the "-Wformat=" warnings are misleading.
Emacs has to use MSVC's rules for format strings, but GCC
warns based on the C standard rules implemented in GCC.

Thanks.



reply via email to

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