Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Arthanareeswaran2016-05-09 07:01:33 +0000
committerJay Arthanareeswaran2016-05-09 07:56:15 +0000
commit9caf485e5ad96a448586a9a5e7e5dfe7b9a3d316 (patch)
tree90d56fe36be9b569921c0b8f6c065d510cd92c9f
parent8aae6f7b85c1387099ce3ac2cf12858c1e62f848 (diff)
downloadeclipse.platform.common-9caf485e5ad96a448586a9a5e7e5dfe7b9a3d316.tar.gz
eclipse.platform.common-9caf485e5ad96a448586a9a5e7e5dfe7b9a3d316.tar.xz
eclipse.platform.common-9caf485e5ad96a448586a9a5e7e5dfe7b9a3d316.zip
Adding new options for Neon (4.6)
-rw-r--r--bundles/org.eclipse.jdt.doc.isv/guide/jdt_api_options.htm508
1 files changed, 427 insertions, 81 deletions
diff --git a/bundles/org.eclipse.jdt.doc.isv/guide/jdt_api_options.htm b/bundles/org.eclipse.jdt.doc.isv/guide/jdt_api_options.htm
index 9e633994b..b68dc1568 100644
--- a/bundles/org.eclipse.jdt.doc.isv/guide/jdt_api_options.htm
+++ b/bundles/org.eclipse.jdt.doc.isv/guide/jdt_api_options.htm
@@ -3,7 +3,7 @@
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta name="copyright" content=
-"Copyright (c) IBM Corporation and others 2000, 2015. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." />
+"Copyright (c) IBM Corporation and others 2000, 2016. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link rel="STYLESHEET" href="../book.css" charset="ISO-8859-1" type="text/css" />
@@ -382,6 +382,31 @@ bigger).</td>
</tr>
<tr>
+<td colspan="2"><a name="COMPILER_NONNULL_ANNOTATION_SECONDARY_NAMES" id="COMPILER_NONNULL_ANNOTATION_SECONDARY_NAMES"></a>
+<b>Names of Secondary Annotation Types for Non-Null Types</b>
+(<b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NONNULL_ANNOTATION_SECONDARY_NAMES">COMPILER_NONNULL_ANNOTATION_SECONDARY_NAMES</a></b>)
+</td>
+</tr>
+<tr valign="top">
+<td>This option defines a comma-separated list of fully qualified Java type names
+ that the compiler may use to perform special null analysis.
+ <p>The annotation types identified by the names in this list are interpreted in the same way
+ as the annotation identified by {@link #COMPILER_NONNULL_ANNOTATION_NAME}.
+ The intention is to support libraries using different sets of null annotations,
+ in addition to those used by the current project. Secondary null annotations should not be
+ used in the project's own source code.</p>
+ <p>JDT will never actively use any secondary annotation names from this list,
+ i.e., inferred null annotations and content assist proposals mentioning null annotations
+ are always rendered using the primary name from
+ <a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NONNULL_ANNOTATION_NAME">COMPILER_NONNULL_ANNOTATION_NAME</a>.</p>
+ <p>This option only has an effect if the option
+ <a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_ANNOTATION_NULL_ANALYSIS">COMPILER_ANNOTATION_NULL_ANALYSIS</a> is enabled.</p>
+</td>
+<td>The qualified name of a Java annotation type<br/>
+<b>Default is: <code>""</code></b></td>
+</tr>
+
+<tr>
<td colspan="2"><b>Name of Annotation Type for Nullable Types</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NULLABLE_ANNOTATION_NAME">COMPILER_NULLABLE_ANNOTATION_NAME</a></b>)</td>
</tr>
@@ -407,6 +432,29 @@ bigger).</td>
</tr>
<tr>
+<td colspan="2"><b>Names of Secondary Annotation Types for Nullable Types</b> (<b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NULLABLE_ANNOTATION_SECONDARY_NAMES">COMPILER_NULLABLE_ANNOTATION_SECONDARY_NAMES</a></b>)</td>
+</tr>
+<tr valign="top">
+<td>This option defines a comma-separated list of fully qualified Java type names
+that the compiler may use to perform special null analysis.
+ <p>The annotation types identified by the names in this list are interpreted in the same way
+ as the annotation identified by <a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NULLABLE_ANNOTATION_NAME">COMPILER_NULLABLE_ANNOTATION_NAME</a>.
+ The intention is to support libraries using different sets of null annotations,
+ in addition to those used by the current project. Secondary null annotations should not be
+ used in the project's own source code.</p>
+ <p>JDT will never actively use any secondary annotation names from this list,
+ i.e., inferred null annotations and content assist proposals mentioning null annotations
+ are always rendered using the primary name from <a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NULLABLE_ANNOTATION_NAME">COMPILER_NULLABLE_ANNOTATION_NAME</a>.</p>
+ <p>This option only has an effect if the option <a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_ANNOTATION_NULL_ANALYSIS">COMPILER_ANNOTATION_NULL_ANALYSIS</a> is enabled.</p>
+</td>
+<td>The qualified name of a Java annotation type<br/>
+<b>Default is: <code>""</code></b></td>
+</tr>
+
+<tr>
<td colspan="2"><a name="COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME" id="COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME"></a><b>Name of Annotation Type to specify a nullness default for unannotated types.</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME">COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME</a></b>)</td>
</tr>
@@ -425,18 +473,39 @@ bigger).</td>
</tr>
<tr>
+<td colspan="2"><a name="COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_SECONDARY_NAMES" id="COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_SECONDARY_NAMES"></a>
+<b>Names of Secondary Annotation Types to specify a nullness default for unannotated types</b>
+(<b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_SECONDARY_NAMES">COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_SECONDARY_NAMES</a></b>)</td>
+</tr>
+<tr valign="top">
+<td>This option defines a comma-separated list of fully qualified Java type names
+that the compiler may use to perform special null analysis.
+<p>The annotation types identified by the names in this list are interpreted in the same way
+ as the annotation identified by <a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME">COMPILER_NONNULL_BY_DEFAULT_ANNOTATION_NAME</a>.
+ The intention is to support libraries using different sets of null annotations,
+ in addition to those used by the current project. Secondary null annotations should not be
+ used in the project's own source code.</p>
+ <p>This option only has an effect if the option <a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_ANNOTATION_NULL_ANALYSIS">COMPILER_ANNOTATION_NULL_ANALYSIS</a> is enabled.</p>
+</td>
+<td>The qualified name of a Java annotatin type<br/>
+<b>Default is: <code>""</code></b></td>
+</tr>
+
+<tr>
<td colspan="2"><b>Reporting Use of Annotation Type as Super Interface</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_ANNOTATION_SUPER_INTERFACE">COMPILER_PB_ANNOTATION_SUPER_INTERFACE</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever an annotation
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever an annotation
type is used as a super-interface. Though legal, this is discouraged.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
-
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
</tr>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
@@ -446,7 +515,7 @@ type is used as a super-interface. Though legal, this is discouraged.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_ASSERT_IDENTIFIER">COMPILER_PB_ASSERT_IDENTIFIER</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever 'assert' is
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever 'assert' is
used as an identifier (reserved keyword in 1.4)</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -456,6 +525,9 @@ used as an identifier (reserved keyword in 1.4)</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -464,7 +536,7 @@ used as an identifier (reserved keyword in 1.4)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a boxing or an
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a boxing or an
unboxing conversion is performed.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -472,6 +544,9 @@ unboxing conversion is performed.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -481,7 +556,7 @@ unboxing conversion is performed.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a char[]
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a char[]
expression is used in String concatenations (e.g. "hello" + new char[]{'w','o','r','l','d'}).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -490,6 +565,9 @@ expression is used in String concatenations (e.g. "hello" + new char[]{'w','o','
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -498,7 +576,7 @@ expression is used in String concatenations (e.g. "hello" + new char[]{'w','o','
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will signal use of deprecated API either as an error or
+<td rowspan="4">When enabled, the compiler will signal use of deprecated API either as an error or
a warning.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -507,6 +585,9 @@ a warning.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -543,7 +624,7 @@ deprecated one.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when referring to a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when referring to a
type with discouraged access, as defined according to the access rule specifications.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -552,6 +633,9 @@ type with discouraged access, as defined according to the access rule specificat
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -560,7 +644,7 @@ type with discouraged access, as defined according to the access rule specificat
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if an empty statement
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if an empty statement
or a unnecessary semicolon is encountered.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -568,6 +652,9 @@ or a unnecessary semicolon is encountered.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -577,7 +664,7 @@ or a unnecessary semicolon is encountered.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever 'enum' is used
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever 'enum' is used
as an identifier (reserved keyword in 1.5).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -586,6 +673,9 @@ as an identifier (reserved keyword in 1.5).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -594,7 +684,7 @@ as an identifier (reserved keyword in 1.5).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a case may be
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a case may be
entered by falling through a preceding, non empty case.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -602,6 +692,9 @@ entered by falling through a preceding, non empty case.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -630,7 +723,7 @@ they still carry an error indicator to make them more severe than regular warnin
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a field
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a field
declaration is hiding some field or local variable (either locally, inherited or defined in
enclosing type).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -639,6 +732,9 @@ enclosing type).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -648,7 +744,7 @@ enclosing type).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a generic type
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a generic type
parameter is associated with a bound corresponding to a final type; since final types cannot be
further extended, the parameter is pretty useless.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -658,6 +754,9 @@ further extended, the parameter is pretty useless.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -666,7 +765,7 @@ further extended, the parameter is pretty useless.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a finally block
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a finally block
does not complete normally.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -675,6 +774,9 @@ does not complete normally.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -683,7 +785,7 @@ does not complete normally.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when referring to a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when referring to a
type that is non accessible, as defined according to the access rule specifications.</td>
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR"><i>ERROR</i></a></b></td>
@@ -692,6 +794,9 @@ type that is non accessible, as defined according to the access rule specificati
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -700,7 +805,7 @@ type that is non accessible, as defined according to the access rule specificati
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a type overrides
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a type overrides
Object.equals(Object) but does not override hashCode().</td>
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR"><i>ERROR</i></a></b></td>
@@ -709,6 +814,9 @@ Object.equals(Object) but does not override hashCode().</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -717,7 +825,7 @@ Object.equals(Object) but does not override hashCode().</td>
</tr>
<tr valign="top">
-<td rowspan="3">Local to a try statement, some catch blocks may hide others , e.g.
+<td rowspan="4">Local to a try statement, some catch blocks may hide others , e.g.
<pre>
try {
throw new java.io.CharConversionException();
@@ -733,7 +841,9 @@ corresponding to checked exceptions.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
-
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -768,7 +878,7 @@ statement.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_INCOMPATIBLE_NON_INHERITED_INTERFACE_METHOD">COMPILER_PB_INCOMPATIBLE_NON_INHERITED_INTERFACE_METHOD</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever an interface
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever an interface
defines a method incompatible with a non-inherited Object one.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -778,6 +888,9 @@ defines a method incompatible with a non-inherited Object one.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -786,7 +899,7 @@ defines a method incompatible with a non-inherited Object one.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever an enum switch
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever an enum switch
statement lacks a default case. If no default case is given, additionally one error or warning is issued
regarding each enum constant for which a corresponding case label is lacking.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -795,6 +908,9 @@ regarding each enum constant for which a corresponding case label is lacking.</t
<td><b><i><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -804,7 +920,7 @@ regarding each enum constant for which a corresponding case label is lacking.</t
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a static field
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a static field
or method is accessed in an indirect way. A reference to a static member should preferably be
qualified with its declaring type name.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -813,6 +929,9 @@ qualified with its declaring type name.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -822,7 +941,7 @@ qualified with its declaring type name.</td>
</tr>
<tr valign="top">
-<td rowspan="3">This is the generic control for the severity of Javadoc problems. When enabled, the
+<td rowspan="4">This is the generic control for the severity of Javadoc problems. When enabled, the
compiler will issue an error or a warning for a problem in Javadoc.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -830,6 +949,9 @@ compiler will issue an error or a warning for a problem in Javadoc.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -917,7 +1039,7 @@ problems will be ignored.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_LOCAL_VARIABLE_HIDING">COMPILER_PB_LOCAL_VARIABLE_HIDING</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a local
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a local
variable declaration is hiding some field or local variable (either locally, inherited or defined
in enclosing type).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -927,6 +1049,9 @@ in enclosing type).</td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -947,7 +1072,7 @@ maximum is zero then all problems are reported).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_MISSING_STATIC_ON_METHOD">COMPILER_PB_MISSING_STATIC_ON_METHOD</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a method has not
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a method has not
been declared as <code>static</code>, even though it qualifies as one.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -956,6 +1081,9 @@ been declared as <code>static</code>, even though it qualifies as one.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -966,7 +1094,7 @@ been declared as <code>static</code>, even though it qualifies as one.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a method has not
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a method has not
been declared as <code>static</code>, even though it may qualify as one, when another method
doesn't override it.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -975,6 +1103,9 @@ doesn't override it.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -984,7 +1115,7 @@ doesn't override it.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_METHOD_WITH_CONSTRUCTOR_NAME">COMPILER_PB_METHOD_WITH_CONSTRUCTOR_NAME</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">Naming a method with a constructor name is generally considered poor style
+<td rowspan="4">Naming a method with a constructor name is generally considered poor style
programming. When enabling this option, the compiler will signal such scenarios either as an error
or a warning.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -993,6 +1124,9 @@ or a warning.</td>
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
@@ -1002,7 +1136,7 @@ or a warning.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_MISSING_DEPRECATED_ANNOTATION">COMPILER_PB_MISSING_DEPRECATED_ANNOTATION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever encountering a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever encountering a
declaration carrying a @deprecated doc tag but having no corresponding @Deprecated annotation.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1011,6 +1145,9 @@ declaration carrying a @deprecated doc tag but having no corresponding @Deprecat
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1020,7 +1157,7 @@ declaration carrying a @deprecated doc tag but having no corresponding @Deprecat
</tr>
<tr valign="top">
-<td rowspan="3">This is the generic control for the severity of missing Javadoc comment problems.
+<td rowspan="4">This is the generic control for the severity of missing Javadoc comment problems.
When enabled, the compiler will issue an error or a warning when Javadoc comments are
missing.<br />
Note that this diagnosis can be enabled based on the visibility of the construct associated with
@@ -1031,6 +1168,9 @@ the expected Javadoc.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1076,7 +1216,7 @@ problems will be ignored.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will report a warning or an error for any Javadoc tag
+<td rowspan="4">When enabled, the compiler will report a warning or an error for any Javadoc tag
missing a required description.<br />
The severity of the problem is controlled with option <a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_INVALID_JAVADOC">COMPILER_PB_INVALID_JAVADOC</a>.
@@ -1124,7 +1264,7 @@ JAVADOC_TAG_DESCRIPTION_NO_TAG</a></b></td>
</tr>
<tr valign="top">
-<td rowspan="3">This is the generic control for the severity of Javadoc missing tag problems. When
+<td rowspan="4">This is the generic control for the severity of Javadoc missing tag problems. When
enabled, the compiler will issue an error or a warning when tags are missing in Javadoc
comments.<br />
Note that this diagnosis can be enabled based on the visibility of the construct associated with
@@ -1135,6 +1275,9 @@ the Javadoc.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1196,13 +1339,15 @@ problems will be ignored.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_MISSING_OVERRIDE_ANNOTATION">COMPILER_PB_MISSING_OVERRIDE_ANNOTATION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever encountering a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever encountering a
method declaration which overrides a superclass method but has no @Override annotation.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
-
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
</tr>
<tr valign="top">
<td><b><a href=
@@ -1234,7 +1379,7 @@ Class</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_MISSING_SERIAL_VERSION">COMPILER_PB_MISSING_SERIAL_VERSION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a serializable
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a serializable
class is missing a local declaration of a serialVersionUID field. This field must be declared as
static final and be of type long.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1242,9 +1387,12 @@ static final and be of type long.</td>
<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
-
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -1252,7 +1400,7 @@ static final and be of type long.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NO_EFFECT_ASSIGNMENT">COMPILER_PB_NO_EFFECT_ASSIGNMENT</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever an assignment
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever an assignment
has no effect (e.g. 'x = x').</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1262,6 +1410,9 @@ has no effect (e.g. 'x = x').</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -1270,7 +1421,7 @@ has no effect (e.g. 'x = x').</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning for non externalized
+<td rowspan="4">When enabled, the compiler will issue an error or a warning for non externalized
String literal (i.e. non tagged with //$NON-NLS-&lt;n&gt;$).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1278,6 +1429,9 @@ String literal (i.e. non tagged with //$NON-NLS-&lt;n&gt;$).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -1288,7 +1442,7 @@ String literal (i.e. non tagged with //$NON-NLS-&lt;n&gt;$).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NONNULL_PARAMETER_ANNOTATION_DROPPED">COMPILER_PB_NONNULL_PARAMETER_ANNOTATION_DROPPED</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">
+<td rowspan="4">
When enabled, the compiler will issue an error or a warning against a parameter of
a method that overrides an inherited method if all of the following hold:
<ul>
@@ -1310,6 +1464,44 @@ in order to make this (legal) change of contract explicit.
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
+</tr>
+
+<tr>
+<td colspan="2"><a name="COMPILER_PB_NONNULL_TYPEVAR_FROM_LEGACY_INVOCATION" id="COMPILER_PB_NONNULL_TYPEVAR_FROM_LEGACY_INVOCATION"></a><b>Reporting Unsafe NonNull Interpretation Of Type Variables</b>
+(<b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NONNULL_TYPEVAR_FROM_LEGACY_INVOCATION">COMPILER_PB_NONNULL_TYPEVAR_FROM_LEGACY_INVOCATION</a></b>)</td>
+</tr>
+<tr valign="top">
+<td rowspan="4">
+When enabled, the compiler will issue an error or a warning against a method call
+if all of the following hold:
+<ul>
+<li>The method's declared return type is a type variable without any null annotation.</li>
+<li>For the given invocation this type variable is substituted with a nonnull type.</li>
+<li>The type declaring the method is provided by a third-party library.</li>
+<li>No null annotations exist for this library type, neither in its class file nor using external annotations.</li>
+</ul>
+<p>This particular situation leverages the option to consistently substitute all occurrences of a type variable
+with a nonnull type, but it bears the risk that the library type may not be aware of null annotations thus lacking
+a necessary <code>@Nullable</code> annotation for a particular occurrence of a type variable.</p>
+<p>This option only has an effect if the option <a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_ANNOTATION_NULL_ANALYSIS">COMPILER_ANNOTATION_NULL_ANALYSIS</a> is enabled and when
+the configured set of null annotations declares the target <code>TYPE_USE</code>.</p>
+</td>
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
+</tr>
+<tr valign="top">
+<td><b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1319,7 +1511,7 @@ in order to make this (legal) change of contract explicit.
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NULL_REFERENCE">COMPILER_PB_NULL_REFERENCE</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a variable
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a variable
that is statically known to hold a null value is used to access a field or method.<br />
Errors or warnings raised due to this option arising as a consequence of asserts can be controlled
by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NULL_ANALYSIS</a>
@@ -1331,6 +1523,9 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1339,7 +1534,7 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NULL_UNCHECKED_CONVERSION">COMPILER_PB_NULL_UNCHECKED_CONVERSION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever one of the
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever one of the
following situations is detected:
<ol>
<li>A method declared with a nonnull annotation returns an expression for which
@@ -1366,10 +1561,35 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
<td><b><i><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
+<td><b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
+</tr>
+<tr>
+<td colspan="2"><b>Reporting problems detected by pessimistic null analysis for free type variables</b> (<b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_PESSIMISTIC_NULL_ANALYSIS_FOR_FREE_TYPE_VARIABLES">COMPILER_PB_PESSIMISTIC_NULL_ANALYSIS_FOR_FREE_TYPE_VARIABLES</a></b>)</td>
+</tr>
+<tr valign="top">
+<td rowspan="4">Unless set to <code>"ignore"</code>, type variables not affected by any explicit null annotation are pessimistically analyzed
+ in two directions: When reading a value of this type, it is assumed to be nullable. When this type appears as the required type
+ (i.e., at the left hand side of an assignment or variable initialization, or as the method return type against which a return statement
+ is being checked) the type is considered to require the nonnull property.
+ <p>Problems reported due to this pessimistic analysis are reported with the level given in this option.</p>
+</td>
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
+</tr>
+<tr>
+<td><b><i><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
-
<tr>
<td colspan="2"><b>Reporting Violations of Null Specifications</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NULL_SPECIFICATION_VIOLATION">COMPILER_PB_NULL_SPECIFICATION_VIOLATION</a></b>)</td>
@@ -1411,7 +1631,7 @@ following situations is detected:
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a method is
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a method is
overriding another method without calling the super invocation.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1419,6 +1639,9 @@ overriding another method without calling the super invocation.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1429,7 +1652,7 @@ Potential Null Dereference</b> (<b><a href=
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a variable
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a variable
that has formerly been tested against null but is not (no more) statically known to hold a non-null
value is used to access a field or method.<br />
Errors or warnings raised due to this option arising as a consequence of asserts can be controlled
@@ -1441,6 +1664,9 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1450,7 +1676,7 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT">COMPILER_PB_NULL_ANNOTATION_INFERENCE_CONFLICT</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever one of the
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever one of the
following situations is detected:
<ol>
<li>A method declared with a nonnull annotation returns an expression that is
@@ -1474,6 +1700,9 @@ following situations is detected:
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1483,7 +1712,7 @@ Null Check</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_REDUNDANT_NULL_CHECK">COMPILER_PB_REDUNDANT_NULL_CHECK</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a variable
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a variable
that is statically known to hold a null or a non-null value is tested against null.<br />
Errors or warnings raised due to this option arising as a consequence of asserts can be controlled
by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NULL_ANALYSIS</a>
@@ -1495,6 +1724,9 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1504,7 +1736,7 @@ by <a href="#INCLUDE_ASSERTS_IN_NULL_ANALYSIS">COMPILER_PB_INCLUDE_ASSERTS_IN_NU
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_REDUNDANT_NULL_ANNOTATION">COMPILER_PB_REDUNDANT_NULL_ANNOTATION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a non-null annotation
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a non-null annotation
(see <a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_NONNULL_ANNOTATION_NAME">COMPILER_NONNULL_ANNOTATION_NAME</a>)
is applied although the same effect is already achieved by a default applicable at the
current location. Such a default may be effective by using the annotation specified by the option
@@ -1522,6 +1754,9 @@ current location. Such a default may be effective by using the annotation specif
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1530,7 +1765,7 @@ current location. Such a default may be effective by using the annotation specif
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_MISSING_NONNULL_BY_DEFAULT_ANNOTATION">COMPILER_PB_MISSING_NONNULL_BY_DEFAULT_ANNOTATION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3"><p>When enabled, the compiler will issue an error or a warning in the following cases:</p>
+<td rowspan="4"><p>When enabled, the compiler will issue an error or a warning in the following cases:</p>
<ul>
<li> When a package does not contain a default nullness annotation, as a result of missing package-info.java
or missing default nullness annotation in package-info.java.</li>
@@ -1545,6 +1780,9 @@ or missing default nullness annotation in package-info.java.</li>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -1554,7 +1792,7 @@ Specification of type arguments for generic class instance creation</b> (<b><a h
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_REDUNDANT_TYPE_ARGUMENTS">COMPILER_PB_REDUNDANT_TYPE_ARGUMENTS</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever type arguments
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever type arguments
are specified in a generic instance creation expression, although the diamond operator '&lt;&gt;' could have
been used instead.<br />
@@ -1565,6 +1803,9 @@ been used instead.<br />
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1574,7 +1815,7 @@ been used instead.<br />
</tr>
<tr valign="top">
-<td rowspan="3">A package visible method, which is any method that is not explicitly declared as
+<td rowspan="4">A package visible method, which is any method that is not explicitly declared as
public, protected or private, is not visible from other packages, and thus cannot be overridden
from another package. Attempting to override a package visible method from another package
introduces a new method that is unrelated to the original one. When enabling this option, the
@@ -1586,6 +1827,9 @@ compiler will signal such situations as an error or a warning.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></i></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -1594,7 +1838,7 @@ compiler will signal such situations as an error or a warning.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a parameter is
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a parameter is
assigned to.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1602,6 +1846,9 @@ assigned to.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1611,7 +1858,7 @@ assigned to.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a boolean assignment
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a boolean assignment
is acting as the condition of a control statement (where it probably was meant to be a boolean
comparison).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1620,6 +1867,9 @@ comparison).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1629,7 +1879,7 @@ comparison).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when detecting
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when detecting
references to raw types. Raw types are discouraged, and are intended to help interfacing with
legacy code. In the future, the language specification may reject raw references to generic
types.</td>
@@ -1640,6 +1890,9 @@ types.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -1648,7 +1901,7 @@ types.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a type explicitly
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a type explicitly
implements an interface that is already implemented by any of its supertypes.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1656,6 +1909,9 @@ implements an interface that is already implemented by any of its supertypes.</t
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1680,7 +1936,7 @@ type).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a static field
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a static field
or method is accessed with an expression receiver.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1689,6 +1945,9 @@ or method is accessed with an expression receiver.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -1745,7 +2004,7 @@ at low risk given that the same field reference was known to be non-null immedia
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_SYNTHETIC_ACCESS_EMULATION">COMPILER_PB_SYNTHETIC_ACCESS_EMULATION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever it emulates
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever it emulates
access to a non-accessible member of an enclosing type. Such access can have performance
implications.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1755,6 +2014,9 @@ implications.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -1764,7 +2026,7 @@ implications.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a type
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a type
parameter declaration is hiding some type.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1773,6 +2035,9 @@ parameter declaration is hiding some type.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1800,7 +2065,7 @@ use raw types in the first place.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever an operation
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever an operation
involves generic types, and potentially invalidates type safety since involving raw types (e.g.
invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1810,6 +2075,9 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1818,7 +2086,7 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNCLOSED_CLOSEABLE">COMPILER_PB_UNCLOSED_CLOSEABLE</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if
a local variable holds a value of type <code>java.lang.AutoCloseable</code> (compliance &gt;= 1.7)
or a value of type <code>java.io.Closeable</code> (compliance &lt;= 1.6) and if
flow analysis shows that the method <code>close()</code> is not invoked locally on that value.</td>
@@ -1829,6 +2097,9 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -1837,7 +2108,7 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_POTENTIALLY_UNCLOSED_CLOSEABLE">COMPILER_PB_POTENTIALLY_UNCLOSED_CLOSEABLE</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if
a local variable holds a value of type <code>java.lang.AutoCloseable</code> (compliance &gt;= 1.7)
or a value of type <code>java.io.Closeable</code> (compliance &lt;= 1.6) and if
flow analysis shows that the method <code>close()</code> is
@@ -1849,6 +2120,9 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1857,7 +2131,7 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_EXPLICITLY_CLOSED_AUTOCLOSEABLE">COMPILER_PB_EXPLICITLY_CLOSED_AUTOCLOSEABLE</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if a local variable
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if a local variable
holds a value of type <code>java.lang.AutoCloseable</code>, and if the method
<code>close()</code> is explicitly invoked on that resource, but the resource is
not managed by a try-with-resources block.</td>
@@ -1868,6 +2142,8 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr><tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1876,13 +2152,15 @@ invoking #foo(X&lt;String&gt;) with arguments (X)).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNDOCUMENTED_EMPTY_BLOCK">COMPILER_PB_UNDOCUMENTED_EMPTY_BLOCK</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when an empty block is
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when an empty block is
detected and it is not documented with any comment.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
-
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
</tr>
<tr valign="top">
<td><b><a href=
@@ -1893,7 +2171,7 @@ detected and it is not documented with any comment.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNHANDLED_WARNING_TOKEN">COMPILER_PB_UNHANDLED_WARNING_TOKEN</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when encountering a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when encountering a
token it cannot handle inside a @SuppressWarnings annotation.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1903,6 +2181,9 @@ token it cannot handle inside a @SuppressWarnings annotation.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -1911,7 +2192,7 @@ token it cannot handle inside a @SuppressWarnings annotation.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a statement is
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a statement is
unnecessarily nested within an else clause (in situation where then clause is not completing
normally).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1920,6 +2201,9 @@ normally).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -1929,7 +2213,7 @@ normally).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a cast or an
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a cast or an
instanceof operation is unnecessary.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -1937,6 +2221,9 @@ instanceof operation is unnecessary.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -1946,7 +2233,7 @@ instanceof operation is unnecessary.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a field is access
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a field is access
without any qualification. In order to improve code readability, it should be qualified, e.g. 'x'
should rather be written 'this.x'.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -1955,6 +2242,9 @@ should rather be written 'this.x'.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -1964,7 +2254,7 @@ should rather be written 'this.x'.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when a method or a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when a method or a
constructor is declaring a checked exception as thrown, but its body actually raises neither that
exception, nor any other exception extending it.<br />
This diagnostic is further tuned by options <a href=
@@ -1994,6 +2284,9 @@ WHEN_OVERRIDING</a>.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -2123,7 +2416,7 @@ INCLUDE_DOC_COMMENT_REFERENCE</a>.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNUSED_LABEL">COMPILER_PB_UNUSED_LABEL</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when encountering a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when encountering a
labeled statement which label is never explicitly referenced. A label is considered to be
referenced if its name explicitly appears within a break or continue statement; for instance the
following label would be considered unreferenced:<br />
@@ -2133,7 +2426,9 @@ following label would be considered unreferenced:<br />
<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
-
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
</tr>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
@@ -2143,7 +2438,7 @@ following label would be considered unreferenced:<br />
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNUSED_TYPE_PARAMETER">COMPILER_PB_UNUSED_TYPE_PARAMETER</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning for unused type parameter.</td>
+<td rowspan="4">When enabled, the compiler will issue an error or a warning for unused type parameter.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
<tr valign="top">
@@ -2151,6 +2446,9 @@ following label would be considered unreferenced:<br />
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -2159,7 +2457,7 @@ following label would be considered unreferenced:<br />
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning for unused import
+<td rowspan="4">When enabled, the compiler will issue an error or a warning for unused import
reference.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -2168,6 +2466,9 @@ reference.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -2176,7 +2477,7 @@ reference.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning for unused local
+<td rowspan="4">When enabled, the compiler will issue an error or a warning for unused local
variables (i.e. variables never read from).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -2185,6 +2486,9 @@ variables (i.e. variables never read from).</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -2194,7 +2498,7 @@ variables (i.e. variables never read from).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning if an object is
+<td rowspan="4">When enabled, the compiler will issue an error or a warning if an object is
allocated but never used, neither by holding a reference nor by invoking one of the object's
methods.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -2203,6 +2507,9 @@ methods.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -2212,7 +2519,7 @@ methods.</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning for unused method
+<td rowspan="4">When enabled, the compiler will issue an error or a warning for unused method
parameters (i.e. parameters never read from).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -2220,6 +2527,9 @@ parameters (i.e. parameters never read from).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -2275,7 +2585,7 @@ The severity of the unused parameter problem is controlled with option
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNUSED_EXCEPTION_PARAMETER">COMPILER_PB_UNUSED_EXCEPTION_PARAMETER</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning for unused exception
+<td rowspan="4">When enabled, the compiler will issue an error or a warning for unused exception
parameters (that is, the thrown exception is never read from).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -2283,6 +2593,9 @@ parameters (that is, the thrown exception is never read from).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><i><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></i></b></td>
</tr>
@@ -2292,7 +2605,7 @@ parameters (that is, the thrown exception is never read from).</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a private
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a private
method or field is declared but never used within the same unit.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
</tr>
@@ -2301,6 +2614,9 @@ method or field is declared but never used within the same unit.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -2310,7 +2626,7 @@ method or field is declared but never used within the same unit.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNUSED_TYPE_ARGUMENTS_FOR_METHOD_INVOCATION">COMPILER_PB_UNUSED_TYPE_ARGUMENTS_FOR_METHOD_INVOCATION</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever type arguments
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever type arguments
are encountered for a non-generic method invocation.<br />
Note that prior to compliance level <code>"1.7"</code>, this situation would automatically result
into an error. From Java 7 on, unused type arguments are tolerated, and optionally warned
@@ -2320,7 +2636,9 @@ against.</td>
<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
-
+</tr>
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
</tr>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
@@ -2330,7 +2648,7 @@ against.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#COMPILER_PB_UNUSED_WARNING_TOKEN">COMPILER_PB_UNUSED_WARNING_TOKEN</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning when encountering a
+<td rowspan="4">When enabled, the compiler will issue an error or a warning when encountering a
<code>@SuppressWarnings</code> annotation for which no corresponding warning got detected in the
code. This diagnostic is provided to help developers to get rid of transient
@@ -2345,6 +2663,9 @@ Note that <code>@SuppressWarnings("all")</code> is still silencing the warning f
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -2354,7 +2675,7 @@ Note that <code>@SuppressWarnings("all")</code> is still silencing the warning f
</tr>
<tr valign="top">
-<td rowspan="3">When enabled, the compiler will issue an error or a warning whenever a varargs
+<td rowspan="4">When enabled, the compiler will issue an error or a warning whenever a varargs
arguments should be cast when passed to a method/constructor invocation. (e.g.
Class.getMethod(String name, Class ... args ) invoked with arguments ("foo", null)).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -2364,6 +2685,9 @@ Class.getMethod(String name, Class ... args ) invoked with arguments ("foo", nul
"../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING"><i>WARNING</i></a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
<tr>
@@ -2705,7 +3029,7 @@ single project.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#CORE_OUTPUT_LOCATION_OVERLAPPING_ANOTHER_SOURCE">CORE_OUTPUT_LOCATION_OVERLAPPING_ANOTHER_SOURCE</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">Indicate the severity of the problem reported when a source entry's output location overlaps another
+<td rowspan="4">Indicate the severity of the problem reported when a source entry's output location overlaps another
source entry.</td>
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR"><i>ERROR</i></a></b></td>
@@ -2714,6 +3038,9 @@ source entry.</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE">IGNORE</a></b></td>
</tr>
@@ -2735,7 +3062,7 @@ It is offered as a convenience shortcut only.</td>
"../reference/api/org/eclipse/jdt/core/JavaCore.html#CORE_INCOMPATIBLE_JDK_LEVEL">CORE_INCOMPATIBLE_JDK_LEVEL</a></b>)</td>
</tr>
<tr valign="top">
-<td rowspan="3">Indicate the severity of the problem reported when a project prerequisites another
+<td rowspan="4">Indicate the severity of the problem reported when a project prerequisites another
project or library with an incompatible target JDK level (e.g. project targeting 1.1 vm, but
compiled against 1.4 libraries).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#ERROR">ERROR</a></b></td>
@@ -2745,6 +3072,9 @@ compiled against 1.4 libraries).</td>
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#WARNING">WARNING</a></b></td>
</tr>
<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#INFO">INFO</a></b></td>
+</tr>
+<tr valign="top">
<td><b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#IGNORE"><i>IGNORE</i></a></b></td>
</tr>
@@ -6860,6 +7190,22 @@ pattern.</td>
<tr valign="top">
<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#DISABLED">DISABLED</a></b></td>
</tr>
+
+<tr>
+<td colspan="2"><b>Activate Substring Code Completion</b> (<b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#CODEASSIST_SUBSTRING_MATCH">CODEASSIST_SUBSTRING_MATCH</a></b>)</td>
+</tr>
+<tr valign="top">
+<td rowspan="2">When enabled, completion shows proposals in which the pattern can
+be found as a substring in a case-insensitive way.</td>
+<td><b><a href=
+"../reference/api/org/eclipse/jdt/core/JavaCore.html#ENABLED"><i>ENABLED</i></a></b></td>
+</tr>
+
+<tr valign="top">
+<td><b><a href="../reference/api/org/eclipse/jdt/core/JavaCore.html#DISABLED">DISABLED</a></b></td>
+</tr>
+
<tr>
<td colspan="2"><b>Activate Deprecation Sensitive Completion</b> (<b><a href=
"../reference/api/org/eclipse/jdt/core/JavaCore.html#CODEASSIST_DEPRECATION_CHECK">CODEASSIST_DEPRECATION_CHECK</a></b>)</td>

Back to the top