theraven
bad36445e3
Improve efficiency of dtable updates from categories.
...
Make +initialize sending exception safe.
15 years ago
theraven
9fd1d26c00
Removed debugging statement that should not have been added in the first place...
15 years ago
theraven
af85d8496d
Actually wait for +initialize to finish before allowing any thread to send a message to a class (I broke this when I rewrote the dtable code to use a per-class lock - the lookup forgot to acquire the correct mutex.)
15 years ago
theraven
d7056f6de2
Simplify @synchronize() and improve efficiency (space and time).
15 years ago
theraven
5ea9367f3d
Tweak alignment.
15 years ago
theraven
987ab88a94
Don't do hidden-class transforms for classes, just dangle the look-aside data off the class structure.
...
Individually lock classes so that +initialize can be sent concurrently to two different classes in two different threads.
15 years ago
theraven
24de067017
Default to building without the legacy APIs, now GNUstep doesn't require them.
15 years ago
theraven
32e6715106
Started updating ANNOUNCE for the next release.
15 years ago
theraven
e198597bd3
Added support for associative references. Modified sync code to use this.
15 years ago
theraven
d51500184c
More cleanups. Stop using __ identifiers for internal stuff now that it's properly marked private and we don't have to worry about conflicts.
15 years ago
theraven
6c7cf4a5a6
Add visibility attributes on all internal functions so that we aren't ever exporting them outside of libobjc.
15 years ago
theraven
c2f572f9a1
Set the makefiles in trunk back to non-release mode.
15 years ago
theraven
c83f585bd3
Added note about aliases to release announcement.
15 years ago
theraven
442e2e0a07
1.3 release announcement.
15 years ago
theraven
b76b4be925
Disable selector type mismatch warnings, for the release.
15 years ago
thebeing
901c3b6a1c
Fix linking libobjcxx when libobjc has not yet been installed.
15 years ago
theraven
95ef5a93f9
Always use the first version of a class that's loaded twice until the merging code is a bit better tested.
15 years ago
theraven
23b26820f5
Make it easier to suppress mismatched selector warnings. It's useful for the runtime to tell you when your code is bad. Not so useful for it to tell you when someone else's code is bad...
15 years ago
theraven
95404fc7ba
Tidied up Makefile.
15 years ago
theraven
600e970dea
Separate ObjC++ support out into libobjcxx. Now code that doesn't need ObjCXX support can safely ignore it again.
15 years ago
theraven
7e71ffe24d
Use correct pthread flag on OpenBSD.
...
Patch by Sebastian Reitenbach!
15 years ago
theraven
7a7fce3c97
Link with $(CXX) instead of ld, so that C++ linking is done properly.
15 years ago
theraven
3eb0ecb96b
Ensure that the superclass is registered when testing for protocol conformance.
15 years ago
theraven
28b1db6f6e
Make sure that -fPIC is specified for C++ files too.
15 years ago
theraven
06ff4be6a9
More build system tidies.
15 years ago
theraven
1d071bf4c1
Create the lib dir if it doesn't exist (never required in normal usage, but useful when installing to a temporary directory).
15 years ago
theraven
01558d3c4e
Brought Makefile up to compatibility with GNUmakefile.
15 years ago
theraven
496c66bd0b
Fix linker errors.
15 years ago
theraven
1ecd07d637
Don't use __attribute__((constructor)) for creating things that are called by
...
other constructors.
15 years ago
theraven
f330ba0f36
Remove thread-local variable that isn't actually used...
15 years ago
thebeing
62afedcbaf
Add a small test for alias registration.
15 years ago
thebeing
ee7817cf57
Implement a hook that allows the compiler to register the aliases used with the
...
@compatibility_alias directive so that they can be resolved at runtime.
15 years ago
theraven
ed9d0f33c9
Actually install the header that's referenced.
15 years ago
theraven
4ee1b1f4ac
Test first, then commit...
15 years ago
theraven
98c43c06b3
Some tweaks to ANNOUNCE.
15 years ago
theraven
62536ce247
Added more header comments.
15 years ago
theraven
faa741b133
Added some header documentation for runtime functions.
15 years ago
theraven
ff21fcc43d
Added C++ include guards to capabilities.h
15 years ago
theraven
7336df75bc
Added some more comments, C++ include guards around runtime.h.
15 years ago
theraven
2c21235cc2
Fix multiple include guard in capabilities.h.
15 years ago
theraven
7e465eb325
Tweak building without ObjC++ support a bit.
15 years ago
theraven
73e1e2934b
It turns out that Apple chose some confusing and non-intuitive semantics for
...
catching Objective-C objects in C++ catch statements (i.e. they follow
Objective-C semantics, not C++ semantics, irrespective of whether you use C++
or ObjC syntax). We now default to Apple-compatible behaviour, but provide a
function that allows users to select the sane semantics if they prefer.
Added a capability bit for the unified exception model, so code can require it.
This is not really required, since any code using it will link against the
ObjC++ personality function and will get a linker failure if it isn't supported.
Also enabled Objective-C++ stuff by default. This adds a dependency on the C++
standard library (actually on libsupc++, but GNUstep Make wants to link against
libstd++ anyway), which is not ideal. It can be disabled with:
$ gmake objectiver-cxx=no
I suggest that this is only done by people who know that they will never want
Objective-C++ support.
15 years ago
theraven
fc19309f1b
Added documentation on the new EH stuff.
15 years ago
theraven
6a2657ff6c
Comment out a function that's only used for debugging. Not removed, because I'll probably break things and need it again...
15 years ago
theraven
d3b1038a8d
Updated ANNOUNCE for (not yet released) 1.3 release.
15 years ago
theraven
5a75ca53ff
Eliminate some redundant copying.
15 years ago
theraven
3ccb4240cc
Fix getting Objective-C objects out of C++ exceptions.
15 years ago
theraven
e0719a9c62
Added Objective-C++ exception handling support. Allows throwing Objective-C objects with throw or @throw and catching them with catch() or @catch.
15 years ago
theraven
f9abfb022a
Added some documentation regarding the foreign exception support in libobjc2.
15 years ago
theraven
fc28010846
...but don't catch foreign exceptions in catch statements for the boxing class's superclass.
15 years ago