Нет, я не думаю, что это ошибка. Он устанавливает LOG_ENABLED
на LOGD
или LOGV
в зависимости от значения DEBUG
.
Соответствующий бит:
public class RenderScript {
static final String LOG_TAG = "libRS_jni";
private static final boolean DEBUG = false;
@SuppressWarnings({"UnusedDeclaration", "deprecation"})
private static final boolean LOG_ENABLED = DEBUG ? Config.LOGD : Config.LOGV;
и последняя строка концептуально эквивалентна:
private static final boolean LOG_ENABLED;
if (DEBUG)
LOG_ENABLED = Config.LOGD;
else
LOG_ENABLED = Config.LOGV;
На самом деле
private static final boolean LOG_ENABLED == DEBUG ? Config.LOGD : Config.LOGV;
на самом деле не имеет смысла, поскольку означает:
private static final boolean ((LOG_ENABLED == DEBUG)
? Config.LOGD
: Config.LOGV);
, у которого вообще нет объявленного имени переменной, только значение, которое должно быть присвоено чему-либо.