Да, это ожидаемое поведение. Приоритет для вызова метода выглядит следующим образом:
Ниже выдержки из Java docs , связанных с тем же: -
Процесс определения применимости начинается с определения потенциально применимых методов (§15.12.2.1).
Остальная часть процесса разделена на три этапа, чтобы обеспечить совместимость с версиями языка программирования Java до Java SE 5.0. Фазы:
Первая фаза (§15.12.2.2) выполняет разрешение перегрузки без разрешения преобразования бокса или распаковки или использования вызова метода переменной arity. Если на этом этапе не обнаружен какой-либо применимый метод, обработка продолжается до второй фазы.
Это гарантирует, что любые вызовы, которые были действительны на языке программирования Java до Java SE 5.0, не считаются неоднозначными в результате внедрение методов переменной arity, неявного бокса и / или распаковки. Однако объявление метода переменной arity (§8.4.1) может изменить метод, выбранный для выражения вызова метода данного метода, поскольку метод переменной arity рассматривается как метод фиксированной arity в первой фазе. Например, объявление m (Object ...) в классе, который уже объявляет m (Object), приводит к тому, что m (Object) больше не выбирается для некоторых выражений вызова (таких как m (null)), как m (Object []) ) более конкретно.
Вторая фаза (§15.12.2.3) выполняет разрешение перегрузки при разрешении бокса и распаковки, но все же исключает использование вызова метода переменной arity. Если на этом этапе не обнаружен какой-либо применимый метод, обработка продолжается до третьей фазы.
Это гарантирует, что метод никогда не выбирается при вызове метода переменной arity, если он применим посредством вызова метода фиксированной arity.
Третий этап (§15.12.2.4) позволяет комбинировать перегрузку с использованием методов переменной arity, бокса и распаковки.
blockquote>
Я думаю, что проблема связана со списком атрибутов, переданным glXChooseFBConfig (ваш pixmap_config []).
Я полагаю, что какой-то драйвер может заполнить обязательные поля значениями по умолчанию, а затем сравнить свои внутренние конфигурации с запрошенными.
Проблема в том, что EXT_texture_from_pixmap
работает только с растровыми изображениями, а не с окнами.
Итак, вы должны установить поле GLX_DRAWABLE_TYPE
с маской, содержащей GLX_PIXMAP_BIT
, а не по умолчанию GLX_WINDOW_BIT
.