* De: David O'Brien <[EMAIL PROTECTED]> [ Data: 2002-10-30 ]
        [ Subjecte: Re: Objective-C threads ]
> On Wed, Oct 30, 2002 at 09:23:53AM -0700, Chad David wrote:
> > 
> > Which brings us back to my original question... why are ObjC threads
> > disabled?  I don't much care about my other patches, I just want
> > to know who the 10 others are who will break if we enable threads,
> > and how to fix that breakage.  My minor patches were only posted because
> > you asked :).
> 
> I am not sure.  But for some reason you didn't provide a patch that would
> turn them on.  All you provided was a minor patches that really should go
> thru the offical FSF GCC repo in-route to FreeBSD.  So back to my
> original request.  Do you have a patch for changing this part of the way
> we configure and build ObjC that you feel might be wrong?

With a simple test program,

%%%

#include <objc/Object.h>
#include <pthread.h>
#include <stdio.h>

@interface Test : Object {
    const char *string;
}
-(void) set:(const char *)str;
-(void) print;
@end

@implementation Test
-(void) set:(const char *)str {
    string = str;
}
-(void) print {
    printf("Test: %s\n", string);
}
@end

id obj;

static void *thr(void *ctxt __unused)
{
        [obj print];
        [obj set:"Inside"];
        [obj print];
}

void main(void)
{
        pthread_t td;

        obj = [Test alloc];
        [obj set:"Threads"];
        pthread_create(&td, NULL, thr, NULL);
        pthread_yield();
        exit(0);
}
%%%

It seems a simple case doesn't break:

(jmallett@luna:~)121% cc test.m -lobjc -pthread
test.m: In function `main':
test.m:31: warning: return type of `main' is not `int'
(jmallett@luna:~)122% ./a.out
Test: Threads
Test: Inside

Simply with using thr-posix.c.

%%%
(jmallett@luna:~/gnu/lib/libobjc)128% cvs diff
cvs server: Diffing .
Index: Makefile
===================================================================
RCS file: /home/ncvs/src/gnu/lib/libobjc/Makefile,v
retrieving revision 1.14
diff -r1.14 Makefile
14c14
<       thr.c thr-single.c \
---
>       thr.c thr-posix.c \
%%%

Thanks,
juli.
-- 
Juli Mallett <[EMAIL PROTECTED]>       | FreeBSD: The Power To Serve
Will break world for fulltime employment. | finger [EMAIL PROTECTED]
http://people.FreeBSD.org/~jmallett/      | Support my FreeBSD hacking!

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to