On Tue, Jul 22, 2025 at 08:41:27AM +0000, Konstantin Ananyev wrote: > > > > Array range initialization is non-standard and is not provided by > > all compilers. MSVC does not implement it and ends up emitting > > errors like the one below: > > > > drivers/net/r8169/r8169_phy.c(380): > > error C2143: syntax error: missing ':' before '...' > > case CFG_METHOD_48 ... CFG_METHOD_57: > > > > The fix is to explicitly initialize each element in the range. > > > > Signed-off-by: Andre Muezerie <andre...@linux.microsoft.com> > > --- > > app/test/test_cryptodev_zuc_test_vectors.h | 156 ++++++++++++++++++++- > > 1 file changed, 153 insertions(+), 3 deletions(-) > > > > diff --git a/app/test/test_cryptodev_zuc_test_vectors.h > > b/app/test/test_cryptodev_zuc_test_vectors.h > > index 714d681fba..e694cc3922 100644 > > --- a/app/test/test_cryptodev_zuc_test_vectors.h > > +++ b/app/test/test_cryptodev_zuc_test_vectors.h > > @@ -1067,7 +1067,57 @@ static struct wireless_test_data > > zuc_test_case_auth_4000b_mac_128b = { > > }, > > >From my perspective that makes code to look really ugly... > If the static initialization is not possible, can we simply change the code > to do memset() before first usage of the array?
I agree that the compact notation allowed by the gcc extension is nice, but unfortunately msvc does not implement it. This subject has previously been addressed [1], and it was noted that, given the existing use of explicitly populated fixed arrays within this file (such as zuc_test_auth_5670b), the proposed modification is considered acceptable. [1] https://inbox.dpdk.org/dev/CAJFAV8wx0yZXctq90Q2b4PBoA6GVrpMgKQCudWgij==lf4c...@mail.gmail.com/ > > > .plaintext = { > > .data = { > > - [0 ... 499] = 0x11, > > + /* [0 ... 499] = 0x11, */ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*00*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*01*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*02*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*03*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*04*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*05*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*06*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*07*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*08*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*09*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*00*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*11*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*12*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*13*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*14*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*15*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*16*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*17*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*18*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*19*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*20*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*21*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*22*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*23*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*24*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*25*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*26*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*27*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*28*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*29*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*30*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*31*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*32*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*33*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*34*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*35*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*36*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*37*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*38*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*39*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*40*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*41*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*42*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*43*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*44*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*45*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*46*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*47*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*48*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*49*/ > > }, > > .len = 4000 > > }, > > @@ -1104,7 +1154,57 @@ static struct wireless_test_data > > zuc_test_case_auth_4000b_mac_64b = { > > }, > > .plaintext = { > > .data = { > > - [0 ... 499] = 0x11, > > + /* [0 ... 499] = 0x11, */ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*00*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*01*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*02*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*03*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*04*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*05*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*06*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*07*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*08*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*09*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*00*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*11*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*12*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*13*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*14*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*15*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*16*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*17*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*18*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*19*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*20*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*21*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*22*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*23*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*24*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*25*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*26*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*27*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*28*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*29*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*30*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*31*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*32*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*33*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*34*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*35*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*36*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*37*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*38*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*39*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*40*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*41*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*42*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*43*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*44*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*45*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*46*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*47*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*48*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*49*/ > > }, > > .len = 4000 > > }, > > @@ -1140,7 +1240,57 @@ static struct wireless_test_data > > zuc_test_case_auth_4000b_mac_32b = { > > }, > > .plaintext = { > > .data = { > > - [0 ... 499] = 0x11, > > + /* [0 ... 499] = 0x11, */ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*00*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*01*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*02*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*03*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*04*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*05*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*06*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*07*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*08*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*09*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*00*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*11*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*12*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*13*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*14*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*15*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*16*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*17*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*18*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*19*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*20*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*21*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*22*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*23*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*24*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*25*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*26*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*27*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*28*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*29*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*30*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*31*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*32*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*33*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*34*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*35*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*36*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*37*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*38*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*39*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*40*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*41*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*42*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*43*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*44*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*45*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*46*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*47*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*48*/ > > + 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, 0x11, > > 0x11, /*49*/ > > }, > > .len = 4000 > > }, > > -- > > 2.50.1.vfs.0.0