From c538bd24c4a0ae64b25862e1062d4d143b409f15 Mon Sep 17 00:00:00 2001 From: Olly Betts Date: Thu, 20 Apr 2023 14:53:30 +1200 Subject: Restore handling for '<<' in array size I accidentally dropped this in 8fb15fcc922a302b88937a68e089223fb90640f9. --- Source/Swig/typesys.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Source/Swig/typesys.c b/Source/Swig/typesys.c index 05e2a1b6e..eb6fc1074 100644 --- a/Source/Swig/typesys.c +++ b/Source/Swig/typesys.c @@ -1700,7 +1700,8 @@ void SwigType_remember_clientdata(const SwigType *t, const_String_or_char_ptr cl if (t) { char *ct = Char(t); const char *lt = strchr(ct, '<'); - if (lt && lt[1] != '(') { + /* Allow for `<<` operator in constant expression for array size. */ + if (lt && lt[1] != '(' && lt[1] != '<') { /* We special case `<<` above, but most cases aren't handled, for example: * * unsigned char myarray[std::numeric_limits::max()]; // #2486 -- cgit v1.2.1