Re: Initing sublacss with superclass method

2025-07-18 Thread David Chisnall
On 18 Jul 2025, at 10:07, richard wrote: > > I don't know what OSX does, and having methods of a mutable class (other than > -copy...) return immutable instances is unusual/unintuitive, but from a > performance point of view (because character sets can consume a lot of > memory) it makes compl

Re: Initing sublacss with superclass method

2025-07-11 Thread David Chisnall
On 11 Jul 2025, at 14:17, Riccardo Mottola wrote: > > Hi, > > In Grr there is this code: > > wsAndTagClosing = [NSMutableCharacterSet > characterSetWithCharactersInString: @"/>"]; > > Clang warns me with: > > NSString+TolerantHTML.m:109:21: warning: incompatible pointer types > assigning

Re: JS engine(s) provided by gnustep

2023-09-10 Thread David Chisnall
Hi, As far as I know, no one has ported JavaScriptCore to GNUstep. It might not be a huge amount of work but that last time I looked at it (ten or so years ago) the build system for JSC conflated a lot of things in the Apple paths that would need disentangling if you want the Cocoa bits but ELF

Re: tools-windows-msvc runtime error

2023-07-18 Thread David Chisnall
Did you remember to disable incremental linking? Last time I tested it, LINK.EXE did work, but if you had incremental linking enabled (I think it’s on by default?) then it inserts random padding into the Objective-C runtime’s metadata sections, which corrupt various things. David > On 18 Jul 2

Re: Newer features in Objective C

2023-02-13 Thread David Chisnall
On 13/02/2023 00:52, Gregory Casamento wrote: Richard, On Wed, Feb 8, 2023 at 09:57 Richard Stallman > wrote: [[[ To any NSA and FBI agents reading my email: please consider    ]]] [[[ whether defending the US Constitution against all enemies,     ]]] [[[ forei

Re: Releases

2023-01-11 Thread David Chisnall
On 11/01/2023 10:40, Ivan Vučica wrote: There’s the GPG signing part that makes Github Actions less useful. That is: whether you want to use Github actions depends on where you want to store this rather secret key. (We should rotate the GPG key anyway, by the way; the one we use for gnustep mak

Re: Releases

2023-01-11 Thread David Chisnall
On 10/01/2023 19:42, Frederik Seiffert wrote: I’m not familiar with what needs to be done for releases (can you share a link to that Google Doc maybe?), but I’m wondering if released could be mostly automated on the GitHub Actions CI. This is on my to-do list for the runtime. It's something t

Re: No more support for GNUstep on FreeBSD

2022-10-27 Thread David Chisnall
On 26/10/2022 23:22, Riccardo Mottola wrote: I suppose you refer that you dropped the FreeBSD packages, but you do still maintain the runtime itself aso on FreeBSD and run the base test suite at least, right? I still maintain the runtime and have CI set up for Linux, Windows, and FreeBSD. Thi

Re: No more support for GNUstep on FreeBSD

2022-10-26 Thread David Chisnall
Hi, I dropped maintainership because I haven't actually used GNUstep or run FreeBSD on machines with displays for a while, so I wasn't able to test things well and didn't feel comfortable updating ports and claiming that they worked. I am happy to help anyone who wants to update the ports. I

Re: Using clang-format for formatting our code

2022-08-16 Thread David Chisnall
On 16/08/2022 11:18, Richard Frith-Macdonald wrote: On 16 Aug 2022, at 10:25, Hugo Melder wrote: Hi, Having a consistent code style is useful both for reading and writing code, especially for contributors. The GNUstep base framework currently has a .clang-format configuration file in th

Re: Automated Reference Counting (Was: Disappointed by GNUstep)

2022-02-08 Thread David Chisnall
On 08/02/2022 12:40, Richard Frith-Macdonald wrote: On 8 Feb 2022, at 11:01, David Chisnall wrote: I could write significantly simpler code that ran faster using Objective-C++ and ARC than I could without either and GNUstep would not accept the less-buggy and faster option. Refactoring

Re: Automated Reference Counting (Was: Disappointed by GNUstep)

2022-02-08 Thread David Chisnall
On 07/02/2022 20:21, Fred Kiefer wrote: Yes, ARC is a real improvement for application code. Not so much for libraries, as GNUstep is. Getting reference counting correct in procedural programming is not too hard in most case, but doing so declaratively just seems easier. You need to be very ca

Re: Building GUI with libobjc2 for Windows MSVC

2021-10-27 Thread David Chisnall
On 27/10/2021 11:39, Frederik Seiffert wrote: So I tested this some more, and after rebuilding libs-base as a whole (I had previously only rebuilt the relevant files) I’m getting the following linker errors: lld-link: error: : undefined symbol: Q^?LL} lld-link: error: : undefined symbol: ^{au

Re: Building GUI with libobjc2 for Windows MSVC

2021-10-25 Thread David Chisnall
Hi, If you can comment on the review and approve it, I can commit it (once I’ve fixed the clangformat warnings). David > On 23 Oct 2021, at 16:33, Frederik Seiffert wrote: > > Hi David, > >> Am 14.10.2021 um 13:59 schrieb David Chisnall : >> >> I be

Re: Regular expressions

2021-10-17 Thread David Chisnall
Apple’s docs are here: https://developer.apple.com/documentation/foundation/nsregularexpression The docs basically say ’this is a very thin wrapper around ICU’s regular expression code’, so the GNUstep code (which also wraps ICU) should be completely compatible. David > On 17 Oct 2021, at 19:

Re: Building GUI with libobjc2 for Windows MSVC

2021-10-14 Thread David Chisnall
On 14/10/2021 07:28, Frederik Seiffert wrote: Am 13.10.2021 um 19:13 schrieb David Chisnall mailto:gnus...@theravensnest.org>>: I believe that this is a bug in clang.  If the class is dllexported then the ivar offset variables for public / protected ivars should be dllexported as we

Re: Building GUI with libobjc2 for Windows MSVC

2021-10-13 Thread David Chisnall
On 13/10/2021 16:08, Frederik Seiffert wrote: Hi all, I’ve started looking into building libs-gui for Windows using libobjc2 and the MSVC ABI, and I’m down to one linker error that I’m unsure how to deal with: lld-link: error: undefined symbol: __objc_ivar_offset_NSFileWrapper._icon.☺ refere

Re: RISC-V Support for GNUstep

2021-10-08 Thread David Chisnall
On 07/10/2021 18:19, lars.sonchocky-helld...@hamburg.de wrote: well, I didn’t consider if you (and others) are aware of RISC-V Page two of the RISC-V spec says: > Contributors to all versions of the spec in alphabetical order (please > contact editors to suggest corrections): ...

Re: RISC-V Support for GNUstep

2021-10-07 Thread David Chisnall
Hi, QEMU is fast enough for development (that's how I did the AArch32, AArch64, and MIPS bring-up for libobjc2). I haven't written the assembly code paths for RISC-V because I don't have sufficient time + interest. I'm happy to review patches. If I have time, I'd like to refactor the exist

Re: Project-Center 0.6.2

2021-09-30 Thread David Chisnall
Hi, This code looks correct. It’s entirely possible that this is a bug in the runtime. Which runtime / ABI are you using? David > On 30 Sep 2021, at 17:50, Daniel Santos wrote: > > Hi, > > I am adding some changes to this, and have a question : > I am trying to add a method to PCProjectMa

Re: Attempting migration from travis-ci.org -> travis-ci.com

2021-07-09 Thread David Chisnall
ll scripts in a YAML sandwich anyways. Best, Niels -- Sent on the road Am 09.07.2021 um 10:29 schrieb David Chisnall : On 08/07/2021 13:35, Gregory Casamento wrote: I am seeing the following message when trying to migrate. David, do you own these configs on travis? I don't think

Re: Attempting migration from travis-ci.org -> travis-ci.com

2021-07-09 Thread David Chisnall
On 08/07/2021 13:35, Gregory Casamento wrote: I am seeing the following message when trying to migrate.   David, do you own these configs on travis? I don't think I own (or have ever touched) any of the Travis things. Niels set this up. For the runtime, I use Azure Pipelines for Windows / L

PSA: -f[no-]objc-encode-cxx-class-template-spec

2021-05-28 Thread David Chisnall
Hello everyone, Clang now provides an option -fobjc-encode-cxx-class-template-spec / -fno-objc-encode-cxx-class-template-spec to specify whether encodings that include C++ types with template parameters should be mangled in full or abbreviated to ^v. This is an ABI-breaking flag for the GNUst

Re: OpenBSD crashes - GWorkspace coredumps - mismatched C++ libraries

2021-05-21 Thread David Chisnall
Hi Riccardo, On 21/05/2021 15:14, Riccardo Mottola wrote: So indeed, once running, there is a mix of:     0f88c000 2f96f000 rlib  0    1   0 /usr/local/lib/libestdc++.so.19.0 vs:     08fb7000 28fbd000 rlib  0    2   0 /usr/lib/libc++.so.7.0     0ca18000 2ca1c000 rlib  0    3  

Re: GNUstep on Windows using Clang + MSVC ABI

2021-03-22 Thread David Chisnall
; Am 02.02.2021 um 12:29 schrieb David Chisnall : >> >>>>> lld-link: error: relocation against symbol in discarded section: >>>>> __start_.objcrt$SEL >>>>> >>> referenced by C:\msys64\tmp\conftest-78a937.o:(.objc_init) >>>&g

Re: ANN: GNUstep Windows MSVC Toolchain Scripts

2021-03-20 Thread David Chisnall
On 20 Mar 2021, at 10:49, Frederik Seiffert wrote: >> If you look at the build for libobjc2 on Windows, because we're using a >> CMake version that predates official support for either Objective-C or using >> the gcc-compatible driver, we have the same problem with /TP being added. >> We work

Re: ANN: GNUstep Windows MSVC Toolchain Scripts

2021-03-19 Thread David Chisnall
That's great news, congratulations! If you look at the build for libobjc2 on Windows, because we're using a CMake version that predates official support for either Objective-C or using the gcc-compatible driver, we have the same problem with /TP being added. We work around this with an undocu

Re: GNUstep on Windows using Clang + MSVC ABI

2021-02-09 Thread David Chisnall
On 09/02/2021 16:20, Richard Frith-Macdonald wrote: On 29 Jan 2021, at 16:28, David Chisnall wrote: We have given up supporting MinGW for snmalloc and I am considering optionally supporting snmalloc for Objective-C object allocations since it is much faster than the system malloc on

Re: libobjc2 on OpenBSD 6.8 build errors - C++ runtime not found

2021-02-07 Thread David Chisnall
Hi, > On 2 Feb 2021, at 14:22, Riccardo Mottola wrote: > > Hi, > > while I need to find some time to reply about NetBSD issues, I wanted to test > current base/gui/back on OpenBSD before our release and as I was also test > latest libobjc2. Since I had pending to upgraded to latest OpenBSD 6

Re: GNUstep on Windows using Clang + MSVC ABI

2021-02-02 Thread David Chisnall
On 01/02/2021 18:24, Frederik Seiffert wrote: Sorry everyone, looks like my earlier draft got sent out prematurely... Am 29.01.2021 um 17:28 schrieb David Chisnall mailto:gnus...@theravensnest.org>>: ld -r is pretty flaky everywhere.  LLD wasn't going to implement it at all and

Re: GNUstep on Windows using Clang + MSVC ABI

2021-01-29 Thread David Chisnall
On 29/01/2021 16:03, Frederik Seiffert wrote: Good news everyone: I’ve successfully built Base on Windows with Clang, libobjc2, and the MSVC ABI. This results in lib, DLL, and PDB files that should be usable in any Windows app without using the MinGW toolchain. *Very* nice! I’ve opened the

Re: Building GNUstep for Windows using Clang

2021-01-21 Thread David Chisnall
Hi, On 20/01/2021 20:30, Frederik Seiffert wrote: There’s one more issue though: both [Test class] and [Test new] (with "Test" being defined in the DLL) only return null pointers in my testing. However subclassing the Test root class locally works fine and allows instantiating the subclass, a

Re: Building GNUstep for Windows using Clang

2021-01-20 Thread David Chisnall
On 20/01/2021 15:54, Frederik Seiffert wrote: I confirmed with dumpbin /exports that the .lib and DLL both contain these $_OBJC_REF_CLASS_ symbols, so I really don’t understand why it’s not found. For reference, the $_OBJC_CLASS symbols are meant to be exported from a DLL, they are the canoni

Re: Building GNUstep for Windows using Clang

2021-01-19 Thread David Chisnall
Hi, On ELF platforms, there were some issues with the ld -r invocation that -base Additions did. Can you try just adding the .m files from Additions directly to the -base project and see if that makes the problem go away? I don't think that PE/COFF linkage really has any concept that maps t

Re: GNUstep base fails - libobjc2 on NetBSD x86

2021-01-06 Thread David Chisnall
Hi Ricardo, > On 3 Jan 2021, at 22:22, Riccardo Mottola wrote: > > /home/multix/code/libobjc2/Build/libobjc.so.4.6: text relocations > /home/multix/code/libobjc2/Build/libobjc.so.4.6: Cannot write-enable text > segment: Permission denied This is very odd. I don’t suppose that, when you modif

Re: Building GNUstep for Windows using Clang

2020-12-29 Thread David Chisnall
Hi all, Sorry for the delayed response, I’ve now had time to do a little bit of digging to understand what’s needed here. > On 22 Dec 2020, at 11:39, Frederik Seiffert wrote: > > Hi David and all, > >> Am 02.12.2020 um 20:20 schrieb David Chisnall : >> >> I

Re: Building GNUstep for Windows using Clang

2020-12-02 Thread David Chisnall
On 02/12/2020 19:01, Frederik Seiffert wrote: Am 01.12.2020 um 15:42 schrieb David Chisnall mailto:gnus...@theravensnest.org>>: Please can you try the attached patch? So the patch resolves the objc_begin_catch/objc_end_catch undefined symbols, but it doesn’t r

Re: Building GNUstep for Windows using Clang

2020-12-02 Thread David Chisnall
On 02/12/2020 16:24, David Wetzel wrote: Wouldn’t it be better to have a windows build on the website to download as a binary? There are Windows builds on the LLVM web site, you can install them via chocho on Windows. David

Re: Building GNUstep for Windows using Clang

2020-12-02 Thread David Chisnall
On 02/12/2020 09:36, Frederik Seiffert wrote: Am 01.12.2020 um 15:42 schrieb David Chisnall : Please can you try the attached patch? That was quick, thank you very much! I’m having some trouble building Clang via MINGW-packages (https://github.com/msys2/MINGW-packages/issues/7369), but I’ll

Re: Building GNUstep for Windows using Clang

2020-12-01 Thread David Chisnall
On 01/12/2020 12:40, Frederik Seiffert wrote: Am 30.11.2020 um 17:59 schrieb David Chisnall : I think this is a clang bug. I am probably guarding this on an MSVC target triple and not on SEH exceptions. Please can you file a clang bug and assign it to me? https://bugs.llvm.org

Re: Building GNUstep for Windows using Clang

2020-11-30 Thread David Chisnall
On 30/11/2020 16:52, Frederik Seiffert wrote: Some of these were also resolved by the PR (all the ones using OBJC_HOOK), so we’re just left with the exception handling ones (see above). Clang should be using SEH exception handling (not DWARF) according to verbose output, so it’s all pretty str

Re: Building GNUstep for Windows using Clang

2020-11-28 Thread David Chisnall
Thanks, It looks like you’ve already raised a PR to fix many of these. > On 26 Nov 2020, at 12:18, Frederik Seiffert wrote: >> Linking library libgnustep-base ... >> lld-link: warning: obj/libgnustep-base.obj/GSLocale.m.o: locally defined >> symbol imported: $_OBJC_CLASS_NSConstantString (defi

Re: Crash on Linux+Clang (NSTimer)

2020-11-19 Thread David Chisnall
Hi Riccardo, On 11/11/2020 23:26, Riccardo Mottola wrote: 76% tests passed, 44 tests failed out of 186 Thank you for reporting this. It looks as if there were some regressions in clang's metadata generation after 8. I saw a bunch of failures with clang 10, but the clang 12 nightlies seem s

Re: Crash on Linux+Clang (NSTimer)

2020-11-12 Thread David Chisnall
On 11/11/2020 23:26, Riccardo Mottola wrote: It improves things definitely. Now gui apps start again. Great! Here the test-suite results: 76% tests passed, 44 tests failed out of 186 That's exactly the same number as before and the tests still fail, even if in "real world" things improved?

Re: Crash on Linux+Clang (NSTimer)

2020-11-11 Thread David Chisnall
On 10/11/2020 23:33, Riccardo Mottola wrote: Hello David, thank you for the thorough analysis. If this is the case, you'll be able to see by looking at the value of the %rsp register and the current instruction.  Please can you:  - Use `show registers rsp` to let me know your current st

Re: Crash on Linux+Clang (NSTimer)

2020-11-09 Thread David Chisnall
Hi Riccardo, Nothing there looks obviously wrong, but the fact that you're getting a SEGV on an line that isn't explicitly accessing memory is interesting, as is the fact that this is in a `+initialize` method. I wonder if the code in `objc_msgSend` is leaving the stack incorrectly aligned?

Re: FreeBSD 12.2 cannot build back

2020-11-06 Thread David Chisnall
On 30/10/2020 18:31, Riccardo Mottola wrote: I wonder if this is a gnustep-make issue or a project issue? My guess is a -make issue. I suspect a newer LLD is more aggressive about rejecting incompatible options than older linkers. Where are -r and -rdynamic coming from? I found nothing ther

Re: openbsd macppc clang broken va_args(_, id)

2020-10-17 Thread David Chisnall
Hi, The PowerPC back end in clang is probably not well tested with Objective-C. If you have a reduced test case (i.e. something that *doesn’t* include any headers), it would be a good idea to file a bug against clang. The logic for setting up variadic call frames and handling va_arg are compl

Re: libobjc2-clang

2020-06-18 Thread David Chisnall
Thanks! > On 18 Jun 2020, at 12:52, Riccardo Mottola wrote: > > you guessed correctly and the protocol is also a very common one, NSCopying So, part of the question is whether this is the first time we’re seeing this or not. Can you stick a watchpoint on the isa pointer and restart it, see if

Re: libobjc2-clang

2020-06-18 Thread David Chisnall
Wow, I ignored email for a week and there are 50 unread emails in my GNUstep folder! Great to see some renewed interest and activity in the project! > On 17 Jun 2020, at 12:28, Riccardo Mottola wrote: > > Hi, > > Wolfgang Lux wrote: >>> Perhaps libobjc? how can I compile libobic2 in debug? I

Re: libobjc2-clang

2020-06-11 Thread David Chisnall
Hi, From the back trace, this looks as if it's the v2 ABI. The assert that's firing is here: https://github.com/gnustep/libobjc2/blob/ed8eec6c6aa82b049fc8292d0c247b8cd6c2fddc/protocol.c#L224 So it's finding an isa pointer for a protocol that is neither the one of the known protocol classes

Re: building libobjc2 fPIC issue and ccmake . effectiveness

2020-05-31 Thread David Chisnall
On 30 May 2020, at 22:51, Riccardo Mottola wrote: > > Hi David, > > thanks for the help. Got a little further, but not enough. > > On 5/29/20 2:00 PM, David Chisnall wrote: >> >> We shouldn't be linking libsupc++.a into libobjc.so. It sounds as if NetB

Re: building libobjc2 fPIC issue and ccmake . effectiveness

2020-05-29 Thread David Chisnall
Hi, On 29/05/2020 13:24, Riccardo Mottola wrote: Hi! I am trying to build libobjc2 on NetBSD Linking fails (standard system linker) [  0%] Linking C shared library libobjc.so /usr/bin/ld: /usr/lib/libsupc++.a(eh_globals.o): relocation We shouldn't be linking libsupc++.a into libobjc.so. It

Re: 24-bit retain count

2020-05-21 Thread David Chisnall
On 21/05/2020 15:37, Larry Campbell wrote: Currently gnustep-base raises an exception if the retain count exceeds 24 bits. There's a comment there: /* I've seen comments saying that some platforms only support up to * 24 bits in atomic locking, so raise an exception if we try to * go

Re: CMake 3.16

2020-05-17 Thread David Chisnall
On 16/05/2020 03:52, Ivan Vučica wrote: Current Debian stable, from July 2019, has 3.13. Debian testing, eventually becoming stable, has a 3.16 version in it. Therefore, I can easily use 3.16 myself. I know you're asking about/our/ /development/ machines, but for end-users, I'd say most Ubunt

CMake 3.16

2020-05-15 Thread David Chisnall
Hi all, At some point, I'd like to move libobjc2 to requiring at least CMake 3.16. 3.15 gained support for driving the GCC-flavoured clang on Windows with the Visual Studio ABI (older versions have to use clang-cl, which takes Visual Studio-compatible arguments). 3.16 gained native support

Re: libobjc2 on FreeBSD 12.1

2020-04-30 Thread David Chisnall
On 29/04/2020 22:00, Johannes Brakensiek wrote: Hi Dave, On 29 Apr 2020, at 22:18, David Wetzel wrote: /usr/home/dave/libobjc2/arc.mm:6:10: fatal error: 'third_party/robin-map/include/tsl/robin_map.h' file not found #include "third_party/robin-map/include/tsl/robin_map.h" you proba

Re: wasm backend

2020-04-16 Thread David Chisnall
On 16/04/2020 02:15, Jordan Schidlowsky wrote: https://twitter.com/lrz/status/1250453967957561344?s=21 I was also considering what it would take to build libobjc2 and base for wasm... I’m guessing (David) the objc_msgsend could be implemented?  Our game runs pretty thin and WebGL looks like

Re: Is the GNUstep Objective-C runtime to picky about method signatures?

2020-04-14 Thread David Chisnall
On 13/04/2020 15:23, Wolfgang Lux wrote: I've just recently come across a strange issue where the MySQL interface in the SQLClient library had stopped working with a weird error when using the libobjc2 runtime. In particular, the code was complaining that the backendQuery:recordType:listType:

Re: Next GNUstep release

2020-04-06 Thread David Chisnall
On 06/04/2020 12:56, Richard Frith-Macdonald wrote: Yes, thanks to Ivan. I have spent some time thinking about this, and while in the past I've argued against dropping ChangeLog (it's more convenient than the git logs, and of course is there for peple who download tarballs etc and don't have r

Re: Next GNUstep release

2020-04-06 Thread David Chisnall
I second that, thank you Ivan, but Fred your proposed solution is going to add more barriers to entry. ChangeLog files made sense when people were submitting patches on the mailing list and distributing code in tarballs. They were slightly anachronistic when CVS became standard for F/OSS pro

Incremental linking

2020-04-02 Thread David Chisnall
Hello, For various reasons, I have been reading the binutils ld documentation and there is a note that -Ur is needed instead of -r for incremental linking of C++ programs that contain constructors. I suspect that this is just badly written documentation - can someone try patching -make to us

Re: Building GNUstep for Windows using Clang

2020-03-06 Thread David Chisnall
On 05/03/2020 00:43, Frederik Seiffert wrote: Thanks David. I made some progress with this setup, although it does feel like we’re a bit off the beaten track here (again)... To get libobjc linking with the MinGW clang toolchain using LLD I had to create an import library (.dll.a) as outlined o

Re: Building GNUstep for Windows using Clang

2020-02-25 Thread David Chisnall
Hi, On 25/02/2020 16:55, Frederik Seiffert wrote: Hi all, I’m trying to build GNUstep for Windows using Clang and the 2.0 runtime ABI in order to have support for ARC and blocks, but I’m having some issues and general questions. I’ve successfully built libobjc2 (as well as libdispatch) in

Re: Issues subclassing NSMutableArray

2020-02-24 Thread David Chisnall
On 24/02/2020 07:38, mickb...@posteo.net wrote: Thanks for being patient with me: I am an expert C++ programmer, but with very few experience in Obj-C, even for a number of doubts like that one above. The key difference is that constructors and operator::new in C++ are special in the language

Re: base / libobjc2 link issues on FreeBSD 12

2020-02-20 Thread David Chisnall
On 20/02/2020 15:08, Riccardo Mottola wrote: freebsd 12.1 system compiler is clang 8.0.1 Yup, just checked, it is on my system too and it appears to work. I added these options because they are mentioned like this in your INSTALL file! My fault. I've fixed that now. Just as a test, I di

Re: base / libobjc2 link issues on FreeBSD 12

2020-02-20 Thread David Chisnall
On 20/02/2020 11:01, Riccardo Mottola wrote: cmake .. -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang -DCMAKE_ASM_COMPILER=clang -DCMAKE_ASM_FLAGS=-c clang++ is a C++ compiler, clang is a C compiler, so your CMAKE_CXX_COMPILER value looks wrong. Clang is the default compiler on FreeBSD,

Re: base / libobjc2 link issues on FreeBSD 12

2020-02-20 Thread David Chisnall
On 20/02/2020 07:19, Riccardo Mottola wrote: ld-elf.so.1: /System/Library/Libraries/libobjc.so.4.6: Undefined symbol "_ZNSt3__14cerrE" configure:7880: $? = 1 configure: program exited with status 1 This looks as if something is including a C++ header that is pulling in iostream, specifically t

Re: Instance variables overwritten by other assignments

2019-12-26 Thread David Chisnall
On 26 Dec 2019, at 01:32, Patryk Laurent wrote: > > > Hi David, > >> On Dec 25, 2019, at 01:19, David Chisnall wrote: >> >> Hi, >> >> This sounds like the issue with the Linux run-time linker and the 1.x >> non-fragile ABI. This can be fixe

Re: Instance variables overwritten by other assignments

2019-12-25 Thread David Chisnall
Hi, This sounds like the issue with the Linux run-time linker and the 1.x non-fragile ABI. This can be fixed by either: 1. Using pretty much any non-Linux OS, or 2. Using the 2.0 ABI and clang 8.0 or later. David > On 25 Dec 2019, at 04:02, Patryk Laurent wrote: > > Hi, > > At Gorm startup

Re: Working on XIB document support

2019-12-09 Thread David Chisnall
Hi Fred, I have some fairly recent .xibs in this project, which aims to be an OmniOutliner 3 clone (because I hate OmniOutliner 5 and 3 doesn't work on recent macOS): https://github.com/davidchisnall/OpenOutliner I haven't worked on it for a while (the undo stuff is completely broken and ne

Re: Debugging on Linux with non-fragile ABI?

2019-11-18 Thread David Chisnall
On 18/11/2019 11:04, Richard Frith-Macdonald wrote: Interesting. I'd very much like to see support for nonfragile objects in debuggers. How could this work for core dumps? Is it even possible to examine instance variables in core dumps when the nonfragile ABI is used? If someone wants to do

Re: Debugging on Linux with non-fragile ABI?

2019-11-18 Thread David Chisnall
Hi, Neither debugger currently knows anything about the non-fragile ABI. The Apple runtimes have a few introspection functions that are called without acquiring the necessary locks, which are intended to be called by the debugger, but someone needs to write the relevant code in either gdb or

Re: Gitflow proposal

2019-11-15 Thread David Chisnall
FWIW: Both internally and for public projects, at $WORK we use feature branches and PRs, so I concur with Fred here. GitHub lets administrators commit changes without review, which we sometimes do for things like tweaks to comments and so on, but generally don't for anything involving a code c

Re: What is the official bug tracker?

2019-11-12 Thread David Chisnall
On 12 Nov 2019, at 15:55, Gregory Casamento wrote: > > Github GitHub is the official bug tracker for libobjc2, but I believe that the consensus on the list for the remainder of the project was not to move to GitHub. I don’t particularly agree with that consensus, but I don’t believe that it

Re: Embedded blocks...

2019-10-29 Thread David Chisnall
On 29/10/2019 13:18, Ivan Vučica wrote: Naive question: What’s the problem #ifdefing out the code that depends on blocks when building on gcc? Locally? Not much. It means that anyone using clang and a GCC-built GNUstep will have some surprises, but they probably will anyway because the GCC

Re: Embedded blocks...

2019-10-29 Thread David Chisnall
On 27/10/2019 16:05, Gregory Casamento wrote: We are a GNU / FSF project.  Dropping support for GCC would be bad political mojo.   There is little we can do to bridge the gap other than doing these macros. I don't really understand how this works. GCC does not support a post-2005 dialect of

Re: Creating a block using the Macros....

2019-10-29 Thread David Chisnall
This is not possible in the general case. A block is a structure containing: - A pointer to the invoke function. - The type info for the call. - A set of references to captured variables including: - Helpers to destroy any captured variables. - Helpers to copy any captured variables. C

Re: libobjc2 relocation issue in aarch64

2019-07-17 Thread David Chisnall
I think the main hint is to use a dynamic library. Static linking is not well tested on any platform and the assembly code expects a PIC model. I’m happy to accept patches that improve the static linking experience, but it’s not something that I have any plans to work on personally. David >

Re: Why doesn’t the Unix makefile build work on windows with clang and msys2

2019-07-04 Thread David Chisnall
As I have repeatedly said: libobjc2 has no dependency on anything other than Windows. It needs a Windows build environment. It does not need MinGW. It does not need Cygwin. When you build it on Linux, it does not need WINE. Building it on Windows requires following a small number of document

Re: Errors compiling Libobjc2

2019-07-03 Thread David Chisnall
> On 2 Jul 2019, at 23:23, Riccardo Mottola wrote: > > Hi, > > On 2019-06-21 16:13:58 + David Chisnall > wrote: > >> On 21/06/2019 16:08, Riccardo Mottola wrote: >>> ld: error: undefined symbol: _Unwind_Resume >> It looks as if your toolchai

Re: Errors with NS_DURING et al exception handling when building with clang

2019-06-30 Thread David Chisnall
It sounds as if you’re missing the NSException.h header. NS_DURING is the ancient NeXT-era exception handling macro, which expands to @try { on a vaguely modern version of Objective-C (i.e. anything after about 2004, GCC or Clang). It shouldn’t be used in new code. David > On 30 Jun 2019, at

Re: Errors compiling Libobjc2

2019-06-21 Thread David Chisnall
On 21/06/2019 16:08, Riccardo Mottola wrote: ld: error: undefined symbol: _Unwind_Resume It looks as if your toolchain doesn't automatically link anything that provides the exception ABI. On most *NIX systems this comes from something called libgcc_s.so (which, on FreeBSD, is actually LLVM's

libobjc2 updates

2019-03-31 Thread David Chisnall
Hello the list, A kind volunteer gave me access to a BeagleBone Black running FreeBSD, so I have now been able to test the runtime with ARM (AArch32) and fixed a few issues: - [Probably FreeBSD specific], on ARM .init_array initialisers are run, but .ctors are not, so the compiler needs to

Re: Commit process to source tree on github

2019-03-23 Thread David Chisnall
Hi,The best thing to do for nontrivial changes (even if you do have commit access) is send a PR, because then someone can do pre-commit review.DavidOn 23 Mar 2019, at 00:42, Sergii Stoian wrote:Hello everybody,I plan to commit some changes/fixes to GUI and Back.My last GNUstep commit was long time

Re: libobjc2 compilation error with clang

2019-02-20 Thread David Chisnall
On 20/02/2019 07:14, Gregory Casamento wrote: I downloaded this when updating GNUstep.  If you look at the script in tools-scripts/update-gnustep it pulls the latest from all repos and then does a build with the script compile-gnustep.   This is simply to update my installation on Linux.  This

Re: libobjc2 compilation error with clang

2019-02-19 Thread David Chisnall
> On 19 Feb 2019, at 05:30, Gregory Casamento wrote: > > > > CMake Error at > /usr/share/cmake-3.7/Modules/FindPackageHandleStandardArgs.cmake:138 > (message): > Could NOT find kqueue (missing: KQUEUE_INCLUDE_DIRS) > Call Stack (most recent call first): > /usr/share/cmake-3.7/Modules/Fin

Re: Building on android....

2019-02-13 Thread David Chisnall
On 13/02/2019 14:41, Jordan Schidlowsky wrote: An NDK app can chose to bundle in a (c++_shared) library in your app, or you can link with a static (c++_static) standard library.   This is actually dependant on what setting you chose for this in your gradle build file, as gradle will pass that a

Re: Building on android....

2019-02-13 Thread David Chisnall
As I understand it (and this is based on looking a few years ago, so may be wrong now) the NDK doesn't provide any C++ environment by default, you have to explicitly opt in to one. It used to provide a choice of two, I don't know if it still does. David On 13/02/2019 12:41, Gregory Casamento

Re: Cutting a release?

2019-01-01 Thread David Chisnall
On 01/01/2019 11:44, Ivan Vučica wrote: Hi maintainers, If you want, I can spend some time cutting a release. It has been a while since the last one. Do we need a one? Are there critical bugs we fixed? Are there critical bugs blocking the release? There’s a pull request for icu-config remova

Re: assertion when using clang + libobjc2

2018-05-30 Thread David Chisnall
Hi Riccardo, Thank you for the report. Most of the tests don’t build with the GCC ABI, so that code path is not as well tested as the two newer ABIs - thank you for testing it, and please do file bugs if you hit any more issues. I believe this is now fixed in git. David > On 30 May 2018, at

Re: exceptions pulling an Abort Trap

2018-05-24 Thread David Chisnall
Hi Riccardo, This looks like what happens if you have no @catch block anywhere on the stack. If you can recompile the runtime, try sticking #define DEBUG_EXCEPTIONS in eh_personality.c - it will report where failures are happening. David > On 24 May 2018, at 10:34, Riccardo Mottola wrote: >

New ABI changes upstreamed (for ELF)

2018-05-22 Thread David Chisnall
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 Researc

Re: State of new abi

2018-05-20 Thread David Chisnall
Hi, Sorry for the delayed response - I was at a workshop last week and was a bit behind on email. On 13 May 2018, at 22:08, Ivan Vučica wrote: > > Hi, > > to confirm, is current libobjc2 master incompatible with current gnustep-base > master? > > Stjepan has been building GNUstep using the

Re: -make option to specify runtime?

2018-05-04 Thread David Chisnall
On 4 May 2018, at 10:42, Stjepan Brkić wrote: > >> Hello the list, >> >> For testing the runtime’s 2.0 ABI, I am patching my post-install Makefiles >> to set -fobjc-runtime=2.0 instead of whatever the default is (1.7?). Please >> can someone who understands how -make works add a configure-time

-make option to specify runtime?

2018-05-04 Thread David Chisnall
Hello the list, For testing the runtime’s 2.0 ABI, I am patching my post-install Makefiles to set -fobjc-runtime=2.0 instead of whatever the default is (1.7?). Please can someone who understands how -make works add a configure-time option so that you can specify the runtime version? David _

Tentative Objective-C Runtime Release Plan

2018-04-25 Thread David Chisnall
Hello, It has been a very long time since the 1.8 release of the runtime and there have been a lot of changes. My current plan is to do a 1.9 release soon, shortly followed by a 2.0 release. The 1.9 release wraps up all of the bug fixes and performance improvements from the last couple of yea

Re: Segmentation Faults - OpenBSD

2018-04-12 Thread David Chisnall
On 13 Apr 2018, at 00:31, Riccardo Mottola wrote: > > Hi, > > Richard just commited some promising fixes. > > Things seem better, but not stable. Here a summary of the current status. > OpenBSD seems fine on x86, on amd64 I get some strange issues that might not > be related > > FreeBSD/amd6

Re: Segmentation Faults - OpenBSD

2018-04-10 Thread David Chisnall
On 10 Apr 2018, at 07:13, Sebastian Reitenbach wrote: > > Hi, > > Am Dienstag, April 10, 2018 00:28 CEST, Riccardo Mottola > schrieb: > >> Hi, >> >> On 2018-04-07 18:04:12 + David Chisnall >> wrote: >> >>>> No idea if eit

Re: New ABI NSConstantString

2018-04-08 Thread David Chisnall
On 8 Apr 2018, at 16:27, Richard Frith-Macdonald wrote: >> I also note that a lot of the NSString method implementations are not well >> optimised. > > Yes ... because they are almost never used as we historically had unicode > string methods and latin1 string methods. I did optimise the mor

  1   2   3   4   5   6   7   8   9   10   >