[foreign] RFR 8222025: jextract generates reference to underfined type for va_list
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Mon Apr 8 13:22:42 UTC 2019
This seems more robust.
Thanks!
Maurizio
On 08/04/2019 14:17, Sundararajan Athijegannathan wrote:
> Thanks. Updated: https://cr.openjdk.java.net/~sundar/8222025/webrev.02/
>
> Calling canonicalType() on argument now - should cover all cases.
>
> -Sundar
>
> On 08/04/19, 6:01 PM, Maurizio Cimadamore wrote:
>> Looks good - what about calling canonicalType on function args/return
>> type also?
>>
>> Maurizio
>>
>> On 08/04/2019 13:33, Sundararajan Athijegannathan wrote:
>>> Updated: https://cr.openjdk.java.net/~sundar/8222025/webrev.01/
>>>
>>> * Separate tree phase for builtin types handler
>>> * TypeDictionary was missing path null check and builtin header file
>>> * canonicalType() call was missing in Utils.java (for element type
>>> of an array)
>>>
>>> -Sundar
>>>
>>> On 08/04/19, 3:12 PM, Maurizio Cimadamore wrote:
>>>>
>>>> On 06/04/2019 04:12, Sundararajan Athijegannathan wrote:
>>>>> You're right. This fix addresses only typedefs that too that only
>>>>> builtin struct/union types only (for now). This seems to cover
>>>>> issues faced with compilation of generated sources. We could walk
>>>>> through every type usage in all Trees. Should we/I do that?
>>>>
>>>> Maybe as a followup change. The fix is good as is, but let's also
>>>> try to fix the more general problem of a jextract run referring to
>>>> symbols that aren't there.
>>>>
>>>> Maurizio
>>>>
>>>>>
>>>>> Thanks,
>>>>> -Sundar
>>>>>
>>>>> On 06/04/19, 1:49 AM, Maurizio Cimadamore wrote:
>>>>>> Looks a very nice fix! This is also related to the issue that
>>>>>> Jorn was trying to fix while ago re. incomplete array types, so
>>>>>> maybe after this is pushed, we can revisit that topic.
>>>>>>
>>>>>> One question: this patch attempts to fix missing builtins only in
>>>>>> case they appear in typedefs, right? That is ok for the va_list
>>>>>> case, but I guess it doesn't address the more general problem
>>>>>> where builtins are used directly (I assume not all of them will
>>>>>> be typedef'ed) ? What would be the plan there?
>>>>>>
>>>>>> Maurizio
>>>>>>
>>>>>>
>>>>>> On 05/04/2019 11:49, Sundararajan Athijegannathan wrote:
>>>>>>> Please review.
>>>>>>>
>>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8222025
>>>>>>> Webrev: https://cr.openjdk.java.net/~sundar/8222025/webrev.00/
>>>>>>>
>>>>>>> "builtin" type is detected by source file location having "null"
>>>>>>> path. For each builtin record type, we generate fake Trees and
>>>>>>> add to the list of declarations. A builtin header file
>>>>>>> ("builtin$.h") is used as a target header for such declarations.
>>>>>>> This ensures that we only generate one copy of builitin mappings
>>>>>>> & all builtin type references resolve to those.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> -Sundar
More information about the panama-dev
mailing list