void () { @Language("JAVA") String classText = """ import java.util.Collections; import java.util.List; /** @noinspection ALL*/ class Test { abstract class NumStr extends Number implements CharSequence {} public static void main(String[] args) { foo((List<NumStr>) (List<?>) Collections.singletonList(1)); } static <T extends Number & CharSequence> void foo(List<T> list) { System.out.println(list.get(0).length()); } } """; List<Trinity<String, Integer, Integer>> traceAndPositions = Arrays.asList( Trinity.create("Exception in thread \"main\" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.CharSequence\n", null, null), Trinity.create("\tat Test.foo(Test.java:13)\n", 13, 29), Trinity.create("\tat Test.main(Test.java:9)\n", 9, 5)); checkColumnFinder(classText, traceAndPositions); }