compiler.properties revision 3451:a8fefe4d1826
175374Sbp#
275374Sbp# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
375374Sbp# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
475374Sbp#
575374Sbp# This code is free software; you can redistribute it and/or modify it
675374Sbp# under the terms of the GNU General Public License version 2 only, as
775374Sbp# published by the Free Software Foundation.  Oracle designates this
875374Sbp# particular file as subject to the "Classpath" exception as provided
975374Sbp# by Oracle in the LICENSE file that accompanied this code.
1075374Sbp#
1175374Sbp# This code is distributed in the hope that it will be useful, but WITHOUT
1275374Sbp# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
1375374Sbp# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1475374Sbp# version 2 for more details (a copy is included in the LICENSE file that
1575374Sbp# accompanied this code).
1675374Sbp#
1775374Sbp# You should have received a copy of the GNU General Public License version
1875374Sbp# 2 along with this work; if not, write to the Free Software Foundation,
1975374Sbp# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
2075374Sbp#
2175374Sbp# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2275374Sbp# or visit www.oracle.com if you need additional information or have any
2375374Sbp# questions.
2475374Sbp#
2575374Sbp
2675374Sbp# Messages in this file which use "placeholders" for values (e.g. {0}, {1})
2775374Sbp# are preceded by a stylized comment describing the type of the corresponding
2875374Sbp# values.
2975374Sbp# The simple types currently in use are:
3075374Sbp#
3175374Sbp# boolean           true or false
32116189Sobrien# diagnostic        a sub-message; see compiler.misc.*
33116189Sobrien# fragment          similar to 'message segment', but with more specific type
34116189Sobrien# modifier          a Java modifier; e.g. public, private, protected
35116189Sobrien# file              a file URL
3675374Sbp# file object       a file URL - similar to 'file' but typically used for source/class files, hence more specific
3775374Sbp# name              a name, typically a Java identifier
3895533Smike# number            an integer
3975374Sbp# option name       the name of a command line option
4075374Sbp# source version    a source version number, such as 1.5, 1.6, 1.7
4175374Sbp# string            a general string
4275374Sbp# symbol            the name of a declared type
4375374Sbp# symbol kind       the kind of a symbol (i.e. method, variable)
4475374Sbp# kind name         an informative description of the kind of a declaration; see compiler.misc.kindname.*
4575374Sbp# token             the name of a non-terminal in source code; see compiler.misc.token.*
4675374Sbp# type              a Java type; e.g. int, X, X<T>
4775374Sbp# object            a Java object (unspecified)
4875374Sbp# unused            the value is not used in this message
4975374Sbp#
5075374Sbp# The following compound types are also used:
5175374Sbp#
5275374Sbp# list of X         a comma-separated list of items; e.g. list of type
5375374Sbp# set of X          a comma-separated collection of items; e.g. set of modifier
5475374Sbp#
5575374Sbp# These may be composed:
5675374Sbp#
5775374Sbp# list of type or message segment
5875374Sbp#
5975374Sbp# The following type aliases are supported:
6075374Sbp#
6175374Sbp# message segment --> diagnostic or fragment
6275374Sbp# file name --> file or file object
6375374Sbp#
6475374Sbp# Custom comments are supported in parenthesis i.e.
6575374Sbp#
6675374Sbp# number (classfile major version)
6775374Sbp#
6875374Sbp# These comments are used internally in order to generate an enum-like class declaration containing
6975374Sbp# a method/field for each of the diagnostic keys listed here. Those methods/fields can then be used
7075374Sbp# by javac code to build diagnostics in a type-safe fashion.
7175374Sbp#
72111119Simp# In addition, these comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
7375374Sbp# using info derived from the collected set of examples in test/tools/javac/diags/examples.
7475374Sbp# MessageInfo can also be run as a standalone utility providing more facilities
7575374Sbp# for manipulating this file. For more details, see MessageInfo.java.
7675374Sbp
7775374Sbp##
7875374Sbp## errors
7975374Sbp##
8075374Sbp
8175374Sbp# 0: symbol
8275374Sbpcompiler.err.abstract.cant.be.instantiated=\
8375374Sbp    {0} is abstract; cannot be instantiated
8475374Sbp
8575374Sbpcompiler.err.abstract.meth.cant.have.body=\
8675374Sbp    abstract methods cannot have a body
8775374Sbp
8875374Sbpcompiler.err.already.annotated=\
8975374Sbp    {0} {1} has already been annotated
9075374Sbp
9175374Sbp# 0: symbol kind, 1: symbol, 2: symbol kind, 3: symbol
9275374Sbpcompiler.err.already.defined=\
9375374Sbp    {0} {1} is already defined in {2} {3}
9475374Sbp
9575374Sbp# 0: symbol kind, 1: symbol, 2: symbol kind, 3: symbol kind, 4: symbol
9675374Sbpcompiler.err.already.defined.in.clinit=\
9775374Sbp    {0} {1} is already defined in {2} of {3} {4}
9875374Sbp
9975374Sbp# 0: string
10075374Sbpcompiler.err.already.defined.single.import=\
10175374Sbp    a type with the same simple name is already defined by the single-type-import of {0}
10275374Sbp
10375374Sbp# 0: string
10475374Sbpcompiler.err.already.defined.static.single.import=\
10575374Sbp    a type with the same simple name is already defined by the static single-type-import of {0}
10675374Sbp
10775374Sbpcompiler.err.already.defined.this.unit=\
10875374Sbp    {0} is already defined in this compilation unit
10975374Sbp
11075374Sbp# 0: type, 1: list of name
11175374Sbpcompiler.err.annotation.missing.default.value=\
11275374Sbp    annotation @{0} is missing a default value for the element ''{1}''
11375374Sbp
11475374Sbp# 0: type, 1: list of name
11575374Sbpcompiler.err.annotation.missing.default.value.1=\
11675374Sbp    annotation @{0} is missing default values for elements {1}
117124087Stjr
11875374Sbp# 0: type
11975374Sbpcompiler.err.annotation.not.valid.for.type=\
12075374Sbp    annotation not valid for an element of type {0}
12175374Sbp
12275374Sbpcompiler.err.annotation.type.not.applicable=\
12375374Sbp    annotation type not applicable to this kind of declaration
12475374Sbp
12575374Sbp# 0: type
12675374Sbpcompiler.err.annotation.type.not.applicable.to.type=\
12775374Sbp    annotation @{0} not applicable in this type context
12875374Sbp
129124087Stjrcompiler.err.annotation.value.must.be.annotation=\
130103391Sbp    annotation value must be an annotation
131124087Stjr
132124087Stjrcompiler.err.annotation.value.must.be.class.literal=\
133124087Stjr    annotation value must be a class literal
134124087Stjr
135124087Stjrcompiler.err.annotation.value.must.be.name.value=\
136124087Stjr    annotation values must be of the form ''name=value''
137124087Stjr
138124087Stjrcompiler.err.annotation.value.not.allowable.type=\
139124087Stjr    annotation value not of an allowable type
140124087Stjr
141124087Stjrcompiler.err.anon.class.impl.intf.no.args=\
142124087Stjr    anonymous class implements interface; cannot have arguments
14375374Sbp
14475374Sbpcompiler.err.anon.class.impl.intf.no.typeargs=\
14575374Sbp    anonymous class implements interface; cannot have type arguments
14675374Sbp
14775374Sbpcompiler.err.anon.class.impl.intf.no.qual.for.new=\
14875374Sbp    anonymous class implements interface; cannot have qualifier for new
14975374Sbp
15075374Sbpcompiler.err.cant.inherit.from.anon=\
15175374Sbp    cannot inherit from anonymous class
15275374Sbp
15375374Sbp# 0: symbol, 1: symbol, 2: symbol
15475374Sbpcompiler.err.array.and.varargs=\
15575374Sbp    cannot declare both {0} and {1} in {2}
15675374Sbp
15775374Sbpcompiler.err.array.dimension.missing=\
15875374Sbp    array dimension missing
15975374Sbp
16075374Sbp# 0: type
16175374Sbpcompiler.err.array.req.but.found=\
16275374Sbp    array required, but {0} found
16375374Sbp
16475374Sbpcompiler.err.attribute.value.must.be.constant=\
16575374Sbp    element value must be a constant expression
16675374Sbp
16775374Sbp# 0: string (statement type)
16875374Sbpcompiler.err.bad.initializer=\
16975374Sbp    bad initializer for {0}
17075374Sbp
17175374Sbpcompiler.err.break.outside.switch.loop=\
17275374Sbp    break outside switch or loop
17375374Sbp
17475374Sbp# 0: name
17575374Sbpcompiler.err.call.must.be.first.stmt.in.ctor=\
17675374Sbp    call to {0} must be first statement in constructor
17775374Sbp
17875374Sbp# 0: symbol kind, 1: name, 2: list of type or message segment, 3: list of type or message segment, 4: symbol kind, 5: type, 6: message segment
17975374Sbpcompiler.err.cant.apply.symbol=\
18075374Sbp    {0} {1} in {4} {5} cannot be applied to given types;\n\
18175374Sbp    required: {2}\n\
18275374Sbp    found: {3}\n\
18375374Sbp    reason: {6}
18475374Sbp
18575374Sbp# 0: symbol kind, 1: name, 2: list of type
18675374Sbpcompiler.err.cant.apply.symbols=\
18775374Sbp    no suitable {0} found for {1}({2})
18875374Sbp
18975374Sbp# 0: symbol kind, 1: name, 2: list of type or message segment, 3: list of type or message segment, 4: symbol kind, 5: type, 6: message segment
19075374Sbpcompiler.misc.cant.apply.symbol=\
19175374Sbp    {0} {1} in {4} {5} cannot be applied to given types\n\
19275374Sbp    required: {2}\n\
19375374Sbp    found: {3}\n\
19475374Sbp    reason: {6}
19575374Sbp
19675374Sbp# 0: symbol kind, 1: name, 2: list of type
19775374Sbpcompiler.misc.cant.apply.symbols=\
19875374Sbp    no suitable {0} found for {1}({2})
199112888Sjeff
20075374Sbp# 0: symbol kind, 1: symbol
20175374Sbpcompiler.misc.no.abstracts=\
20275374Sbp    no abstract method found in {0} {1}
20375374Sbp
20475374Sbp# 0: symbol kind, 1: symbol
20575374Sbpcompiler.misc.incompatible.abstracts=\
20675374Sbp    multiple non-overriding abstract methods found in {0} {1}
20775374Sbp
20875374Sbpcompiler.err.bad.functional.intf.anno=\
20975374Sbp    Unexpected @FunctionalInterface annotation
21075374Sbp
21175374Sbp# 0: message segment
21275374Sbpcompiler.err.bad.functional.intf.anno.1=\
21375374Sbp    Unexpected @FunctionalInterface annotation\n\
21475374Sbp    {0}
21575374Sbp
21675374Sbp# 0: message segment
21775374Sbpcompiler.err.anonymous.diamond.method.does.not.override.superclass=\
21875374Sbp    method does not override or implement a method from a supertype\n\
21975374Sbp    {0}
22075374Sbp
22175374Sbp# 0: symbol
22275374Sbpcompiler.misc.not.a.functional.intf=\
22375374Sbp    {0} is not a functional interface
22475374Sbp
22575374Sbp# 0: symbol, 1: message segment
22675374Sbpcompiler.misc.not.a.functional.intf.1=\
22775374Sbp    {0} is not a functional interface\n\
22875374Sbp    {1}
22975374Sbp
23075374Sbp# 0: symbol, 1: symbol kind, 2: symbol
23175374Sbpcompiler.misc.invalid.generic.lambda.target=\
23275374Sbp    invalid functional descriptor for lambda expression\n\
23375374Sbp    method {0} in {1} {2} is generic
23475374Sbp
23575374Sbp# 0: symbol kind, 1: symbol
23675374Sbpcompiler.misc.incompatible.descs.in.functional.intf=\
23775374Sbp    incompatible function descriptors found in {0} {1}
23875374Sbp
23975374Sbp# 0: name, 1: list of type, 2: type, 3: list of type
24075374Sbpcompiler.misc.descriptor=\
24175374Sbp    descriptor: {2} {0}({1})
24275374Sbp
24375374Sbp# 0: name, 1: list of type, 2: type, 3: list of type
24475374Sbpcompiler.misc.descriptor.throws=\
24575374Sbp    descriptor: {2} {0}({1}) throws {3}
24675374Sbp
24775374Sbp# 0: type
24875374Sbpcompiler.misc.no.suitable.functional.intf.inst=\
24975374Sbp    cannot infer functional interface descriptor for {0}
25075374Sbp
25175374Sbp# 0: message segment
25275374Sbpcompiler.misc.bad.intersection.target.for.functional.expr=\
25375374Sbp    bad intersection type target for lambda or method reference\n\
25475374Sbp    {0}
25575374Sbp
25675374Sbp# 0: symbol or type
257107940Srobertcompiler.misc.not.an.intf.component=\
25875374Sbp    component type {0} is not an interface
25975374Sbp
26075374Sbp# 0: symbol kind, 1: message segment
26175374Sbpcompiler.err.invalid.mref=\
26275374Sbp    invalid {0} reference\n\
26375374Sbp    {1}
26475374Sbp
265112888Sjeff# 0: symbol kind, 1: message segment
26675374Sbpcompiler.misc.invalid.mref=\
26775374Sbp    invalid {0} reference\n\
26875374Sbp    {1}
26975374Sbp
27075374Sbpcompiler.misc.static.mref.with.targs=\
27175374Sbp    parameterized qualifier on static method reference
27275374Sbp
27375374Sbp# 0: symbol
27475374Sbpcompiler.err.cant.assign.val.to.final.var=\
27575374Sbp    cannot assign a value to final variable {0}
27675374Sbp
27775374Sbpcompiler.err.cant.assign.val.to.this=\
27875374Sbp    cannot assign to ''this''
27975374Sbp
28075374Sbp# 0: symbol, 1: message segment
28175374Sbpcompiler.err.cant.ref.non.effectively.final.var=\
28275374Sbp    local variables referenced from {1} must be final or effectively final
28375374Sbp
28475374Sbpcompiler.err.try.with.resources.expr.needs.var=\
28575374Sbp    the try-with-resources resource must either be a variable declaration or an expression denoting \
28675374Sbpa reference to a final or effectively final variable
28775374Sbp
28875374Sbp# 0: symbol
28975374Sbpcompiler.err.try.with.resources.expr.effectively.final.var=\
29075374Sbp    variable {0} used as a try-with-resources resource neither final nor effectively final
29175374Sbp
29275374Sbp
29375374Sbpcompiler.misc.lambda=\
29475374Sbp    a lambda expression
29575374Sbp
29675374Sbpcompiler.misc.inner.cls=\
29775374Sbp    an inner class
29875374Sbp
29975374Sbp# 0: type
30075374Sbpcompiler.err.cant.deref=\
30175374Sbp    {0} cannot be dereferenced
30275374Sbp
30375374Sbpcompiler.err.cant.extend.intf.annotation=\
30475374Sbp    ''extends'' not allowed for @interfaces
30575374Sbp
30675374Sbp# 0: symbol
30775374Sbpcompiler.err.cant.inherit.from.final=\
30875374Sbp    cannot inherit from final {0}
30975374Sbp
31075374Sbp# 0: symbol
31175374Sbpcompiler.err.cant.ref.before.ctor.called=\
31275374Sbp    cannot reference {0} before supertype constructor has been called
31375374Sbp
31475374Sbpcompiler.err.cant.select.static.class.from.param.type=\
31575374Sbp    cannot select a static class from a parameterized type
31675374Sbp
31775374Sbp# 0: symbol, 1: string, 2: string
31875374Sbpcompiler.err.cant.inherit.diff.arg=\
31975374Sbp    {0} cannot be inherited with different arguments: <{1}> and <{2}>
32075374Sbp
32175374Sbpcompiler.err.catch.without.try=\
32275374Sbp    ''catch'' without ''try''
32375374Sbp
32475374Sbp# 0: symbol kind, 1: symbol
32575374Sbpcompiler.err.clash.with.pkg.of.same.name=\
32675374Sbp    {0} {1} clashes with package of same name
32775374Sbp
32875374Sbpcompiler.err.class.not.allowed=\
32975374Sbp    class, interface or enum declaration not allowed here
33075374Sbp
33175374Sbpcompiler.err.const.expr.req=\
33275374Sbp    constant expression required
33375374Sbp
33475374Sbpcompiler.err.cont.outside.loop=\
33575374Sbp    continue outside of loop
33675374Sbp
33775374Sbp# 0: symbol
33875374Sbpcompiler.err.cyclic.inheritance=\
33975374Sbp    cyclic inheritance involving {0}
34075374Sbp
34175374Sbp# 0: symbol
34275374Sbpcompiler.err.cyclic.annotation.element=\
34375374Sbp    type of element {0} is cyclic
34475374Sbp
34575374Sbp# 0: unused
34675374Sbpcompiler.err.call.to.super.not.allowed.in.enum.ctor=\
34775374Sbp    call to super not allowed in enum constructor
34875374Sbp
34975374Sbp# 0: type
35075374Sbpcompiler.err.no.superclass=\
35175374Sbp    {0} has no superclass.
35275374Sbp
35375374Sbp# 0: symbol, 1: type, 2: symbol, 3: type, 4: unused
35475374Sbpcompiler.err.concrete.inheritance.conflict=\
35575374Sbp    methods {0} from {1} and {2} from {3} are inherited with the same signature
35675374Sbp
35775374Sbpcompiler.err.default.allowed.in.intf.annotation.member=\
35875374Sbp    default value only allowed in an annotation type declaration
35975374Sbp
36075374Sbp# 0: symbol
36175374Sbpcompiler.err.doesnt.exist=\
362124087Stjr    package {0} does not exist
363124087Stjr
364124087Stjr# 0: type
365124087Stjrcompiler.err.duplicate.annotation.invalid.repeated=\
36675374Sbp    annotation {0} is not a valid repeatable annotation
36775374Sbp
36875374Sbp# 0: name, 1: type
36975374Sbpcompiler.err.duplicate.annotation.member.value=\
37075374Sbp    duplicate element ''{0}'' in annotation @{1}.
37175374Sbp
37275374Sbp# 0: name, 1: unused
37375374Sbpcompiler.err.duplicate.annotation.missing.container=\
37475374Sbp    {0} is not a repeatable annotation type
37575374Sbp
37675374Sbp# 0: type, 1: unused
37775374Sbpcompiler.err.invalid.repeatable.annotation=\
37875374Sbp    duplicate annotation: {0} is annotated with an invalid @Repeatable annotation
37975374Sbp
38075374Sbp# 0: symbol or type
38175374Sbpcompiler.err.invalid.repeatable.annotation.no.value=\
38275374Sbp    {0} is not a valid @Repeatable, no value element method declared
38375374Sbp
38475374Sbp# 0: type, 1: number
385111119Simpcompiler.err.invalid.repeatable.annotation.multiple.values=\
38675374Sbp    {0} is not a valid @Repeatable, {1} element methods named ''value'' declared
38775374Sbp
38875374Sbp# 0: type
38975374Sbpcompiler.err.invalid.repeatable.annotation.invalid.value=\
39075374Sbp    {0} is not a valid @Repeatable: invalid value element
39175374Sbp
39275374Sbp# 0: symbol or type, 1: unused, 2: type
39375374Sbpcompiler.err.invalid.repeatable.annotation.value.return=\
39475374Sbp    containing annotation type ({0}) must declare an element named ''value'' of type {2}
39575374Sbp
39675374Sbp# 0: symbol or type, 1: symbol
39775374Sbpcompiler.err.invalid.repeatable.annotation.elem.nondefault=\
39875374Sbp    containing annotation type ({0}) does not have a default value for element {1}
39975374Sbp
40075374Sbp# 0: symbol, 1: unused, 2: symbol, 3: unused
40175374Sbpcompiler.err.invalid.repeatable.annotation.retention=\
40275374Sbp    retention of containing annotation type ({0}) is shorter than the retention of repeatable annotation type ({2})
40375374Sbp
40475374Sbp# 0: symbol, 1: symbol
40575374Sbpcompiler.err.invalid.repeatable.annotation.not.documented=\
40675374Sbp    repeatable annotation type ({1}) is @Documented while containing annotation type ({0}) is not
40775374Sbp
40875374Sbp# 0: symbol, 1: symbol
40975374Sbpcompiler.err.invalid.repeatable.annotation.not.inherited=\
41075374Sbp    repeatable annotation type ({1}) is @Inherited while containing annotation type ({0}) is not
41175374Sbp
41275374Sbp# 0: symbol, 1: symbol
41375374Sbpcompiler.err.invalid.repeatable.annotation.incompatible.target=\
41475374Sbp    containing annotation type ({0}) is applicable to more targets than repeatable annotation type ({1})
41575374Sbp
41675374Sbp# 0: symbol
41775374Sbpcompiler.err.invalid.repeatable.annotation.repeated.and.container.present=\
41875374Sbp    container {0} must not be present at the same time as the element it contains
41975374Sbp
42075374Sbp# 0: type, 1: symbol
42175374Sbpcompiler.err.invalid.repeatable.annotation.not.applicable=\
42275374Sbp    container {0} is not applicable to element {1}
42375374Sbp
42475374Sbp# 0: type
42575374Sbpcompiler.err.invalid.repeatable.annotation.not.applicable.in.context=\
42675374Sbp    container {0} is not applicable in this type context
42775374Sbp
42875374Sbp# 0: name
42975374Sbpcompiler.err.duplicate.class=\
43075374Sbp    duplicate class: {0}
43175374Sbp
43275374Sbpcompiler.err.duplicate.case.label=\
43375374Sbp    duplicate case label
43475374Sbp
435111119Simpcompiler.err.duplicate.default.label=\
43675374Sbp    duplicate default label
43775374Sbp
438103554Sphkcompiler.err.else.without.if=\
43975374Sbp    ''else'' without ''if''
44075374Sbp
44175374Sbpcompiler.err.empty.char.lit=\
44275374Sbp    empty character literal
44375374Sbp
44475374Sbp# 0: symbol
44575374Sbpcompiler.err.encl.class.required=\
44675374Sbp    an enclosing instance that contains {0} is required
44775374Sbp
44875374Sbpcompiler.err.enum.annotation.must.be.enum.constant=\
44975374Sbp    an enum annotation value must be an enum constant
45075374Sbp
45175374Sbpcompiler.err.enum.cant.be.instantiated=\
45275374Sbp    enum types may not be instantiated
45375374Sbp
45475374Sbpcompiler.err.enum.label.must.be.unqualified.enum=\
45575374Sbp    an enum switch case label must be the unqualified name of an enumeration constant
45675374Sbp
45775374Sbpcompiler.err.enum.no.subclassing=\
45875374Sbp    classes cannot directly extend java.lang.Enum
45975374Sbp
46075374Sbpcompiler.err.enum.types.not.extensible=\
46175374Sbp    enum types are not extensible
46275374Sbp
46375374Sbpcompiler.err.enum.no.finalize=\
46475374Sbp    enums cannot have finalize methods
46575374Sbp
46675374Sbp# 0: file name, 1: string
46775374Sbpcompiler.err.error.reading.file=\
46875374Sbp    error reading {0}; {1}
46975374Sbp
47088741Sbp# 0: type
47188741Sbpcompiler.err.except.already.caught=\
47275374Sbp    exception {0} has already been caught
47375374Sbp
47475374Sbp# 0: type
47575374Sbpcompiler.err.except.never.thrown.in.try=\
47675374Sbp    exception {0} is never thrown in body of corresponding try statement
47775374Sbp
47875374Sbp# 0: symbol
47975374Sbpcompiler.err.final.parameter.may.not.be.assigned=\
48075374Sbp    final parameter {0} may not be assigned
48175374Sbp
48275374Sbp# 0: symbol
48375374Sbpcompiler.err.try.resource.may.not.be.assigned=\
48475374Sbp    auto-closeable resource {0} may not be assigned
48575374Sbp
48675374Sbp# 0: symbol
48775374Sbpcompiler.err.multicatch.parameter.may.not.be.assigned=\
48875374Sbp    multi-catch parameter {0} may not be assigned
48975374Sbp
49075374Sbp# 0: type, 1: type
49175374Sbpcompiler.err.multicatch.types.must.be.disjoint=\
49275374Sbp    Alternatives in a multi-catch statement cannot be related by subclassing\n\
49375374Sbp    Alternative {0} is a subclass of alternative {1}
49475374Sbp
49575374Sbpcompiler.err.finally.without.try=\
49675374Sbp    ''finally'' without ''try''
49775374Sbp
49888741Sbp# 0: type, 1: message segment
49975374Sbpcompiler.err.foreach.not.applicable.to.type=\
50075374Sbp    for-each not applicable to expression type\n\
50175374Sbp    required: {1}\n\
50275374Sbp    found:    {0}
50375374Sbp
50475374Sbpcompiler.err.fp.number.too.large=\
50575374Sbp    floating point number too large
50675374Sbp
50775374Sbpcompiler.err.fp.number.too.small=\
50888741Sbp    floating point number too small
50975374Sbp
51075374Sbpcompiler.err.generic.array.creation=\
51175374Sbp    generic array creation
51275374Sbp
51375374Sbpcompiler.err.generic.throwable=\
51475374Sbp    a generic class may not extend java.lang.Throwable
51575374Sbp
51675374Sbp# 0: symbol
51775374Sbpcompiler.err.icls.cant.have.static.decl=\
51875374Sbp    Illegal static declaration in inner class {0}\n\
51975374Sbp    modifier \''static\'' is only allowed in constant variable declarations
52075374Sbp
52175374Sbp# 0: string
52275374Sbpcompiler.err.illegal.char=\
52375374Sbp    illegal character: ''{0}''
52475374Sbp
52575374Sbp# 0: string, 1: string
52675374Sbpcompiler.err.illegal.char.for.encoding=\
52775374Sbp    unmappable character (0x{0}) for encoding {1}
52875374Sbp
52975374Sbp# 0: set of modifier, 1: set of modifier
53075374Sbpcompiler.err.illegal.combination.of.modifiers=\
53175374Sbp    illegal combination of modifiers: {0} and {1}
53275374Sbp
53375374Sbpcompiler.err.illegal.enum.static.ref=\
53475374Sbp    illegal reference to static field from initializer
53575374Sbp
53675374Sbpcompiler.err.illegal.esc.char=\
53775374Sbp    illegal escape character
53875374Sbp
53975374Sbpcompiler.err.illegal.forward.ref=\
54075374Sbp    illegal forward reference
54175374Sbp
54275374Sbp# 0: symbol, 1: string
54375374Sbpcompiler.err.not.in.profile=\
54475374Sbp    {0} is not available in profile ''{1}''
54575374Sbp
54675374Sbp# 0: symbol
54775374Sbpcompiler.warn.forward.ref=\
54875374Sbp    reference to variable ''{0}'' before it has been initialized
54975374Sbp
55075374Sbpcompiler.err.illegal.self.ref=\
55175374Sbp    self-reference in initializer
55275374Sbp
55375374Sbp# 0: symbol
55475374Sbpcompiler.warn.self.ref=\
55575374Sbp    self-reference in initializer of variable ''{0}''
55675374Sbp
55775374Sbpcompiler.err.illegal.generic.type.for.instof=\
55875374Sbp    illegal generic type for instanceof
55975374Sbp
56075374Sbp# 0: type
56175374Sbpcompiler.err.illegal.initializer.for.type=\
56275374Sbp    illegal initializer for {0}
56375374Sbp
56475374Sbpcompiler.err.illegal.line.end.in.char.lit=\
56575374Sbp    illegal line end in character literal
56675374Sbp
56775374Sbpcompiler.err.illegal.nonascii.digit=\
56875374Sbp    illegal non-ASCII digit
56975374Sbp
57075374Sbpcompiler.err.illegal.underscore=\
57175374Sbp    illegal underscore
57275374Sbp
57375374Sbpcompiler.err.illegal.dot=\
57475374Sbp    illegal ''.''
57575374Sbp
57675374Sbp# 0: symbol
57775374Sbpcompiler.err.illegal.qual.not.icls=\
57875374Sbp    illegal qualifier; {0} is not an inner class
57975374Sbp
58075374Sbpcompiler.err.illegal.start.of.expr=\
58175374Sbp    illegal start of expression
58275374Sbp
58375374Sbpcompiler.err.illegal.start.of.stmt=\
58475374Sbp    illegal start of statement
58575374Sbp
58675374Sbpcompiler.err.illegal.start.of.type=\
58775374Sbp    illegal start of type
58875374Sbp
58975374Sbpcompiler.err.illegal.unicode.esc=\
59075374Sbp    illegal unicode escape
59175374Sbp
592124087Stjr# 0: symbol
59375374Sbpcompiler.err.import.requires.canonical=\
59475374Sbp    import requires canonical name for {0}
59575374Sbp
59675374Sbpcompiler.err.improperly.formed.type.param.missing=\
59775374Sbp    improperly formed type, some parameters are missing
59875374Sbp
59975374Sbpcompiler.err.improperly.formed.type.inner.raw.param=\
60075374Sbp    improperly formed type, type arguments given on a raw type
60175374Sbp
60275374Sbp# 0: type, 1: type
60375374Sbpcompiler.err.incomparable.types=\
60475374Sbp    incomparable types: {0} and {1}
60575374Sbp
60675374Sbp# 0: number
60775374Sbpcompiler.err.int.number.too.large=\
60875374Sbp    integer number too large: {0}
60975374Sbp
61075374Sbpcompiler.err.intf.annotation.members.cant.have.params=\
61175374Sbp    elements in annotation type declarations cannot declare formal parameters
61275374Sbp
61375374Sbp# 0: symbol
61475374Sbpcompiler.err.intf.annotation.cant.have.type.params=\
61575374Sbp    annotation type {0} cannot be generic
61675374Sbp
61775374Sbpcompiler.err.intf.annotation.members.cant.have.type.params=\
61875374Sbp    elements in annotation type declarations cannot be generic methods
61975374Sbp
62075374Sbp# 0: symbol, 1: type
62175374Sbpcompiler.err.intf.annotation.member.clash=\
62275374Sbp    annotation type {1} declares an element with the same name as method {0}
62375374Sbp
62475374Sbpcompiler.err.intf.expected.here=\
62575374Sbp    interface expected here
62675374Sbp
62775374Sbpcompiler.err.intf.meth.cant.have.body=\
62875374Sbp    interface abstract methods cannot have body
62975374Sbp
63075374Sbp# 0: symbol
63175374Sbpcompiler.err.invalid.annotation.member.type=\
63275374Sbp    invalid type for element {0} of annotation type
63375374Sbp
63475374Sbpcompiler.err.invalid.binary.number=\
63575374Sbp    binary numbers must contain at least one binary digit
63675374Sbp
63775374Sbpcompiler.err.invalid.hex.number=\
63875374Sbp    hexadecimal numbers must contain at least one hexadecimal digit
63975374Sbp
64075374Sbpcompiler.err.invalid.meth.decl.ret.type.req=\
64175374Sbp    invalid method declaration; return type required
64275374Sbp
64375374Sbpcompiler.err.varargs.and.old.array.syntax=\
64475374Sbp    legacy array notation not allowed on variable-arity parameter
64575374Sbp
64675374Sbpcompiler.err.varargs.and.receiver =\
64775374Sbp    varargs notation not allowed on receiver parameter
64875374Sbp
64975374Sbpcompiler.err.varargs.must.be.last =\
65075374Sbp    varargs parameter must be the last parameter
65175374Sbp
65275374Sbpcompiler.err.array.and.receiver =\
65375374Sbp    legacy array notation not allowed on receiver parameter
65475374Sbp
65575374Sbpcompiler.err.variable.not.allowed=\
65675374Sbp    variable declaration not allowed here
65775374Sbp
65875374Sbp# 0: name
65975374Sbpcompiler.err.label.already.in.use=\
66075374Sbp    label {0} already in use
66175374Sbp
66275374Sbp# 0: symbol
66375374Sbpcompiler.err.local.var.accessed.from.icls.needs.final=\
66475374Sbp    local variable {0} is accessed from within inner class; needs to be declared final
66575374Sbp
66675374Sbpcompiler.err.local.enum=\
667124087Stjr    enum types must not be local
66875374Sbp
66975374Sbpcompiler.err.cannot.create.array.with.type.arguments=\
67075374Sbp    cannot create array with type arguments
67175374Sbp
67275374Sbpcompiler.err.cannot.create.array.with.diamond=\
67375374Sbp    cannot create array with ''<>''
67475374Sbp
67575374Sbp#
67675374Sbp# limits.  We don't give the limits in the diagnostic because we expect
67775374Sbp# them to change, yet we want to use the same diagnostic.  These are all
67875374Sbp# detected during code generation.
67975374Sbp#
68075374Sbpcompiler.err.limit.code=\
68175374Sbp    code too large
68275374Sbp
68375374Sbpcompiler.err.limit.code.too.large.for.try.stmt=\
68475374Sbp    code too large for try statement
68575374Sbp
68675374Sbpcompiler.err.limit.dimensions=\
68775374Sbp    array type has too many dimensions
68875374Sbp
68975374Sbpcompiler.err.limit.locals=\
69075374Sbp    too many local variables
69175374Sbp
69275374Sbpcompiler.err.limit.parameters=\
69375374Sbp    too many parameters
69475374Sbp
69575374Sbpcompiler.err.limit.pool=\
69675374Sbp    too many constants
69775374Sbp
69875374Sbpcompiler.err.limit.pool.in.class=\
69975374Sbp    too many constants in class {0}
70075374Sbp
70175374Sbpcompiler.err.limit.stack=\
70275374Sbp    code requires too much stack
70375374Sbp
70475374Sbpcompiler.err.limit.string=\
70575374Sbp    constant string too long
70675374Sbp
70775374Sbpcompiler.err.limit.string.overflow=\
70875374Sbp    UTF8 representation for string \"{0}...\" is too long for the constant pool
70975374Sbp
71075374Sbpcompiler.err.malformed.fp.lit=\
71175374Sbp    malformed floating point literal
71275374Sbp
71375374Sbpcompiler.err.method.does.not.override.superclass=\
71475374Sbp    method does not override or implement a method from a supertype
71575374Sbp
71675374Sbpcompiler.err.missing.meth.body.or.decl.abstract=\
71775374Sbp    missing method body, or declare abstract
71875374Sbp
71975374Sbpcompiler.err.missing.ret.stmt=\
72075374Sbp    missing return statement
72175374Sbp
72275374Sbp# 0: unused
72375374Sbpcompiler.misc.missing.ret.val=\
72475374Sbp    missing return value
72575374Sbp
72675374Sbpcompiler.misc.unexpected.ret.val=\
72775374Sbp    unexpected return value
72875374Sbp
72975374Sbp# 0: set of modifier
73075374Sbpcompiler.err.mod.not.allowed.here=\
73175374Sbp    modifier {0} not allowed here
73275374Sbp
73375374Sbpcompiler.err.intf.not.allowed.here=\
73475374Sbp    interface not allowed here
73575374Sbp
73675374Sbpcompiler.err.enums.must.be.static=\
73775374Sbp    enum declarations allowed only in static contexts
73875374Sbp
73975374Sbp# 0: symbol, 1: symbol
74075374Sbpcompiler.err.name.clash.same.erasure=\
74175374Sbp    name clash: {0} and {1} have the same erasure
74275374Sbp
74375374Sbp# 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: unused, 5: unused
74475374Sbpcompiler.err.name.clash.same.erasure.no.override=\
74575374Sbp    name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither overrides the other
74675374Sbp
74775374Sbp# 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: symbol, 5: symbol
74875374Sbpcompiler.err.name.clash.same.erasure.no.override.1=\
74975374Sbp    name clash: {0} in {1} overrides a method whose erasure is the same as another method, yet neither overrides the other\n\
75075374Sbp    first method:  {2} in {3}\n\
75175374Sbp    second method: {4} in {5}
75275374Sbp
75375374Sbp# 0: symbol, 1: symbol, 2: symbol, 3: symbol
75475374Sbpcompiler.err.name.clash.same.erasure.no.hide=\
75575374Sbp    name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither hides the other
75675374Sbp
75775374Sbpcompiler.err.name.reserved.for.internal.use=\
75875374Sbp    {0} is reserved for internal use
75975374Sbp
76075374Sbpcompiler.err.native.meth.cant.have.body=\
76175374Sbp    native methods cannot have a body
76275374Sbp
76375374Sbp# 0: type, 1: type
76475374Sbpcompiler.err.neither.conditional.subtype=\
76575374Sbp    incompatible types for ?: neither is a subtype of the other\n\
76675374Sbp    second operand: {0}\n\
76775374Sbp    third operand : {1}
76875374Sbp
76975374Sbp
77075374Sbp# 0: message segment
771compiler.misc.incompatible.type.in.conditional=\
772    bad type in conditional expression\n\
773    {0}
774
775compiler.misc.conditional.target.cant.be.void=\
776    target-type for conditional expression cannot be void
777
778# 0: type
779compiler.misc.incompatible.ret.type.in.lambda=\
780    bad return type in lambda expression\n\
781    {0}
782
783compiler.misc.stat.expr.expected=\
784    lambda body is not compatible with a void functional interface\n\
785    (consider using a block lambda body, or use a statement expression instead)
786
787# 0: type
788compiler.misc.incompatible.ret.type.in.mref=\
789    bad return type in method reference\n\
790    {0}
791
792compiler.err.lambda.body.neither.value.nor.void.compatible=\
793    lambda body is neither value nor void compatible
794
795# 0: list of type
796compiler.err.incompatible.thrown.types.in.mref=\
797    incompatible thrown types {0} in method reference
798
799compiler.misc.incompatible.arg.types.in.lambda=\
800    incompatible parameter types in lambda expression
801
802compiler.misc.incompatible.arg.types.in.mref=\
803    incompatible parameter types in method reference
804
805compiler.err.new.not.allowed.in.annotation=\
806    ''new'' not allowed in an annotation
807
808compiler.err.no.annotation.member=\
809    no annotation member {0} in {1}
810
811compiler.err.no.encl.instance.of.type.in.scope=\
812    no enclosing instance of type {0} is in scope
813
814compiler.err.no.intf.expected.here=\
815    no interface expected here
816
817compiler.err.no.match.entry=\
818    {0} has no match in entry in {1}; required {2}
819
820compiler.err.not.annotation.type=\
821    {0} is not an annotation type
822
823# 0: symbol, 1: symbol
824compiler.err.not.def.access.package.cant.access=\
825    {0} is not visible because package {1} is not visible
826
827# 0: symbol, 1: symbol
828compiler.err.not.def.access.class.intf.cant.access=\
829    {0} in {1} is defined in an inaccessible class or interface
830
831# 0: symbol, 1: symbol
832compiler.misc.not.def.access.class.intf.cant.access=\
833    {0} in {1} is defined in an inaccessible class or interface
834
835# 0: symbol, 1: list of type, 2: type
836compiler.misc.cant.access.inner.cls.constr=\
837    cannot access constructor {0}({1})\n\
838    an enclosing instance of type {2} is not in scope
839
840# 0: symbol, 1: symbol
841compiler.err.not.def.public.cant.access=\
842    {0} is not public in {1}; cannot be accessed from outside package
843
844# 0: symbol, 1: symbol
845compiler.misc.not.def.public.cant.access=\
846    {0} is not public in {1}; cannot be accessed from outside package
847
848# 0: name
849compiler.err.not.loop.label=\
850    not a loop label: {0}
851
852compiler.err.not.stmt=\
853    not a statement
854
855# 0: symbol
856compiler.err.not.encl.class=\
857    not an enclosing class: {0}
858
859# 0: name, 1: type
860compiler.err.operator.cant.be.applied=\
861    bad operand type {1} for unary operator ''{0}''
862
863# 0: name, 1: type, 2: type
864compiler.err.operator.cant.be.applied.1=\
865    bad operand types for binary operator ''{0}''\n\
866    first type:  {1}\n\
867    second type: {2}
868
869compiler.err.pkg.annotations.sb.in.package-info.java=\
870    package annotations should be in file package-info.java
871
872# 0: symbol
873compiler.err.pkg.clashes.with.class.of.same.name=\
874    package {0} clashes with class of same name
875
876compiler.err.warnings.and.werror=\
877    warnings found and -Werror specified
878
879# Errors related to annotation processing
880
881# 0: symbol, 1: string, 2: string (stack-trace)
882compiler.err.proc.cant.access=\
883    cannot access {0}\n\
884    {1}\n\
885    Consult the following stack trace for details.\n\
886    {2}
887
888# 0: symbol, 1: string
889compiler.err.proc.cant.access.1=\
890    cannot access {0}\n\
891    {1}
892
893# 0: string
894compiler.err.proc.cant.find.class=\
895    Could not find class file for ''{0}''.
896
897# Print a client-generated error message; assumed to be localized, no translation required
898# 0: string
899compiler.err.proc.messager=\
900    {0}
901
902# 0: list of string
903compiler.err.proc.no.explicit.annotation.processing.requested=\
904    Class names, ''{0}'', are only accepted if annotation processing is explicitly requested
905
906compiler.err.proc.no.service=\
907    A ServiceLoader was not usable and is required for annotation processing.
908
909compiler.err.proc.processor.bad.option.name=\
910    Bad option name ''{0}'' provided by processor ''{1}''
911
912# 0: string
913compiler.err.proc.processor.cant.instantiate=\
914    Could not instantiate an instance of processor ''{0}''
915
916# 0: string
917compiler.err.proc.processor.not.found=\
918    Annotation processor ''{0}'' not found
919
920# 0: string
921compiler.err.proc.processor.wrong.type=\
922    Annotation processor ''{0}'' does not implement javax.annotation.processing.Processor
923
924compiler.err.proc.service.problem=\
925    Error creating a service loader to load Processors.
926
927compiler.err.proc.bad.config.file=\
928    Bad service configuration file, or exception thrown while constructing Processor object: {0}
929
930compiler.err.proc.cant.create.loader=\
931    Could not create class loader for annotation processors: {0}
932
933# 0: unused
934compiler.err.qualified.new.of.static.class=\
935    qualified new of static class
936
937compiler.err.recursive.ctor.invocation=\
938    recursive constructor invocation
939
940# 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
941compiler.err.ref.ambiguous=\
942    reference to {0} is ambiguous\n\
943    both {1} {2} in {3} and {4} {5} in {6} match
944
945# 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
946compiler.misc.ref.ambiguous=\
947    reference to {0} is ambiguous\n\
948    both {1} {2} in {3} and {4} {5} in {6} match
949
950compiler.err.repeated.annotation.target=\
951    repeated annotation target
952
953compiler.err.repeated.interface=\
954    repeated interface
955
956compiler.err.repeated.modifier=\
957    repeated modifier
958
959# 0: symbol, 1: set of modifier, 2: symbol
960compiler.err.report.access=\
961    {0} has {1} access in {2}
962
963# 0: symbol, 1: set of modifier, 2: symbol
964compiler.misc.report.access=\
965    {0} has {1} access in {2}
966
967compiler.err.ret.outside.meth=\
968    return outside method
969
970compiler.err.signature.doesnt.match.supertype=\
971    signature does not match {0}; incompatible supertype
972
973compiler.err.signature.doesnt.match.intf=\
974    signature does not match {0}; incompatible interfaces
975
976# 0: number, 1: number
977compiler.err.method.invoked.with.incorrect.number.arguments=\
978    method invoked with incorrect number of arguments; expected {0}, found {1}
979
980# 0: symbol, 1: symbol, 2: symbol
981compiler.err.does.not.override.abstract=\
982    {0} is not abstract and does not override abstract method {1} in {2}
983
984compiler.err.source.cant.overwrite.input.file=\
985    error writing source; cannot overwrite input file {0}
986
987compiler.err.stack.sim.error=\
988    Internal error: stack sim error on {0}
989
990compiler.err.static.imp.only.classes.and.interfaces=\
991    static import only from classes and interfaces
992
993compiler.err.string.const.req=\
994    constant string expression required
995
996# 0: symbol, 1: symbol
997compiler.err.synthetic.name.conflict=\
998    the symbol {0} conflicts with a compiler-synthesized symbol in {1}
999
1000compiler.err.throws.not.allowed.in.intf.annotation=\
1001    throws clause not allowed in @interface members
1002
1003compiler.err.try.without.catch.or.finally=\
1004    ''try'' without ''catch'' or ''finally''
1005
1006compiler.err.try.without.catch.finally.or.resource.decls=\
1007    ''try'' without ''catch'', ''finally'' or resource declarations
1008
1009# 0: symbol
1010compiler.err.type.doesnt.take.params=\
1011    type {0} does not take parameters
1012
1013compiler.err.type.var.cant.be.deref=\
1014    cannot select from a type variable
1015
1016compiler.err.type.var.may.not.be.followed.by.other.bounds=\
1017    a type variable may not be followed by other bounds
1018
1019compiler.err.type.var.more.than.once=\
1020    type variable {0} occurs more than once in result type of {1}; cannot be left uninstantiated
1021
1022compiler.err.type.var.more.than.once.in.result=\
1023    type variable {0} occurs more than once in type of {1}; cannot be left uninstantiated
1024
1025# 0: type, 1: type, 2: string
1026compiler.err.types.incompatible.diff.ret=\
1027    types {0} and {1} are incompatible; both define {2}, but with unrelated return types
1028
1029# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
1030compiler.err.types.incompatible.unrelated.defaults=\
1031    {0} {1} inherits unrelated defaults for {2}({3}) from types {4} and {5}
1032
1033# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
1034compiler.err.types.incompatible.abstract.default=\
1035    {0} {1} inherits abstract and default for {2}({3}) from types {4} and {5}
1036
1037# 0: name, 1: kind name, 2: symbol
1038compiler.err.default.overrides.object.member=\
1039    default method {0} in {1} {2} overrides a member of java.lang.Object
1040
1041# 0: type
1042compiler.err.illegal.static.intf.meth.call=\
1043    illegal static interface method call\n\
1044    the receiver expression should be replaced with the type qualifier ''{0}''
1045
1046# 0: type, 1: message segment
1047compiler.err.illegal.default.super.call=\
1048    bad type qualifier {0} in default super call\n\
1049    {1}
1050
1051# 0: symbol, 1: type
1052compiler.misc.overridden.default=\
1053    method {0} is overridden in {1}
1054
1055# 0: symbol, 1: type or symbol
1056compiler.misc.redundant.supertype=\
1057    redundant interface {0} is extended by {1}
1058
1059compiler.err.unclosed.char.lit=\
1060    unclosed character literal
1061
1062compiler.err.unclosed.comment=\
1063    unclosed comment
1064
1065compiler.err.unclosed.str.lit=\
1066    unclosed string literal
1067
1068# 0: name
1069compiler.err.unsupported.encoding=\
1070    unsupported encoding: {0}
1071
1072compiler.err.io.exception=\
1073    error reading source file: {0}
1074
1075# 0: name
1076compiler.err.undef.label=\
1077    undefined label: {0}
1078
1079# 0: message segment, 1: unused
1080compiler.err.cant.apply.diamond=\
1081    cannot infer type arguments for {0}
1082
1083# 0: message segment or type, 1: message segment
1084compiler.err.cant.apply.diamond.1=\
1085    cannot infer type arguments for {0}\n\
1086    reason: {1}
1087
1088# 0: message segment or type, 1: message segment
1089compiler.misc.cant.apply.diamond.1=\
1090    cannot infer type arguments for {0}\n\
1091    reason: {1}
1092
1093compiler.err.unreachable.stmt=\
1094    unreachable statement
1095
1096compiler.err.initializer.must.be.able.to.complete.normally=\
1097    initializer must be able to complete normally
1098
1099compiler.err.initializer.not.allowed=\
1100    initializers not allowed in interfaces
1101
1102# 0: type
1103compiler.err.unreported.exception.need.to.catch.or.throw=\
1104    unreported exception {0}; must be caught or declared to be thrown
1105
1106# 0: type
1107compiler.err.unreported.exception.default.constructor=\
1108    unreported exception {0} in default constructor
1109
1110# 0: type, 1: name
1111compiler.err.unreported.exception.implicit.close=\
1112    unreported exception {0}; must be caught or declared to be thrown\n\
1113    exception thrown from implicit call to close() on resource variable ''{1}''
1114
1115compiler.err.unsupported.cross.fp.lit=\
1116    hexadecimal floating-point literals are not supported on this VM
1117
1118compiler.err.void.not.allowed.here=\
1119    ''void'' type not allowed here
1120
1121# 0: string
1122compiler.err.wrong.number.type.args=\
1123    wrong number of type arguments; required {0}
1124
1125# 0: symbol
1126compiler.err.var.might.already.be.assigned=\
1127    variable {0} might already have been assigned
1128
1129# 0: symbol
1130compiler.err.var.might.not.have.been.initialized=\
1131    variable {0} might not have been initialized
1132
1133# 0: symbol
1134compiler.err.var.not.initialized.in.default.constructor=\
1135    variable {0} not initialized in the default constructor
1136
1137# 0: symbol
1138compiler.err.var.might.be.assigned.in.loop=\
1139    variable {0} might be assigned in loop
1140
1141# 0: symbol, 1: message segment
1142compiler.err.varargs.invalid.trustme.anno=\
1143    Invalid {0} annotation. {1}
1144
1145# 0: type
1146compiler.misc.varargs.trustme.on.reifiable.varargs=\
1147    Varargs element type {0} is reifiable.
1148
1149# 0: symbol
1150compiler.misc.varargs.trustme.on.non.varargs.meth=\
1151    Method {0} is not a varargs method.
1152
1153# 0: symbol
1154compiler.misc.varargs.trustme.on.virtual.varargs=\
1155    Instance method {0} is neither final nor private.
1156
1157# 0: symbol
1158compiler.misc.varargs.trustme.on.virtual.varargs.final.only=\
1159    Instance method {0} is not final.
1160
1161# 0: type, 1: symbol kind, 2: symbol
1162compiler.misc.inaccessible.varargs.type=\
1163    formal varargs element type {0} is not accessible from {1} {2}
1164
1165# In the following string, {1} will always be the detail message from
1166# java.io.IOException.
1167# 0: symbol, 1: string
1168compiler.err.class.cant.write=\
1169    error while writing {0}: {1}
1170
1171# In the following string, {0} is the name of the class in the Java source.
1172# It really should be used two times..
1173# 0: name
1174compiler.err.class.public.should.be.in.file=\
1175    class {0} is public, should be declared in a file named {0}.java
1176
1177## All errors which do not refer to a particular line in the source code are
1178## preceded by this string.
1179compiler.err.error=\
1180    error:\u0020
1181
1182# The following error messages do not refer to a line in the source code.
1183compiler.err.cant.read.file=\
1184    cannot read: {0}
1185
1186# 0: string
1187compiler.err.plugin.not.found=\
1188    plug-in not found: {0}
1189
1190# 0: path
1191compiler.warn.locn.unknown.file.on.module.path=\
1192    unknown file on module path: {0}
1193
1194
1195# 0: path
1196compiler.err.locn.bad.module-info=\
1197    problem reading module-info.class in {0}
1198
1199# 0: path
1200compiler.err.locn.cant.read.directory=\
1201    cannot read directory {0}
1202
1203# 0: path
1204compiler.err.locn.cant.read.file=\
1205    cannot read file {0}
1206
1207# 0: path
1208compiler.err.locn.cant.get.module.name.for.jar=\
1209    cannot determine module name for {0}
1210
1211# 0: path
1212compiler.err.multi-module.outdir.cannot.be.exploded.module=\
1213    in multi-module mode, the output directory cannot be an exploded module: {0}
1214
1215# 0: path
1216compiler.warn.outdir.is.in.exploded.module=\
1217    the output directory is within an exploded module: {0}
1218
1219# 0: path
1220compiler.err.locn.module-info.not.allowed.on.patch.path=\
1221    module-info.class not allowed on patch path: {0}
1222
1223# 0: string
1224compiler.err.locn.invalid.arg.for.xpatch=\
1225    invalid argument for -Xpatch option: {0}
1226
1227#####
1228
1229# Fatal Errors
1230
1231compiler.misc.fatal.err.no.java.lang=\
1232    Fatal Error: Unable to find package java.lang in classpath or bootclasspath
1233
1234compiler.misc.fatal.err.cant.locate.meth=\
1235    Fatal Error: Unable to find method {0}
1236
1237compiler.misc.fatal.err.cant.locate.field=\
1238    Fatal Error: Unable to find field {0}
1239
1240compiler.misc.fatal.err.cant.locate.ctor=\
1241    Fatal Error: Unable to find constructor for {0}
1242
1243compiler.misc.fatal.err.cant.close=\
1244    Fatal Error: Cannot close compiler resources
1245
1246#####
1247
1248##
1249## miscellaneous strings
1250##
1251
1252compiler.misc.diamond.anonymous.methods.implicitly.override=\
1253    (due to <>, every non-private method declared in this anonymous class must override or implement a method from a supertype)
1254
1255compiler.misc.source.unavailable=\
1256    (source unavailable)
1257
1258compiler.misc.base.membership=\
1259    all your base class are belong to us
1260
1261# 0: string, 1: string, 2: boolean
1262compiler.misc.x.print.processor.info=\
1263    Processor {0} matches {1} and returns {2}.
1264
1265# 0: number, 1: string, 2: set of symbol, 3: boolean
1266compiler.misc.x.print.rounds=\
1267    Round {0}:\n\tinput files: {1}\n\tannotations: {2}\n\tlast round: {3}
1268
1269# 0: file name
1270compiler.warn.file.from.future=\
1271    Modification date is in the future for file {0}
1272
1273#####
1274
1275## The following string will appear before all messages keyed as:
1276## "compiler.note".
1277
1278compiler.note.compressed.diags=\
1279    Some messages have been simplified; recompile with -Xdiags:verbose to get full output
1280
1281# 0: boolean, 1: symbol
1282compiler.note.lambda.stat=\
1283    Translating lambda expression\n\
1284    alternate metafactory = {0}\n\
1285    synthetic method = {1}
1286
1287# 0: boolean, 1: unused
1288compiler.note.mref.stat=\
1289    Translating method reference\n\
1290    alternate metafactory = {0}\n\
1291
1292# 0: boolean, 1: symbol
1293compiler.note.mref.stat.1=\
1294    Translating method reference\n\
1295    alternate metafactory = {0}\n\
1296    bridge method = {1}
1297
1298compiler.note.note=\
1299    Note:\u0020
1300
1301# 0: file name
1302compiler.note.deprecated.filename=\
1303    {0} uses or overrides a deprecated API.
1304
1305compiler.note.deprecated.plural=\
1306    Some input files use or override a deprecated API.
1307
1308# The following string may appear after one of the above deprecation
1309# messages.
1310compiler.note.deprecated.recompile=\
1311    Recompile with -Xlint:deprecation for details.
1312
1313# 0: file name
1314compiler.note.deprecated.filename.additional=\
1315    {0} has additional uses or overrides of a deprecated API.
1316
1317compiler.note.deprecated.plural.additional=\
1318    Some input files additionally use or override a deprecated API.
1319
1320# 0: file name
1321compiler.note.unchecked.filename=\
1322    {0} uses unchecked or unsafe operations.
1323
1324compiler.note.unchecked.plural=\
1325    Some input files use unchecked or unsafe operations.
1326
1327# The following string may appear after one of the above deprecation
1328# messages.
1329compiler.note.unchecked.recompile=\
1330    Recompile with -Xlint:unchecked for details.
1331
1332# 0: file name
1333compiler.note.unchecked.filename.additional=\
1334    {0} has additional unchecked or unsafe operations.
1335
1336compiler.note.unchecked.plural.additional=\
1337    Some input files additionally use unchecked or unsafe operations.
1338
1339# Notes related to annotation processing
1340
1341# Print a client-generated note; assumed to be localized, no translation required
1342# 0: string
1343compiler.note.proc.messager=\
1344    {0}
1345
1346#####
1347
1348# 0: number
1349compiler.misc.count.error=\
1350    {0} error
1351
1352# 0: number
1353compiler.misc.count.error.plural=\
1354    {0} errors
1355
1356# 0: number
1357compiler.misc.count.warn=\
1358    {0} warning
1359
1360# 0: number
1361compiler.misc.count.warn.plural=\
1362    {0} warnings
1363
1364compiler.misc.version.not.available=\
1365    (version info not available)
1366
1367## extra output when using -verbose (JavaCompiler)
1368
1369# 0: symbol
1370compiler.misc.verbose.checking.attribution=\
1371    [checking {0}]
1372
1373# 0: string
1374compiler.misc.verbose.parsing.done=\
1375    [parsing completed {0}ms]
1376
1377# 0: file name
1378compiler.misc.verbose.parsing.started=\
1379    [parsing started {0}]
1380
1381# 0: string
1382compiler.misc.verbose.total=\
1383    [total {0}ms]
1384
1385# 0: file name
1386compiler.misc.verbose.wrote.file=\
1387    [wrote {0}]
1388
1389## extra output when using -verbose (code/ClassReader)
1390# 0: string
1391compiler.misc.verbose.loading=\
1392    [loading {0}]
1393
1394# 0: string
1395compiler.misc.verbose.sourcepath=\
1396    [search path for source files: {0}]
1397
1398# 0: string
1399compiler.misc.verbose.classpath=\
1400    [search path for class files: {0}]
1401
1402## extra output when using -prompt (util/Log)
1403compiler.misc.resume.abort=\
1404    R)esume, A)bort>
1405
1406#####
1407
1408##
1409## warnings
1410##
1411
1412## All warning messages are preceded by the following string.
1413compiler.warn.warning=\
1414    warning:\u0020
1415
1416## Warning messages may also include the following prefix to identify a
1417## lint option
1418# 0: option name
1419compiler.warn.lintOption=\
1420    [{0}]\u0020
1421
1422# 0: symbol
1423compiler.warn.constant.SVUID=\
1424    serialVersionUID must be constant in class {0}
1425
1426# 0: file name
1427compiler.warn.dir.path.element.not.found=\
1428    bad path element "{0}": no such directory
1429
1430# 0: file name
1431compiler.warn.dir.path.element.not.directory=\
1432    bad path element "{0}": not a directory
1433
1434compiler.warn.finally.cannot.complete=\
1435    finally clause cannot complete normally
1436
1437# 0: symbol, 1: symbol
1438compiler.warn.has.been.deprecated=\
1439    {0} in {1} has been deprecated
1440
1441# 0: symbol
1442compiler.warn.sun.proprietary=\
1443    {0} is internal proprietary API and may be removed in a future release
1444
1445compiler.warn.illegal.char.for.encoding=\
1446    unmappable character for encoding {0}
1447
1448# 0: symbol
1449compiler.warn.improper.SVUID=\
1450    serialVersionUID must be declared static final in class {0}
1451
1452# 0: type, 1: type
1453compiler.warn.inexact.non-varargs.call=\
1454    non-varargs call of varargs method with inexact argument type for last parameter;\n\
1455    cast to {0} for a varargs call\n\
1456    cast to {1} for a non-varargs call and to suppress this warning
1457
1458# 0: list of type
1459compiler.warn.unreachable.catch=\
1460    unreachable catch clause\n\
1461    thrown type {0} has already been caught
1462
1463# 0: list of type
1464compiler.warn.unreachable.catch.1=\
1465    unreachable catch clause\n\
1466    thrown types {0} have already been caught
1467
1468# 0: symbol
1469compiler.warn.long.SVUID=\
1470    serialVersionUID must be of type long in class {0}
1471
1472# 0: symbol
1473compiler.warn.missing.SVUID=\
1474    serializable class {0} has no definition of serialVersionUID
1475
1476# 0: symbol, 1: symbol, 2: symbol, 3: symbol
1477compiler.warn.potentially.ambiguous.overload=\
1478    {0} in {1} is potentially ambiguous with {2} in {3}
1479
1480# 0: message segment
1481compiler.warn.override.varargs.missing=\
1482    {0}; overridden method has no ''...''
1483
1484# 0: message segment
1485compiler.warn.override.varargs.extra=\
1486    {0}; overriding method is missing ''...''
1487
1488compiler.warn.override.bridge=\
1489    {0}; overridden method is a bridge method
1490
1491# 0: symbol
1492compiler.warn.pkg-info.already.seen=\
1493    a package-info.java file has already been seen for package {0}
1494
1495# 0: file name
1496compiler.warn.path.element.not.found=\
1497    bad path element "{0}": no such file or directory
1498
1499compiler.warn.possible.fall-through.into.case=\
1500    possible fall-through into case
1501
1502# 0: type
1503compiler.warn.redundant.cast=\
1504    redundant cast to {0}
1505
1506# 0: number
1507compiler.warn.position.overflow=\
1508    Position encoding overflows at line {0}
1509
1510# 0: file name, 1: number, 2: number
1511compiler.warn.big.major.version=\
1512    {0}: major version {1} is newer than {2}, the highest major version supported by this compiler.\n\
1513    It is recommended that the compiler be upgraded.
1514
1515# 0: symbol kind, 1: symbol
1516compiler.warn.static.not.qualified.by.type=\
1517    static {0} should be qualified by type name, {1}, instead of by an expression
1518
1519# 0: string
1520compiler.warn.source.no.bootclasspath=\
1521    bootstrap class path not set in conjunction with -source {0}
1522
1523# 0: string
1524compiler.warn.option.obsolete.source=\
1525    source value {0} is obsolete and will be removed in a future release
1526
1527# 0: string
1528compiler.warn.option.obsolete.target=\
1529    target value {0} is obsolete and will be removed in a future release
1530
1531# 0: string, 1: string
1532compiler.err.option.removed.source=\
1533    Source option {0} is no longer supported. Use {1} or later.
1534
1535# 0: string, 1: string
1536compiler.err.option.removed.target=\
1537    Target option {0} is no longer supported. Use {1} or later.
1538
1539compiler.warn.option.obsolete.suppression=\
1540    To suppress warnings about obsolete options, use -Xlint:-options.
1541
1542# 0: name, 1: number, 2: number, 3: number, 4: number
1543compiler.warn.future.attr=\
1544    {0} attribute introduced in version {1}.{2} class files is ignored in version {3}.{4} class files
1545
1546# Warnings related to annotation processing
1547# 0: string
1548compiler.warn.proc.package.does.not.exist=\
1549    package {0} does not exist
1550
1551# 0: name
1552compiler.warn.proc.file.reopening=\
1553    Attempt to create a file for ''{0}'' multiple times
1554
1555# 0: name
1556compiler.warn.proc.type.already.exists=\
1557    A file for type ''{0}'' already exists on the sourcepath or classpath
1558
1559# 0: name
1560compiler.warn.proc.type.recreate=\
1561    Attempt to create a file for type ''{0}'' multiple times
1562
1563# 0: string
1564compiler.warn.proc.illegal.file.name=\
1565    Cannot create file for illegal name ''{0}''.
1566
1567# 0: string, 1: string
1568compiler.warn.proc.suspicious.class.name=\
1569    Creating file for a type whose name ends in {1}: ''{0}''
1570
1571# 0: name
1572compiler.warn.proc.file.create.last.round=\
1573    File for type ''{0}'' created in the last round will not be subject to annotation processing.
1574
1575# 0: string, 1: string
1576compiler.warn.proc.malformed.supported.string=\
1577    Malformed string ''{0}'' for a supported annotation type returned by processor ''{1}''
1578
1579# 0: set of string
1580compiler.warn.proc.annotations.without.processors=\
1581    No processor claimed any of these annotations: {0}
1582
1583# 0: source version, 1: string, 2: string
1584compiler.warn.proc.processor.incompatible.source.version=\
1585    Supported source version ''{0}'' from annotation processor ''{1}'' less than -source ''{2}''
1586
1587compiler.warn.proc.proc-only.requested.no.procs=\
1588    Annotation processing without compilation requested but no processors were found.
1589
1590compiler.warn.proc.use.implicit=\
1591    Implicitly compiled files were not subject to annotation processing.\n\
1592    Use -implicit to specify a policy for implicit compilation.
1593
1594compiler.warn.proc.use.proc.or.implicit=\
1595    Implicitly compiled files were not subject to annotation processing.\n\
1596    Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
1597
1598# Print a client-generated warning; assumed to be localized, no translation required
1599# 0: string
1600compiler.warn.proc.messager=\
1601    {0}
1602
1603# 0: set of name
1604compiler.warn.proc.unclosed.type.files=\
1605    Unclosed files for the types ''{0}''; these types will not undergo annotation processing
1606
1607# 0: string
1608compiler.warn.proc.unmatched.processor.options=\
1609    The following options were not recognized by any processor: ''{0}''
1610
1611compiler.warn.try.explicit.close.call=\
1612    explicit call to close() on an auto-closeable resource
1613
1614# 0: symbol
1615compiler.warn.try.resource.not.referenced=\
1616    auto-closeable resource {0} is never referenced in body of corresponding try statement
1617
1618# 0: type
1619compiler.warn.try.resource.throws.interrupted.exc=\
1620    auto-closeable resource {0} has a member method close() that could throw InterruptedException
1621
1622compiler.warn.unchecked.assign=\
1623    unchecked assignment: {0} to {1}
1624
1625# 0: symbol, 1: type
1626compiler.warn.unchecked.assign.to.var=\
1627    unchecked assignment to variable {0} as member of raw type {1}
1628
1629# 0: symbol, 1: type
1630compiler.warn.unchecked.call.mbr.of.raw.type=\
1631    unchecked call to {0} as a member of the raw type {1}
1632
1633compiler.warn.unchecked.cast.to.type=\
1634    unchecked cast to type {0}
1635
1636# 0: symbol kind, 1: name, 2: list of type, 3: list of type, 4: symbol kind, 5: symbol
1637compiler.warn.unchecked.meth.invocation.applied=\
1638    unchecked method invocation: {0} {1} in {4} {5} is applied to given types\n\
1639    required: {2}\n\
1640    found: {3}
1641
1642# 0: type
1643compiler.warn.unchecked.generic.array.creation=\
1644    unchecked generic array creation for varargs parameter of type {0}
1645
1646# 0: type
1647compiler.warn.unchecked.varargs.non.reifiable.type=\
1648    Possible heap pollution from parameterized vararg type {0}
1649
1650# 0: symbol
1651compiler.warn.varargs.unsafe.use.varargs.param=\
1652    Varargs method could cause heap pollution from non-reifiable varargs parameter {0}
1653
1654compiler.warn.missing.deprecated.annotation=\
1655    deprecated item is not annotated with @Deprecated
1656
1657compiler.warn.invalid.archive.file=\
1658    Unexpected file on path: {0}
1659
1660compiler.warn.unexpected.archive.file=\
1661    Unexpected extension for archive file: {0}
1662
1663compiler.warn.div.zero=\
1664    division by zero
1665
1666compiler.warn.empty.if=\
1667    empty statement after if
1668
1669compiler.warn.annotation.method.not.found=\
1670    Cannot find annotation method ''{1}()'' in type ''{0}''
1671
1672compiler.warn.annotation.method.not.found.reason=\
1673    Cannot find annotation method ''{1}()'' in type ''{0}'': {2}
1674
1675# 0: symbol, 1: name
1676compiler.warn.unknown.enum.constant=\
1677    unknown enum constant {1}.{2}
1678
1679# 0: symbol, 1: name, 2: message segment
1680compiler.warn.unknown.enum.constant.reason=\
1681    unknown enum constant {1}.{2}\n\
1682    reason: {3}
1683
1684# 0: type, 1: type
1685compiler.warn.raw.class.use=\
1686    found raw type: {0}\n\
1687    missing type arguments for generic class {1}
1688
1689# 0: unused, 1: unused
1690compiler.warn.diamond.redundant.args=\
1691    Redundant type arguments in new expression (use diamond operator instead).
1692
1693compiler.warn.potential.lambda.found=\
1694    This anonymous inner class creation can be turned into a lambda expression.
1695
1696compiler.warn.method.redundant.typeargs=\
1697    Redundant type arguments in method call.
1698
1699# 0: symbol, 1: message segment
1700compiler.warn.varargs.redundant.trustme.anno=\
1701    Redundant {0} annotation. {1}
1702
1703# 0: symbol
1704compiler.warn.access.to.sensitive.member.from.serializable.element=\
1705    access to sensitive member {0} from serializable element can be publicly accessible to untrusted code
1706
1707#####
1708
1709## The following are tokens which are non-terminals in the language. They should
1710## be named as JLS3 calls them when translated to the appropriate language.
1711compiler.misc.token.identifier=\
1712    <identifier>
1713
1714compiler.misc.token.character=\
1715    <character>
1716
1717compiler.misc.token.string=\
1718    <string>
1719
1720compiler.misc.token.integer=\
1721    <integer>
1722
1723compiler.misc.token.long-integer=\
1724    <long integer>
1725
1726compiler.misc.token.float=\
1727    <float>
1728
1729compiler.misc.token.double=\
1730    <double>
1731
1732compiler.misc.token.bad-symbol=\
1733    <bad symbol>
1734
1735compiler.misc.token.end-of-input=\
1736    <end of input>
1737
1738## The argument to the following string will always be one of the following:
1739## 1. one of the above non-terminals
1740## 2. a keyword (JLS1.8)
1741## 3. a boolean literal (JLS3.10.3)
1742## 4. the null literal (JLS3.10.7)
1743## 5. a Java separator (JLS3.11)
1744## 6. an operator (JLS3.12)
1745##
1746## This is the only place these tokens will be used.
1747# 0: token
1748compiler.err.expected=\
1749    {0} expected
1750
1751# 0: token, 1: token
1752compiler.err.expected2=\
1753    {0} or {1} expected
1754
1755# 0: token, 1: token, 2: token
1756compiler.err.expected3=\
1757    {0}, {1}, or {2} expected
1758
1759compiler.err.premature.eof=\
1760    reached end of file while parsing
1761
1762## The following are related in form, but do not easily fit the above paradigm.
1763compiler.err.dot.class.expected=\
1764    ''.class'' expected
1765
1766## The argument to this string will always be either 'case' or 'default'.
1767# 0: token
1768compiler.err.orphaned=\
1769    orphaned {0}
1770
1771# 0: name
1772compiler.misc.anonymous.class=\
1773    <anonymous {0}>
1774
1775# 0: name, 1: type
1776compiler.misc.type.captureof=\
1777    capture#{0} of {1}
1778
1779compiler.misc.type.captureof.1=\
1780    capture#{0}
1781
1782compiler.misc.type.none=\
1783    <none>
1784
1785compiler.misc.unnamed.package=\
1786    unnamed package
1787
1788compiler.misc.unnamed.module=\
1789    unnamed module
1790
1791#####
1792
1793# 0: symbol, 1: message segment
1794compiler.err.cant.access=\
1795    cannot access {0}\n\
1796    {1}
1797
1798# 0: name
1799compiler.misc.bad.class.file=\
1800    class file is invalid for class {0}
1801
1802# 0: file name, 1: string (expected constant pool entry type), 2: number (constant pool index)
1803compiler.misc.bad.const.pool.entry=\
1804    bad constant pool entry in {0}\n\
1805    expected {1} at index {2}
1806
1807# 0: file name, 1: message segment
1808compiler.misc.bad.class.file.header=\
1809    bad class file: {0}\n\
1810    {1}\n\
1811    Please remove or make sure it appears in the correct subdirectory of the classpath.
1812
1813# 0: file name, 1: message segment
1814compiler.misc.bad.source.file.header=\
1815    bad source file: {0}\n\
1816    {1}\n\
1817    Please remove or make sure it appears in the correct subdirectory of the sourcepath.
1818
1819## The following are all possible strings for the second argument ({1}) of the
1820## above strings.
1821compiler.misc.bad.class.signature=\
1822    bad class signature: {0}
1823
1824#0: symbol, 1: symbol
1825compiler.misc.bad.enclosing.class=\
1826    bad enclosing class for {0}: {1}
1827
1828# 0: symbol
1829compiler.misc.bad.enclosing.method=\
1830    bad enclosing method attribute for class {0}
1831
1832compiler.misc.bad.runtime.invisible.param.annotations=\
1833    bad RuntimeInvisibleParameterAnnotations attribute: {0}
1834
1835compiler.misc.bad.const.pool.tag=\
1836    bad constant pool tag: {0}
1837
1838compiler.misc.bad.const.pool.tag.at=\
1839    bad constant pool tag: {0} at {1}
1840
1841compiler.misc.bad.signature=\
1842    bad signature: {0}
1843
1844compiler.misc.bad.type.annotation.value=\
1845    bad type annotation target type value: {0}
1846
1847compiler.misc.bad.module-info.name=\
1848    bad class name
1849
1850compiler.misc.class.file.wrong.class=\
1851    class file contains wrong class: {0}
1852
1853compiler.misc.class.file.not.found=\
1854    class file for {0} not found
1855
1856# 0: string (classfile major version), 1: string (classfile minor version)
1857compiler.misc.invalid.default.interface=\
1858    default method found in version {0}.{1} classfile
1859
1860# 0: string (classfile major version), 1: string (classfile minor version)
1861compiler.misc.invalid.static.interface=\
1862    static method found in version {0}.{1} classfile
1863
1864# 0: name
1865compiler.misc.file.doesnt.contain.class=\
1866    file does not contain class {0}
1867
1868compiler.misc.file.does.not.contain.package=\
1869    file does not contain package {0}
1870
1871compiler.misc.file.does.not.contain.module=\
1872    file does not contain module declaration
1873
1874compiler.misc.illegal.start.of.class.file=\
1875    illegal start of class file
1876
1877compiler.misc.unable.to.access.file=\
1878    unable to access file: {0}
1879
1880compiler.misc.unicode.str.not.supported=\
1881    unicode string in class file not supported
1882
1883compiler.misc.undecl.type.var=\
1884    undeclared type variable: {0}
1885
1886compiler.misc.malformed.vararg.method=\
1887    class file contains malformed variable arity method: {0}
1888
1889compiler.misc.wrong.version=\
1890    class file has wrong version {0}.{1}, should be {2}.{3}
1891
1892#####
1893
1894# 0: type, 1: type or symbol
1895compiler.err.not.within.bounds=\
1896    type argument {0} is not within bounds of type-variable {1}
1897
1898## The following are all possible strings for the second argument ({1}) of the
1899## above string.
1900
1901## none yet...
1902
1903#####
1904
1905# 0: message segment
1906compiler.err.prob.found.req=\
1907    incompatible types: {0}
1908
1909# 0: message segment
1910compiler.misc.prob.found.req=\
1911    incompatible types: {0}
1912
1913# 0: message segment, 1: type, 2: type
1914compiler.warn.prob.found.req=\
1915    {0}\n\
1916    required: {2}\n\
1917    found:    {1}
1918
1919# 0: type, 1: type
1920compiler.misc.inconvertible.types=\
1921    {0} cannot be converted to {1}
1922
1923# 0: type, 1: type
1924compiler.misc.possible.loss.of.precision=\
1925    possible lossy conversion from {0} to {1}
1926
1927compiler.misc.unchecked.assign=\
1928    unchecked conversion
1929
1930# compiler.misc.storecheck=\
1931#     assignment might cause later store checks to fail
1932# compiler.misc.unchecked=\
1933#     assigned array cannot dynamically check its stores
1934compiler.misc.unchecked.cast.to.type=\
1935    unchecked cast
1936
1937# compiler.err.star.expected=\
1938#     ''*'' expected
1939# compiler.err.no.elem.type=\
1940#     \[\*\] cannot have a type
1941
1942# 0: type
1943compiler.misc.try.not.applicable.to.type=\
1944    try-with-resources not applicable to variable type\n\
1945    ({0})
1946
1947#####
1948
1949# 0: message segment or type, 1: message segment
1950compiler.err.type.found.req=\
1951    unexpected type\n\
1952    required: {1}\n\
1953    found:    {0}
1954
1955## The following are all possible strings for the first argument ({0}) of the
1956## above string.
1957compiler.misc.type.req.class=\
1958    class
1959
1960compiler.misc.type.req.class.array=\
1961    class or array
1962
1963compiler.misc.type.req.array.or.iterable=\
1964    array or java.lang.Iterable
1965
1966compiler.misc.type.req.ref=\
1967    reference
1968
1969compiler.misc.type.req.exact=\
1970    class or interface without bounds
1971
1972# 0: type
1973compiler.misc.type.parameter=\
1974    type parameter {0}
1975
1976#####
1977
1978## The following are all possible strings for the last argument of all those
1979## diagnostics whose key ends in ".1"
1980
1981# 0: type, 1: list of type
1982compiler.misc.no.unique.maximal.instance.exists=\
1983    no unique maximal instance exists for type variable {0} with upper bounds {1}
1984
1985compiler.misc.no.unique.minimal.instance.exists=\
1986    no unique minimal instance exists for type variable {0} with lower bounds {1}
1987
1988# 0: type, 1: list of type
1989compiler.misc.incompatible.upper.bounds=\
1990    inference variable {0} has incompatible upper bounds {1}
1991
1992# 0: type, 1: list of type
1993compiler.misc.incompatible.eq.bounds=\
1994    inference variable {0} has incompatible equality constraints {1}
1995
1996# 0: type, 1: list of type, 2: list of type
1997compiler.misc.incompatible.eq.upper.bounds=\
1998    inference variable {0} has incompatible bounds\n\
1999    equality constraints: {1}\n\
2000    upper bounds: {2}
2001
2002# 0: type, 1: list of type, 2: list of type
2003compiler.misc.incompatible.upper.lower.bounds=\
2004    inference variable {0} has incompatible bounds\n\
2005    upper bounds: {1}\n\
2006    lower bounds: {2}
2007
2008# 0: type, 1: list of type, 2: list of type
2009compiler.misc.incompatible.eq.lower.bounds=\
2010    inference variable {0} has incompatible bounds\n\
2011    equality constraints: {1}\n\
2012    lower bounds: {2}
2013
2014# 0: list of type, 1: type, 2: type
2015compiler.misc.infer.no.conforming.instance.exists=\
2016    no instance(s) of type variable(s) {0} exist so that {1} conforms to {2}
2017
2018# 0: list of type, 1: message segment
2019compiler.misc.infer.no.conforming.assignment.exists=\
2020    cannot infer type-variable(s) {0}\n\
2021    (argument mismatch; {1})
2022
2023# 0: list of type
2024compiler.misc.infer.arg.length.mismatch=\
2025    cannot infer type-variable(s) {0}\n\
2026    (actual and formal argument lists differ in length)
2027
2028# 0: list of type, 1: message segment
2029compiler.misc.infer.varargs.argument.mismatch=\
2030    cannot infer type-variable(s) {0}\n\
2031    (varargs mismatch; {1})
2032
2033# 0: type, 1: list of type
2034compiler.misc.inferred.do.not.conform.to.upper.bounds=\
2035    inferred type does not conform to upper bound(s)\n\
2036    inferred: {0}\n\
2037    upper bound(s): {1}
2038
2039# 0: type, 1: list of type
2040compiler.misc.inferred.do.not.conform.to.lower.bounds=\
2041    inferred type does not conform to lower bound(s)\n\
2042    inferred: {0}\n\
2043    lower bound(s): {1}
2044
2045# 0: type, 1: list of type
2046compiler.misc.inferred.do.not.conform.to.eq.bounds=\
2047    inferred type does not conform to equality constraint(s)\n\
2048    inferred: {0}\n\
2049    equality constraints(s): {1}
2050
2051# 0: symbol
2052compiler.misc.diamond=\
2053    {0}<>
2054
2055# 0: type
2056compiler.misc.diamond.non.generic=\
2057    cannot use ''<>'' with non-generic class {0}
2058
2059# 0: list of type, 1: message segment
2060compiler.misc.diamond.invalid.arg=\
2061    type argument {0} inferred for {1} is not allowed in this context\n\
2062    inferred argument is not expressible in the Signature attribute
2063
2064# 0: list of type, 1: message segment
2065compiler.misc.diamond.invalid.args=\
2066    type arguments {0} inferred for {1} are not allowed in this context\n\
2067    inferred arguments are not expressible in the Signature attribute
2068
2069# 0: unused
2070compiler.misc.diamond.and.explicit.params=\
2071    cannot use ''<>'' with explicit type parameters for constructor
2072
2073# 0: unused
2074compiler.misc.mref.infer.and.explicit.params=\
2075    cannot use raw constructor reference with explicit type parameters for constructor
2076
2077# 0: type, 1: list of type
2078compiler.misc.explicit.param.do.not.conform.to.bounds=\
2079    explicit type argument {0} does not conform to declared bound(s) {1}
2080
2081compiler.misc.arg.length.mismatch=\
2082    actual and formal argument lists differ in length
2083
2084# 0: message segment
2085compiler.misc.no.conforming.assignment.exists=\
2086    argument mismatch; {0}
2087
2088# 0: message segment
2089compiler.misc.varargs.argument.mismatch=\
2090    varargs mismatch; {0}
2091
2092#####
2093
2094# 0: symbol or type, 1: file name
2095compiler.warn.auxiliary.class.accessed.from.outside.of.its.source.file=\
2096    auxiliary class {0} in {1} should not be accessed from outside its own source file
2097
2098## The first argument ({0}) is a "kindname".
2099# 0: symbol kind, 1: symbol, 2: symbol
2100compiler.err.abstract.cant.be.accessed.directly=\
2101    abstract {0} {1} in {2} cannot be accessed directly
2102
2103## The first argument ({0}) is a "kindname".
2104# 0: symbol kind, 1: symbol
2105compiler.err.non-static.cant.be.ref=\
2106    non-static {0} {1} cannot be referenced from a static context
2107
2108# 0: symbol kind, 1: symbol
2109compiler.misc.bad.static.method.in.unbound.lookup=\
2110    unexpected static {0} {1} found in unbound lookup
2111
2112# 0: symbol kind, 1: symbol
2113compiler.misc.bad.instance.method.in.unbound.lookup=\
2114    unexpected instance {0} {1} found in unbound lookup
2115
2116# 0: symbol kind, 1: symbol
2117compiler.misc.bad.static.method.in.bound.lookup=\
2118    unexpected static {0} {1} found in bound lookup
2119
2120## Both arguments ({0}, {1}) are "kindname"s.  {0} is a comma-separated list
2121## of kindnames (the list should be identical to that provided in source.
2122compiler.err.unexpected.type=\
2123    unexpected type\n\
2124    required: {0}\n\
2125    found:    {1}
2126
2127compiler.err.unexpected.lambda=\
2128   lambda expression not expected here
2129
2130compiler.err.unexpected.mref=\
2131   method reference not expected here
2132
2133## The first argument {0} is a "kindname" (e.g. 'constructor', 'field', etc.)
2134## The second argument {1} is the non-resolved symbol
2135## The third argument {2} is a list of type parameters (non-empty if {1} is a method)
2136## The fourth argument {3} is a list of argument types (non-empty if {1} is a method)
2137# 0: symbol kind, 1: name, 2: unused, 3: unused
2138compiler.err.cant.resolve=\
2139    cannot find symbol\n\
2140    symbol: {0} {1}
2141
2142# 0: symbol kind, 1: name, 2: unused, 3: list of type
2143compiler.err.cant.resolve.args=\
2144    cannot find symbol\n\
2145    symbol: {0} {1}({3})
2146
2147# 0: symbol kind, 1: name, 2: list of type, 3: list of type
2148compiler.err.cant.resolve.args.params=\
2149    cannot find symbol\n\
2150    symbol: {0} <{2}>{1}({3})
2151
2152## arguments from {0} to {3} have the same meaning as above
2153## The fifth argument {4} is a location subdiagnostic (see below)
2154# 0: symbol kind, 1: name, 2: unused, 3: unused, 4: message segment
2155compiler.err.cant.resolve.location=\
2156    cannot find symbol\n\
2157    symbol:   {0} {1}\n\
2158    location: {4}
2159
2160# 0: symbol kind, 1: name, 2: unused, 3: list of type, 4: message segment
2161compiler.err.cant.resolve.location.args=\
2162    cannot find symbol\n\
2163    symbol:   {0} {1}({3})\n\
2164    location: {4}
2165
2166# 0: symbol kind, 1: name, 2: list of type, 3: list, 4: message segment
2167compiler.err.cant.resolve.location.args.params=\
2168    cannot find symbol\n\
2169    symbol:   {0} <{2}>{1}({3})\n\
2170    location: {4}
2171
2172### Following are replicated/used for method reference diagnostics
2173
2174# 0: symbol kind, 1: name, 2: unused, 3: list of type, 4: message segment
2175compiler.misc.cant.resolve.location.args=\
2176    cannot find symbol\n\
2177    symbol:   {0} {1}({3})\n\
2178    location: {4}
2179
2180# 0: symbol kind, 1: name, 2: list of type, 3: list, 4: message segment
2181compiler.misc.cant.resolve.location.args.params=\
2182    cannot find symbol\n\
2183    symbol:   {0} <{2}>{1}({3})\n\
2184    location: {4}
2185
2186##a location subdiagnostic is composed as follows:
2187## The first argument {0} is the location "kindname" (e.g. 'constructor', 'field', etc.)
2188## The second argument {1} is the location name
2189## The third argument {2} is the location type (only when {1} is a variable name)
2190
2191# 0: symbol kind, 1: type or symbol, 2: unused
2192compiler.misc.location=\
2193    {0} {1}
2194
2195# 0: symbol kind, 1: symbol, 2: type
2196compiler.misc.location.1=\
2197    {0} {1} of type {2}
2198
2199## The following are all possible string for "kindname".
2200## They should be called whatever the JLS calls them after it been translated
2201## to the appropriate language.
2202# compiler.misc.kindname.constructor=\
2203#     static member
2204compiler.misc.kindname.annotation=\
2205    @interface
2206
2207compiler.misc.kindname.constructor=\
2208    constructor
2209
2210compiler.misc.kindname.enum=\
2211    enum
2212
2213compiler.misc.kindname.interface=\
2214    interface
2215
2216compiler.misc.kindname.static=\
2217    static
2218
2219compiler.misc.kindname.type.variable=\
2220    type variable
2221
2222compiler.misc.kindname.type.variable.bound=\
2223    bound of type variable
2224
2225compiler.misc.kindname.variable=\
2226    variable
2227
2228compiler.misc.kindname.value=\
2229    value
2230
2231compiler.misc.kindname.method=\
2232    method
2233
2234compiler.misc.kindname.class=\
2235    class
2236
2237compiler.misc.kindname.package=\
2238    package
2239
2240compiler.misc.kindname.module=\
2241    module
2242
2243compiler.misc.kindname.static.init=\
2244    static initializer
2245
2246compiler.misc.kindname.instance.init=\
2247    instance initializer
2248
2249#####
2250
2251compiler.misc.no.args=\
2252    no arguments
2253
2254# 0: message segment
2255compiler.err.override.static=\
2256    {0}\n\
2257    overriding method is static
2258
2259# 0: message segment, 1: set of modifier
2260compiler.err.override.meth=\
2261    {0}\n\
2262    overridden method is {1}
2263
2264# 0: message segment, 1: type
2265compiler.err.override.meth.doesnt.throw=\
2266    {0}\n\
2267    overridden method does not throw {1}
2268
2269# In the following string {1} is a space separated list of Java Keywords, as
2270# they would have been declared in the source code
2271# 0: message segment, 1: set of modifier
2272compiler.err.override.weaker.access=\
2273    {0}\n\
2274    attempting to assign weaker access privileges; was {1}
2275
2276# 0: message segment, 1: type, 2: type
2277compiler.err.override.incompatible.ret=\
2278    {0}\n\
2279    return type {1} is not compatible with {2}
2280
2281# 0: message segment, 1: type, 2: type
2282compiler.warn.override.unchecked.ret=\
2283    {0}\n\
2284    return type requires unchecked conversion from {1} to {2}
2285
2286# 0: message segment, 1: type
2287compiler.warn.override.unchecked.thrown=\
2288    {0}\n\
2289    overridden method does not throw {1}
2290
2291# 0: symbol
2292compiler.warn.override.equals.but.not.hashcode=\
2293    Class {0} overrides equals, but neither it nor any superclass overrides hashCode method
2294
2295## The following are all possible strings for the first argument ({0}) of the
2296## above strings.
2297# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2298compiler.misc.cant.override=\
2299    {0} in {1} cannot override {2} in {3}
2300
2301# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2302compiler.misc.cant.hide=\
2303    {0} in {1} cannot hide {2} in {3}
2304
2305# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2306compiler.misc.cant.implement=\
2307    {0} in {1} cannot implement {2} in {3}
2308
2309# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2310compiler.misc.clashes.with=\
2311    {0} in {1} clashes with {2} in {3}
2312
2313# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2314compiler.misc.unchecked.override=\
2315    {0} in {1} overrides {2} in {3}
2316
2317# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2318compiler.misc.unchecked.implement=\
2319    {0} in {1} implements {2} in {3}
2320
2321# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2322compiler.misc.unchecked.clash.with=\
2323    {0} in {1} overrides {2} in {3}
2324
2325# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2326compiler.misc.varargs.override=\
2327    {0} in {1} overrides {2} in {3}
2328
2329# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2330compiler.misc.varargs.implement=\
2331    {0} in {1} implements {2} in {3}
2332
2333# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2334compiler.misc.varargs.clash.with=\
2335    {0} in {1} overrides {2} in {3}
2336
2337# 0: symbol kind, 1: symbol, 2: symbol, 3: message segment
2338compiler.misc.inapplicable.method=\
2339    {0} {1}.{2} is not applicable\n\
2340    ({3})
2341
2342########################################
2343# Diagnostics for language feature changes
2344########################################
2345
2346# 0: string
2347compiler.err.modules.not.supported.in.source=\
2348   modules are not supported in -source {0}\n\
2349    (use -source 9 or higher to enable modules)
2350
2351# 0: string
2352compiler.misc.diamond.and.anon.class.not.supported.in.source=\
2353    cannot use ''<>'' with anonymous inner classes in -source {0}\n\
2354    (use -source 9 or higher to enable ''<>'' with anonymous inner classes)
2355
2356# 0: string
2357compiler.err.unsupported.binary.lit=\
2358    binary literals are not supported in -source {0}\n\
2359    (use -source 7 or higher to enable binary literals)
2360
2361# 0: string
2362compiler.err.unsupported.underscore.lit=\
2363    underscores in literals are not supported in -source {0}\n\
2364    (use -source 7 or higher to enable underscores in literals)
2365
2366# 0: string
2367compiler.err.try.with.resources.not.supported.in.source=\
2368    try-with-resources is not supported in -source {0}\n\
2369    (use -source 7 or higher to enable try-with-resources)
2370
2371# 0: string
2372compiler.err.var.in.try.with.resources.not.supported.in.source=\
2373    variables in try-with-resources not supported in -source {0}\n\
2374    (use -source 9 or higher to enable variables in try-with-resources)
2375
2376compiler.warn.underscore.as.identifier=\
2377    as of release 9, ''_'' is a keyword, and may not be used as an identifier
2378
2379compiler.err.underscore.as.identifier=\
2380    as of release 9, ''_'' is a keyword, and may not be used as an identifier
2381
2382compiler.err.underscore.as.identifier.in.lambda=\
2383    ''_'' used as an identifier\n\
2384    (use of ''_'' as an identifier is forbidden for lambda parameters)
2385
2386compiler.err.enum.as.identifier=\
2387    as of release 5, ''enum'' is a keyword, and may not be used as an identifier
2388
2389compiler.err.assert.as.identifier=\
2390    as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier
2391
2392# TODO 308: make a better error message
2393compiler.err.this.as.identifier=\
2394    as of release 8, ''this'' is allowed as the parameter name for the receiver type only, which has to be the first parameter
2395
2396# 0: symbol
2397compiler.err.receiver.parameter.not.applicable.constructor.toplevel.class=\
2398    receiver parameter not applicable for constructor of top-level class
2399
2400# TODO 308: make a better error message
2401# 0: symbol
2402compiler.err.cant.type.annotate.scoping.1=\
2403    scoping construct cannot be annotated with type-use annotation: {0}
2404
2405# TODO 308: make a better error message
2406# 0: list of symbol
2407compiler.err.cant.type.annotate.scoping=\
2408    scoping construct cannot be annotated with type-use annotations: {0}
2409
2410# 0: type, 1: type
2411compiler.err.incorrect.receiver.name=\
2412    the receiver name does not match the enclosing class type\n\
2413    required: {0}\n\
2414    found: {1}
2415
2416# 0: type, 1: type
2417compiler.err.incorrect.receiver.type=\
2418    the receiver type does not match the enclosing class type\n\
2419    required: {0}\n\
2420    found: {1}
2421
2422# 0: type, 1: type
2423compiler.err.incorrect.constructor.receiver.type=\
2424    the receiver type does not match the enclosing outer class type\n\
2425    required: {0}\n\
2426    found: {1}
2427
2428# 0: type, 1: type
2429compiler.err.incorrect.constructor.receiver.name=\
2430    the receiver name does not match the enclosing outer class type\n\
2431    required: {0}\n\
2432    found: {1}
2433
2434compiler.err.no.annotations.on.dot.class=\
2435    no annotations are allowed in the type of a class literal
2436
2437# 0: string
2438compiler.err.type.annotations.not.supported.in.source=\
2439    type annotations are not supported in -source {0}\n\
2440(use -source 8 or higher to enable type annotations)
2441
2442# 0: string
2443compiler.err.annotations.after.type.params.not.supported.in.source=\
2444    annotations after method type parameters are not supported in -source {0}\n\
2445(use -source 8 or higher to enable annotations after method type parameters)
2446
2447# 0: string
2448compiler.err.repeatable.annotations.not.supported.in.source=\
2449    repeated annotations are not supported in -source {0}\n\
2450(use -source 8 or higher to enable repeated annotations)
2451
2452# 0: string
2453compiler.err.diamond.not.supported.in.source=\
2454    diamond operator is not supported in -source {0}\n\
2455    (use -source 7 or higher to enable diamond operator)
2456
2457# 0: string
2458compiler.err.multicatch.not.supported.in.source=\
2459    multi-catch statement is not supported in -source {0}\n\
2460    (use -source 7 or higher to enable multi-catch statement)
2461
2462# 0: string
2463compiler.err.string.switch.not.supported.in.source=\
2464    strings in switch are not supported in -source {0}\n\
2465    (use -source 7 or higher to enable strings in switch)
2466
2467# 0: string
2468compiler.err.lambda.not.supported.in.source=\
2469    lambda expressions are not supported in -source {0}\n\
2470    (use -source 8 or higher to enable lambda expressions)
2471
2472# 0: string
2473compiler.err.method.references.not.supported.in.source=\
2474    method references are not supported in -source {0}\n\
2475    (use -source 8 or higher to enable method references)
2476
2477# 0: string
2478compiler.err.default.methods.not.supported.in.source=\
2479    default methods are not supported in -source {0}\n\
2480    (use -source 8 or higher to enable default methods)
2481
2482# 0: string
2483compiler.err.intersection.types.in.cast.not.supported.in.source=\
2484    intersection types in cast are not supported in -source {0}\n\
2485    (use -source 8 or higher to enable default methods)
2486
2487# 0: string
2488compiler.err.static.intf.methods.not.supported.in.source=\
2489    static interface methods are not supported in -source {0}\n\
2490    (use -source 8 or higher to enable static interface methods)
2491
2492# 0: string
2493compiler.err.static.intf.method.invoke.not.supported.in.source=\
2494    static interface method invocations are not supported in -source {0}\n\
2495    (use -source 8 or higher to enable static interface method invocations)
2496
2497# 0: string
2498compiler.err.private.intf.methods.not.supported.in.source=\
2499    private interface methods are not supported in -source {0}\n\
2500    (use -source 9 or higher to enable private interface methods)
2501
2502########################################
2503# Diagnostics for verbose resolution
2504# used by Resolve (debug only)
2505########################################
2506
2507# 0: number, 1: symbol, 2: unused
2508compiler.misc.applicable.method.found=\
2509    #{0} applicable method found: {1}
2510
2511# 0: number, 1: symbol, 2: message segment
2512compiler.misc.applicable.method.found.1=\
2513    #{0} applicable method found: {1}\n\
2514    ({2})
2515
2516# 0: number, 1: symbol, 2: message segment
2517compiler.misc.not.applicable.method.found=\
2518    #{0} not applicable method found: {1}\n\
2519    ({2})
2520
2521# 0: type
2522compiler.misc.partial.inst.sig=\
2523    partially instantiated to: {0}
2524
2525# 0: name, 1: symbol, 2: number, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
2526compiler.note.verbose.resolve.multi=\
2527    resolving method {0} in type {1} to candidate {2}\n\
2528    phase: {3}\n\
2529    with actuals: {4}\n\
2530    with type-args: {5}\n\
2531    candidates:
2532
2533# 0: name, 1: symbol, 2: unused, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
2534compiler.note.verbose.resolve.multi.1=\
2535    erroneous resolution for method {0} in type {1}\n\
2536    phase: {3}\n\
2537    with actuals: {4}\n\
2538    with type-args: {5}\n\
2539    candidates:
2540
2541# 0: symbol, 1: type, 2: type
2542compiler.note.deferred.method.inst=\
2543    Deferred instantiation of method {0}\n\
2544    instantiated signature: {1}\n\
2545    target-type: {2}
2546
2547########################################
2548# Diagnostics for where clause implementation
2549# used by the RichDiagnosticFormatter.
2550########################################
2551
2552compiler.misc.type.null=\
2553    <null>
2554
2555# X#n (where n is an int id) is disambiguated tvar name
2556# 0: name, 1: number
2557compiler.misc.type.var=\
2558    {0}#{1}
2559
2560# CAP#n (where n is an int id) is an abbreviation for 'captured type'
2561# 0: number
2562compiler.misc.captured.type=\
2563    CAP#{0}
2564
2565# <INT#n> (where n is an int id) is an abbreviation for 'intersection type'
2566# 0: number
2567compiler.misc.intersection.type=\
2568    INT#{0}
2569
2570# where clause for captured type: contains upper ('extends {1}') and lower
2571# ('super {2}') bound along with the wildcard that generated this captured type ({3})
2572# 0: type, 1: type, 2: type, 3: type
2573compiler.misc.where.captured=\
2574    {0} extends {1} super: {2} from capture of {3}
2575
2576# compact where clause for captured type: contains upper ('extends {1}') along
2577# with the wildcard that generated this captured type ({3})
2578# 0: type, 1: type, 2: unused, 3: type
2579compiler.misc.where.captured.1=\
2580    {0} extends {1} from capture of {3}
2581
2582# where clause for type variable: contains upper bound(s) ('extends {1}') along with
2583# the kindname ({2}) and location ({3}) in which the typevar has been declared
2584# 0: type, 1: list of type, 2: symbol kind, 3: symbol
2585compiler.misc.where.typevar=\
2586    {0} extends {1} declared in {2} {3}
2587
2588# compact where clause for type variable: contains the kindname ({2}) and location ({3})
2589# in which the typevar has been declared
2590# 0: type, 1: list of type, 2: symbol kind, 3: symbol
2591compiler.misc.where.typevar.1=\
2592    {0} declared in {2} {3}
2593
2594# where clause for fresh type variable: contains upper bound(s) ('extends {1}').
2595# Since a fresh type-variable is synthetic - there's no location/kindname here.
2596# 0: type, 1: list of type
2597compiler.misc.where.fresh.typevar=\
2598    {0} extends {1}
2599
2600# where clause for type variable: contains all the upper bound(s) ('extends {1}')
2601# of this intersection type
2602# 0: type, 1: list of type
2603compiler.misc.where.intersection=\
2604    {0} extends {1}
2605
2606### Where clause headers ###
2607compiler.misc.where.description.captured=\
2608    where {0} is a fresh type-variable:
2609
2610# 0: set of type
2611compiler.misc.where.description.typevar=\
2612    where {0} is a type-variable:
2613
2614# 0: set of type
2615compiler.misc.where.description.intersection=\
2616    where {0} is an intersection type:
2617
2618# 0: set of type
2619compiler.misc.where.description.captured.1=\
2620    where {0} are fresh type-variables:
2621
2622# 0: set of type
2623compiler.misc.where.description.typevar.1=\
2624    where {0} are type-variables:
2625
2626# 0: set of type
2627compiler.misc.where.description.intersection.1=\
2628    where {0} are intersection types:
2629
2630###
2631# errors related to doc comments
2632
2633compiler.err.dc.bad.entity=\
2634    bad HTML entity
2635
2636compiler.err.dc.bad.gt=\
2637    bad use of ''>''
2638
2639compiler.err.dc.bad.inline.tag=\
2640    incorrect use of inline tag
2641
2642compiler.err.dc.identifier.expected=\
2643    identifier expected
2644
2645compiler.err.dc.malformed.html=\
2646    malformed HTML
2647
2648compiler.err.dc.missing.semicolon=\
2649    semicolon missing
2650
2651compiler.err.dc.no.content=\
2652    no content
2653
2654compiler.err.dc.no.tag.name=\
2655    no tag name after '@'
2656
2657compiler.err.dc.gt.expected=\
2658    ''>'' expected
2659
2660compiler.err.dc.ref.bad.parens=\
2661    '')'' missing in reference
2662
2663compiler.err.dc.ref.syntax.error=\
2664    syntax error in reference
2665
2666compiler.err.dc.ref.unexpected.input=\
2667    unexpected text
2668
2669compiler.err.dc.unexpected.content=\
2670    unexpected content
2671
2672compiler.err.dc.unterminated.inline.tag=\
2673    unterminated inline tag
2674
2675compiler.err.dc.unterminated.signature=\
2676    unterminated signature
2677
2678compiler.err.dc.unterminated.string=\
2679    unterminated string
2680
2681###
2682# errors related to modules
2683
2684compiler.err.expected.module=\
2685    expected ''module''
2686
2687# 0: symbol
2688compiler.err.module.not.found=\
2689    module not found: {0}
2690
2691compiler.err.too.many.modules=\
2692    too many module declarations found
2693
2694# 0: symbol
2695compiler.err.duplicate.module=\
2696    duplicate module: {0}
2697
2698# 0: symbol
2699compiler.err.duplicate.requires=\
2700    duplicate requires: {0}
2701
2702# 0: symbol
2703compiler.err.duplicate.exports=\
2704    duplicate export: {0}
2705
2706# 0: symbol, 1: symbol
2707compiler.err.duplicate.provides=\
2708    duplicate provides: service {0}, implementation {1}
2709
2710# 0: symbol
2711compiler.err.duplicate.uses=\
2712    duplicate uses: {0}
2713
2714# 0: symbol
2715compiler.err.service.implementation.is.abstract=\
2716    the service implementation is an abstract class: {0}
2717
2718compiler.err.service.implementation.must.be.subtype.of.service.interface=\
2719    the service implementation type must be a subtype of the service interface type
2720
2721# 0: symbol
2722compiler.err.service.implementation.is.inner=\
2723    the service implementation is an inner class: {0}
2724
2725# 0: symbol
2726compiler.err.service.definition.is.inner=\
2727    the service definition is an inner class: {0}
2728
2729# 0: symbol
2730compiler.err.service.definition.is.enum=\
2731    the service definition is an enum: {0}
2732
2733# 0: symbol
2734compiler.err.service.implementation.doesnt.have.a.no.args.constructor=\
2735    the service implementation does not have a default constructor: {0}
2736
2737# 0: symbol
2738compiler.err.service.implementation.no.args.constructor.not.public=\
2739    the no arguments constructor of the service implementation is not public: {0}
2740
2741# 0: symbol
2742compiler.err.package.empty.or.not.found=\
2743    package is empty or does not exist: {0}
2744
2745compiler.err.no.output.dir=\
2746    no class output directory specified
2747
2748compiler.err.unnamed.pkg.not.allowed.named.modules=\
2749    unnamed package is not allowed in named modules
2750
2751# 0: name, 1: name
2752compiler.err.module.name.mismatch=\
2753    module name {0} does not match expected name {1}
2754
2755compiler.err.module.decl.sb.in.module-info.java=\
2756    module declarations should be in a file named module-info.java
2757
2758compiler.err.module-info.with.xmodule.sourcepath=\
2759    illegal combination of -Xmodule and module-info on sourcepath
2760
2761compiler.err.module-info.with.xmodule.classpath=\
2762    illegal combination of -Xmodule and module-info on classpath
2763
2764compiler.err.xmodule.no.module.sourcepath=\
2765    illegal combination of -Xmodule and -modulesourcepath
2766
2767compiler.err.processorpath.no.processormodulepath=\
2768    illegal combination of -processorpath and -processormodulepath
2769
2770# 0: symbol
2771compiler.err.package.in.other.module=\
2772    package exists in another module: {0}
2773
2774# 0: symbol, 1: name, 2: symbol, 3: symbol
2775compiler.err.package.clash.from.requires=\
2776    module {0} reads package {1} from both {2} and {3}
2777
2778# 0: string
2779compiler.err.module.not.found.in.module.source.path=\
2780    module {0} not found in module source path
2781
2782compiler.err.output.dir.must.be.specified.with.dash.m.option=\
2783    class output directory must be specified if -m option is used
2784
2785compiler.err.modulesourcepath.must.be.specified.with.dash.m.option=\
2786    module source path must be specified if -m option is used
2787
2788# 0: symbol
2789compiler.err.service.implementation.not.in.right.module=\
2790    service implementation must be defined in the same module as the provides directive
2791
2792# 0: symbol
2793compiler.err.cyclic.requires=\
2794    cyclic dependence involving {0}
2795
2796# 0: fragment, 1: name
2797compiler.err.duplicate.module.on.path=\
2798    duplicate module on {0}\nmodule in {1}
2799
2800# 0:  string
2801compiler.err.xaddexports.malformed.entry=\
2802    bad value for -XaddExports: {0}
2803
2804# 0: string
2805compiler.err.xaddexports.too.many=\
2806    multiple -XaddExports options for {0}
2807
2808# 0:  string
2809compiler.err.xaddreads.malformed.entry=\
2810    bad value for -XaddReads: {0}
2811
2812# 0: string
2813compiler.err.xaddreads.too.many=\
2814    multiple -XaddReads options for {0}
2815
2816compiler.err.addmods.all.module.path.invalid=\
2817    -addmods ALL-MODULE-PATH can only be used when compiling the unnamed module
2818
2819compiler.misc.locn.module_source_path=\
2820    module source path
2821
2822compiler.misc.locn.upgrade_module_path=\
2823    upgrade module path
2824
2825compiler.misc.locn.system_modules=\
2826    system modules
2827
2828compiler.misc.locn.module_path=\
2829    application module path
2830
2831compiler.misc.cant.resolve.modules=\
2832    cannot resolve modules
2833
2834# 0: symbol
2835compiler.err.cant.find.module=\
2836    cannot find module: {0}
2837
2838# 0: string
2839compiler.err.invalid.module.specifier=\
2840    module specifier not allowed: {0}
2841
2842# 0: symbol
2843compiler.warn.service.provided.but.not.exported.or.used=\
2844    service interface provided but not exported or used
2845
2846###
2847# errors related to options
2848
2849# 0: string, 1: string
2850compiler.err.illegal.argument.for.option=\
2851    illegal argument for {0}: {1}
2852