Oh wow...  I have looped in David Chisnall here... I believe this is also
something that needs to be reported on the clang bug tracker as it COULD be
a code generation issue.

GC

On Fri, Sep 16, 2022 at 9:32 AM Andreas Fink <[email protected]> wrote:

> its not that clang crashed while compiling. Its the binary it produced
> which crashes.
> This shows up when you do a simple "make test" after compiling libobjc2.
>
> Attached is a console output of my test system once with CC=clang (which
> is clang-11) and once with CC=clang-16
> As you can see all tests pass with clang-11 and with clang-16, more than
> half are failing
>
> 57% tests passed, 86 tests failed out of 198
>
> Total Test time (real) =  12.16 sec
>
> The following tests FAILED:
>       1 - alias (SEGFAULT)
>       2 - alias_optimised (SEGFAULT)
>       5 - alignTest (SEGFAULT)
>       6 - alignTest_optimised (SEGFAULT)
>       9 - AllocatePair (SEGFAULT)
>      10 - AllocatePair_optimised (SEGFAULT)
>      13 - ARCTest_arc (SEGFAULT)
>      14 - ARCTest_arc_optimised (SEGFAULT)
>      17 - AssociatedObject (SEGFAULT)
>      18 - AssociatedObject_optimised (SEGFAULT)
>      21 - AssociatedObject2 (SEGFAULT)
>      22 - AssociatedObject2_optimised (SEGFAULT)
>      25 - BlockImpTest (SEGFAULT)
>      26 - BlockImpTest_optimised (SEGFAULT)
>      33 - ConstantString (SEGFAULT)
>      34 - ConstantString_optimised (SEGFAULT)
>      37 - Category (SEGFAULT)
>      38 - Category_optimised (SEGFAULT)
>      41 - ExceptionTest (SEGFAULT)
>      42 - ExceptionTest_optimised (SEGFAULT)
>      45 - FastARC (SEGFAULT)
>      46 - FastARC_optimised (SEGFAULT)
>      49 - FastARCPool (SEGFAULT)
>      50 - FastARCPool_optimised (SEGFAULT)
>      53 - FastRefCount (SEGFAULT)
>      54 - FastRefCount_optimised (SEGFAULT)
>      57 - Forward (SEGFAULT)
>      58 - Forward_optimised (SEGFAULT)
>      61 - ManyManySelectors (SEGFAULT)
>      62 - ManyManySelectors_optimised (SEGFAULT)
>      65 - NestedExceptions (SEGFAULT)
>      66 - NestedExceptions_optimised (SEGFAULT)
>      69 - PropertyAttributeTest (SEGFAULT)
>      70 - PropertyAttributeTest_optimised (SEGFAULT)
>      81 - PropertyIntrospectionTest2_arc (Subprocess aborted)
>      82 - PropertyIntrospectionTest2_arc_optimised (Subprocess aborted)
>      85 - ProtocolCreation (Subprocess aborted)
>      86 - ProtocolCreation_optimised (Subprocess aborted)
>      89 - ResurrectInDealloc_arc (SEGFAULT)
>      90 - ResurrectInDealloc_arc_optimised (SEGFAULT)
>      93 - RuntimeTest (SEGFAULT)
>      94 - RuntimeTest_optimised (SEGFAULT)
>      97 - SuperMethodMissing (SEGFAULT)
>      98 - SuperMethodMissing_optimised (SEGFAULT)
>     105 - WeakRefLoad (SEGFAULT)
>     106 - WeakRefLoad_optimised (SEGFAULT)
>     109 - WeakReferences_arc (SEGFAULT)
>     110 - WeakReferences_arc_optimised (SEGFAULT)
>     117 - ivar_arc (SEGFAULT)
>     118 - ivar_arc_optimised (SEGFAULT)
>     121 - ivar_atomic (SEGFAULT)
>     122 - ivar_atomic_optimised (SEGFAULT)
>     125 - IVarOverlap (SEGFAULT)
>     126 - IVarOverlap_optimised (SEGFAULT)
>     129 - IVarSuperclassOverlap (Subprocess aborted)
>     130 - IVarSuperclassOverlap_optimised (Subprocess aborted)
>     133 - objc_msgSend (Subprocess aborted)
>     134 - objc_msgSend_optimised (Subprocess aborted)
>     141 - NilException (Subprocess aborted)
>     142 - NilException_optimised (Subprocess aborted)
>     145 - MethodArguments (Subprocess aborted)
>     146 - MethodArguments_optimised (Subprocess aborted)
>     149 - zeroSizedIVar (Subprocess aborted)
>     150 - zeroSizedIVar_optimised (Subprocess aborted)
>     153 - exchange (SEGFAULT)
>     154 - exchange_optimised (SEGFAULT)
>     165 - setSuperclass (SEGFAULT)
>     166 - setSuperclass_optimised (SEGFAULT)
>     169 - BoxedForeignException (SEGFAULT)
>     170 - BoxedForeignException_optimised (SEGFAULT)
>     177 - category_properties (Subprocess aborted)
>     178 - category_properties_optimised (Subprocess aborted)
>     179 - CXXExceptions (SEGFAULT)
>     180 - CXXExceptions_optimised (SEGFAULT)
>     187 - ObjCXXEHInterop (SEGFAULT)
>     188 - ObjCXXEHInterop_optimised (SEGFAULT)
>     189 - ObjCXXEHInterop_legacy (SEGFAULT)
>     190 - ObjCXXEHInterop_legacy_optimised (SEGFAULT)
>     191 - ObjCXXEHInteropTwice (SEGFAULT)
>     192 - ObjCXXEHInteropTwice_optimised (SEGFAULT)
>     193 - ObjCXXEHInteropTwice_legacy (SEGFAULT)
>     194 - ObjCXXEHInteropTwice_legacy_optimised (SEGFAULT)
>     195 - ObjCXXEHInterop_arc (SEGFAULT)
>     196 - ObjCXXEHInterop_arc_optimised (SEGFAULT)
>     197 - ObjCXXEHInterop_arc_legacy (SEGFAULT)
>     198 - ObjCXXEHInterop_arc_legacy_optimised (SEGFAULT)
>
>
>
> Gregory Casamento wrote on 16.09.22 14:58:
>
> Can you post the error?   Also clang will produce scripts and a sample bit
> of the code that failed.  It would be useful to post that to their bug
> tracker.
>
> On Fri, Sep 16, 2022 at 01:47 Andreas Fink <[email protected]> wrote:
>
>> FYI,
>>
>> The current clang-16 in the debian 10 repository does not work when
>> compiling libobjc2
>> Compiling works but most of the tests segfault
>>
>> Changing to clang-11 everything works
>> clang-9 also works.
>>
>> What has changed in the compiler that it breas Objc?
>>
>>
>> --
> Gregory Casamento
> GNUstep Lead Developer / OLC, Principal Consultant
> http://www.gnustep.org - http://heronsperch.blogspot.com
> https://www.patreon.com/bePatron?u=352392 - Become a Patron
> https://gf.me/u/x8m3sx - My GNUstep GoFundMe
> https://teespring.com/stores/gnustep - Store
>
>
>

-- 
Gregory Casamento
GNUstep Lead Developer / OLC, Principal Consultant
http://www.gnustep.org - http://heronsperch.blogspot.com
https://www.patreon.com/bePatron?u=352392 - Become a Patron
https://gf.me/u/x8m3sx - My GNUstep GoFundMe
https://teespring.com/stores/gnustep - Store

Reply via email to