OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [objc.dg/] [objc-gc-4.m] - Blame information for rev 704

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 704 jeremybenn
/* Test looking up fields in superclasses in the context of write-barriers
2
   (where component references get rewritten).  */
3
/* Contributed by Ziemowit Laski <zlaski@apple.com>  */
4
 
5
/* { dg-do compile } */
6
/* { dg-options "-fobjc-gc" } */
7
/* { dg-prune-output "cc1obj: warning: '-fobjc-gc' is ignored for '-fgnu-runtime'" } */
8
 
9
#include "../objc-obj-c++-shared/TestsuiteObject.h"
10
#include <objc/objc.h>
11
 
12
@class MyWindow;
13
 
14
@interface MyDocument : TestsuiteObject {
15
    MyWindow *_window;
16
}
17
@end
18
 
19
@interface MyFileDocument : MyDocument {
20
     struct {
21
        unsigned int autoClose:1;
22
        unsigned int openForUI:1;
23
        unsigned int isClosing:1;
24
        unsigned int needsDiskCheck:1;
25
        unsigned int isWritable:1;
26
        unsigned int representsFileOnDisk:1;
27
        unsigned int RESERVED:26;
28
    } _fdFlags;
29
}
30
@end
31
 
32
@interface MyTextFileDocument : MyFileDocument {
33
    TestsuiteObject *_textStorage;
34
    struct __tfdFlags {
35
        unsigned int immutable:1;
36
        unsigned int lineEnding:2;
37
        unsigned int isClosing:1;
38
        unsigned int settingsAreSet:1;
39
        unsigned int usesTabs:1;
40
        unsigned int isUTF8WithBOM:1;
41
        unsigned int wrapsLines:1;
42
        unsigned int usingDefaultLanguage:1;
43
        unsigned int RESERVED:23;
44
    } _tfdFlags;
45
    int _tabWidth;
46
    int _indentWidth;
47
}
48
@end
49
 
50
@interface MyRTFFileDocument : MyTextFileDocument
51
- (BOOL)readFromFile:(const char *)fileName ofType:(const char *)type;
52
@end
53
 
54
@implementation MyRTFFileDocument
55
- (BOOL)readFromFile:(const char *)fileName ofType:(const char *)type {
56
        if (_textStorage && fileName) {
57
            [_textStorage free];
58
            return YES;
59
        } else if (type) {
60
            _textStorage = [MyRTFFileDocument new];
61
            return NO;
62
        }
63
   return (fileName && type);
64
}
65
@end

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.