# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2016-2019, spotbugs community
# This file is distributed under the same license as the spotbugs package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2017.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: spotbugs 3.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-02 09:03+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 1.3\n"

#: ../../bugDescriptionList.rst:2
msgid "Bad practice (BAD_PRACTICE)"
msgstr ""

#: ../../bugDescriptionList.rst:3
msgid ""
"Violations of recommended and essential coding practice. Examples include"
" hash code and equals problems, cloneable idiom, dropped exceptions, "
"Serializable problems, and misuse of finalize. We strive to make this "
"analysis accurate, although some groups may not care about some of the "
"bad practices."
msgstr ""

#: ../../bugDescriptionList.rst:13
msgid "CNT: Rough value of known constant found (CNT_ROUGH_CONSTANT_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:23
msgid ""
"NP: Method with Boolean return type returns explicit null "
"(NP_BOOLEAN_RETURN_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:38
msgid ""
"SW: Certain swing methods need to be invoked in Swing thread "
"(SW_SWING_METHODS_INVOKED_IN_SWING_THREAD)"
msgstr ""

#: ../../bugDescriptionList.rst:57
msgid "FI: Finalizer only nulls fields (FI_FINALIZER_ONLY_NULLS_FIELDS)"
msgstr ""

#: ../../bugDescriptionList.rst:69
msgid "FI: Finalizer nulls fields (FI_FINALIZER_NULLS_FIELDS)"
msgstr ""

#: ../../bugDescriptionList.rst:80
msgid ""
"UI: Usage of GetResource may be unsafe if class is extended "
"(UI_INHERITANCE_UNSAFE_GETRESOURCE)"
msgstr ""

#: ../../bugDescriptionList.rst:92
msgid "AM: Creates an empty zip file entry (AM_CREATES_EMPTY_ZIP_FILE_ENTRY)"
msgstr ""

#: ../../bugDescriptionList.rst:107
msgid "AM: Creates an empty jar file entry (AM_CREATES_EMPTY_JAR_FILE_ENTRY)"
msgstr ""

#: ../../bugDescriptionList.rst:122
msgid ""
"IMSE: Dubious catching of IllegalMonitorStateException "
"(IMSE_DONT_CATCH_IMSE)"
msgstr ""

#: ../../bugDescriptionList.rst:134
msgid ""
"CN: Class defines clone() but doesn't implement Cloneable "
"(CN_IMPLEMENTS_CLONE_BUT_NOT_CLONEABLE)"
msgstr ""

#: ../../bugDescriptionList.rst:147
msgid ""
"CN: Class implements Cloneable but does not define or use clone method "
"(CN_IDIOM)"
msgstr ""

#: ../../bugDescriptionList.rst:159
msgid "CN: clone method does not call super.clone() (CN_IDIOM_NO_SUPER_CALL)"
msgstr ""

#: ../../bugDescriptionList.rst:176
msgid "DE: Method might drop exception (DE_MIGHT_DROP)"
msgstr ""

#: ../../bugDescriptionList.rst:188
msgid "DE: Method might ignore exception (DE_MIGHT_IGNORE)"
msgstr ""

#: ../../bugDescriptionList.rst:200
msgid "Dm: Method invokes System.exit(...) (DM_EXIT)"
msgstr ""

#: ../../bugDescriptionList.rst:213
msgid ""
"Nm: Use of identifier that is a keyword in later versions of Java "
"(NM_FUTURE_KEYWORD_USED_AS_IDENTIFIER)"
msgstr ""

#: ../../bugDescriptionList.rst:225
msgid ""
"Nm: Use of identifier that is a keyword in later versions of Java "
"(NM_FUTURE_KEYWORD_USED_AS_MEMBER_IDENTIFIER)"
msgstr ""

#: ../../bugDescriptionList.rst:238
msgid ""
"JCIP: Fields of immutable classes should be final "
"(JCIP_FIELD_ISNT_FINAL_IN_IMMUTABLE_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:250
msgid ""
"Dm: Method invokes dangerous method runFinalizersOnExit "
"(DM_RUN_FINALIZERS_ON_EXIT)"
msgstr ""

#: ../../bugDescriptionList.rst:262
msgid ""
"NP: equals() method does not check for null argument "
"(NP_EQUALS_SHOULD_HANDLE_NULL_ARGUMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:277
msgid "FI: Empty finalizer should be deleted (FI_EMPTY)"
msgstr ""

#: ../../bugDescriptionList.rst:288
msgid "FI: Finalizer nullifies superclass finalizer (FI_NULLIFY_SUPER)"
msgstr ""

#: ../../bugDescriptionList.rst:301
msgid "FI: Finalizer does nothing but call superclass finalizer (FI_USELESS)"
msgstr ""

#: ../../bugDescriptionList.rst:313
msgid "FI: Finalizer does not call superclass finalizer (FI_MISSING_SUPER_CALL)"
msgstr ""

#: ../../bugDescriptionList.rst:326
msgid "FI: Explicit invocation of finalizer (FI_EXPLICIT_INVOCATION)"
msgstr ""

#: ../../bugDescriptionList.rst:342
msgid ""
"Eq: Equals checks for incompatible operand "
"(EQ_CHECK_FOR_OPERAND_NOT_COMPATIBLE_WITH_THIS)"
msgstr ""

#: ../../bugDescriptionList.rst:368
msgid "Eq: equals method fails for subtypes (EQ_GETCLASS_AND_CLASS_CONSTANT)"
msgstr ""

#: ../../bugDescriptionList.rst:382
msgid "Eq: Covariant equals() method defined (EQ_SELF_NO_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:395
msgid "Co: Covariant compareTo() method defined (CO_SELF_NO_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:408
msgid ""
"Co: compareTo()/compare() returns Integer.MIN_VALUE "
"(CO_COMPARETO_RESULTS_MIN_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:423
msgid ""
"Co: compareTo()/compare() incorrectly handles float or double value "
"(CO_COMPARETO_INCORRECT_FLOATING)"
msgstr ""

#: ../../bugDescriptionList.rst:436
msgid ""
"RV: Negating the result of compareTo()/compare() "
"(RV_NEGATING_RESULT_OF_COMPARETO)"
msgstr ""

#: ../../bugDescriptionList.rst:451
msgid ""
"ES: Comparison of String objects using == or != "
"(ES_COMPARING_STRINGS_WITH_EQ)"
msgstr ""

#: ../../bugDescriptionList.rst:466
msgid ""
"ES: Comparison of String parameter using == or != "
"(ES_COMPARING_PARAMETER_STRING_WITH_EQ)"
msgstr ""

#: ../../bugDescriptionList.rst:480
msgid ""
"Eq: Class defines compareTo(...) and uses Object.equals() "
"(EQ_COMPARETO_USE_OBJECT_EQUALS)"
msgstr ""

#: ../../bugDescriptionList.rst:504
msgid ""
"HE: Class defines hashCode() and uses Object.equals() "
"(HE_HASHCODE_USE_OBJECT_EQUALS)"
msgstr ""

#: ../../bugDescriptionList.rst:527
msgid "HE: Class defines hashCode() but not equals() (HE_HASHCODE_NO_EQUALS)"
msgstr ""

#: ../../bugDescriptionList.rst:539
msgid ""
"HE: Class defines equals() and uses Object.hashCode() "
"(HE_EQUALS_USE_HASHCODE)"
msgstr ""

#: ../../bugDescriptionList.rst:561
msgid ""
"HE: Class inherits equals() and uses Object.hashCode() "
"(HE_INHERITS_EQUALS_USE_HASHCODE)"
msgstr ""

#: ../../bugDescriptionList.rst:581
msgid "HE: Class defines equals() but not hashCode() (HE_EQUALS_NO_HASHCODE)"
msgstr ""

#: ../../bugDescriptionList.rst:593
msgid "Eq: Abstract class defines covariant equals() method (EQ_ABSTRACT_SELF)"
msgstr ""

#: ../../bugDescriptionList.rst:606
msgid "Co: Abstract class defines covariant compareTo() method (CO_ABSTRACT_SELF)"
msgstr ""

#: ../../bugDescriptionList.rst:619
msgid ""
"IC: Superclass uses subclass during initialization "
"(IC_SUPERCLASS_USES_SUBCLASS_DURING_INITIALIZATION)"
msgstr ""

#: ../../bugDescriptionList.rst:642
msgid ""
"SI: Static initializer creates instance before all static final fields "
"assigned (SI_INSTANCE_BEFORE_FINALS_ASSIGNED)"
msgstr ""

#: ../../bugDescriptionList.rst:653
msgid ""
"It: Iterator next() method can't throw NoSuchElementException "
"(IT_NO_SUCH_ELEMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:667
msgid "ME: Enum field is public and mutable (ME_MUTABLE_ENUM_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:679
msgid ""
"ME: Public enum method unconditionally sets its field "
"(ME_ENUM_FIELD_SETTER)"
msgstr ""

#: ../../bugDescriptionList.rst:691
msgid ""
"Nm: Method names should start with a lower case letter "
"(NM_METHOD_NAMING_CONVENTION)"
msgstr ""

#: ../../bugDescriptionList.rst:703
msgid ""
"Nm: Field names should start with a lower case letter "
"(NM_FIELD_NAMING_CONVENTION)"
msgstr ""

#: ../../bugDescriptionList.rst:715
msgid ""
"Nm: Class names shouldn't shadow simple name of implemented interface "
"(NM_SAME_SIMPLE_NAME_AS_INTERFACE)"
msgstr ""

#: ../../bugDescriptionList.rst:730
msgid ""
"Nm: Class names shouldn't shadow simple name of superclass "
"(NM_SAME_SIMPLE_NAME_AS_SUPERCLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:745
msgid ""
"Nm: Class names should start with an upper case letter "
"(NM_CLASS_NAMING_CONVENTION)"
msgstr ""

#: ../../bugDescriptionList.rst:756
msgid ""
"Nm: Very confusing method names (but perhaps intentional) "
"(NM_VERY_CONFUSING_INTENTIONAL)"
msgstr ""

#: ../../bugDescriptionList.rst:771
msgid ""
"Nm: Method doesn't override method in superclass due to wrong package for"
" parameter (NM_WRONG_PACKAGE_INTENTIONAL)"
msgstr ""

#: ../../bugDescriptionList.rst:808
msgid "Nm: Confusing method names (NM_CONFUSING)"
msgstr ""

#: ../../bugDescriptionList.rst:818
msgid ""
"Nm: Class is not derived from an Exception, even though it is named as "
"such (NM_CLASS_NOT_EXCEPTION)"
msgstr ""

#: ../../bugDescriptionList.rst:829
msgid "RR: Method ignores results of InputStream.read() (RR_NOT_CHECKED)"
msgstr ""

#: ../../bugDescriptionList.rst:845
msgid "RR: Method ignores results of InputStream.skip() (SR_NOT_CHECKED)"
msgstr ""

#: ../../bugDescriptionList.rst:863
msgid ""
"Se: Class is Serializable but its superclass doesn't define a void "
"constructor (SE_NO_SUITABLE_CONSTRUCTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:878
msgid ""
"Se: Class is Externalizable but doesn't define a void constructor "
"(SE_NO_SUITABLE_CONSTRUCTOR_FOR_EXTERNALIZATION)"
msgstr ""

#: ../../bugDescriptionList.rst:892
msgid ""
"Se: Comparator doesn't implement Serializable "
"(SE_COMPARATOR_SHOULD_BE_SERIALIZABLE)"
msgstr ""

#: ../../bugDescriptionList.rst:909
msgid ""
"SnVI: Class is Serializable, but doesn't define serialVersionUID "
"(SE_NO_SERIALVERSIONID)"
msgstr ""

#: ../../bugDescriptionList.rst:930
msgid ""
"Se: The readResolve method must be declared with a return type of Object."
"  (SE_READ_RESOLVE_MUST_RETURN_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:942
msgid ""
"Se: Transient field that isn't set by deserialization.  "
"(SE_TRANSIENT_FIELD_NOT_RESTORED)"
msgstr ""

#: ../../bugDescriptionList.rst:954
msgid "Se: serialVersionUID isn't final (SE_NONFINAL_SERIALVERSIONID)"
msgstr ""

#: ../../bugDescriptionList.rst:967
msgid "Se: serialVersionUID isn't static (SE_NONSTATIC_SERIALVERSIONID)"
msgstr ""

#: ../../bugDescriptionList.rst:980
msgid "Se: serialVersionUID isn't long (SE_NONLONG_SERIALVERSIONID)"
msgstr ""

#: ../../bugDescriptionList.rst:993
msgid ""
"Se: Non-transient non-serializable instance field in serializable class "
"(SE_BAD_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:1008
msgid "Se: Serializable inner class (SE_INNER_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:1022
msgid ""
"Se: Non-serializable class has a serializable inner class "
"(SE_BAD_FIELD_INNER_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:1039
msgid ""
"Se: Non-serializable value stored into instance field of a serializable "
"class (SE_BAD_FIELD_STORE)"
msgstr ""

#: ../../bugDescriptionList.rst:1050
msgid ""
"RV: Method ignores exceptional return value "
"(RV_RETURN_VALUE_IGNORED_BAD_PRACTICE)"
msgstr ""

#: ../../bugDescriptionList.rst:1067
msgid "NP: toString method may return null (NP_TOSTRING_COULD_RETURN_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:1081
msgid "NP: Clone method may return null (NP_CLONE_COULD_RETURN_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:1095
msgid "OS: Method may fail to close stream (OS_OPEN_STREAM)"
msgstr ""

#: ../../bugDescriptionList.rst:1111
msgid ""
"OS: Method may fail to close stream on exception "
"(OS_OPEN_STREAM_EXCEPTION_PATH)"
msgstr ""

#: ../../bugDescriptionList.rst:1126
msgid ""
"RC: Suspicious reference comparison to constant "
"(RC_REF_COMPARISON_BAD_PRACTICE)"
msgstr ""

#: ../../bugDescriptionList.rst:1142
msgid ""
"RC: Suspicious reference comparison of Boolean values "
"(RC_REF_COMPARISON_BAD_PRACTICE_BOOLEAN)"
msgstr ""

#: ../../bugDescriptionList.rst:1158
msgid ""
"FS: Format string should use %n rather than \\n "
"(VA_FORMAT_STRING_USES_NEWLINE)"
msgstr ""

#: ../../bugDescriptionList.rst:1171
msgid "BIT: Check for sign of bitwise operation (BIT_SIGNED_CHECK)"
msgstr ""

#: ../../bugDescriptionList.rst:1188
msgid ""
"ODR: Method may fail to close database resource "
"(ODR_OPEN_DATABASE_RESOURCE)"
msgstr ""

#: ../../bugDescriptionList.rst:1205
msgid ""
"ODR: Method may fail to close database resource on exception "
"(ODR_OPEN_DATABASE_RESOURCE_EXCEPTION_PATH)"
msgstr ""

#: ../../bugDescriptionList.rst:1221
msgid ""
"ISC: Needless instantiation of class that only supplies static methods "
"(ISC_INSTANTIATE_STATIC_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:1232
msgid "DMI: Random object created and used only once (DMI_RANDOM_USED_ONLY_ONCE)"
msgstr ""

#: ../../bugDescriptionList.rst:1251
msgid ""
"BC: Equals method should not assume anything about the type of its "
"argument (BC_EQUALS_METHOD_SHOULD_WORK_FOR_ALL_OBJECTS)"
msgstr ""

#: ../../bugDescriptionList.rst:1265
msgid ""
"J2EE: Store of non serializable object into HttpSession "
"(J2EE_STORE_OF_NON_SERIALIZABLE_OBJECT_INTO_SESSION)"
msgstr ""

#: ../../bugDescriptionList.rst:1278
msgid "GC: Unchecked type in generic call (GC_UNCHECKED_TYPE_IN_GENERIC_CALL)"
msgstr ""

#: ../../bugDescriptionList.rst:1294
msgid ""
"PZ: Don't reuse entry objects in iterators "
"(PZ_DONT_REUSE_ENTRY_OBJECTS_IN_ITERATORS)"
msgstr ""

#: ../../bugDescriptionList.rst:1312
msgid ""
"DMI: Adding elements of an entry set may fail due to reuse of Entry "
"objects (DMI_ENTRY_SETS_MAY_REUSE_ENTRY_OBJECTS)"
msgstr ""

#: ../../bugDescriptionList.rst:1329
msgid ""
"DMI: Don't use removeAll to clear a collection "
"(DMI_USING_REMOVEALL_TO_CLEAR_COLLECTION)"
msgstr ""

#: ../../bugDescriptionList.rst:1343
msgid "Correctness (CORRECTNESS)"
msgstr ""

#: ../../bugDescriptionList.rst:1344
msgid ""
"Probable bug - an apparent coding mistake resulting in code that was "
"probably not what the developer intended. We strive for a low false "
"positive rate."
msgstr ""

#: ../../bugDescriptionList.rst:1350
msgid ""
"NP: Method with Optional return type returns explicit null "
"(NP_OPTIONAL_RETURN_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:1364
msgid ""
"NP: Non-null field is not initialized "
"(NP_NONNULL_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:1377
msgid ""
"VR: Class makes reference to unresolvable class or method "
"(VR_UNRESOLVABLE_REFERENCE)"
msgstr ""

#: ../../bugDescriptionList.rst:1390
msgid "IL: An apparent infinite loop (IL_INFINITE_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:1401
msgid ""
"IO: Doomed attempt to append to an object output stream "
"(IO_APPENDING_TO_OBJECT_OUTPUT_STREAM)"
msgstr ""

#: ../../bugDescriptionList.rst:1423
msgid "IL: An apparent infinite recursive loop (IL_INFINITE_RECURSIVE_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:1434
msgid "IL: A collection is added to itself (IL_CONTAINER_ADDED_TO_ITSELF)"
msgstr ""

#: ../../bugDescriptionList.rst:1446
msgid "RpC: Repeated conditional tests (RpC_REPEATED_CONDITIONAL_TEST)"
msgstr ""

#: ../../bugDescriptionList.rst:1459
msgid ""
"FL: Method performs math using floating point precision "
"(FL_MATH_USING_FLOAT_PRECISION)"
msgstr ""

#: ../../bugDescriptionList.rst:1472
msgid ""
"CAA: Possibly incompatible element is stored in covariant array "
"(CAA_COVARIANT_ARRAY_ELEMENT_STORE)"
msgstr ""

#: ../../bugDescriptionList.rst:1486
msgid ""
"Dm: Useless/vacuous call to EasyMock method "
"(DMI_VACUOUS_CALL_TO_EASYMOCK_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:1498
msgid ""
"Dm: Futile attempt to change max pool size of ScheduledThreadPoolExecutor"
" "
"(DMI_FUTILE_ATTEMPT_TO_CHANGE_MAXPOOL_SIZE_OF_SCHEDULED_THREAD_POOL_EXECUTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:1511
msgid ""
"DMI: BigDecimal constructed from double that isn't represented precisely "
"(DMI_BIGDECIMAL_CONSTRUCTED_FROM_DOUBLE)"
msgstr ""

#: ../../bugDescriptionList.rst:1528
msgid ""
"Dm: Creation of ScheduledThreadPoolExecutor with zero core threads "
"(DMI_SCHEDULED_THREAD_POOL_EXECUTOR_WITH_ZERO_CORE_THREADS)"
msgstr ""

#: ../../bugDescriptionList.rst:1541
msgid ""
"Dm: Can't use reflection to check for presence of annotation without "
"runtime retention (DMI_ANNOTATION_IS_NOT_VISIBLE_TO_REFLECTION)"
msgstr ""

#: ../../bugDescriptionList.rst:1553
msgid "NP: Method does not check for null argument (NP_ARGUMENT_MIGHT_BE_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:1567
msgid ""
"RV: Bad attempt to compute absolute value of signed random integer "
"(RV_ABSOLUTE_VALUE_OF_RANDOM_INT)"
msgstr ""

#: ../../bugDescriptionList.rst:1581
msgid ""
"RV: Bad attempt to compute absolute value of signed 32-bit hashcode  "
"(RV_ABSOLUTE_VALUE_OF_HASHCODE)"
msgstr ""

#: ../../bugDescriptionList.rst:1598
msgid "RV: Random value from 0 to 1 is coerced to the integer 0 (RV_01_TO_INT)"
msgstr ""

#: ../../bugDescriptionList.rst:1610
msgid "Dm: Incorrect combination of Math.max and Math.min (DM_INVALID_MIN_MAX)"
msgstr ""

#: ../../bugDescriptionList.rst:1622
msgid ""
"Eq: equals method compares class names rather than class objects "
"(EQ_COMPARING_CLASS_NAMES)"
msgstr ""

#: ../../bugDescriptionList.rst:1635
msgid "Eq: equals method always returns true (EQ_ALWAYS_TRUE)"
msgstr ""

#: ../../bugDescriptionList.rst:1647
msgid "Eq: equals method always returns false (EQ_ALWAYS_FALSE)"
msgstr ""

#: ../../bugDescriptionList.rst:1663
msgid ""
"Eq: equals method overrides equals in superclass and may not be symmetric"
" (EQ_OVERRIDING_EQUALS_NOT_SYMMETRIC)"
msgstr ""

#: ../../bugDescriptionList.rst:1679
msgid ""
"Eq: Covariant equals() method defined for enum "
"(EQ_DONT_DEFINE_EQUALS_FOR_ENUM)"
msgstr ""

#: ../../bugDescriptionList.rst:1695
msgid ""
"Eq: Covariant equals() method defined, Object.equals(Object) inherited "
"(EQ_SELF_USE_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:1709
msgid ""
"Eq: equals() method defined that doesn't override Object.equals(Object) "
"(EQ_OTHER_USE_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:1723
msgid ""
"Eq: equals() method defined that doesn't override equals(Object) "
"(EQ_OTHER_NO_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:1738
msgid ""
"HE: Signature declares use of unhashable class in hashed construct "
"(HE_SIGNATURE_DECLARES_HASHING_OF_UNHASHABLE_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:1753
msgid ""
"HE: Use of class without a hashCode() method in a hashed data structure "
"(HE_USE_OF_UNHASHABLE_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:1766
msgid "UR: Uninitialized read of field in constructor (UR_UNINIT_READ)"
msgstr ""

#: ../../bugDescriptionList.rst:1778
msgid ""
"UR: Uninitialized read of field method called from constructor of "
"superclass (UR_UNINIT_READ_CALLED_FROM_SUPER_CONSTRUCTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:1812
msgid "Nm: Very confusing method names (NM_VERY_CONFUSING)"
msgstr ""

#: ../../bugDescriptionList.rst:1825
msgid ""
"Nm: Method doesn't override method in superclass due to wrong package for"
" parameter (NM_WRONG_PACKAGE)"
msgstr ""

#: ../../bugDescriptionList.rst:1856
msgid ""
"Nm: Apparent method/constructor confusion "
"(NM_METHOD_CONSTRUCTOR_CONFUSION)"
msgstr ""

#: ../../bugDescriptionList.rst:1870
msgid "Nm: Class defines hashcode(); should it be hashCode()? (NM_LCASE_HASHCODE)"
msgstr ""

#: ../../bugDescriptionList.rst:1882
msgid "Nm: Class defines tostring(); should it be toString()? (NM_LCASE_TOSTRING)"
msgstr ""

#: ../../bugDescriptionList.rst:1894
msgid ""
"Nm: Class defines equal(Object); should it be equals(Object)? "
"(NM_BAD_EQUAL)"
msgstr ""

#: ../../bugDescriptionList.rst:1906
msgid ""
"Se: The readResolve method must not be declared as a static method.   "
"(SE_READ_RESOLVE_IS_STATIC)"
msgstr ""

#: ../../bugDescriptionList.rst:1918
msgid ""
"Se: Method must be private in order for serialization to work "
"(SE_METHOD_MUST_BE_PRIVATE)"
msgstr ""

#: ../../bugDescriptionList.rst:1930
msgid ""
"SF: Dead store due to switch statement fall through "
"(SF_DEAD_STORE_DUE_TO_SWITCH_FALLTHROUGH)"
msgstr ""

#: ../../bugDescriptionList.rst:1942
msgid ""
"SF: Dead store due to switch statement fall through to throw "
"(SF_DEAD_STORE_DUE_TO_SWITCH_FALLTHROUGH_TO_THROW)"
msgstr ""

#: ../../bugDescriptionList.rst:1955
msgid "NP: Read of unwritten field (NP_UNWRITTEN_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:1968
msgid "UwF: Field only ever set to null (UWF_NULL_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:1980
msgid "UwF: Unwritten field (UWF_UNWRITTEN_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:1991
msgid ""
"SIC: Deadly embrace of non-static inner class and thread local "
"(SIC_THREADLOCAL_DEADLY_EMBRACE)"
msgstr ""

#: ../../bugDescriptionList.rst:2008
msgid "RANGE: Array index is out of bounds (RANGE_ARRAY_INDEX)"
msgstr ""

#: ../../bugDescriptionList.rst:2018
msgid "RANGE: Array offset is out of bounds (RANGE_ARRAY_OFFSET)"
msgstr ""

#: ../../bugDescriptionList.rst:2028
msgid "RANGE: Array length is out of bounds (RANGE_ARRAY_LENGTH)"
msgstr ""

#: ../../bugDescriptionList.rst:2038
msgid "RANGE: String index is out of bounds (RANGE_STRING_INDEX)"
msgstr ""

#: ../../bugDescriptionList.rst:2048
msgid "RV: Method ignores return value (RV_RETURN_VALUE_IGNORED)"
msgstr ""

#: ../../bugDescriptionList.rst:2077
msgid ""
"RV: Exception created and dropped rather than thrown "
"(RV_EXCEPTION_NOT_THROWN)"
msgstr ""

#: ../../bugDescriptionList.rst:2101
msgid ""
"RV: Code checks for specific values returned by compareTo "
"(RV_CHECK_COMPARETO_FOR_SPECIFIC_RETURN_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:2114
msgid "NP: Null pointer dereference (NP_ALWAYS_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:2125
msgid "NP: close() invoked on a value that is always null (NP_CLOSING_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:2137
msgid ""
"NP: Store of null value into field annotated @Nonnull "
"(NP_STORE_INTO_NONNULL_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:2147
msgid ""
"NP: Null pointer dereference in method on exception path "
"(NP_ALWAYS_NULL_EXCEPTION)"
msgstr ""

#: ../../bugDescriptionList.rst:2163
msgid "NP: Possible null pointer dereference (NP_NULL_ON_SOME_PATH)"
msgstr ""

#: ../../bugDescriptionList.rst:2178
msgid ""
"NP: Possible null pointer dereference in method on exception path "
"(NP_NULL_ON_SOME_PATH_EXCEPTION)"
msgstr ""

#: ../../bugDescriptionList.rst:2195
msgid "NP: Method call passes null for non-null parameter (NP_NULL_PARAM_DEREF)"
msgstr ""

#: ../../bugDescriptionList.rst:2210
msgid ""
"NP: Non-virtual method call passes null for non-null parameter "
"(NP_NULL_PARAM_DEREF_NONVIRTUAL)"
msgstr ""

#: ../../bugDescriptionList.rst:2225
msgid ""
"NP: Method call passes null for non-null parameter "
"(NP_NULL_PARAM_DEREF_ALL_TARGETS_DANGEROUS)"
msgstr ""

#: ../../bugDescriptionList.rst:2241
msgid ""
"NP: Method call passes null to a non-null parameter  "
"(NP_NONNULL_PARAM_VIOLATION)"
msgstr ""

#: ../../bugDescriptionList.rst:2256
msgid ""
"NP: Method may return null, but is declared @Nonnull "
"(NP_NONNULL_RETURN_VIOLATION)"
msgstr ""

#: ../../bugDescriptionList.rst:2269
msgid "NP: Null value is guaranteed to be dereferenced (NP_GUARANTEED_DEREF)"
msgstr ""

#: ../../bugDescriptionList.rst:2287
msgid ""
"NP: Value is null and guaranteed to be dereferenced on exception path "
"(NP_GUARANTEED_DEREF_ON_EXCEPTION_PATH)"
msgstr ""

#: ../../bugDescriptionList.rst:2303
msgid "DMI: Reversed method arguments (DMI_ARGUMENTS_WRONG_ORDER)"
msgstr ""

#: ../../bugDescriptionList.rst:2316
msgid ""
"RCN: Nullcheck of value previously dereferenced "
"(RCN_REDUNDANT_NULLCHECK_WOULD_HAVE_BEEN_A_NPE)"
msgstr ""

#: ../../bugDescriptionList.rst:2331
msgid "RC: Suspicious reference comparison (RC_REF_COMPARISON)"
msgstr ""

#: ../../bugDescriptionList.rst:2347
msgid ""
"VA: Primitive array passed to function expecting a variable number of "
"object arguments (VA_PRIMITIVE_ARRAY_PASSED_TO_OBJECT_VARARG)"
msgstr ""

#: ../../bugDescriptionList.rst:2360
msgid ""
"FS: The type of a supplied argument doesn't match format specifier "
"(VA_FORMAT_STRING_BAD_CONVERSION)"
msgstr ""

#: ../../bugDescriptionList.rst:2375
msgid ""
"USELESS_STRING: Array formatted in useless way using format string "
"(VA_FORMAT_STRING_BAD_CONVERSION_FROM_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:2390
msgid ""
"FS: No previous argument for format string "
"(VA_FORMAT_STRING_NO_PREVIOUS_ARGUMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:2408
msgid ""
"FS: Number of format-string arguments does not correspond to number of "
"placeholders (VA_FORMAT_STRING_ARG_MISMATCH)"
msgstr ""

#: ../../bugDescriptionList.rst:2423
msgid ""
"FS: Format string placeholder incompatible with passed argument "
"(VA_FORMAT_STRING_BAD_ARGUMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:2443
msgid ""
"FS: Format string references missing argument "
"(VA_FORMAT_STRING_MISSING_ARGUMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:2457
msgid "FS: Illegal format string (VA_FORMAT_STRING_ILLEGAL)"
msgstr ""

#: ../../bugDescriptionList.rst:2471
msgid ""
"FS: More arguments are passed than are actually used in the format string"
" (VA_FORMAT_STRING_EXTRA_ARGUMENTS_PASSED)"
msgstr ""

#: ../../bugDescriptionList.rst:2486
msgid ""
"FS: MessageFormat supplied where printf style format expected "
"(VA_FORMAT_STRING_EXPECTED_MESSAGE_FORMAT_SUPPLIED)"
msgstr ""

#: ../../bugDescriptionList.rst:2503
msgid ""
"EC: Using pointer equality to compare different types "
"(EC_UNRELATED_TYPES_USING_POINTER_EQUALITY)"
msgstr ""

#: ../../bugDescriptionList.rst:2515
msgid "EC: Call to equals() comparing different types (EC_UNRELATED_TYPES)"
msgstr ""

#: ../../bugDescriptionList.rst:2531
msgid "EC: equals() used to compare array and nonarray (EC_ARRAY_AND_NONARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:2548
msgid "EC: Call to equals(null) (EC_NULL_ARG)"
msgstr ""

#: ../../bugDescriptionList.rst:2560
msgid ""
"EC: Call to equals() comparing different interface types "
"(EC_UNRELATED_INTERFACES)"
msgstr ""

#: ../../bugDescriptionList.rst:2582
msgid ""
"EC: Call to equals() comparing unrelated class and interface "
"(EC_UNRELATED_CLASS_AND_INTERFACE)"
msgstr ""

#: ../../bugDescriptionList.rst:2605
msgid ""
"SA: Self assignment of local rather than assignment to field "
"(SA_LOCAL_SELF_ASSIGNMENT_INSTEAD_OF_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:2624
msgid ""
"INT: Bad comparison of int value with long constant "
"(INT_BAD_COMPARISON_WITH_INT_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:2637
msgid "INT: Bad comparison of signed byte (INT_BAD_COMPARISON_WITH_SIGNED_BYTE)"
msgstr ""

#: ../../bugDescriptionList.rst:2651
msgid ""
"INT: Bad comparison of nonnegative value with negative constant or zero "
"(INT_BAD_COMPARISON_WITH_NONNEGATIVE_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:2662
msgid "BIT: Bitwise add of signed byte value (BIT_ADD_OF_SIGNED_BYTE)"
msgstr ""

#: ../../bugDescriptionList.rst:2695
msgid "BIT: Bitwise OR of signed byte value (BIT_IOR_OF_SIGNED_BYTE)"
msgstr ""

#: ../../bugDescriptionList.rst:2729
msgid ""
"BIT: Check for sign of bitwise operation involving negative number "
"(BIT_SIGNED_CHECK_HIGH_BIT)"
msgstr ""

#: ../../bugDescriptionList.rst:2744
msgid "BIT: Incompatible bit masks (BIT_AND)"
msgstr ""

#: ../../bugDescriptionList.rst:2757
msgid "BIT: Check to see if ((...) & 0) == 0 (BIT_AND_ZZ)"
msgstr ""

#: ../../bugDescriptionList.rst:2769
msgid "BIT: Incompatible bit masks (BIT_IOR)"
msgstr ""

#: ../../bugDescriptionList.rst:2789
msgid "SA: Self assignment of field (SA_FIELD_SELF_ASSIGNMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:2807
msgid ""
"SA: Nonsensical self computation involving a field (e.g., x & x) "
"(SA_FIELD_SELF_COMPUTATION)"
msgstr ""

#: ../../bugDescriptionList.rst:2822
msgid ""
"SA: Nonsensical self computation involving a variable (e.g., x & x) "
"(SA_LOCAL_SELF_COMPUTATION)"
msgstr ""

#: ../../bugDescriptionList.rst:2837
msgid "SA: Self comparison of field with itself (SA_FIELD_SELF_COMPARISON)"
msgstr ""

#: ../../bugDescriptionList.rst:2849
msgid "SA: Self comparison of value with itself (SA_LOCAL_SELF_COMPARISON)"
msgstr ""

#: ../../bugDescriptionList.rst:2861
msgid ""
"UMAC: Uncallable method defined in anonymous class "
"(UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:2876
msgid ""
"IJU: JUnit assertion in run method will not be noticed by JUnit "
"(IJU_ASSERT_METHOD_INVOKED_FROM_RUN_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:2891
msgid "IJU: TestCase declares a bad suite method  (IJU_BAD_SUITE_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:2905
msgid ""
"IJU: TestCase defines setUp that doesn't call super.setUp() "
"(IJU_SETUP_NO_SUPER)"
msgstr ""

#: ../../bugDescriptionList.rst:2916
msgid ""
"IJU: TestCase defines tearDown that doesn't call super.tearDown() "
"(IJU_TEARDOWN_NO_SUPER)"
msgstr ""

#: ../../bugDescriptionList.rst:2927
msgid "IJU: TestCase implements a non-static suite method  (IJU_SUITE_NOT_STATIC)"
msgstr ""

#: ../../bugDescriptionList.rst:2938
msgid "IJU: TestCase has no tests (IJU_NO_TESTS)"
msgstr ""

#: ../../bugDescriptionList.rst:2948
msgid ""
"BOA: Class overrides a method implemented in super class Adapter wrongly "
"(BOA_BADLY_OVERRIDDEN_ADAPTER)"
msgstr ""

#: ../../bugDescriptionList.rst:2960
msgid ""
"SQL: Method attempts to access a result set field with index 0 "
"(BRSA_BAD_RESULTSET_ACCESS)"
msgstr ""

#: ../../bugDescriptionList.rst:2971
msgid ""
"SQL: Method attempts to access a result set field with index 0 "
"(SQL_BAD_RESULTSET_ACCESS)"
msgstr ""

#: ../../bugDescriptionList.rst:2982
msgid ""
"SQL: Method attempts to access a prepared statement parameter with index "
"0 (SQL_BAD_PREPARED_STATEMENT_ACCESS)"
msgstr ""

#: ../../bugDescriptionList.rst:2993
msgid ""
"SIO: Unnecessary type check done using instanceof operator "
"(SIO_SUPERFLUOUS_INSTANCEOF)"
msgstr ""

#: ../../bugDescriptionList.rst:3004
msgid ""
"BAC: Bad Applet Constructor relies on uninitialized AppletStub "
"(BAC_BAD_APPLET_CONSTRUCTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:3018
msgid ""
"EC: equals(...) used to compare incompatible arrays "
"(EC_INCOMPATIBLE_ARRAY_COMPARE)"
msgstr ""

#: ../../bugDescriptionList.rst:3033
msgid ""
"EC: Invocation of equals() on an array, which is equivalent to == "
"(EC_BAD_ARRAY_COMPARE)"
msgstr ""

#: ../../bugDescriptionList.rst:3049
msgid ""
"STI: Unneeded use of currentThread() call, to call interrupted()  "
"(STI_INTERRUPTED_ON_CURRENTTHREAD)"
msgstr ""

#: ../../bugDescriptionList.rst:3062
msgid ""
"STI: Static Thread.interrupted() method invoked on thread instance "
"(STI_INTERRUPTED_ON_UNKNOWNTHREAD)"
msgstr ""

#: ../../bugDescriptionList.rst:3076
msgid ""
"DLS: Useless increment in return statement "
"(DLS_DEAD_LOCAL_INCREMENT_IN_RETURN)"
msgstr ""

#: ../../bugDescriptionList.rst:3090
msgid "DLS: Dead store of class literal (DLS_DEAD_STORE_OF_CLASS_LITERAL)"
msgstr ""

#: ../../bugDescriptionList.rst:3109
msgid ""
"IP: A parameter is dead upon entry to a method but overwritten "
"(IP_PARAMETER_IS_DEAD_BUT_OVERWRITTEN)"
msgstr ""

#: ../../bugDescriptionList.rst:3124
msgid ""
"MF: Method defines a variable that obscures a field "
"(MF_METHOD_MASKS_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:3137
msgid ""
"MF: Class defines field that masks a superclass field "
"(MF_CLASS_MASKS_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:3150
msgid "FE: Doomed test for equality to NaN (FE_TEST_IF_EQUAL_TO_NOT_A_NUMBER)"
msgstr ""

#: ../../bugDescriptionList.rst:3171
msgid ""
"ICAST: int value converted to long and used as absolute time "
"(ICAST_INT_2_LONG_AS_INSTANT)"
msgstr ""

#: ../../bugDescriptionList.rst:3203
msgid ""
"ICAST: Integral value cast to double and then passed to Math.ceil "
"(ICAST_INT_CAST_TO_DOUBLE_PASSED_TO_CEIL)"
msgstr ""

#: ../../bugDescriptionList.rst:3224
msgid ""
"ICAST: int value cast to float and then passed to Math.round "
"(ICAST_INT_CAST_TO_FLOAT_PASSED_TO_ROUND)"
msgstr ""

#: ../../bugDescriptionList.rst:3244
msgid ""
"NP: A known null value is checked to see if it is an instance of a type "
"(NP_NULL_INSTANCEOF)"
msgstr ""

#: ../../bugDescriptionList.rst:3258
msgid ""
"NP: A known null value is checked to see if it is an instance of a type "
"(BC_NULL_INSTANCEOF)"
msgstr ""

#: ../../bugDescriptionList.rst:3272
msgid ""
"DMI: Double.longBitsToDouble invoked on an int "
"(DMI_LONG_BITS_TO_DOUBLE_INVOKED_ON_INT)"
msgstr ""

#: ../../bugDescriptionList.rst:3285
msgid ""
"BC: Impossible cast involving primitive array "
"(BC_IMPOSSIBLE_CAST_PRIMITIVE_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:3297
msgid "BC: Impossible cast (BC_IMPOSSIBLE_CAST)"
msgstr ""

#: ../../bugDescriptionList.rst:3316
msgid "BC: Impossible downcast (BC_IMPOSSIBLE_DOWNCAST)"
msgstr ""

#: ../../bugDescriptionList.rst:3331
msgid ""
"BC: Impossible downcast of toArray() result "
"(BC_IMPOSSIBLE_DOWNCAST_OF_TOARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:3360
msgid "BC: instanceof will always return false (BC_IMPOSSIBLE_INSTANCEOF)"
msgstr ""

#: ../../bugDescriptionList.rst:3373
msgid ""
"RE: \".\" or \"|\" used for regular expression "
"(RE_POSSIBLE_UNINTENDED_PATTERN)"
msgstr ""

#: ../../bugDescriptionList.rst:3391
msgid ""
"RE: Invalid syntax for regular expression "
"(RE_BAD_SYNTAX_FOR_REGULAR_EXPRESSION)"
msgstr ""

#: ../../bugDescriptionList.rst:3405
msgid ""
"RE: File.separator used for regular expression "
"(RE_CANT_USE_FILE_SEPARATOR_AS_REGULAR_EXPRESSION)"
msgstr ""

#: ../../bugDescriptionList.rst:3423
msgid "DLS: Overwritten increment (DLS_OVERWRITTEN_INCREMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:3437
msgid ""
"BSHIFT: 32 bit int shifted by an amount not in the range -31..31 "
"(ICAST_BAD_SHIFT_AMOUNT)"
msgstr ""

#: ../../bugDescriptionList.rst:3454
msgid ""
"BSHIFT: Possible bad parsing of shift operation "
"(BSHIFT_WRONG_ADD_PRIORITY)"
msgstr ""

#: ../../bugDescriptionList.rst:3468
msgid ""
"IM: Integer multiply of result of integer remainder "
"(IM_MULTIPLYING_RESULT_OF_IREM)"
msgstr ""

#: ../../bugDescriptionList.rst:3482
msgid "DMI: Invocation of hashCode on an array (DMI_INVOKING_HASHCODE_ON_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:3499
msgid ""
"USELESS_STRING: Invocation of toString on an array "
"(DMI_INVOKING_TOSTRING_ON_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:3513
msgid ""
"USELESS_STRING: Invocation of toString on an unnamed array "
"(DMI_INVOKING_TOSTRING_ON_ANONYMOUS_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:3527
msgid "DMI: Bad constant value for month (DMI_BAD_MONTH)"
msgstr ""

#: ../../bugDescriptionList.rst:3540
msgid "DMI: hasNext method invokes next (DMI_CALLING_NEXT_FROM_HASNEXT)"
msgstr ""

#: ../../bugDescriptionList.rst:3554
msgid ""
"QBA: Method assigns boolean literal in boolean expression "
"(QBA_QUESTIONABLE_BOOLEAN_ASSIGNMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:3568
msgid ""
"GC: No relationship between generic parameter and method argument "
"(GC_UNRELATED_TYPES)"
msgstr ""

#: ../../bugDescriptionList.rst:3600
msgid "DMI: Vacuous call to collections (DMI_VACUOUS_SELF_COLLECTION_CALL)"
msgstr ""

#: ../../bugDescriptionList.rst:3612
msgid "DMI: D'oh! A nonsensical method invocation (DMI_DOH)"
msgstr ""

#: ../../bugDescriptionList.rst:3625
msgid ""
"DMI: Collections should not contain themselves "
"(DMI_COLLECTIONS_SHOULD_NOT_CONTAIN_THEMSELVES)"
msgstr ""

#: ../../bugDescriptionList.rst:3639
msgid ""
"TQ: Value without a type qualifier used where a value is required to have"
" that qualifier (TQ_UNKNOWN_VALUE_USED_WHERE_ALWAYS_STRICTLY_REQUIRED)"
msgstr ""

#: ../../bugDescriptionList.rst:3660
msgid ""
"TQ: Comparing values with incompatible type qualifiers "
"(TQ_COMPARING_VALUES_WITH_INCOMPATIBLE_TYPE_QUALIFIERS)"
msgstr ""

#: ../../bugDescriptionList.rst:3693
msgid ""
"TQ: Value annotated as carrying a type qualifier used where a value that "
"must not carry that qualifier is required "
"(TQ_ALWAYS_VALUE_USED_WHERE_NEVER_REQUIRED)"
msgstr ""

#: ../../bugDescriptionList.rst:3727
msgid ""
"TQ: Value annotated as never carrying a type qualifier used where value "
"carrying that qualifier is required "
"(TQ_NEVER_VALUE_USED_WHERE_ALWAYS_REQUIRED)"
msgstr ""

#: ../../bugDescriptionList.rst:3750
msgid ""
"TQ: Value that might not carry a type qualifier is always used in a way "
"requires that type qualifier (TQ_MAYBE_SOURCE_VALUE_REACHES_ALWAYS_SINK)"
msgstr ""

#: ../../bugDescriptionList.rst:3764
msgid ""
"TQ: Value that might carry a type qualifier is always used in a way "
"prohibits it from having that type qualifier "
"(TQ_MAYBE_SOURCE_VALUE_REACHES_NEVER_SINK)"
msgstr ""

#: ../../bugDescriptionList.rst:3778
msgid "FB: Unexpected/undesired warning from FindBugs (FB_UNEXPECTED_WARNING)"
msgstr ""

#: ../../bugDescriptionList.rst:3789
msgid ""
"FB: Missing expected or desired warning from FindBugs "
"(FB_MISSING_EXPECTED_WARNING)"
msgstr ""

#: ../../bugDescriptionList.rst:3800
msgid "Experimental (EXPERIMENTAL)"
msgstr ""

#: ../../bugDescriptionList.rst:3801
msgid "Experimental and not fully vetted bug patterns"
msgstr ""

#: ../../bugDescriptionList.rst:3805
msgid "SKIPPED: Class too big for analysis (SKIPPED_CLASS_TOO_BIG)"
msgstr ""

#: ../../bugDescriptionList.rst:3817
msgid "TEST: Unknown bug pattern (UNKNOWN)"
msgstr ""

#: ../../bugDescriptionList.rst:3830
msgid "TEST: Testing (TESTING)"
msgstr ""

#: ../../bugDescriptionList.rst:3841
msgid "TEST: Testing 1  (TESTING1)"
msgstr ""

#: ../../bugDescriptionList.rst:3852
msgid "TEST: Testing 2 (TESTING2)"
msgstr ""

#: ../../bugDescriptionList.rst:3863
msgid "TEST: Testing 3 (TESTING3)"
msgstr ""

#: ../../bugDescriptionList.rst:3874
msgid ""
"OBL: Method may fail to clean up stream or resource "
"(OBL_UNSATISFIED_OBLIGATION)"
msgstr ""

#: ../../bugDescriptionList.rst:3920
msgid ""
"OBL: Method may fail to clean up stream or resource on checked exception "
"(OBL_UNSATISFIED_OBLIGATION_EXCEPTION_EDGE)"
msgstr ""

#: ../../bugDescriptionList.rst:3967
msgid ""
"LG: Potential lost logger changes due to weak reference in OpenJDK "
"(LG_LOST_LOGGER_DUE_TO_WEAK_REFERENCE)"
msgstr ""

#: ../../bugDescriptionList.rst:4003
msgid "Internationalization (I18N)"
msgstr ""

#: ../../bugDescriptionList.rst:4004
msgid "code flaws having to do with internationalization and locale"
msgstr ""

#: ../../bugDescriptionList.rst:4008
msgid ""
"Dm: Consider using Locale parameterized version of invoked method "
"(DM_CONVERT_CASE)"
msgstr ""

#: ../../bugDescriptionList.rst:4024
msgid "Dm: Reliance on default encoding (DM_DEFAULT_ENCODING)"
msgstr ""

#: ../../bugDescriptionList.rst:4034
msgid "Malicious code vulnerability (MALICIOUS_CODE)"
msgstr ""

#: ../../bugDescriptionList.rst:4035
msgid "code that is vulnerable to attacks from untrusted code"
msgstr ""

#: ../../bugDescriptionList.rst:4039
msgid ""
"DP: Method invoked that should be only be invoked inside a doPrivileged "
"block (DP_DO_INSIDE_DO_PRIVILEGED)"
msgstr ""

#: ../../bugDescriptionList.rst:4051
msgid ""
"DP: Classloaders should only be created inside doPrivileged block "
"(DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED)"
msgstr ""

#: ../../bugDescriptionList.rst:4063
msgid ""
"FI: Finalizer should be protected, not public "
"(FI_PUBLIC_SHOULD_BE_PROTECTED)"
msgstr ""

#: ../../bugDescriptionList.rst:4074
msgid ""
"MS: Public static method may expose internal representation by returning "
"array (MS_EXPOSE_REP)"
msgstr ""

#: ../../bugDescriptionList.rst:4088
msgid ""
"EI: May expose internal representation by returning reference to mutable "
"object (EI_EXPOSE_REP)"
msgstr ""

#: ../../bugDescriptionList.rst:4104
msgid ""
"EI2: May expose internal representation by incorporating reference to "
"mutable object (EI_EXPOSE_REP2)"
msgstr ""

#: ../../bugDescriptionList.rst:4120
msgid ""
"MS: May expose internal static state by storing a mutable object into a "
"static field (EI_EXPOSE_STATIC_REP2)"
msgstr ""

#: ../../bugDescriptionList.rst:4135
msgid ""
"MS: Field should be moved out of an interface and made package protected "
"(MS_OOI_PKGPROTECT)"
msgstr ""

#: ../../bugDescriptionList.rst:4155
msgid "MS: Field should be both final and package protected (MS_FINAL_PKGPROTECT)"
msgstr ""

#: ../../bugDescriptionList.rst:4170
msgid "MS: Field isn't final but should be (MS_SHOULD_BE_FINAL)"
msgstr ""

#: ../../bugDescriptionList.rst:4185
msgid ""
"MS: Field isn't final but should be refactored to be so "
"(MS_SHOULD_BE_REFACTORED_TO_BE_FINAL)"
msgstr ""

#: ../../bugDescriptionList.rst:4202
msgid "MS: Field should be package protected (MS_PKGPROTECT)"
msgstr ""

#: ../../bugDescriptionList.rst:4215
msgid "MS: Field is a mutable Hashtable (MS_MUTABLE_HASHTABLE)"
msgstr ""

#: ../../bugDescriptionList.rst:4228
msgid "MS: Field is a mutable array (MS_MUTABLE_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:4241
msgid "MS: Field is a mutable collection (MS_MUTABLE_COLLECTION)"
msgstr ""

#: ../../bugDescriptionList.rst:4254
msgid ""
"MS: Field is a mutable collection which should be package protected "
"(MS_MUTABLE_COLLECTION_PKGPROTECT)"
msgstr ""

#: ../../bugDescriptionList.rst:4268
msgid ""
"MS: Field isn't final and can't be protected from malicious code "
"(MS_CANNOT_BE_FINAL)"
msgstr ""

#: ../../bugDescriptionList.rst:4282
msgid "Multithreaded correctness (MT_CORRECTNESS)"
msgstr ""

#: ../../bugDescriptionList.rst:4283
msgid "code flaws having to do with threads, locks, and volatiles"
msgstr ""

#: ../../bugDescriptionList.rst:4287
msgid ""
"AT: Sequence of calls to concurrent abstraction may not be atomic "
"(AT_OPERATION_SEQUENCE_ON_CONCURRENT_ABSTRACTION)"
msgstr ""

#: ../../bugDescriptionList.rst:4299
msgid "STCAL: Static Calendar field (STCAL_STATIC_CALENDAR_INSTANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:4315
msgid "STCAL: Static DateFormat (STCAL_STATIC_SIMPLE_DATE_FORMAT_INSTANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:4330
msgid "STCAL: Call to static Calendar (STCAL_INVOKE_ON_STATIC_CALENDAR_INSTANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:4343
msgid ""
"STCAL: Call to static DateFormat "
"(STCAL_INVOKE_ON_STATIC_DATE_FORMAT_INSTANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:4356
msgid ""
"NP: Synchronize and null check on the same field. "
"(NP_SYNC_AND_NULL_CHECK_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:4370
msgid ""
"VO: A volatile reference to an array doesn't treat the array elements as "
"volatile (VO_VOLATILE_REFERENCE_TO_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:4385
msgid "VO: An increment to a volatile field isn't atomic (VO_VOLATILE_INCREMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:4398
msgid "Dm: Monitor wait() called on Condition (DM_MONITOR_WAIT_ON_CONDITION)"
msgstr ""

#: ../../bugDescriptionList.rst:4413
msgid ""
"Dm: A thread was created using the default empty run method "
"(DM_USELESS_THREAD)"
msgstr ""

#: ../../bugDescriptionList.rst:4425
msgid "DC: Possible double check of field (DC_DOUBLECHECK)"
msgstr ""

#: ../../bugDescriptionList.rst:4439
msgid ""
"DC: Possible exposure of partially initialized object "
"(DC_PARTIALLY_CONSTRUCTED)"
msgstr ""

#: ../../bugDescriptionList.rst:4454
msgid ""
"DL: Synchronization on interned String  "
"(DL_SYNCHRONIZATION_ON_SHARED_CONSTANT)"
msgstr ""

#: ../../bugDescriptionList.rst:4475
msgid "DL: Synchronization on Boolean (DL_SYNCHRONIZATION_ON_BOOLEAN)"
msgstr ""

#: ../../bugDescriptionList.rst:4499
msgid ""
"DL: Synchronization on boxed primitive "
"(DL_SYNCHRONIZATION_ON_BOXED_PRIMITIVE)"
msgstr ""

#: ../../bugDescriptionList.rst:4521
msgid ""
"DL: Synchronization on boxed primitive values "
"(DL_SYNCHRONIZATION_ON_UNSHARED_BOXED_PRIMITIVE)"
msgstr ""

#: ../../bugDescriptionList.rst:4550
msgid ""
"WL: Synchronization on getClass rather than class literal "
"(WL_USING_GETCLASS_RATHER_THAN_CLASS_LITERAL)"
msgstr ""

#: ../../bugDescriptionList.rst:4584
msgid "ESync: Empty synchronized block (ESync_EMPTY_SYNC)"
msgstr ""

#: ../../bugDescriptionList.rst:4602
msgid "MSF: Mutable servlet field (MSF_MUTABLE_SERVLET_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:4617
msgid "IS: Inconsistent synchronization (IS2_INCONSISTENT_SYNC)"
msgstr ""

#: ../../bugDescriptionList.rst:4651
msgid "NN: Naked notify (NN_NAKED_NOTIFY)"
msgstr ""

#: ../../bugDescriptionList.rst:4670
msgid ""
"Ru: Invokes run on a thread (did you mean to start it instead?) "
"(RU_INVOKE_RUN)"
msgstr ""

#: ../../bugDescriptionList.rst:4683
msgid "SP: Method spins on field (SP_SPIN_ON_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:4696
msgid "TLW: Wait with two locks held (TLW_TWO_LOCK_WAIT)"
msgstr ""

#: ../../bugDescriptionList.rst:4713
msgid "TLW: Notify with two locks held (TLW_TWO_LOCK_NOTIFY)"
msgstr ""

#: ../../bugDescriptionList.rst:4730
msgid "UW: Unconditional wait (UW_UNCOND_WAIT)"
msgstr ""

#: ../../bugDescriptionList.rst:4744
msgid ""
"UG: Unsynchronized get method, synchronized set method "
"(UG_SYNC_SET_UNSYNC_GET)"
msgstr ""

#: ../../bugDescriptionList.rst:4758
msgid "IS: Inconsistent synchronization (IS_INCONSISTENT_SYNC)"
msgstr ""

#: ../../bugDescriptionList.rst:4786
msgid "IS: Field not guarded against concurrent access (IS_FIELD_NOT_GUARDED)"
msgstr ""

#: ../../bugDescriptionList.rst:4796
msgid ""
"ML: Synchronization on field in futile attempt to guard that field "
"(ML_SYNC_ON_FIELD_TO_GUARD_CHANGING_THAT_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:4822
msgid "ML: Method synchronizes on an updated field (ML_SYNC_ON_UPDATED_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:4835
msgid ""
"WS: Class's writeObject() method is synchronized but nothing else is "
"(WS_WRITEOBJECT_SYNC)"
msgstr ""

#: ../../bugDescriptionList.rst:4846
msgid "RS: Class's readObject() method is synchronized (RS_READOBJECT_SYNC)"
msgstr ""

#: ../../bugDescriptionList.rst:4861
msgid "SC: Constructor invokes Thread.start() (SC_START_IN_CTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:4873
msgid "Wa: Wait not in loop  (WA_NOT_IN_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:4886
msgid "Wa: Condition.await() not in loop  (WA_AWAIT_NOT_IN_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:4900
msgid "No: Using notify() rather than notifyAll() (NO_NOTIFY_NOT_NOTIFYALL)"
msgstr ""

#: ../../bugDescriptionList.rst:4913
msgid "UL: Method does not release lock on all paths (UL_UNRELEASED_LOCK)"
msgstr ""

#: ../../bugDescriptionList.rst:4935
msgid ""
"UL: Method does not release lock on all exception paths "
"(UL_UNRELEASED_LOCK_EXCEPTION_PATH)"
msgstr ""

#: ../../bugDescriptionList.rst:4957
msgid "MWN: Mismatched wait() (MWN_MISMATCHED_WAIT)"
msgstr ""

#: ../../bugDescriptionList.rst:4969
msgid "MWN: Mismatched notify() (MWN_MISMATCHED_NOTIFY)"
msgstr ""

#: ../../bugDescriptionList.rst:4981
msgid ""
"LI: Incorrect lazy initialization of instance field "
"(LI_LAZY_INIT_INSTANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:4998
msgid "LI: Incorrect lazy initialization of static field (LI_LAZY_INIT_STATIC)"
msgstr ""

#: ../../bugDescriptionList.rst:5015
msgid ""
"LI: Incorrect lazy initialization and update of static field "
"(LI_LAZY_INIT_UPDATE_STATIC)"
msgstr ""

#: ../../bugDescriptionList.rst:5034
msgid ""
"JLM: Synchronization performed on util.concurrent instance "
"(JLM_JSR166_UTILCONCURRENT_MONITORENTER)"
msgstr ""

#: ../../bugDescriptionList.rst:5051
msgid ""
"JLM: Using monitor style wait methods on util.concurrent abstraction "
"(JML_JSR166_CALLING_WAIT_RATHER_THAN_AWAIT)"
msgstr ""

#: ../../bugDescriptionList.rst:5070
msgid "JLM: Synchronization performed on Lock (JLM_JSR166_LOCK_MONITORENTER)"
msgstr ""

#: ../../bugDescriptionList.rst:5084
msgid ""
"SWL: Method calls Thread.sleep() with a lock held "
"(SWL_SLEEP_WITH_LOCK_HELD)"
msgstr ""

#: ../../bugDescriptionList.rst:5100
msgid ""
"RV: Return value of putIfAbsent ignored, value passed to putIfAbsent "
"reused (RV_RETURN_VALUE_OF_PUTIFABSENT_IGNORED)"
msgstr ""

#: ../../bugDescriptionList.rst:5116
msgid "Bogus random noise (NOISE)"
msgstr ""

#: ../../bugDescriptionList.rst:5117
msgid ""
"Bogus random noise: intended to be useful as a control in data mining "
"experiments, not in finding actual bugs in software"
msgstr ""

#: ../../bugDescriptionList.rst:5123
msgid ""
"NOISE: Bogus warning about a null pointer dereference "
"(NOISE_NULL_DEREFERENCE)"
msgstr ""

#: ../../bugDescriptionList.rst:5133
msgid "NOISE: Bogus warning about a method call (NOISE_METHOD_CALL)"
msgstr ""

#: ../../bugDescriptionList.rst:5143
msgid "NOISE: Bogus warning about a field reference (NOISE_FIELD_REFERENCE)"
msgstr ""

#: ../../bugDescriptionList.rst:5153
msgid "NOISE: Bogus warning about an operation (NOISE_OPERATION)"
msgstr ""

#: ../../bugDescriptionList.rst:5163
msgid "Performance (PERFORMANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:5164
msgid "code that is not necessarily incorrect but may be inefficient"
msgstr ""

#: ../../bugDescriptionList.rst:5168
msgid ""
"HSC: Huge string constants is duplicated across multiple class files "
"(HSC_HUGE_SHARED_STRING_CONSTANT)"
msgstr ""

#: ../../bugDescriptionList.rst:5185
msgid ""
"Dm: The equals and hashCode methods of URL are blocking "
"(DMI_BLOCKING_METHODS_ON_URL)"
msgstr ""

#: ../../bugDescriptionList.rst:5199
msgid "Dm: Maps and sets of URLs can be performance hogs (DMI_COLLECTION_OF_URLS)"
msgstr ""

#: ../../bugDescriptionList.rst:5213
msgid ""
"Dm: Method invokes inefficient new String(String) constructor "
"(DM_STRING_CTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5226
msgid ""
"Dm: Method invokes inefficient new String() constructor "
"(DM_STRING_VOID_CTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5241
msgid "Dm: Method invokes toString() method on a String (DM_STRING_TOSTRING)"
msgstr ""

#: ../../bugDescriptionList.rst:5252
msgid ""
"Dm: Explicit garbage collection; extremely dubious except in benchmarking"
" code (DM_GC)"
msgstr ""

#: ../../bugDescriptionList.rst:5268
msgid ""
"Dm: Method invokes inefficient Boolean constructor; use "
"Boolean.valueOf(...) instead (DM_BOOLEAN_CTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5281
msgid ""
"Bx: Method invokes inefficient Number constructor; use static valueOf "
"instead (DM_NUMBER_CTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5305
msgid ""
"Bx: Method invokes inefficient floating-point Number constructor; use "
"static valueOf instead (DM_FP_NUMBER_CTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5323
msgid ""
"Bx: Method allocates a boxed primitive just to call toString "
"(DM_BOXED_PRIMITIVE_TOSTRING)"
msgstr ""

#: ../../bugDescriptionList.rst:5344
msgid "Bx: Boxing/unboxing to parse a primitive (DM_BOXED_PRIMITIVE_FOR_PARSING)"
msgstr ""

#: ../../bugDescriptionList.rst:5355
msgid "Bx: Boxing a primitive to compare (DM_BOXED_PRIMITIVE_FOR_COMPARE)"
msgstr ""

#: ../../bugDescriptionList.rst:5367
msgid ""
"Bx: Primitive value is unboxed and coerced for ternary operator "
"(BX_UNBOXED_AND_COERCED_FOR_TERNARY_OPERATOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5384
msgid ""
"Bx: Boxed value is unboxed and then immediately reboxed "
"(BX_UNBOXING_IMMEDIATELY_REBOXED)"
msgstr ""

#: ../../bugDescriptionList.rst:5395
msgid ""
"Bx: Primitive value is boxed and then immediately unboxed "
"(BX_BOXING_IMMEDIATELY_UNBOXED)"
msgstr ""

#: ../../bugDescriptionList.rst:5408
msgid ""
"Bx: Primitive value is boxed then unboxed to perform primitive coercion "
"(BX_BOXING_IMMEDIATELY_UNBOXED_TO_PERFORM_COERCION)"
msgstr ""

#: ../../bugDescriptionList.rst:5419
msgid ""
"Dm: Method allocates an object, only to get the class object "
"(DM_NEW_FOR_GETCLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:5430
msgid ""
"Dm: Use the nextInt method of Random rather than nextDouble to generate a"
" random integer (DM_NEXTINT_VIA_NEXTDOUBLE)"
msgstr ""

#: ../../bugDescriptionList.rst:5445
msgid "SS: Unread field: should this field be static? (SS_SHOULD_BE_STATIC)"
msgstr ""

#: ../../bugDescriptionList.rst:5457
msgid "UuF: Unused field (UUF_UNUSED_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:5467
msgid "UrF: Unread field (URF_UNREAD_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:5477
msgid "SIC: Should be a static inner class (SIC_INNER_SHOULD_BE_STATIC)"
msgstr ""

#: ../../bugDescriptionList.rst:5492
msgid ""
"SIC: Could be refactored into a static inner class "
"(SIC_INNER_SHOULD_BE_STATIC_NEEDS_THIS)"
msgstr ""

#: ../../bugDescriptionList.rst:5511
msgid ""
"SIC: Could be refactored into a named static inner class "
"(SIC_INNER_SHOULD_BE_STATIC_ANON)"
msgstr ""

#: ../../bugDescriptionList.rst:5527
msgid "UPM: Private method is never called (UPM_UNCALLED_PRIVATE_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:5540
msgid ""
"SBSC: Method concatenates strings using + in a loop "
"(SBSC_USE_STRINGBUFFER_CONCATENATION)"
msgstr ""

#: ../../bugDescriptionList.rst:5573
msgid ""
"IIL: NodeList.getLength() called in a loop "
"(IIL_ELEMENTS_GET_LENGTH_IN_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:5586
msgid ""
"IIL: Method calls prepareStatement in a loop "
"(IIL_PREPARE_STATEMENT_IN_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:5598
msgid "IIL: Method calls Pattern.compile in a loop (IIL_PATTERN_COMPILE_IN_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:5610
msgid ""
"IIL: Method compiles the regular expression in a loop "
"(IIL_PATTERN_COMPILE_IN_LOOP_INDIRECT)"
msgstr ""

#: ../../bugDescriptionList.rst:5621
msgid "IIO: Inefficient use of String.indexOf(String) (IIO_INEFFICIENT_INDEX_OF)"
msgstr ""

#: ../../bugDescriptionList.rst:5633
msgid ""
"IIO: Inefficient use of String.lastIndexOf(String) "
"(IIO_INEFFICIENT_LAST_INDEX_OF)"
msgstr ""

#: ../../bugDescriptionList.rst:5645
msgid ""
"ITA: Method uses toArray() with zero-length array argument "
"(ITA_INEFFICIENT_TO_ARRAY)"
msgstr ""

#: ../../bugDescriptionList.rst:5661
msgid ""
"WMI: Inefficient use of keySet iterator instead of entrySet iterator "
"(WMI_WRONG_MAP_ITERATOR)"
msgstr ""

#: ../../bugDescriptionList.rst:5673
msgid ""
"UM: Method calls static Math class method on a constant value "
"(UM_UNNECESSARY_MATH)"
msgstr ""

#: ../../bugDescriptionList.rst:5760
msgid ""
"IMA: Method accesses a private member variable of owning class "
"(IMA_INEFFICIENT_MEMBER_ACCESS)"
msgstr ""

#: ../../bugDescriptionList.rst:5775
msgid "Security (SECURITY)"
msgstr ""

#: ../../bugDescriptionList.rst:5776
msgid ""
"A use of untrusted input in a way that could create a remotely "
"exploitable security vulnerability."
msgstr ""

#: ../../bugDescriptionList.rst:5781
msgid ""
"XSS: Servlet reflected cross site scripting vulnerability in error page "
"(XSS_REQUEST_PARAMETER_TO_SEND_ERROR)"
msgstr ""

#: ../../bugDescriptionList.rst:5800
msgid ""
"XSS: Servlet reflected cross site scripting vulnerability "
"(XSS_REQUEST_PARAMETER_TO_SERVLET_WRITER)"
msgstr ""

#: ../../bugDescriptionList.rst:5818
msgid ""
"XSS: JSP reflected cross site scripting vulnerability "
"(XSS_REQUEST_PARAMETER_TO_JSP_WRITER)"
msgstr ""

#: ../../bugDescriptionList.rst:5835
msgid ""
"HRS: HTTP Response splitting vulnerability "
"(HRS_REQUEST_PARAMETER_TO_HTTP_HEADER)"
msgstr ""

#: ../../bugDescriptionList.rst:5853
msgid ""
"HRS: HTTP cookie formed from untrusted input "
"(HRS_REQUEST_PARAMETER_TO_COOKIE)"
msgstr ""

#: ../../bugDescriptionList.rst:5871
msgid "PT: Absolute path traversal in servlet (PT_ABSOLUTE_PATH_TRAVERSAL)"
msgstr ""

#: ../../bugDescriptionList.rst:5891
msgid "PT: Relative path traversal in servlet (PT_RELATIVE_PATH_TRAVERSAL)"
msgstr ""

#: ../../bugDescriptionList.rst:5910
msgid "Dm: Hardcoded constant database password (DMI_CONSTANT_DB_PASSWORD)"
msgstr ""

#: ../../bugDescriptionList.rst:5923
msgid "Dm: Empty database password (DMI_EMPTY_DB_PASSWORD)"
msgstr ""

#: ../../bugDescriptionList.rst:5935
msgid ""
"SQL: Nonconstant string passed to execute or addBatch method on an SQL "
"statement (SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE)"
msgstr ""

#: ../../bugDescriptionList.rst:5949
msgid ""
"SQL: A prepared statement is generated from a nonconstant String "
"(SQL_PREPARED_STATEMENT_GENERATED_FROM_NONCONSTANT_STRING)"
msgstr ""

#: ../../bugDescriptionList.rst:5962
msgid "Dodgy code (STYLE)"
msgstr ""

#: ../../bugDescriptionList.rst:5963
msgid ""
"code that is confusing, anomalous, or written in a way that leads itself "
"to errors. Examples include dead local stores, switch fall through, "
"unconfirmed casts, and redundant null check of value known to be null. "
"More false positives accepted. In previous versions of FindBugs, this "
"category was known as Style."
msgstr ""

#: ../../bugDescriptionList.rst:5973
msgid "CAA: Covariant array assignment to a field (CAA_COVARIANT_ARRAY_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:5989
msgid ""
"CAA: Covariant array is returned from the method "
"(CAA_COVARIANT_ARRAY_RETURN)"
msgstr ""

#: ../../bugDescriptionList.rst:6002
msgid ""
"CAA: Covariant array assignment to a local variable "
"(CAA_COVARIANT_ARRAY_LOCAL)"
msgstr ""

#: ../../bugDescriptionList.rst:6018
msgid "Dm: Call to unsupported method (DMI_UNSUPPORTED_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:6030
msgid ""
"Dm: Thread passed where Runnable expected "
"(DMI_THREAD_PASSED_WHERE_RUNNABLE_EXPECTED)"
msgstr ""

#: ../../bugDescriptionList.rst:6043
msgid ""
"NP: Dereference of the result of readLine() without nullcheck "
"(NP_DEREFERENCE_OF_READLINE_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:6055
msgid ""
"NP: Immediate dereference of the result of readLine() "
"(NP_IMMEDIATE_DEREFERENCE_OF_READLINE)"
msgstr ""

#: ../../bugDescriptionList.rst:6067
msgid "RV: Remainder of 32-bit signed random integer (RV_REM_OF_RANDOM_INT)"
msgstr ""

#: ../../bugDescriptionList.rst:6082
msgid "RV: Remainder of hashCode could be negative (RV_REM_OF_HASHCODE)"
msgstr ""

#: ../../bugDescriptionList.rst:6105
msgid "Eq: Unusual equals method  (EQ_UNUSUAL)"
msgstr ""

#: ../../bugDescriptionList.rst:6118
msgid ""
"Eq: Class doesn't override equals in superclass "
"(EQ_DOESNT_OVERRIDE_EQUALS)"
msgstr ""

#: ../../bugDescriptionList.rst:6135
msgid "NS: Questionable use of non-short-circuit logic (NS_NON_SHORT_CIRCUIT)"
msgstr ""

#: ../../bugDescriptionList.rst:6157
msgid ""
"NS: Potentially dangerous use of non-short-circuit logic "
"(NS_DANGEROUS_NON_SHORT_CIRCUIT)"
msgstr ""

#: ../../bugDescriptionList.rst:6184
msgid "IC: Initialization circularity (IC_INIT_CIRCULARITY)"
msgstr ""

#: ../../bugDescriptionList.rst:6196
msgid ""
"IA: Potentially ambiguous invocation of either an inherited or outer "
"method (IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:6222
msgid ""
"Se: Private readResolve method not inherited by subclasses "
"(SE_PRIVATE_READ_RESOLVE_NOT_INHERITED)"
msgstr ""

#: ../../bugDescriptionList.rst:6234
msgid ""
"Se: Transient field of class that isn't Serializable.  "
"(SE_TRANSIENT_FIELD_OF_NONSERIALIZABLE_CLASS)"
msgstr ""

#: ../../bugDescriptionList.rst:6248
msgid ""
"SF: Switch statement found where one case falls through to the next case "
"(SF_SWITCH_FALLTHROUGH)"
msgstr ""

#: ../../bugDescriptionList.rst:6259
msgid ""
"SF: Switch statement found where default case is missing "
"(SF_SWITCH_NO_DEFAULT)"
msgstr ""

#: ../../bugDescriptionList.rst:6273
msgid ""
"UuF: Unused public or protected field "
"(UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6286
msgid "UrF: Unread public/protected field (URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6299
msgid ""
"QF: Complicated, subtle or wrong increment in for-loop  "
"(QF_QUESTIONABLE_FOR_LOOP)"
msgstr ""

#: ../../bugDescriptionList.rst:6312
msgid ""
"NP: Read of unwritten public or protected field "
"(NP_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6326
msgid ""
"UwF: Field not initialized in constructor but dereferenced without null "
"check (UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR)"
msgstr ""

#: ../../bugDescriptionList.rst:6341
msgid ""
"UwF: Unwritten public or protected field "
"(UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6352
msgid "UC: Useless non-empty void method (UC_USELESS_VOID_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:6368
msgid "UC: Condition has no effect (UC_USELESS_CONDITION)"
msgstr ""

#: ../../bugDescriptionList.rst:6379
msgid ""
"UC: Condition has no effect due to the variable type "
"(UC_USELESS_CONDITION_TYPE)"
msgstr ""

#: ../../bugDescriptionList.rst:6390
msgid "UC: Useless object created (UC_USELESS_OBJECT)"
msgstr ""

#: ../../bugDescriptionList.rst:6406
msgid "UC: Useless object created on stack (UC_USELESS_OBJECT_STACK)"
msgstr ""

#: ../../bugDescriptionList.rst:6417
msgid ""
"RV: Method ignores return value, is this OK? "
"(RV_RETURN_VALUE_IGNORED_INFERRED)"
msgstr ""

#: ../../bugDescriptionList.rst:6438
msgid ""
"RV: Return value of method without side effect is ignored "
"(RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT)"
msgstr ""

#: ../../bugDescriptionList.rst:6459
msgid ""
"RV: Method checks to see if result of String.indexOf is positive "
"(RV_CHECK_FOR_POSITIVE_INDEXOF)"
msgstr ""

#: ../../bugDescriptionList.rst:6472
msgid ""
"RV: Method discards result of readLine after checking if it is non-null "
"(RV_DONT_JUST_NULL_CHECK_READLINE)"
msgstr ""

#: ../../bugDescriptionList.rst:6484
msgid ""
"NP: Parameter must be non-null but is marked as nullable "
"(NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE)"
msgstr ""

#: ../../bugDescriptionList.rst:6497
msgid ""
"NP: Possible null pointer dereference due to return value of called "
"method (NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:6510
msgid ""
"NP: Possible null pointer dereference on branch that might be infeasible "
"(NP_NULL_ON_SOME_PATH_MIGHT_BE_INFEASIBLE)"
msgstr ""

#: ../../bugDescriptionList.rst:6527
msgid "NP: Load of known null value (NP_LOAD_OF_KNOWN_NULL_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:6541
msgid ""
"PZLA: Consider returning a zero length array rather than null "
"(PZLA_PREFER_ZERO_LENGTH_ARRAYS)"
msgstr ""

#: ../../bugDescriptionList.rst:6560
msgid "UCF: Useless control flow (UCF_USELESS_CONTROL_FLOW)"
msgstr ""

#: ../../bugDescriptionList.rst:6579
msgid ""
"UCF: Useless control flow to next line "
"(UCF_USELESS_CONTROL_FLOW_NEXT_LINE)"
msgstr ""

#: ../../bugDescriptionList.rst:6597
msgid ""
"RCN: Redundant nullcheck of value known to be null "
"(RCN_REDUNDANT_NULLCHECK_OF_NULL_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:6608
msgid ""
"RCN: Redundant nullcheck of value known to be non-null "
"(RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:6619
msgid ""
"RCN: Redundant comparison of two null values "
"(RCN_REDUNDANT_COMPARISON_TWO_NULL_VALUES)"
msgstr ""

#: ../../bugDescriptionList.rst:6630
msgid ""
"RCN: Redundant comparison of non-null value to null "
"(RCN_REDUNDANT_COMPARISON_OF_NULL_AND_NONNULL_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:6641
msgid ""
"FS: Non-Boolean argument formatted using %b format specifier "
"(VA_FORMAT_STRING_BAD_CONVERSION_TO_BOOLEAN)"
msgstr ""

#: ../../bugDescriptionList.rst:6655
msgid "SA: Self assignment of local variable (SA_LOCAL_SELF_ASSIGNMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:6674
msgid "INT: Integer remainder modulo 1 (INT_BAD_REM_BY_1)"
msgstr ""

#: ../../bugDescriptionList.rst:6686
msgid "INT: Vacuous comparison of integer value (INT_VACUOUS_COMPARISON)"
msgstr ""

#: ../../bugDescriptionList.rst:6698
msgid ""
"INT: Vacuous bit mask operation on integer value "
"(INT_VACUOUS_BIT_OPERATION)"
msgstr ""

#: ../../bugDescriptionList.rst:6711
msgid "SA: Double assignment of local variable  (SA_LOCAL_DOUBLE_ASSIGNMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:6729
msgid "SA: Double assignment of field (SA_FIELD_DOUBLE_ASSIGNMENT)"
msgstr ""

#: ../../bugDescriptionList.rst:6747
msgid ""
"DLS: Useless assignment in return statement "
"(DLS_DEAD_LOCAL_STORE_IN_RETURN)"
msgstr ""

#: ../../bugDescriptionList.rst:6760
msgid "DLS: Dead store to local variable (DLS_DEAD_LOCAL_STORE)"
msgstr ""

#: ../../bugDescriptionList.rst:6780
msgid ""
"DLS: Dead store to local variable that shadows field "
"(DLS_DEAD_LOCAL_STORE_SHADOWS_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6796
msgid "DLS: Dead store of null to local variable (DLS_DEAD_LOCAL_STORE_OF_NULL)"
msgstr ""

#: ../../bugDescriptionList.rst:6809
msgid ""
"REC: Exception is caught when Exception is not thrown "
"(REC_CATCH_EXCEPTION)"
msgstr ""

#: ../../bugDescriptionList.rst:6835
msgid "FE: Test for floating point equality (FE_FLOATING_POINT_EQUALITY)"
msgstr ""

#: ../../bugDescriptionList.rst:6855
msgid "CD: Test for circular dependencies among classes (CD_CIRCULAR_DEPENDENCY)"
msgstr ""

#: ../../bugDescriptionList.rst:6869
msgid ""
"RI: Class implements same interface as superclass "
"(RI_REDUNDANT_INTERFACES)"
msgstr ""

#: ../../bugDescriptionList.rst:6885
msgid ""
"MTIA: Class extends Struts Action class and uses instance variables "
"(MTIA_SUSPECT_STRUTS_INSTANCE_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6901
msgid ""
"MTIA: Class extends Servlet class and uses instance variables "
"(MTIA_SUSPECT_SERVLET_INSTANCE_FIELD)"
msgstr ""

#: ../../bugDescriptionList.rst:6916
msgid ""
"PS: Class exposes synchronization and semaphores in its public interface "
"(PS_PUBLIC_SEMAPHORES)"
msgstr ""

#: ../../bugDescriptionList.rst:6932
msgid ""
"ICAST: Result of integer multiplication cast to long "
"(ICAST_INTEGER_MULTIPLY_CAST_TO_LONG)"
msgstr ""

#: ../../bugDescriptionList.rst:6959
msgid ""
"ICAST: Integral division result cast to double or float "
"(ICAST_IDIV_CAST_TO_DOUBLE)"
msgstr ""

#: ../../bugDescriptionList.rst:6989
msgid ""
"BC: Questionable cast to concrete collection "
"(BC_BAD_CAST_TO_CONCRETE_COLLECTION)"
msgstr ""

#: ../../bugDescriptionList.rst:7006
msgid "BC: Unchecked/unconfirmed cast (BC_UNCONFIRMED_CAST)"
msgstr ""

#: ../../bugDescriptionList.rst:7020
msgid ""
"BC: Unchecked/unconfirmed cast of return value from method "
"(BC_UNCONFIRMED_CAST_OF_RETURN_VALUE)"
msgstr ""

#: ../../bugDescriptionList.rst:7035
msgid "BC: instanceof will always return true (BC_VACUOUS_INSTANCEOF)"
msgstr ""

#: ../../bugDescriptionList.rst:7051
msgid ""
"BC: Questionable cast to abstract collection  "
"(BC_BAD_CAST_TO_ABSTRACT_COLLECTION)"
msgstr ""

#: ../../bugDescriptionList.rst:7067
msgid ""
"IM: Check for oddness that won't work for negative numbers  "
"(IM_BAD_CHECK_FOR_ODD)"
msgstr ""

#: ../../bugDescriptionList.rst:7081
msgid ""
"IM: Computation of average could overflow "
"(IM_AVERAGE_COMPUTATION_COULD_OVERFLOW)"
msgstr ""

#: ../../bugDescriptionList.rst:7103
msgid ""
"BSHIFT: Unsigned right shift cast to short/byte "
"(ICAST_QUESTIONABLE_UNSIGNED_RIGHT_SHIFT)"
msgstr ""

#: ../../bugDescriptionList.rst:7118
msgid ""
"DMI: Code contains a hard coded reference to an absolute pathname "
"(DMI_HARDCODED_ABSOLUTE_FILENAME)"
msgstr ""

#: ../../bugDescriptionList.rst:7130
msgid ""
"DMI: Invocation of substring(0), which returns the original value "
"(DMI_USELESS_SUBSTRING)"
msgstr ""

#: ../../bugDescriptionList.rst:7142
msgid ""
"ST: Write to static field from instance method "
"(ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:7155
msgid ""
"DMI: Non serializable object written to ObjectOutput "
"(DMI_NONSERIALIZABLE_OBJECT_WRITTEN)"
msgstr ""

#: ../../bugDescriptionList.rst:7168
msgid "DB: Method uses the same code for two branches (DB_DUPLICATE_BRANCHES)"
msgstr ""

#: ../../bugDescriptionList.rst:7181
msgid ""
"DB: Method uses the same code for two switch clauses "
"(DB_DUPLICATE_SWITCH_CLAUSES)"
msgstr ""

#: ../../bugDescriptionList.rst:7195
msgid ""
"XFB: Method directly allocates a specific implementation of xml "
"interfaces (XFB_XML_FACTORY_BYPASS)"
msgstr ""

#: ../../bugDescriptionList.rst:7216
msgid ""
"USM: Method superfluously delegates to parent class method "
"(USM_USELESS_SUBCLASS_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:7229
msgid ""
"USM: Abstract Method is already defined in implemented interface "
"(USM_USELESS_ABSTRACT_METHOD)"
msgstr ""

#: ../../bugDescriptionList.rst:7242
msgid "CI: Class is final but declares protected field (CI_CONFUSED_INHERITANCE)"
msgstr ""

#: ../../bugDescriptionList.rst:7257
msgid ""
"TQ: Value required to not have type qualifier, but marked as unknown "
"(TQ_EXPLICIT_UNKNOWN_SOURCE_VALUE_REACHES_NEVER_SINK)"
msgstr ""

#: ../../bugDescriptionList.rst:7271
msgid ""
"TQ: Value required to have type qualifier, but marked as unknown "
"(TQ_EXPLICIT_UNKNOWN_SOURCE_VALUE_REACHES_ALWAYS_SINK)"
msgstr ""

#: ../../bugDescriptionList.rst:7285
msgid ""
"NP: Method relaxes nullness annotation on return value "
"(NP_METHOD_RETURN_RELAXING_ANNOTATION)"
msgstr ""

#: ../../bugDescriptionList.rst:7298
msgid ""
"NP: Method tightens nullness annotation on parameter "
"(NP_METHOD_PARAMETER_TIGHTENS_ANNOTATION)"
msgstr ""

#: ../../bugDescriptionList.rst:7310
msgid ""
"NP: Method tightens nullness annotation on parameter "
"(NP_METHOD_PARAMETER_RELAXING_ANNOTATION)"
msgstr ""

