Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
0a7a4fac
Commit
0a7a4fac
authored
Jul 16, 2001
by
Nicola Pero
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
New tests
From-SVN: r44040
parent
42d28de5
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
83 additions
and
0 deletions
+83
-0
gcc/testsuite/objc/execute/object_is_class.m
+42
-0
gcc/testsuite/objc/execute/object_is_meta_class.m
+41
-0
No files found.
gcc/testsuite/objc/execute/object_is_class.m
0 → 100644
View file @
0a7a4fac
/* Contributed by Nicola Pero - Tue Jul 3 10:55:21 BST 2001 */
#include <objc/objc.h>
#include <objc/objc-api.h>
#include <objc/Object.h>
/* This test demonstrate a failure in object_is_class which was fixed */
/* Create a class whose instance variables mirror the struct used for
Class structures in the runtime ... yes we're feeling evil today */
@interface
EvilClass
:
Object
{
Class
super_class
;
const
char
*
name
;
long
version
;
unsigned
long
info
;
}
@end
@implementation
EvilClass
-
(
id
)
init
{
self
=
[
super
init
];
/* The following one is used in the runtime to mark classes */
info
=
0x1L
;
return
self
;
}
@end
int
main
(
void
)
{
/* Create an object of our EvilClass */
EvilClass
*
evilObject
=
[
EvilClass
new
];
/* Now check that the object is not a class object */
if
(
object_is_class
(
evilObject
))
{
printf
(
"object_is_class failed
\n
"
);
abort
();
}
return
0
;
}
gcc/testsuite/objc/execute/object_is_meta_class.m
0 → 100644
View file @
0a7a4fac
/* Contributed by Nicola Pero - Tue Jul 3 10:55:21 BST 2001 */
#include <objc/objc.h>
#include <objc/objc-api.h>
#include <objc/Object.h>
/* This test demonstrate a failure in object_is_meta_class which was fixed */
@interface
EvilClass
:
Object
{
Class
super_class
;
const
char
*
name
;
long
version
;
unsigned
long
info
;
}
@end
@implementation
EvilClass
-
(
id
)
init
{
self
=
[
super
init
];
/* The following one is used in the runtime to mark meta classes */
info
=
0x2L
;
return
self
;
}
@end
int
main
(
void
)
{
/* Create an object of our EvilClass */
EvilClass
*
evilObject
=
[
EvilClass
new
];
/* Now check that the object is not a meta class object */
if
(
object_is_meta_class
(
evilObject
))
{
printf
(
"object_is_meta_class failed
\n
"
);
abort
();
}
return
0
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment