1/* Test if prior method lookup at method @implementation time is not
2   overly aggressive, leading to methods being found in other classes.  */
3/* Author: Ziemowit Laski <zlaski@apple.com>.  */
4
5/* { dg-do compile } */
6
7#include "../objc-obj-c++-shared/TestsuiteObject.h"
8#include <objc/objc.h>
9#include "../objc-obj-c++-shared/runtime.h"
10
11@class NSString;
12
13@protocol NSMenuItem
14+ (void)setUsesUserKeyEquivalents:(BOOL)flag;
15+ (BOOL)usesUserKeyEquivalents;
16@end
17
18@interface NSMenuItem : TestsuiteObject <NSMenuItem> {
19  @private
20  id _menu;
21}
22@end
23
24@interface NSResponder : TestsuiteObject <NSMenuItem>
25{
26  id _nextResponder;
27}
28@end
29
30@interface TestsuiteObject(NSMenuValidation)
31- (BOOL)validateMenuItem:(id <NSMenuItem>)menuItem;
32@end
33
34@interface NSResponder (NSStandardKeyBindingMethods)
35- (void)insertText:(id)insertString;
36- (void)doCommandBySelector:(SEL)aSelector;
37@end
38
39@interface NSView : NSResponder
40{
41  id _superview;
42  id _subviews;
43}
44@end
45
46@interface SKTGraphicView : NSView {
47    @private
48    float _gridSpacing;
49}
50@end
51
52@implementation SKTGraphicView
53- (BOOL)validateMenuItem:(NSMenuItem *)item {
54  return (BOOL)1;
55}
56- (void)insertText:(NSString *)str {
57}
58@end
59