Fix infinite loop handling non-type template parameters

Fixes infinite loop due to () brackets in a non-type template
parameter containing an expression

Fixes #2418

Non-trivial expressions are still not qualified properly though.
This commit is contained in:
William S Fulton 2022-11-02 19:57:02 +00:00
commit 52edda64c1
6 changed files with 69 additions and 3 deletions

View file

@ -0,0 +1,19 @@
import cpp14_enable_if_t.*;
public class cpp14_enable_if_t_runme {
static {
try {
System.loadLibrary("cpp14_enable_if_t");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load. See the chapter on Dynamic Linking Problems in the SWIG Java documentation for help.\n" + e);
System.exit(1);
}
}
public static void main(String argv[])
{
if (cpp14_enable_if_t.enableif5(10, 20) != 30)
throw new RuntimeException("enableif5 not working");
}
}