On 11 January 2011 11:36, Peter W. Draper <[log in to unmask]> wrote:
> On Tue, 11 Jan 2011, David Berry wrote:
>
>>>> It is also possible for the macros to be expanded prior to compilation
>>>> (David has a script for that in the AST tree) so that a more useful line
>>>> number would turn up.
>>>
>>> That is probably worth a go.
>>
>> The script is called "cexpand". For instance, doing
>>
>> % cexpand frameset.c
>>
>> will produce a (large!) file called frameset.cpp. This file can be
>> compiled as per a normal c file. It is formed by using cpp to expand
>> all macros, and then reformatting the result into more readable form.
>
> That leads us to the context:
>
> ENSURE_SAME_TYPE(double,jdouble) \
> \
> /* Ensure that we have all the field and method ID that we may require. */
> \
> initializeIDs( env ); \
> \
> /* Decode flags. */ \
> flags = (int) (*env)->CallIntMethod( env, jFlags, \
> ResampleFlagsGetFlagsIntID ); \
>
> It is this last line where the crash occurs.
Hmm... not sure where we can go from there. It looks like serious work
to track it down further.
David
|