<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/94027>94027</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            Clang crashes when compiling Objective C++ BLOCK capturing and using outer ivar in a class member initializer
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          kar8uncle
      </td>
    </tr>
</table>

<pre>
    Clang crashes when compiling the following program: `clang++ -fobjc-arc -std=c++11 -o main.o main.mm`

```
#import <Foundation/Foundation.h>

@interface Foo : NSObject
@end

@implementation Foo
{
    id _bar;
}

- (void)captureBar
{
    (void) ^{
 struct
        {
            id bar = _bar;
        } fb;
 };
}
@end
```
## Version
This clang came with Xcode 15.2.
```
Apple clang version 15.0.0 (clang-1500.1.0.2.5)
Target: arm64-apple-darwin23.5.0
Thread model: posix
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8U0vP6yYQ_TV4M7KF8SPJwos8rjetehetqu6qsZnY3IKxACdtf31F7DT3e-iiKMDMnOPDwEHv1TARNaw6seqS4BJG65q_0O2XqdeUdFb-05w1TgP0Dv1IHu4jTdBbMyutpgHCSHC1Wtt73M3ODg4NK47Aat5HIBMnJk6QXm33rU_R9ZD6IFlx6ddMnkNqwaCasm0yhtWc8Qvjx-2_5ttv3YpCmdm6AKw4t3aZJAZlJyba1yYbWfHlDUfJ1RTIXbEnaK2FqPGXX79236gP_5fQJN-DzKzJ0BQetBG5pXandQEAoCT82aFjxemZvHxPkwIT-5tVkolDj3NYHJ3QfcLzKgNWfXmlfHDLUyVs4w3wOZSEDh2w4vJW0At0gWv3CkehH0V_34cPrWeigN_J-djxR-y3UXno1zeChuCuwgh_9FYS5FUmsk-JjvOsaUPdVrZYzTMem_CIp3nFeZZnPBNZxcRh-xq6gUK8PHSmLlOMRKlEd1eTKLIq409VjlCCsZJ0rJ6tV3-_k5LIppCH4oAJNfku3-X7sqrrZGy6Pe_quqw6Lgn3V6rLfS32Zdkj8ithnqhGcFHyqsjzQynKOqvFlUsqhex33Q47GXtoUOlM65vJrBsS5f1CzaHkYpdo7Ej7h-uE2FwiogFdE-vTbhk8K7lWPvgXQ1BB04_duD5ndSM4b747_fz1_BOsry5W4CRh8XFll0AO1A0dqAkwXob3YMh0MTypoFCrf8kli9PNGMLsWXFkomWiHVQYly7rrWGijfq2KZ2dffhJtI_jeiba9cS3RvwXAAD__4zrSUE">