3.6.3.8 SHLS-18

Message

Warning: (SHLS-18) User specified field partitioning for '{variable}' on {location} is ignored because it does not have a struct type.

This message indicates that the pragma '#pragma HLS memory partition variable (<Variable>) type(struct_fields) ' has been misused on a variable that is not of struct type, and will therefore be ignored.

/*****************************************************************
 *  This example is expected to result in
 *  - Code  : SHLS-18
 *  - Type  : Warning
 *  - Cause : Memory partitioning by struct field is requested
 *            to apply on a variable that is not of a struct type.
 *****************************************************************/
#pragma HLS memory partition variable(array) type(struct_fields)
int array[10];

void DUT() {
    #pragma HLS function top
    for (int i = 0; i < 10; i++) {
        array[i] *= 2;
    }
}

Related to: Memory Partitioning