Re: [Jack-Devel] JACK 1.9.10 to test (for 64/32 bits compatibility)

PrevNext  Index
DateMon, 07 Jan 2013 20:57:27 +0100
From Adrian Knoth <[hidden] at drcomp dot erfurt dot thur dot de>
To[hidden] at lists dot jackaudio dot org
In-Reply-ToAdrian Knoth Re: [Jack-Devel] JACK 1.9.10 to test (for 64/32 bits compatibility)
On 01/07/2013 08:05 PM, Adrian Knoth wrote:

>> Okay, I found it.  Sadly it doesn't compile with MSVC.  The reason is
>> the use of the sizeof operator.  For example, the declaration for type
>> 'jack_double' evaluates to this for MSVC:-
> 
>>         typedef __declspec(align(sizeof(double))) double jack_double;
>>
>> and the problem is that sizeof() isn't evaluated by the preprocessor
>> (it gets evaluated later) so the alignment size is unknown at this
>> point.
> 
> Let's have a look:
> 
>     typedef JACK_ALIGNED_TYPE(double)   jack_double;
>     typedef JACK_ALIGNED_TYPE(int64_t)  jack_int64_t;
>     typedef JACK_ALIGNED_TYPE(uint64_t) jack_uint64_t;
> 
> So three types. We know how large (u)int64_t is. We can also pretend
> that double is 4 bytes wide.

Correction: double, not float, so maybe 8.
PrevNext  Index

1357588653.29774_0.ltw:2,a <50EB28A7.7020502 at drcomp dot erfurt dot thur dot de>