Mercurial > cpython-lru_cache-weakref
annotate Python/dynload_next.c @ 60129:6df6c19fbae3 legacy-trunk
Issue #8276: PyEval_CallObject() is now only available in macro form. The
function declaration, which was kept for backwards compatibility reasons,
is now removed (the macro was introduced in 1997!).
| author | Antoine Pitrou <solipsis@pitrou.net> |
|---|---|
| date | Thu, 01 Apr 2010 16:42:11 +0000 |
| parents | f08529879db1 |
| children | fd25030223b0 94f64f11fdd0 |
| rev | line source |
|---|---|
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
1 |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
2 /* Support for dynamic loading of extension modules on Mac OS X |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
3 ** All references to "NeXT" are for historical reasons. |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
4 */ |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
5 |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
6 #include "Python.h" |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
7 #include "importdl.h" |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
8 |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
9 #include <mach-o/dyld.h> |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
10 |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
11 const struct filedescr _PyImport_DynLoadFiletab[] = { |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
12 {".so", "rb", C_EXTENSION}, |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
13 {"module.so", "rb", C_EXTENSION}, |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
14 {0, 0} |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
15 }; |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
16 |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
17 /* |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
18 ** Python modules are Mach-O MH_BUNDLE files. The best way to load these |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
19 ** is each in a private namespace, so you can load, say, a module bar and a |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
20 ** module foo.bar. If we load everything in the global namespace the two |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
21 ** initbar() symbols will conflict. |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
22 ** However, it seems some extension packages depend upon being able to access |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
23 ** each others' global symbols. There seems to be no way to eat our cake and |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
24 ** have it, so the USE_DYLD_GLOBAL_NAMESPACE define determines which behaviour |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
25 ** you get. |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
26 */ |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
27 |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
28 #ifdef USE_DYLD_GLOBAL_NAMESPACE |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
29 #define LINKOPTIONS NSLINKMODULE_OPTION_BINDNOW|NSLINKMODULE_OPTION_RETURN_ON_ERROR |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
30 #else |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
31 #define LINKOPTIONS NSLINKMODULE_OPTION_BINDNOW| \ |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
32 NSLINKMODULE_OPTION_RETURN_ON_ERROR|NSLINKMODULE_OPTION_PRIVATE |
|
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
33 #endif |
|
11618
528559a0b2f2
Cleanup patches from Greg Stein:
Guido van Rossum <guido@python.org>
parents:
11599
diff
changeset
|
34 dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname, |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
35 const char *pathname, FILE *fp) |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
36 { |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
37 dl_funcptr p = NULL; |
|
11618
528559a0b2f2
Cleanup patches from Greg Stein:
Guido van Rossum <guido@python.org>
parents:
11599
diff
changeset
|
38 char funcname[258]; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
39 NSObjectFileImageReturnCode rc; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
40 NSObjectFileImage image; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
41 NSModule newModule; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
42 NSSymbol theSym; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
43 const char *errString; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
44 char errBuf[512]; |
|
11618
528559a0b2f2
Cleanup patches from Greg Stein:
Guido van Rossum <guido@python.org>
parents:
11599
diff
changeset
|
45 |
|
21077
379fc66f4c96
Use PyOS_snprintf instead of sprintf.
Jeremy Hylton <jeremy@alum.mit.edu>
parents:
19178
diff
changeset
|
46 PyOS_snprintf(funcname, sizeof(funcname), "_init%.200s", shortname); |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
47 |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
48 #ifdef USE_DYLD_GLOBAL_NAMESPACE |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
49 if (NSIsSymbolNameDefined(funcname)) { |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
50 theSym = NSLookupAndBindSymbol(funcname); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
51 p = (dl_funcptr)NSAddressOfSymbol(theSym); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
52 return p; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
53 } |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
54 #endif |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
55 rc = NSCreateObjectFileImageFromFile(pathname, &image); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
56 switch(rc) { |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
57 default: |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
58 case NSObjectFileImageFailure: |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
59 case NSObjectFileImageFormat: |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
60 /* for these a message is printed on stderr by dyld */ |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
61 errString = "Can't create object file image"; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
62 break; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
63 case NSObjectFileImageSuccess: |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
64 errString = NULL; |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
65 break; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
66 case NSObjectFileImageInappropriateFile: |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
67 errString = "Inappropriate file type for dynamic loading"; |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
68 break; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
69 case NSObjectFileImageArch: |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
70 errString = "Wrong CPU type in object file"; |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
71 break; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
72 case NSObjectFileImageAccess: |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
73 errString = "Can't read object file (no access)"; |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
74 break; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
75 } |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
76 if (errString == NULL) { |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
77 newModule = NSLinkModule(image, pathname, LINKOPTIONS); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
78 if (newModule == NULL) { |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
79 int errNo; |
|
26764
6b31b26e418d
Squashed compiler warnings by adding casts, making sure prototypes are in
Jack Jansen <jack.jansen@cwi.nl>
parents:
21911
diff
changeset
|
80 const char *fileName, *moreErrorStr; |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
81 NSLinkEditErrors c; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
82 NSLinkEditError( &c, &errNo, &fileName, &moreErrorStr ); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
83 PyOS_snprintf(errBuf, 512, "Failure linking new module: %s: %s", |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
84 fileName, moreErrorStr); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
85 errString = errBuf; |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
86 } |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
87 } |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
88 if (errString != NULL) { |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
89 PyErr_SetString(PyExc_ImportError, errString); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
90 return NULL; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
91 } |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
92 #ifdef USE_DYLD_GLOBAL_NAMESPACE |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
93 if (!NSIsSymbolNameDefined(funcname)) { |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
94 /* UnlinkModule() isn't implemented in current versions, but calling it does no harm */ |
|
32707
f08529879db1
Fix for 838140: don't call NSUnlinkModule when we fail to find our
Jack Jansen <jack.jansen@cwi.nl>
parents:
26764
diff
changeset
|
95 /* NSUnLinkModule(newModule, FALSE); removed: causes problems for ObjC code */ |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
96 PyErr_Format(PyExc_ImportError, |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
97 "Loaded module does not contain symbol %.200s", |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
98 funcname); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
99 return NULL; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
100 } |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
101 theSym = NSLookupAndBindSymbol(funcname); |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
102 #else |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
103 theSym = NSLookupSymbolInModule(newModule, funcname); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
104 if ( theSym == NULL ) { |
|
32707
f08529879db1
Fix for 838140: don't call NSUnlinkModule when we fail to find our
Jack Jansen <jack.jansen@cwi.nl>
parents:
26764
diff
changeset
|
105 /* NSUnLinkModule(newModule, FALSE); removed: causes problems for ObjC code */ |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
106 PyErr_Format(PyExc_ImportError, |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
107 "Loaded module does not contain symbol %.200s", |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
108 funcname); |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
109 return NULL; |
|
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
110 } |
|
21860
20bc4ff1215c
A new dynload_next, which actually only works on OSX but isn't renamed yet.
Jack Jansen <jack.jansen@cwi.nl>
parents:
21276
diff
changeset
|
111 #endif |
|
21863
cbf41925dd3e
Got rid of an extra level of {} and funny formatting that was still
Jack Jansen <jack.jansen@cwi.nl>
parents:
21860
diff
changeset
|
112 p = (dl_funcptr)NSAddressOfSymbol(theSym); |
|
11599
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
113 return p; |
|
78fe87ce0ded
The old platform-specific contents of importdl.c, broken down into one
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
114 } |
