On Wed, 3 May 2023 14:17:02 GMT, Maurizio Cimadamore <mcimadam...@openjdk.org> 
wrote:

> > Isn't this true also for sequence layouts where, for example, the second 
> > element might be misaligned for `sequenceLayout(2, structLayout(JAVA_INT, 
> > JAVA_SHORT))`? Or, is this already covered?
> 
> That case already has some javadoc text:
> 
> https://cr.openjdk.org/~pminborg/panama/21/v2/javadoc/api/java.base/java/lang/foreign/MemoryLayout.html#sequenceLayout(long,java.lang.foreign.MemoryLayout)
> 
> (both factories throw if the alignment of the element layout is bigger than 
> its size). It seems like I only forgot to add extra doc for structs.

Actually, now that I look at it, it seems that the exception we raise is not 
correct. I think we need to throw if the element size is not a multiple of the 
alignment. That is, the size determines the stride, so that has to be a 
multiple of the alignment, otherwise it won't work.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/13770#issuecomment-1533114938

Reply via email to