GNU bug report logs -
#21862
24.5; Commit 35cd5181450 breaks nsterm.m on Mac OS X 10.6
Previous Next
Reported by: David Caldwell <david <at> porkrind.org>
Date: Sun, 8 Nov 2015 13:17:02 UTC
Severity: normal
Found in version 24.5
Done: David Reitter <david.reitter <at> gmail.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 21862 in the body.
You can then email your comments to 21862 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sun, 08 Nov 2015 13:17:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
David Caldwell <david <at> porkrind.org>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Sun, 08 Nov 2015 13:17:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
I'm getting this when trying to build on Mac OS X 10.6:
CC nsterm.o
nsterm.m: In function '-[EmacsView toggleFullScreen:]':
nsterm.m:7058: error: 'NSWindowWillEnterFullScreenNotification'
undeclared (first use in this function)
nsterm.m:7058: error: (Each undeclared identifier is reported only once
nsterm.m:7058: error: for each function it appears in.)
nsterm.m:7066: error: 'NSWindowDidEnterFullScreenNotification'
undeclared (first use in this function)
nsterm.m:7098: error: 'NSWindowWillExitFullScreenNotification'
undeclared (first use in this function)
nsterm.m:7104: error: 'NSWindowDidExitFullScreenNotification'
undeclared (first use in this function)
make[1]: *** [nsterm.o] Error 1
make: *** [src] Error 2
make failed
Looks like this commit is the culprit:
commit 35cd51814507987b916c4b4e0a7b45e09e454341
Author: David Reitter <david.reitter <at> gmail.com>
Date: Sat Nov 7 20:43:29 2015 -0500
Provide NS notification objects where required to eliminate warnings
* nsterm.m (windowDidResize:, toggleFullScreen:):
Call notification functions with notification objects
as per delegate APIs.
NSWindow.h says:
APPKIT_EXTERN NSString * const NSWindowWillEnterFullScreenNotification
NS_AVAILABLE_MAC(10_7);
APPKIT_EXTERN NSString * const NSWindowDidEnterFullScreenNotification
NS_AVAILABLE_MAC(10_7);
APPKIT_EXTERN NSString * const NSWindowWillExitFullScreenNotification
NS_AVAILABLE_MAC(10_7);
APPKIT_EXTERN NSString * const NSWindowDidExitFullScreenNotification
NS_AVAILABLE_MAC(10_7);
We could fix this by wrapping NSWindow*FullScreenNotification with
preprocessor guards. On the other hand, that's getting awfully bulky for
creating a bunch of NSNotifications that aren't ever used (follow the
function calls).
Perhaps we can fix the warning a different way?
-David
[smime.p7s (application/pkcs7-signature, attachment)]
Added indication that bug 21862 blocks19759
Request was from
Glenn Morris <rgm <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Sun, 08 Nov 2015 17:17:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 19:38:01 GMT)
Full text and
rfc822 format available.
Message #10 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi David, I'm pulling you in to this bug report since it is about your
commit.
I tried reverting the commit in question
(35cd51814507987b916c4b4e0a7b45e09e454341) and I don't see any warning
generated with the latest XCode (Version 7.1.1 (7B1005)). Where were you
seeing these warnings?
-David
[smime.p7s (application/pkcs7-signature, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 19:44:01 GMT)
Full text and
rfc822 format available.
Message #13 received at 21862 <at> debbugs.gnu.org (full text, mbox):
Rather than revert the commit, let me just check in a fix.
- David
> On Nov 10, 2015, at 2:37 PM, David Caldwell <david <at> porkrind.org> wrote:
>
> Hi David, I'm pulling you in to this bug report since it is about your
> commit.
>
> I tried reverting the commit in question
> (35cd51814507987b916c4b4e0a7b45e09e454341) and I don't see any warning
> generated with the latest XCode (Version 7.1.1 (7B1005)). Where were you
> seeing these warnings?
>
> -David
>
>
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 21:03:01 GMT)
Full text and
rfc822 format available.
Message #16 received at 21862 <at> debbugs.gnu.org (full text, mbox):
Hi David (and Anders),
I have checked in some changes that should allow compilation on 10.6.8.
I do not have a machine to test, so please reopen this bug in case you encounter a problem.
- David
> On Nov 10, 2015, at 2:37 PM, David Caldwell <david <at> porkrind.org> wrote:
>
> Hi David, I'm pulling you in to this bug report since it is about your
> commit.
>
> I tried reverting the commit in question
> (35cd51814507987b916c4b4e0a7b45e09e454341) and I don't see any warning
> generated with the latest XCode (Version 7.1.1 (7B1005)). Where were you
> seeing these warnings?
>
> -David
>
>
Reply sent
to
David Reitter <david.reitter <at> gmail.com>
:
You have taken responsibility.
(Tue, 10 Nov 2015 21:03:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
David Caldwell <david <at> porkrind.org>
:
bug acknowledged by developer.
(Tue, 10 Nov 2015 21:03:03 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 21:12:02 GMT)
Full text and
rfc822 format available.
Message #24 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 11/10/15 1:02 PM, David Reitter wrote:
> Hi David (and Anders),
>
> I have checked in some changes that should allow compilation on 10.6.8.
> I do not have a machine to test, so please reopen this bug in case you encounter a problem.
For closure, I've tested on my 10.6 machine and your change works great:
builder10-6:src build$ make nsterm.o
GEN globals.h
CC nsterm.o
builder10-6:src build$
Thanks!
-David
[smime.p7s (application/pkcs7-signature, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 21:40:02 GMT)
Full text and
rfc822 format available.
Message #27 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
Unfortunately, when I compile on my 10.6.8 machine I get the following
warnings:
nsterm.m: In function ‘-[EmacsView windowWillEnterFullScreen:]’:
nsterm.m:6875: warning: ‘EmacsView’ may not respond to
‘-windowWillEnterFullScreen’
nsterm.m:6875: warning: (Messages without a matching method signature
nsterm.m:6875: warning: will be assumed to return ‘id’ and accept
nsterm.m:6875: warning: ‘...’ as arguments.)
nsterm.m: In function ‘-[EmacsView windowDidEnterFullScreen]’:
nsterm.m:6887: warning: passing argument 1 of
‘notificationWithName:object:’ from incompatible pointer type
nsterm.m:6887: warning: ‘EmacsView’ may not respond to
‘-windowDidEnterFullScreen:’
nsterm.m: In function ‘-[EmacsView windowWillExitFullScreen:]’:
nsterm.m:6925: warning: ‘EmacsView’ may not respond to
‘-windowWillExitFullScreen’
nsterm.m: In function ‘-[EmacsView windowDidExitFullScreen:]’:
nsterm.m:6942: warning: ‘EmacsView’ may not respond to ‘-windowDid
The attached patch eliminate them. Basically, it's declarations of the new
(and shadowed) functions and the notification name should be a NSString
(i.e. a @ was missing).
-- Anders
On Tue, Nov 10, 2015 at 10:02 PM, David Reitter <david.reitter <at> gmail.com>
wrote:
> Hi David (and Anders),
>
> I have checked in some changes that should allow compilation on 10.6.8.
> I do not have a machine to test, so please reopen this bug in case you
> encounter a problem.
>
> - David
>
>
> > On Nov 10, 2015, at 2:37 PM, David Caldwell <david <at> porkrind.org> wrote:
> >
> > Hi David, I'm pulling you in to this bug report since it is about your
> > commit.
> >
> > I tried reverting the commit in question
> > (35cd51814507987b916c4b4e0a7b45e09e454341) and I don't see any warning
> > generated with the latest XCode (Version 7.1.1 (7B1005)). Where were you
> > seeing these warnings?
> >
> > -David
> >
> >
>
>
[Message part 2 (text/html, inline)]
[osx106.diff (text/plain, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 21:40:04 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 22:11:01 GMT)
Full text and
rfc822 format available.
Message #33 received at 21862 <at> debbugs.gnu.org (full text, mbox):
On Nov 10, 2015, at 4:39 PM, Anders Lindgren <andlind <at> gmail.com> wrote:
> The attached patch eliminate them.
I don’t think you should unconditionally declare this one:
+- (void)windowDidEnterFullScreen:(NSNotification *)notification;
Only declare it for the 10.6 build, please.
The others are okay.
> the notification name should be a NSString (i.e. a @ was missing).
OK, thanks, my bad.
- D
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 22:11:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Tue, 10 Nov 2015 22:14:02 GMT)
Full text and
rfc822 format available.
Message #39 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 11/10/15 1:39 PM, Anders Lindgren wrote:
> Hi,
>
> Unfortunately, when I compile on my 10.6.8 machine I get the following
> warnings:
>
> nsterm.m: In function ‘-[EmacsView windowWillEnterFullScreen:]’:
> nsterm.m:6875: warning: ‘EmacsView’ may not respond to
> ‘-windowWillEnterFullScreen’
> nsterm.m:6875: warning: (Messages without a matching method signature
> nsterm.m:6875: warning: will be assumed to return ‘id’ and accept
> nsterm.m:6875: warning: ‘...’ as arguments.)
> nsterm.m: In function ‘-[EmacsView windowDidEnterFullScreen]’:
> nsterm.m:6887: warning: passing argument 1 of
> ‘notificationWithName:object:’ from incompatible pointer type
> nsterm.m:6887: warning: ‘EmacsView’ may not respond to
> ‘-windowDidEnterFullScreen:’
> nsterm.m: In function ‘-[EmacsView windowWillExitFullScreen:]’:
> nsterm.m:6925: warning: ‘EmacsView’ may not respond to
> ‘-windowWillExitFullScreen’
> nsterm.m: In function ‘-[EmacsView windowDidExitFullScreen:]’:
> nsterm.m:6942: warning: ‘EmacsView’ may not respond to ‘-windowDid
>
> The attached patch eliminate them. Basically, it's declarations of the
> new (and shadowed) functions and the notification name should be a
> NSString (i.e. a @ was missing).
Hmm. I did *not* see those warnings, so I went back to my directory,
removed nsterm.o and used `make V=1` to see if my options were somehow
different. This time I got the same warnings you did. I have no idea why
I didn't see that the first time.
At any rate, I can confirm your patch removes the warnings on 10.6:
builder10-6:src build$ rm nsterm.o
builder10-6:src build$ make nsterm.o V=1
i686-apple-darwin10-gcc-4.2.1 -mmacosx-version-min=10.6 -std=gnu99 -c
-Demacs -I. -I. -I../lib -I../lib -I'/usr/include/libxml2'
-MMD -MF deps/nsterm.d -MP -g3 -O2 nsterm.m
builder10-6:src build$ rm nsterm.o
builder10-6:src build$ make nsterm.o V=1
i686-apple-darwin10-gcc-4.2.1 -mmacosx-version-min=10.6 -std=gnu99 -c
-Demacs -I. -I. -I../lib -I../lib -I'/usr/include/libxml2'
-MMD -MF deps/nsterm.d -MP -g3 -O2 nsterm.m
builder10-6:src build$
I did it twice because now I don't really trust it. :-)
-David
[smime.p7s (application/pkcs7-signature, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Wed, 11 Nov 2015 06:57:02 GMT)
Full text and
rfc822 format available.
Message #42 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
>
> I don’t think you should unconditionally declare this one:
>
> +- (void)windowDidEnterFullScreen:(NSNotification *)notification;
>
> Only declare it for the 10.6 build, please.
>
Ah, yes, that seems correct. It is provided from 10.7 onwards.
Alternatively, we can implement a non-notification variant of
windowDidBecomeKey (it doesn't use the notification anyway), that way we
can move the code from windowDidEnterFullScreen from the notification
variant to the non-notification variant, and avoid a lot of the
notification complexity.
-- Anders
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Wed, 11 Nov 2015 06:57:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sat, 14 Nov 2015 20:16:01 GMT)
Full text and
rfc822 format available.
Message #48 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
here is another, cleaner, patch to the OS X 10.6.8 build problem. It adds a
non-notification version of windowDidBecomeKey, which
windowDidEnterFullScreen now calls. This mean that 1) all functions now use
the same pattern (the notification version calls the non-notification
version) and 2) there is no need for the locally defined symbol
NSWindowDidEnterFullScreenNotification any more.
David (R), if you think this is a good way to solve this, would you like to
commit this patch, or would you prefer me to do it?
-- Anders
On Wed, Nov 11, 2015 at 7:56 AM, Anders Lindgren <andlind <at> gmail.com> wrote:
> I don’t think you should unconditionally declare this one:
>>
>> +- (void)windowDidEnterFullScreen:(NSNotification *)notification;
>>
>
>> Only declare it for the 10.6 build, please.
>>
>
> Ah, yes, that seems correct. It is provided from 10.7 onwards.
>
> Alternatively, we can implement a non-notification variant of
> windowDidBecomeKey (it doesn't use the notification anyway), that way we
> can move the code from windowDidEnterFullScreen from the notification
> variant to the non-notification variant, and avoid a lot of the
> notification complexity.
>
> -- Anders
>
>
>
[Message part 2 (text/html, inline)]
[osx106-2.diff (text/plain, attachment)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sat, 14 Nov 2015 20:16:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sat, 14 Nov 2015 20:24:01 GMT)
Full text and
rfc822 format available.
Message #54 received at 21862 <at> debbugs.gnu.org (full text, mbox):
On Nov 14, 2015, at 3:14 PM, Anders Lindgren <andlind <at> gmail.com> wrote:
> David (R), if you think this is a good way to solve this, would you like to commit this patch, or would you prefer me to do it?
Yes, defining an extra windowDidBecomeKey function is prettier.
I think that’s okay to check in to master.
For emacs-25, I think it’s good, too, as it is part of the original compile bug fix and reduces the chance of future problems rather than increasing it. I defer to John Wiegley (cc’ed) regarding this.
Anders, I do think that the cleaner way would be to use notifications to run these functions, which might reduce extra calls. However, that requires more testing that I was willing to do (on GNUStep too), because there’s potential for these methods getting called at a later point in time.
- David
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sat, 14 Nov 2015 20:24:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sat, 14 Nov 2015 23:27:01 GMT)
Full text and
rfc822 format available.
Message #60 received at 21862 <at> debbugs.gnu.org (full text, mbox):
>>>>> David Reitter <david.reitter <at> gmail.com> writes:
> For emacs-25, I think it’s good, too, as it is part of the original compile
> bug fix and reduces the chance of future problems rather than increasing it.
> I defer to John Wiegley (cc’ed) regarding this.
If you feel this improves upon an earlier fix, please commit to emacs-25.
We're only avoiding new functionality at this point, refinements are still OK.
John
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sat, 14 Nov 2015 23:27:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sun, 15 Nov 2015 07:19:01 GMT)
Full text and
rfc822 format available.
Message #66 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
>
> If you feel this improves upon an earlier fix, please commit to emacs-25.
> We're only avoiding new functionality at this point, refinements are still
> OK.
>
Perfect!
While we are mailing, I just as well say "hi" and introduce myself. I have
tried to take pick up the pieces of the OS X port, after Jan Djärvs
resignation. So far, I have fixed a number of bugs, including a fringe
rendering problem and an annoying startup crash.
I'm an somewhat of an Emacs old-timer and author of the "follow-mode" and
"auto-revert-mode" Emacs modules. Apart from that, I have written a number
of font-lock related packages. Professionally, I develop C compilers for
microcontrollers used in the embedded industry.
As I have small children and very limited time, I have tried to keep a low
profile, however feel free to contact me directly regarding OS X-related
issues.
Sincerely,
Anders Lindgren (Lindydancer)
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sun, 15 Nov 2015 07:19:02 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sun, 15 Nov 2015 17:58:01 GMT)
Full text and
rfc822 format available.
Message #72 received at 21862 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
I just pushed the patch on the emacs-25 branch (OK:ed by John). Hopefully,
everything should work properly this time.
-- Anders
On Sat, Nov 14, 2015 at 9:23 PM, David Reitter <david.reitter <at> gmail.com>
wrote:
> On Nov 14, 2015, at 3:14 PM, Anders Lindgren <andlind <at> gmail.com> wrote:
>
> > David (R), if you think this is a good way to solve this, would you like
> to commit this patch, or would you prefer me to do it?
>
> Yes, defining an extra windowDidBecomeKey function is prettier.
> I think that’s okay to check in to master.
>
> For emacs-25, I think it’s good, too, as it is part of the original
> compile bug fix and reduces the chance of future problems rather than
> increasing it. I defer to John Wiegley (cc’ed) regarding this.
>
> Anders, I do think that the cleaner way would be to use notifications to
> run these functions, which might reduce extra calls. However, that
> requires more testing that I was willing to do (on GNUStep too), because
> there’s potential for these methods getting called at a later point in time.
>
> - David
[Message part 2 (text/html, inline)]
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#21862
; Package
emacs
.
(Sun, 15 Nov 2015 17:58:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Mon, 14 Dec 2015 12:24:03 GMT)
Full text and
rfc822 format available.
This bug report was last modified 9 years and 188 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.