Working LDC iOS (iPhone) on github

Kai Nacke kai at redstar.de
Wed Feb 26 10:11:41 PST 2014


On Tuesday, 18 February 2014 at 08:24:30 UTC, Dan Olson wrote:
> "David Nadlinger" <code at klickverbot.at> writes:
>
>> On 17 Feb 2014, at 18:04, Dan Olson wrote:
>>> David, a question.  I read
>>> https://github.com/ldc-developers/ldc/issues/489.
>>>
>>> What is the symptom?  The iOS sjlj unwinder is different, but 
>>> I'd
>>> like a
>>> test case to see.
>>
>> The ARM EABI (at least as far as the GCC runtime goes) doesn't 
>> use
>> SLJL, but DWARF EH with a slightly different unwinding process.
>>
>> I don't have reduced test cases for the remaining failures,
>> unfortunately. It's just clear that EH is still not working 
>> correctly
>> in all cases when running the Phobos test suite (you'll see 
>> crashes in
>> _Unwind_RaiseException or related druntime abort()s).
>>
>
> Hopefully when I run the phobos unittests in a day or two on 
> iOS, can
> see if I run into anything related.  When you say Phobos test 
> suite, do
> you just mean compiling phobos with -unittest and running all 
> the
> unittest blocks?
>
> I don't know a way to run a bunch of little unittest programs 
> on iOS, so
> cooked up an approach that just bakes all unittests into one 
> app.  Maybe
> there are better ways, if someone with iOS dev experience has 
> some
> ideas, I'd like to know.
>
> Recipe:
> - Add -unittest to druntime library build flags.
>
> - Have main program iterate over ModuleInfo, calling unitTest 
> func if
>    set.
>
> - Link with flag -force_load libdruntime-ldc-debug.a to pull 
> every obj
>    file into exe.
>
> 33 unittests ran and passed.  Two failed because they don't 
> compile with
> -unittest flag.  I will have to take an inventory because a 
> simple grep
> of druntime counts 38 files with 'unittest'.
>
> thread.d fails to compile because I didn't finish fiber support 
> for iOS,
>
> and then this wierd one:
>
> /Users/dan/projects/ldc/ldc-git/runtime/druntime/src/rt/aaA.d(565): 
> Error: Function type does not match previously declared 
> function with the same mangled name: _d_assocarrayliteralTX

This is one of the release blocking bugs. Please just ignore for 
now.

Regards,
Kai


More information about the digitalmars-d-ldc mailing list