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

    <tr>
        <th>Summary</th>
        <td>
            [clang][ExtractAPI] Declaration fragments should show types as shown in the source code.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          daniel-grumberg
      </td>
    </tr>
</table>

<pre>
    For Objective-C APIs that use typedefs, ExtractAPI emits declarations with the original’s type’s name rather than its typedef name.

For example, in:
```
typedef struct MyStruct * MyTypeDef;

void foo(MyTypeDef x) {}
```

The declaration for foo is the following:
```
void foo(struct MyStruct * x)
```

Rather than:
```
void foo(MyTypeDef x)
```

Resolving this issue will align the declaration we generate to the one that’s in the original source code.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMU81uozAQfprhMkoEJobkwCEpjdRDtdVuX8CYwXhl7Mg2SfP2K0i6pVK3WimyYwzfz8x8IgStLFEF_AC8TsQYe-erVlhNZqX8ODTkVdK49lodnccfzW-SUZ9p9YD7l6eAsRcRx0AYrydqqQvAHvDxLXoh4_7lCWnQMWBL0ggvonY24EXHHmNP6LxW2goDjwy2Kex2YUZZHK0YCL2IPfmJyeIEdmeaL9eQ1pDub-skkN7EcDI0qdAW8vsNFOn9Nx_fEUL0o4z4fP11-wNsj8_X1-uJauogPyzBz0632DkHbPv3FXwDtkMoD1DWXxLd1teelhXAzvkJCXWYy9A5Y9xFW_UvuQvqrxRPIr5h__lRvv8g-OztO1gKzpy1VRh7HVCHMBJetDEojFZ2drY0fSFUZMmLSBjdrf-W5vlZNFzbT5OBwY1eEkrX0jppq7zd5TuRUJUVZbnlvMx3SV9lmZRtWmx2kjhjvNsIWfCi68qiywpZZImuWMryNE_zjKcs264p47Ls8o0UYpML3sAmpUFoszbmPKydV8nspyqyjJeJEQ2ZMEeEMeVci532Id48A2NTcHw1fbpqRhVgkxodYvgAizqaOWLSCKuA18APHxkBXmO9HA8v1EA2Bgy9G007bZd56gOK-eHFvhfqU31Gb6o-xlOY-syOwI5Kx35s1tINwI6TnPu2Onk3BRnYcTYRgB1nr38CAAD__89fRdc">