Hello all,

As of today, the clang changes to support the new ABI are upstream in the LLVM 
repo, so you can specify -fobjc-runtime=gnustep-2.0 and get the new ABI with 
any clang built from the master branch after today.

The new ABI is currently ELF-only (though as I now work at Microsoft Research, 
I have access to Windows machines quite easily, and as Microsoft is shipping 
the runtime I hope to have some time to work on the PE/COFF port quite soon).

The -base changes mostly relate to the new constant string representation.  
Unfortunately, these exposed bugs in the NSString implementations of various 
methods related to unicode, and I then went down a rabbit hole of trying to fix 
these by providing an ICU version.  I don’t know what the correct approach here 
is, but we can’t merge the (fairly simple) changes to support the new constant 
string representation without introducing a number of regressions in the test 
suite.  Help fixing this would be appreciated!

More testing is also very welcome!  The new ABI is *probably* stable now, but 
I’m planning on waiting until the LLVM 7.0 release before making any real 
guarantees about compatibility.  I hope to do the 2.0 release of the runtime at 
around the same time as the LLVM 7.0 release.

David


_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev

Reply via email to