compiler.properties revision 3294:9adfb22ff08f
1#
2# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4#
5# This code is free software; you can redistribute it and/or modify it
6# under the terms of the GNU General Public License version 2 only, as
7# published by the Free Software Foundation.  Oracle designates this
8# particular file as subject to the "Classpath" exception as provided
9# by Oracle in the LICENSE file that accompanied this code.
10#
11# This code is distributed in the hope that it will be useful, but WITHOUT
12# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
14# version 2 for more details (a copy is included in the LICENSE file that
15# accompanied this code).
16#
17# You should have received a copy of the GNU General Public License version
18# 2 along with this work; if not, write to the Free Software Foundation,
19# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20#
21# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22# or visit www.oracle.com if you need additional information or have any
23# questions.
24#
25
26# Messages in this file which use "placeholders" for values (e.g. {0}, {1})
27# are preceded by a stylized comment describing the type of the corresponding
28# values.
29# The simple types currently in use are:
30#
31# boolean           true or false
32# diagnostic        a sub-message; see compiler.misc.*
33# fragment          similar to 'message segment', but with more specific type
34# modifier          a Java modifier; e.g. public, private, protected
35# file              a file URL
36# file object       a file URL - similar to 'file' but typically used for source/class files, hence more specific
37# name              a name, typically a Java identifier
38# number            an integer
39# option name       the name of a command line option
40# source version    a source version number, such as 1.5, 1.6, 1.7
41# string            a general string
42# symbol            the name of a declared type
43# symbol kind       the kind of a symbol (i.e. method, variable)
44# kind name         an informative description of the kind of a declaration; see compiler.misc.kindname.*
45# token             the name of a non-terminal in source code; see compiler.misc.token.*
46# type              a Java type; e.g. int, X, X<T>
47# object            a Java object (unspecified)
48# unused            the value is not used in this message
49#
50# The following compound types are also used:
51#
52# list of X         a comma-separated list of items; e.g. list of type
53# set of X          a comma-separated collection of items; e.g. set of modifier
54#
55# These may be composed:
56#
57# list of type or message segment
58#
59# The following type aliases are supported:
60#
61# message segment --> diagnostic or fragment
62# file name --> file or file object
63#
64# Custom comments are supported in parenthesis i.e.
65#
66# number (classfile major version)
67#
68# These comments are used internally in order to generate an enum-like class declaration containing
69# a method/field for each of the diagnostic keys listed here. Those methods/fields can then be used
70# by javac code to build diagnostics in a type-safe fashion.
71#
72# In addition, these comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
73# using info derived from the collected set of examples in test/tools/javac/diags/examples.
74# MessageInfo can also be run as a standalone utility providing more facilities
75# for manipulating this file. For more details, see MessageInfo.java.
76
77##
78## errors
79##
80
81# 0: symbol
82compiler.err.abstract.cant.be.instantiated=\
83    {0} is abstract; cannot be instantiated
84
85compiler.err.abstract.meth.cant.have.body=\
86    abstract methods cannot have a body
87
88compiler.err.already.annotated=\
89    {0} {1} has already been annotated
90
91# 0: symbol kind, 1: symbol, 2: symbol kind, 3: symbol
92compiler.err.already.defined=\
93    {0} {1} is already defined in {2} {3}
94
95# 0: symbol kind, 1: symbol, 2: symbol kind, 3: symbol kind, 4: symbol
96compiler.err.already.defined.in.clinit=\
97    {0} {1} is already defined in {2} of {3} {4}
98
99# 0: string
100compiler.err.already.defined.single.import=\
101    a type with the same simple name is already defined by the single-type-import of {0}
102
103# 0: string
104compiler.err.already.defined.static.single.import=\
105    a type with the same simple name is already defined by the static single-type-import of {0}
106
107compiler.err.already.defined.this.unit=\
108    {0} is already defined in this compilation unit
109
110# 0: type, 1: list of name
111compiler.err.annotation.missing.default.value=\
112    annotation @{0} is missing a default value for the element ''{1}''
113
114# 0: type, 1: list of name
115compiler.err.annotation.missing.default.value.1=\
116    annotation @{0} is missing default values for elements {1}
117
118# 0: type
119compiler.err.annotation.not.valid.for.type=\
120    annotation not valid for an element of type {0}
121
122compiler.err.annotation.type.not.applicable=\
123    annotation type not applicable to this kind of declaration
124
125# 0: type
126compiler.err.annotation.type.not.applicable.to.type=\
127    annotation @{0} not applicable in this type context
128
129compiler.err.annotation.value.must.be.annotation=\
130    annotation value must be an annotation
131
132compiler.err.annotation.value.must.be.class.literal=\
133    annotation value must be a class literal
134
135compiler.err.annotation.value.must.be.name.value=\
136    annotation values must be of the form ''name=value''
137
138compiler.err.annotation.value.not.allowable.type=\
139    annotation value not of an allowable type
140
141compiler.err.anon.class.impl.intf.no.args=\
142    anonymous class implements interface; cannot have arguments
143
144compiler.err.anon.class.impl.intf.no.typeargs=\
145    anonymous class implements interface; cannot have type arguments
146
147compiler.err.anon.class.impl.intf.no.qual.for.new=\
148    anonymous class implements interface; cannot have qualifier for new
149
150compiler.err.cant.inherit.from.anon=\
151    cannot inherit from anonymous class
152
153# 0: symbol, 1: symbol, 2: symbol
154compiler.err.array.and.varargs=\
155    cannot declare both {0} and {1} in {2}
156
157compiler.err.array.dimension.missing=\
158    array dimension missing
159
160# 0: type
161compiler.err.array.req.but.found=\
162    array required, but {0} found
163
164compiler.err.attribute.value.must.be.constant=\
165    element value must be a constant expression
166
167# 0: string (statement type)
168compiler.err.bad.initializer=\
169    bad initializer for {0}
170
171compiler.err.break.outside.switch.loop=\
172    break outside switch or loop
173
174# 0: name
175compiler.err.call.must.be.first.stmt.in.ctor=\
176    call to {0} must be first statement in constructor
177
178# 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
179compiler.err.cant.apply.symbol=\
180    {0} {1} in {4} {5} cannot be applied to given types;\n\
181    required: {2}\n\
182    found: {3}\n\
183    reason: {6}
184
185# 0: symbol kind, 1: name, 2: list of type
186compiler.err.cant.apply.symbols=\
187    no suitable {0} found for {1}({2})
188
189# 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
190compiler.misc.cant.apply.symbol=\
191    {0} {1} in {4} {5} cannot be applied to given types\n\
192    required: {2}\n\
193    found: {3}\n\
194    reason: {6}
195
196# 0: symbol kind, 1: name, 2: list of type
197compiler.misc.cant.apply.symbols=\
198    no suitable {0} found for {1}({2})
199
200# 0: symbol kind, 1: symbol
201compiler.misc.no.abstracts=\
202    no abstract method found in {0} {1}
203
204# 0: symbol kind, 1: symbol
205compiler.misc.incompatible.abstracts=\
206    multiple non-overriding abstract methods found in {0} {1}
207
208compiler.err.bad.functional.intf.anno=\
209    Unexpected @FunctionalInterface annotation
210
211# 0: message segment
212compiler.err.bad.functional.intf.anno.1=\
213    Unexpected @FunctionalInterface annotation\n\
214    {0}
215
216# 0: message segment
217compiler.err.anonymous.diamond.method.does.not.override.superclass=\
218    method does not override or implement a method from a supertype\n\
219    {0}
220
221# 0: symbol
222compiler.misc.not.a.functional.intf=\
223    {0} is not a functional interface
224
225# 0: symbol, 1: message segment
226compiler.misc.not.a.functional.intf.1=\
227    {0} is not a functional interface\n\
228    {1}
229
230# 0: symbol, 1: symbol kind, 2: symbol
231compiler.misc.invalid.generic.lambda.target=\
232    invalid functional descriptor for lambda expression\n\
233    method {0} in {1} {2} is generic
234
235# 0: symbol kind, 1: symbol
236compiler.misc.incompatible.descs.in.functional.intf=\
237    incompatible function descriptors found in {0} {1}
238
239# 0: name, 1: list of type, 2: type, 3: list of type
240compiler.misc.descriptor=\
241    descriptor: {2} {0}({1})
242
243# 0: name, 1: list of type, 2: type, 3: list of type
244compiler.misc.descriptor.throws=\
245    descriptor: {2} {0}({1}) throws {3}
246
247# 0: type
248compiler.misc.no.suitable.functional.intf.inst=\
249    cannot infer functional interface descriptor for {0}
250
251# 0: message segment
252compiler.misc.bad.intersection.target.for.functional.expr=\
253    bad intersection type target for lambda or method reference\n\
254    {0}
255
256# 0: symbol or type
257compiler.misc.not.an.intf.component=\
258    component type {0} is not an interface
259
260# 0: symbol kind, 1: message segment
261compiler.err.invalid.mref=\
262    invalid {0} reference\n\
263    {1}
264
265# 0: symbol kind, 1: message segment
266compiler.misc.invalid.mref=\
267    invalid {0} reference\n\
268    {1}
269
270compiler.misc.static.mref.with.targs=\
271    parameterized qualifier on static method reference
272
273# 0: symbol
274compiler.err.cant.assign.val.to.final.var=\
275    cannot assign a value to final variable {0}
276
277# 0: symbol, 1: message segment
278compiler.err.cant.ref.non.effectively.final.var=\
279    local variables referenced from {1} must be final or effectively final
280
281compiler.err.try.with.resources.expr.needs.var=\
282    the try-with-resources resource must either be a variable declaration or an expression denoting \
283a reference to a final or effectively final variable
284
285# 0: symbol
286compiler.err.try.with.resources.expr.effectively.final.var=\
287    variable {0} used as a try-with-resources resource neither final nor effectively final
288
289
290compiler.misc.lambda=\
291    a lambda expression
292
293compiler.misc.inner.cls=\
294    an inner class
295
296# 0: type
297compiler.err.cant.deref=\
298    {0} cannot be dereferenced
299
300compiler.err.cant.extend.intf.annotation=\
301    ''extends'' not allowed for @interfaces
302
303# 0: symbol
304compiler.err.cant.inherit.from.final=\
305    cannot inherit from final {0}
306
307# 0: symbol
308compiler.err.cant.ref.before.ctor.called=\
309    cannot reference {0} before supertype constructor has been called
310
311compiler.err.cant.select.static.class.from.param.type=\
312    cannot select a static class from a parameterized type
313
314# 0: symbol, 1: string, 2: string
315compiler.err.cant.inherit.diff.arg=\
316    {0} cannot be inherited with different arguments: <{1}> and <{2}>
317
318compiler.err.catch.without.try=\
319    ''catch'' without ''try''
320
321# 0: symbol kind, 1: symbol
322compiler.err.clash.with.pkg.of.same.name=\
323    {0} {1} clashes with package of same name
324
325compiler.err.class.not.allowed=\
326    class, interface or enum declaration not allowed here
327
328compiler.err.const.expr.req=\
329    constant expression required
330
331compiler.err.cont.outside.loop=\
332    continue outside of loop
333
334# 0: symbol
335compiler.err.cyclic.inheritance=\
336    cyclic inheritance involving {0}
337
338# 0: symbol
339compiler.err.cyclic.annotation.element=\
340    type of element {0} is cyclic
341
342# 0: unused
343compiler.err.call.to.super.not.allowed.in.enum.ctor=\
344    call to super not allowed in enum constructor
345
346# 0: type
347compiler.err.no.superclass=\
348    {0} has no superclass.
349
350# 0: symbol, 1: type, 2: symbol, 3: type, 4: unused
351compiler.err.concrete.inheritance.conflict=\
352    methods {0} from {1} and {2} from {3} are inherited with the same signature
353
354compiler.err.default.allowed.in.intf.annotation.member=\
355    default value only allowed in an annotation type declaration
356
357# 0: symbol
358compiler.err.doesnt.exist=\
359    package {0} does not exist
360
361# 0: type
362compiler.err.duplicate.annotation.invalid.repeated=\
363    annotation {0} is not a valid repeatable annotation
364
365# 0: name, 1: type
366compiler.err.duplicate.annotation.member.value=\
367    duplicate element ''{0}'' in annotation @{1}.
368
369# 0: name, 1: unused
370compiler.err.duplicate.annotation.missing.container=\
371    {0} is not a repeatable annotation type
372
373# 0: type, 1: unused
374compiler.err.invalid.repeatable.annotation=\
375    duplicate annotation: {0} is annotated with an invalid @Repeatable annotation
376
377# 0: symbol or type
378compiler.err.invalid.repeatable.annotation.no.value=\
379    {0} is not a valid @Repeatable, no value element method declared
380
381# 0: type, 1: number
382compiler.err.invalid.repeatable.annotation.multiple.values=\
383    {0} is not a valid @Repeatable, {1} element methods named ''value'' declared
384
385# 0: type
386compiler.err.invalid.repeatable.annotation.invalid.value=\
387    {0} is not a valid @Repeatable: invalid value element
388
389# 0: symbol or type, 1: unused, 2: type
390compiler.err.invalid.repeatable.annotation.value.return=\
391    containing annotation type ({0}) must declare an element named ''value'' of type {2}
392
393# 0: symbol or type, 1: symbol
394compiler.err.invalid.repeatable.annotation.elem.nondefault=\
395    containing annotation type ({0}) does not have a default value for element {1}
396
397# 0: symbol, 1: unused, 2: symbol, 3: unused
398compiler.err.invalid.repeatable.annotation.retention=\
399    retention of containing annotation type ({0}) is shorter than the retention of repeatable annotation type ({2})
400
401# 0: symbol, 1: symbol
402compiler.err.invalid.repeatable.annotation.not.documented=\
403    repeatable annotation type ({1}) is @Documented while containing annotation type ({0}) is not
404
405# 0: symbol, 1: symbol
406compiler.err.invalid.repeatable.annotation.not.inherited=\
407    repeatable annotation type ({1}) is @Inherited while containing annotation type ({0}) is not
408
409# 0: symbol, 1: symbol
410compiler.err.invalid.repeatable.annotation.incompatible.target=\
411    containing annotation type ({0}) is applicable to more targets than repeatable annotation type ({1})
412
413# 0: symbol
414compiler.err.invalid.repeatable.annotation.repeated.and.container.present=\
415    container {0} must not be present at the same time as the element it contains
416
417# 0: type, 1: symbol
418compiler.err.invalid.repeatable.annotation.not.applicable=\
419    container {0} is not applicable to element {1}
420
421# 0: type
422compiler.err.invalid.repeatable.annotation.not.applicable.in.context=\
423    container {0} is not applicable in this type context
424
425# 0: name
426compiler.err.duplicate.class=\
427    duplicate class: {0}
428
429compiler.err.duplicate.case.label=\
430    duplicate case label
431
432compiler.err.duplicate.default.label=\
433    duplicate default label
434
435compiler.err.else.without.if=\
436    ''else'' without ''if''
437
438compiler.err.empty.char.lit=\
439    empty character literal
440
441# 0: symbol
442compiler.err.encl.class.required=\
443    an enclosing instance that contains {0} is required
444
445compiler.err.enum.annotation.must.be.enum.constant=\
446    an enum annotation value must be an enum constant
447
448compiler.err.enum.cant.be.instantiated=\
449    enum types may not be instantiated
450
451compiler.err.enum.label.must.be.unqualified.enum=\
452    an enum switch case label must be the unqualified name of an enumeration constant
453
454compiler.err.enum.no.subclassing=\
455    classes cannot directly extend java.lang.Enum
456
457compiler.err.enum.types.not.extensible=\
458    enum types are not extensible
459
460compiler.err.enum.no.finalize=\
461    enums cannot have finalize methods
462
463# 0: file name, 1: string
464compiler.err.error.reading.file=\
465    error reading {0}; {1}
466
467# 0: type
468compiler.err.except.already.caught=\
469    exception {0} has already been caught
470
471# 0: type
472compiler.err.except.never.thrown.in.try=\
473    exception {0} is never thrown in body of corresponding try statement
474
475# 0: symbol
476compiler.err.final.parameter.may.not.be.assigned=\
477    final parameter {0} may not be assigned
478
479# 0: symbol
480compiler.err.try.resource.may.not.be.assigned=\
481    auto-closeable resource {0} may not be assigned
482
483# 0: symbol
484compiler.err.multicatch.parameter.may.not.be.assigned=\
485    multi-catch parameter {0} may not be assigned
486
487# 0: type, 1: type
488compiler.err.multicatch.types.must.be.disjoint=\
489    Alternatives in a multi-catch statement cannot be related by subclassing\n\
490    Alternative {0} is a subclass of alternative {1}
491
492compiler.err.finally.without.try=\
493    ''finally'' without ''try''
494
495# 0: type, 1: message segment
496compiler.err.foreach.not.applicable.to.type=\
497    for-each not applicable to expression type\n\
498    required: {1}\n\
499    found:    {0}
500
501compiler.err.fp.number.too.large=\
502    floating point number too large
503
504compiler.err.fp.number.too.small=\
505    floating point number too small
506
507compiler.err.generic.array.creation=\
508    generic array creation
509
510compiler.err.generic.throwable=\
511    a generic class may not extend java.lang.Throwable
512
513# 0: symbol
514compiler.err.icls.cant.have.static.decl=\
515    Illegal static declaration in inner class {0}\n\
516    modifier \''static\'' is only allowed in constant variable declarations
517
518# 0: string
519compiler.err.illegal.char=\
520    illegal character: ''{0}''
521
522compiler.err.illegal.char.for.encoding=\
523    unmappable character for encoding {0}
524
525# 0: set of modifier, 1: set of modifier
526compiler.err.illegal.combination.of.modifiers=\
527    illegal combination of modifiers: {0} and {1}
528
529compiler.err.illegal.enum.static.ref=\
530    illegal reference to static field from initializer
531
532compiler.err.illegal.esc.char=\
533    illegal escape character
534
535compiler.err.illegal.forward.ref=\
536    illegal forward reference
537
538# 0: symbol, 1: string
539compiler.err.not.in.profile=\
540    {0} is not available in profile ''{1}''
541
542# 0: symbol
543compiler.warn.forward.ref=\
544    reference to variable ''{0}'' before it has been initialized
545
546compiler.err.illegal.self.ref=\
547    self-reference in initializer
548
549# 0: symbol
550compiler.warn.self.ref=\
551    self-reference in initializer of variable ''{0}''
552
553compiler.err.illegal.generic.type.for.instof=\
554    illegal generic type for instanceof
555
556# 0: type
557compiler.err.illegal.initializer.for.type=\
558    illegal initializer for {0}
559
560compiler.err.illegal.line.end.in.char.lit=\
561    illegal line end in character literal
562
563compiler.err.illegal.nonascii.digit=\
564    illegal non-ASCII digit
565
566compiler.err.illegal.underscore=\
567    illegal underscore
568
569compiler.err.illegal.dot=\
570    illegal ''.''
571
572# 0: symbol
573compiler.err.illegal.qual.not.icls=\
574    illegal qualifier; {0} is not an inner class
575
576compiler.err.illegal.start.of.expr=\
577    illegal start of expression
578
579compiler.err.illegal.start.of.stmt=\
580    illegal start of statement
581
582compiler.err.illegal.start.of.type=\
583    illegal start of type
584
585compiler.err.illegal.unicode.esc=\
586    illegal unicode escape
587
588# 0: symbol
589compiler.err.import.requires.canonical=\
590    import requires canonical name for {0}
591
592compiler.err.improperly.formed.type.param.missing=\
593    improperly formed type, some parameters are missing
594
595compiler.err.improperly.formed.type.inner.raw.param=\
596    improperly formed type, type arguments given on a raw type
597
598# 0: type, 1: type
599compiler.err.incomparable.types=\
600    incomparable types: {0} and {1}
601
602# 0: number
603compiler.err.int.number.too.large=\
604    integer number too large: {0}
605
606compiler.err.intf.annotation.members.cant.have.params=\
607    elements in annotation type declarations cannot declare formal parameters
608
609# 0: symbol
610compiler.err.intf.annotation.cant.have.type.params=\
611    annotation type {0} cannot be generic
612
613compiler.err.intf.annotation.members.cant.have.type.params=\
614    elements in annotation type declarations cannot be generic methods
615
616# 0: symbol, 1: type
617compiler.err.intf.annotation.member.clash=\
618    annotation type {1} declares an element with the same name as method {0}
619
620compiler.err.intf.expected.here=\
621    interface expected here
622
623compiler.err.intf.meth.cant.have.body=\
624    interface abstract methods cannot have body
625
626# 0: symbol
627compiler.err.invalid.annotation.member.type=\
628    invalid type for element {0} of annotation type
629
630compiler.err.invalid.binary.number=\
631    binary numbers must contain at least one binary digit
632
633compiler.err.invalid.hex.number=\
634    hexadecimal numbers must contain at least one hexadecimal digit
635
636compiler.err.invalid.meth.decl.ret.type.req=\
637    invalid method declaration; return type required
638
639compiler.err.varargs.and.old.array.syntax=\
640    legacy array notation not allowed on variable-arity parameter
641
642compiler.err.varargs.and.receiver =\
643    varargs notation not allowed on receiver parameter
644
645compiler.err.varargs.must.be.last =\
646    varargs parameter must be the last parameter
647
648compiler.err.array.and.receiver =\
649    legacy array notation not allowed on receiver parameter
650
651compiler.err.variable.not.allowed=\
652    variable declaration not allowed here
653
654# 0: name
655compiler.err.label.already.in.use=\
656    label {0} already in use
657
658# 0: symbol
659compiler.err.local.var.accessed.from.icls.needs.final=\
660    local variable {0} is accessed from within inner class; needs to be declared final
661
662compiler.err.local.enum=\
663    enum types must not be local
664
665compiler.err.cannot.create.array.with.type.arguments=\
666    cannot create array with type arguments
667
668compiler.err.cannot.create.array.with.diamond=\
669    cannot create array with ''<>''
670
671#
672# limits.  We don't give the limits in the diagnostic because we expect
673# them to change, yet we want to use the same diagnostic.  These are all
674# detected during code generation.
675#
676compiler.err.limit.code=\
677    code too large
678
679compiler.err.limit.code.too.large.for.try.stmt=\
680    code too large for try statement
681
682compiler.err.limit.dimensions=\
683    array type has too many dimensions
684
685compiler.err.limit.locals=\
686    too many local variables
687
688compiler.err.limit.parameters=\
689    too many parameters
690
691compiler.err.limit.pool=\
692    too many constants
693
694compiler.err.limit.pool.in.class=\
695    too many constants in class {0}
696
697compiler.err.limit.stack=\
698    code requires too much stack
699
700compiler.err.limit.string=\
701    constant string too long
702
703compiler.err.limit.string.overflow=\
704    UTF8 representation for string \"{0}...\" is too long for the constant pool
705
706compiler.err.malformed.fp.lit=\
707    malformed floating point literal
708
709compiler.err.method.does.not.override.superclass=\
710    method does not override or implement a method from a supertype
711
712compiler.err.missing.meth.body.or.decl.abstract=\
713    missing method body, or declare abstract
714
715compiler.err.missing.ret.stmt=\
716    missing return statement
717
718# 0: unused
719compiler.misc.missing.ret.val=\
720    missing return value
721
722compiler.misc.unexpected.ret.val=\
723    unexpected return value
724
725# 0: set of modifier
726compiler.err.mod.not.allowed.here=\
727    modifier {0} not allowed here
728
729compiler.err.intf.not.allowed.here=\
730    interface not allowed here
731
732compiler.err.enums.must.be.static=\
733    enum declarations allowed only in static contexts
734
735# 0: symbol, 1: symbol
736compiler.err.name.clash.same.erasure=\
737    name clash: {0} and {1} have the same erasure
738
739# 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: unused, 5: unused
740compiler.err.name.clash.same.erasure.no.override=\
741    name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither overrides the other
742
743# 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: symbol, 5: symbol
744compiler.err.name.clash.same.erasure.no.override.1=\
745    name clash: {0} in {1} overrides a method whose erasure is the same as another method, yet neither overrides the other\n\
746    first method:  {2} in {3}\n\
747    second method: {4} in {5}
748
749# 0: symbol, 1: symbol, 2: symbol, 3: symbol
750compiler.err.name.clash.same.erasure.no.hide=\
751    name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither hides the other
752
753compiler.err.name.reserved.for.internal.use=\
754    {0} is reserved for internal use
755
756compiler.err.native.meth.cant.have.body=\
757    native methods cannot have a body
758
759# 0: type, 1: type
760compiler.err.neither.conditional.subtype=\
761    incompatible types for ?: neither is a subtype of the other\n\
762    second operand: {0}\n\
763    third operand : {1}
764
765
766# 0: message segment
767compiler.misc.incompatible.type.in.conditional=\
768    bad type in conditional expression\n\
769    {0}
770
771compiler.misc.conditional.target.cant.be.void=\
772    target-type for conditional expression cannot be void
773
774# 0: type
775compiler.misc.incompatible.ret.type.in.lambda=\
776    bad return type in lambda expression\n\
777    {0}
778
779# 0: type
780compiler.misc.incompatible.ret.type.in.mref=\
781    bad return type in method reference\n\
782    {0}
783
784compiler.err.lambda.body.neither.value.nor.void.compatible=\
785    lambda body is neither value nor void compatible
786
787# 0: list of type
788compiler.err.incompatible.thrown.types.in.mref=\
789    incompatible thrown types {0} in method reference
790
791compiler.misc.incompatible.arg.types.in.lambda=\
792    incompatible parameter types in lambda expression
793
794compiler.misc.incompatible.arg.types.in.mref=\
795    incompatible parameter types in method reference
796
797compiler.err.new.not.allowed.in.annotation=\
798    ''new'' not allowed in an annotation
799
800compiler.err.no.annotation.member=\
801    no annotation member {0} in {1}
802
803compiler.err.no.encl.instance.of.type.in.scope=\
804    no enclosing instance of type {0} is in scope
805
806compiler.err.no.intf.expected.here=\
807    no interface expected here
808
809compiler.err.no.match.entry=\
810    {0} has no match in entry in {1}; required {2}
811
812compiler.err.not.annotation.type=\
813    {0} is not an annotation type
814
815# 0: symbol, 1: symbol
816compiler.err.not.def.access.package.cant.access=\
817    {0} is not visible because package {1} is not visible
818
819# 0: symbol, 1: symbol
820compiler.err.not.def.access.class.intf.cant.access=\
821    {0} in {1} is defined in an inaccessible class or interface
822
823# 0: symbol, 1: symbol
824compiler.misc.not.def.access.class.intf.cant.access=\
825    {0} in {1} is defined in an inaccessible class or interface
826
827# 0: symbol, 1: list of type, 2: type
828compiler.misc.cant.access.inner.cls.constr=\
829    cannot access constructor {0}({1})\n\
830    an enclosing instance of type {2} is not in scope
831
832# 0: symbol, 1: symbol
833compiler.err.not.def.public.cant.access=\
834    {0} is not public in {1}; cannot be accessed from outside package
835
836# 0: symbol, 1: symbol
837compiler.misc.not.def.public.cant.access=\
838    {0} is not public in {1}; cannot be accessed from outside package
839
840# 0: name
841compiler.err.not.loop.label=\
842    not a loop label: {0}
843
844compiler.err.not.stmt=\
845    not a statement
846
847# 0: symbol
848compiler.err.not.encl.class=\
849    not an enclosing class: {0}
850
851# 0: name, 1: type
852compiler.err.operator.cant.be.applied=\
853    bad operand type {1} for unary operator ''{0}''
854
855# 0: name, 1: type, 2: type
856compiler.err.operator.cant.be.applied.1=\
857    bad operand types for binary operator ''{0}''\n\
858    first type:  {1}\n\
859    second type: {2}
860
861compiler.err.pkg.annotations.sb.in.package-info.java=\
862    package annotations should be in file package-info.java
863
864# 0: symbol
865compiler.err.pkg.clashes.with.class.of.same.name=\
866    package {0} clashes with class of same name
867
868compiler.err.warnings.and.werror=\
869    warnings found and -Werror specified
870
871# Errors related to annotation processing
872
873# 0: symbol, 1: string, 2: string (stack-trace)
874compiler.err.proc.cant.access=\
875    cannot access {0}\n\
876    {1}\n\
877    Consult the following stack trace for details.\n\
878    {2}
879
880# 0: symbol, 1: string
881compiler.err.proc.cant.access.1=\
882    cannot access {0}\n\
883    {1}
884
885# 0: string
886compiler.err.proc.cant.find.class=\
887    Could not find class file for ''{0}''.
888
889# Print a client-generated error message; assumed to be localized, no translation required
890# 0: string
891compiler.err.proc.messager=\
892    {0}
893
894# 0: list of string
895compiler.err.proc.no.explicit.annotation.processing.requested=\
896    Class names, ''{0}'', are only accepted if annotation processing is explicitly requested
897
898compiler.err.proc.no.service=\
899    A ServiceLoader was not usable and is required for annotation processing.
900
901compiler.err.proc.processor.bad.option.name=\
902    Bad option name ''{0}'' provided by processor ''{1}''
903
904# 0: string
905compiler.err.proc.processor.cant.instantiate=\
906    Could not instantiate an instance of processor ''{0}''
907
908# 0: string
909compiler.err.proc.processor.not.found=\
910    Annotation processor ''{0}'' not found
911
912# 0: string
913compiler.err.proc.processor.wrong.type=\
914    Annotation processor ''{0}'' does not implement javax.annotation.processing.Processor
915
916compiler.err.proc.service.problem=\
917    Error creating a service loader to load Processors.
918
919compiler.err.proc.bad.config.file=\
920    Bad service configuration file, or exception thrown while constructing Processor object: {0}
921
922compiler.err.proc.cant.create.loader=\
923    Could not create class loader for annotation processors: {0}
924
925# 0: unused
926compiler.err.qualified.new.of.static.class=\
927    qualified new of static class
928
929compiler.err.recursive.ctor.invocation=\
930    recursive constructor invocation
931
932# 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
933compiler.err.ref.ambiguous=\
934    reference to {0} is ambiguous\n\
935    both {1} {2} in {3} and {4} {5} in {6} match
936
937# 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
938compiler.misc.ref.ambiguous=\
939    reference to {0} is ambiguous\n\
940    both {1} {2} in {3} and {4} {5} in {6} match
941
942compiler.err.repeated.annotation.target=\
943    repeated annotation target
944
945compiler.err.repeated.interface=\
946    repeated interface
947
948compiler.err.repeated.modifier=\
949    repeated modifier
950
951# 0: symbol, 1: set of modifier, 2: symbol
952compiler.err.report.access=\
953    {0} has {1} access in {2}
954
955# 0: symbol, 1: set of modifier, 2: symbol
956compiler.misc.report.access=\
957    {0} has {1} access in {2}
958
959compiler.err.ret.outside.meth=\
960    return outside method
961
962compiler.err.signature.doesnt.match.supertype=\
963    signature does not match {0}; incompatible supertype
964
965compiler.err.signature.doesnt.match.intf=\
966    signature does not match {0}; incompatible interfaces
967
968# 0: number, 1: number
969compiler.err.method.invoked.with.incorrect.number.arguments=\
970    method invoked with incorrect number of arguments; expected {0}, found {1}
971
972# 0: symbol, 1: symbol, 2: symbol
973compiler.err.does.not.override.abstract=\
974    {0} is not abstract and does not override abstract method {1} in {2}
975
976compiler.err.source.cant.overwrite.input.file=\
977    error writing source; cannot overwrite input file {0}
978
979compiler.err.stack.sim.error=\
980    Internal error: stack sim error on {0}
981
982compiler.err.static.imp.only.classes.and.interfaces=\
983    static import only from classes and interfaces
984
985compiler.err.string.const.req=\
986    constant string expression required
987
988# 0: symbol, 1: symbol
989compiler.err.synthetic.name.conflict=\
990    the symbol {0} conflicts with a compiler-synthesized symbol in {1}
991
992compiler.err.throws.not.allowed.in.intf.annotation=\
993    throws clause not allowed in @interface members
994
995compiler.err.try.without.catch.or.finally=\
996    ''try'' without ''catch'' or ''finally''
997
998compiler.err.try.without.catch.finally.or.resource.decls=\
999    ''try'' without ''catch'', ''finally'' or resource declarations
1000
1001# 0: symbol
1002compiler.err.type.doesnt.take.params=\
1003    type {0} does not take parameters
1004
1005compiler.err.type.var.cant.be.deref=\
1006    cannot select from a type variable
1007
1008compiler.err.type.var.may.not.be.followed.by.other.bounds=\
1009    a type variable may not be followed by other bounds
1010
1011compiler.err.type.var.more.than.once=\
1012    type variable {0} occurs more than once in result type of {1}; cannot be left uninstantiated
1013
1014compiler.err.type.var.more.than.once.in.result=\
1015    type variable {0} occurs more than once in type of {1}; cannot be left uninstantiated
1016
1017# 0: type, 1: type, 2: string
1018compiler.err.types.incompatible.diff.ret=\
1019    types {0} and {1} are incompatible; both define {2}, but with unrelated return types
1020
1021# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
1022compiler.err.types.incompatible.unrelated.defaults=\
1023    {0} {1} inherits unrelated defaults for {2}({3}) from types {4} and {5}
1024
1025# 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
1026compiler.err.types.incompatible.abstract.default=\
1027    {0} {1} inherits abstract and default for {2}({3}) from types {4} and {5}
1028
1029# 0: name, 1: kind name, 2: symbol
1030compiler.err.default.overrides.object.member=\
1031    default method {0} in {1} {2} overrides a member of java.lang.Object
1032
1033# 0: type
1034compiler.err.illegal.static.intf.meth.call=\
1035    illegal static interface method call\n\
1036    the receiver expression should be replaced with the type qualifier ''{0}''
1037
1038# 0: type, 1: message segment
1039compiler.err.illegal.default.super.call=\
1040    bad type qualifier {0} in default super call\n\
1041    {1}
1042
1043# 0: symbol, 1: type
1044compiler.misc.overridden.default=\
1045    method {0} is overridden in {1}
1046
1047# 0: symbol, 1: type or symbol
1048compiler.misc.redundant.supertype=\
1049    redundant interface {0} is extended by {1}
1050
1051compiler.err.unclosed.char.lit=\
1052    unclosed character literal
1053
1054compiler.err.unclosed.comment=\
1055    unclosed comment
1056
1057compiler.err.unclosed.str.lit=\
1058    unclosed string literal
1059
1060# 0: name
1061compiler.err.unsupported.encoding=\
1062    unsupported encoding: {0}
1063
1064compiler.err.io.exception=\
1065    error reading source file: {0}
1066
1067# 0: name
1068compiler.err.undef.label=\
1069    undefined label: {0}
1070
1071# 0: message segment, 1: unused
1072compiler.err.cant.apply.diamond=\
1073    cannot infer type arguments for {0}
1074
1075# 0: message segment or type, 1: message segment
1076compiler.err.cant.apply.diamond.1=\
1077    cannot infer type arguments for {0}\n\
1078    reason: {1}
1079
1080# 0: message segment or type, 1: message segment
1081compiler.misc.cant.apply.diamond.1=\
1082    cannot infer type arguments for {0}\n\
1083    reason: {1}
1084
1085compiler.err.unreachable.stmt=\
1086    unreachable statement
1087
1088compiler.err.initializer.must.be.able.to.complete.normally=\
1089    initializer must be able to complete normally
1090
1091compiler.err.initializer.not.allowed=\
1092    initializers not allowed in interfaces
1093
1094# 0: type
1095compiler.err.unreported.exception.need.to.catch.or.throw=\
1096    unreported exception {0}; must be caught or declared to be thrown
1097
1098# 0: type
1099compiler.err.unreported.exception.default.constructor=\
1100    unreported exception {0} in default constructor
1101
1102# 0: type, 1: name
1103compiler.err.unreported.exception.implicit.close=\
1104    unreported exception {0}; must be caught or declared to be thrown\n\
1105    exception thrown from implicit call to close() on resource variable ''{1}''
1106
1107compiler.err.unsupported.cross.fp.lit=\
1108    hexadecimal floating-point literals are not supported on this VM
1109
1110compiler.err.void.not.allowed.here=\
1111    ''void'' type not allowed here
1112
1113# 0: string
1114compiler.err.wrong.number.type.args=\
1115    wrong number of type arguments; required {0}
1116
1117# 0: symbol
1118compiler.err.var.might.already.be.assigned=\
1119    variable {0} might already have been assigned
1120
1121# 0: symbol
1122compiler.err.var.might.not.have.been.initialized=\
1123    variable {0} might not have been initialized
1124
1125# 0: symbol
1126compiler.err.var.not.initialized.in.default.constructor=\
1127    variable {0} not initialized in the default constructor
1128
1129# 0: symbol
1130compiler.err.var.might.be.assigned.in.loop=\
1131    variable {0} might be assigned in loop
1132
1133# 0: symbol, 1: message segment
1134compiler.err.varargs.invalid.trustme.anno=\
1135    Invalid {0} annotation. {1}
1136
1137# 0: type
1138compiler.misc.varargs.trustme.on.reifiable.varargs=\
1139    Varargs element type {0} is reifiable.
1140
1141# 0: symbol
1142compiler.misc.varargs.trustme.on.non.varargs.meth=\
1143    Method {0} is not a varargs method.
1144
1145# 0: symbol
1146compiler.misc.varargs.trustme.on.virtual.varargs=\
1147    Instance method {0} is neither final nor private.
1148
1149# 0: symbol
1150compiler.misc.varargs.trustme.on.virtual.varargs.final.only=\
1151    Instance method {0} is not final.
1152
1153# 0: type, 1: symbol kind, 2: symbol
1154compiler.misc.inaccessible.varargs.type=\
1155    formal varargs element type {0} is not accessible from {1} {2}
1156
1157# In the following string, {1} will always be the detail message from
1158# java.io.IOException.
1159# 0: symbol, 1: string
1160compiler.err.class.cant.write=\
1161    error while writing {0}: {1}
1162
1163# In the following string, {0} is the name of the class in the Java source.
1164# It really should be used two times..
1165# 0: name
1166compiler.err.class.public.should.be.in.file=\
1167    class {0} is public, should be declared in a file named {0}.java
1168
1169## All errors which do not refer to a particular line in the source code are
1170## preceded by this string.
1171compiler.err.error=\
1172    error:\u0020
1173
1174# The following error messages do not refer to a line in the source code.
1175compiler.err.cant.read.file=\
1176    cannot read: {0}
1177
1178# 0: string
1179compiler.err.plugin.not.found=\
1180    plug-in not found: {0}
1181
1182# 0: path
1183compiler.warn.locn.unknown.file.on.module.path=\
1184    unknown file on module path: {0}
1185
1186
1187# 0: path
1188compiler.err.locn.bad.module-info=\
1189    problem reading module-info.class in {0}
1190
1191# 0: path
1192compiler.err.locn.cant.read.directory=\
1193    cannot read directory {0}
1194
1195# 0: path
1196compiler.err.locn.cant.read.file=\
1197    cannot read file {0}
1198
1199# 0: path
1200compiler.err.locn.cant.get.module.name.for.jar=\
1201    cannot determine module name for {0}
1202
1203# 0: path
1204compiler.err.multi-module.outdir.cannot.be.exploded.module=\
1205    in multi-module mode, the output directory cannot be an exploded module: {0}
1206
1207# 0: path
1208compiler.warn.outdir.is.in.exploded.module=\
1209    the output directory is within an exploded module: {0}
1210
1211# 0: path
1212compiler.err.locn.module-info.not.allowed.on.patch.path=\
1213    module-info.class not allowed on patch path: {0}
1214
1215# 0: string
1216compiler.err.locn.invalid.arg.for.xpatch=\
1217    invalid argument for -Xpatch option: {0}
1218
1219#####
1220
1221# Fatal Errors
1222
1223compiler.misc.fatal.err.no.java.lang=\
1224    Fatal Error: Unable to find package java.lang in classpath or bootclasspath
1225
1226compiler.misc.fatal.err.cant.locate.meth=\
1227    Fatal Error: Unable to find method {0}
1228
1229compiler.misc.fatal.err.cant.locate.field=\
1230    Fatal Error: Unable to find field {0}
1231
1232compiler.misc.fatal.err.cant.locate.ctor=\
1233    Fatal Error: Unable to find constructor for {0}
1234
1235compiler.misc.fatal.err.cant.close=\
1236    Fatal Error: Cannot close compiler resources
1237
1238#####
1239
1240##
1241## miscellaneous strings
1242##
1243
1244compiler.misc.diamond.anonymous.methods.implicitly.override=\
1245    (due to <>, every non-private method declared in this anonymous class must override or implement a method from a supertype)
1246
1247compiler.misc.source.unavailable=\
1248    (source unavailable)
1249
1250compiler.misc.base.membership=\
1251    all your base class are belong to us
1252
1253# 0: string, 1: string, 2: boolean
1254compiler.misc.x.print.processor.info=\
1255    Processor {0} matches {1} and returns {2}.
1256
1257# 0: number, 1: string, 2: set of symbol, 3: boolean
1258compiler.misc.x.print.rounds=\
1259    Round {0}:\n\tinput files: {1}\n\tannotations: {2}\n\tlast round: {3}
1260
1261# 0: file name
1262compiler.warn.file.from.future=\
1263    Modification date is in the future for file {0}
1264
1265#####
1266
1267## The following string will appear before all messages keyed as:
1268## "compiler.note".
1269
1270compiler.note.compressed.diags=\
1271    Some messages have been simplified; recompile with -Xdiags:verbose to get full output
1272
1273# 0: boolean, 1: symbol
1274compiler.note.lambda.stat=\
1275    Translating lambda expression\n\
1276    alternate metafactory = {0}\n\
1277    synthetic method = {1}
1278
1279# 0: boolean, 1: unused
1280compiler.note.mref.stat=\
1281    Translating method reference\n\
1282    alternate metafactory = {0}\n\
1283
1284# 0: boolean, 1: symbol
1285compiler.note.mref.stat.1=\
1286    Translating method reference\n\
1287    alternate metafactory = {0}\n\
1288    bridge method = {1}
1289
1290compiler.note.note=\
1291    Note:\u0020
1292
1293# 0: file name
1294compiler.note.deprecated.filename=\
1295    {0} uses or overrides a deprecated API.
1296
1297compiler.note.deprecated.plural=\
1298    Some input files use or override a deprecated API.
1299
1300# The following string may appear after one of the above deprecation
1301# messages.
1302compiler.note.deprecated.recompile=\
1303    Recompile with -Xlint:deprecation for details.
1304
1305# 0: file name
1306compiler.note.deprecated.filename.additional=\
1307    {0} has additional uses or overrides of a deprecated API.
1308
1309compiler.note.deprecated.plural.additional=\
1310    Some input files additionally use or override a deprecated API.
1311
1312# 0: file name
1313compiler.note.unchecked.filename=\
1314    {0} uses unchecked or unsafe operations.
1315
1316compiler.note.unchecked.plural=\
1317    Some input files use unchecked or unsafe operations.
1318
1319# The following string may appear after one of the above deprecation
1320# messages.
1321compiler.note.unchecked.recompile=\
1322    Recompile with -Xlint:unchecked for details.
1323
1324# 0: file name
1325compiler.note.unchecked.filename.additional=\
1326    {0} has additional unchecked or unsafe operations.
1327
1328compiler.note.unchecked.plural.additional=\
1329    Some input files additionally use unchecked or unsafe operations.
1330
1331# Notes related to annotation processing
1332
1333# Print a client-generated note; assumed to be localized, no translation required
1334# 0: string
1335compiler.note.proc.messager=\
1336    {0}
1337
1338#####
1339
1340# 0: number
1341compiler.misc.count.error=\
1342    {0} error
1343
1344# 0: number
1345compiler.misc.count.error.plural=\
1346    {0} errors
1347
1348# 0: number
1349compiler.misc.count.warn=\
1350    {0} warning
1351
1352# 0: number
1353compiler.misc.count.warn.plural=\
1354    {0} warnings
1355
1356compiler.misc.version.not.available=\
1357    (version info not available)
1358
1359## extra output when using -verbose (JavaCompiler)
1360
1361# 0: symbol
1362compiler.misc.verbose.checking.attribution=\
1363    [checking {0}]
1364
1365# 0: string
1366compiler.misc.verbose.parsing.done=\
1367    [parsing completed {0}ms]
1368
1369# 0: file name
1370compiler.misc.verbose.parsing.started=\
1371    [parsing started {0}]
1372
1373# 0: string
1374compiler.misc.verbose.total=\
1375    [total {0}ms]
1376
1377# 0: file name
1378compiler.misc.verbose.wrote.file=\
1379    [wrote {0}]
1380
1381## extra output when using -verbose (code/ClassReader)
1382# 0: string
1383compiler.misc.verbose.loading=\
1384    [loading {0}]
1385
1386# 0: string
1387compiler.misc.verbose.sourcepath=\
1388    [search path for source files: {0}]
1389
1390# 0: string
1391compiler.misc.verbose.classpath=\
1392    [search path for class files: {0}]
1393
1394## extra output when using -prompt (util/Log)
1395compiler.misc.resume.abort=\
1396    R)esume, A)bort>
1397
1398#####
1399
1400##
1401## warnings
1402##
1403
1404## All warning messages are preceded by the following string.
1405compiler.warn.warning=\
1406    warning:\u0020
1407
1408## Warning messages may also include the following prefix to identify a
1409## lint option
1410# 0: option name
1411compiler.warn.lintOption=\
1412    [{0}]\u0020
1413
1414# 0: symbol
1415compiler.warn.constant.SVUID=\
1416    serialVersionUID must be constant in class {0}
1417
1418# 0: file name
1419compiler.warn.dir.path.element.not.found=\
1420    bad path element "{0}": no such directory
1421
1422# 0: file name
1423compiler.warn.dir.path.element.not.directory=\
1424    bad path element "{0}": not a directory
1425
1426compiler.warn.finally.cannot.complete=\
1427    finally clause cannot complete normally
1428
1429# 0: symbol, 1: symbol
1430compiler.warn.has.been.deprecated=\
1431    {0} in {1} has been deprecated
1432
1433# 0: symbol
1434compiler.warn.sun.proprietary=\
1435    {0} is internal proprietary API and may be removed in a future release
1436
1437compiler.warn.illegal.char.for.encoding=\
1438    unmappable character for encoding {0}
1439
1440# 0: symbol
1441compiler.warn.improper.SVUID=\
1442    serialVersionUID must be declared static final in class {0}
1443
1444# 0: type, 1: type
1445compiler.warn.inexact.non-varargs.call=\
1446    non-varargs call of varargs method with inexact argument type for last parameter;\n\
1447    cast to {0} for a varargs call\n\
1448    cast to {1} for a non-varargs call and to suppress this warning
1449
1450# 0: list of type
1451compiler.warn.unreachable.catch=\
1452    unreachable catch clause\n\
1453    thrown type {0} has already been caught
1454
1455# 0: list of type
1456compiler.warn.unreachable.catch.1=\
1457    unreachable catch clause\n\
1458    thrown types {0} have already been caught
1459
1460# 0: symbol
1461compiler.warn.long.SVUID=\
1462    serialVersionUID must be of type long in class {0}
1463
1464# 0: symbol
1465compiler.warn.missing.SVUID=\
1466    serializable class {0} has no definition of serialVersionUID
1467
1468# 0: symbol, 1: symbol, 2: symbol, 3: symbol
1469compiler.warn.potentially.ambiguous.overload=\
1470    {0} in {1} is potentially ambiguous with {2} in {3}
1471
1472# 0: message segment
1473compiler.warn.override.varargs.missing=\
1474    {0}; overridden method has no ''...''
1475
1476# 0: message segment
1477compiler.warn.override.varargs.extra=\
1478    {0}; overriding method is missing ''...''
1479
1480compiler.warn.override.bridge=\
1481    {0}; overridden method is a bridge method
1482
1483# 0: symbol
1484compiler.warn.pkg-info.already.seen=\
1485    a package-info.java file has already been seen for package {0}
1486
1487# 0: file name
1488compiler.warn.path.element.not.found=\
1489    bad path element "{0}": no such file or directory
1490
1491compiler.warn.possible.fall-through.into.case=\
1492    possible fall-through into case
1493
1494# 0: type
1495compiler.warn.redundant.cast=\
1496    redundant cast to {0}
1497
1498# 0: number
1499compiler.warn.position.overflow=\
1500    Position encoding overflows at line {0}
1501
1502# 0: file name, 1: number, 2: number
1503compiler.warn.big.major.version=\
1504    {0}: major version {1} is newer than {2}, the highest major version supported by this compiler.\n\
1505    It is recommended that the compiler be upgraded.
1506
1507# 0: symbol kind, 1: symbol
1508compiler.warn.static.not.qualified.by.type=\
1509    static {0} should be qualified by type name, {1}, instead of by an expression
1510
1511# 0: string
1512compiler.warn.source.no.bootclasspath=\
1513    bootstrap class path not set in conjunction with -source {0}
1514
1515# 0: string
1516compiler.warn.option.obsolete.source=\
1517    source value {0} is obsolete and will be removed in a future release
1518
1519# 0: string
1520compiler.warn.option.obsolete.target=\
1521    target value {0} is obsolete and will be removed in a future release
1522
1523# 0: string, 1: string
1524compiler.err.option.removed.source=\
1525    Source option {0} is no longer supported. Use {1} or later.
1526
1527# 0: string, 1: string
1528compiler.err.option.removed.target=\
1529    Target option {0} is no longer supported. Use {1} or later.
1530
1531compiler.warn.option.obsolete.suppression=\
1532    To suppress warnings about obsolete options, use -Xlint:-options.
1533
1534# 0: name, 1: number, 2: number, 3: number, 4: number
1535compiler.warn.future.attr=\
1536    {0} attribute introduced in version {1}.{2} class files is ignored in version {3}.{4} class files
1537
1538# Warnings related to annotation processing
1539# 0: string
1540compiler.warn.proc.package.does.not.exist=\
1541    package {0} does not exist
1542
1543# 0: name
1544compiler.warn.proc.file.reopening=\
1545    Attempt to create a file for ''{0}'' multiple times
1546
1547# 0: name
1548compiler.warn.proc.type.already.exists=\
1549    A file for type ''{0}'' already exists on the sourcepath or classpath
1550
1551# 0: name
1552compiler.warn.proc.type.recreate=\
1553    Attempt to create a file for type ''{0}'' multiple times
1554
1555# 0: string
1556compiler.warn.proc.illegal.file.name=\
1557    Cannot create file for illegal name ''{0}''.
1558
1559# 0: string, 1: string
1560compiler.warn.proc.suspicious.class.name=\
1561    Creating file for a type whose name ends in {1}: ''{0}''
1562
1563# 0: name
1564compiler.warn.proc.file.create.last.round=\
1565    File for type ''{0}'' created in the last round will not be subject to annotation processing.
1566
1567# 0: string, 1: string
1568compiler.warn.proc.malformed.supported.string=\
1569    Malformed string ''{0}'' for a supported annotation type returned by processor ''{1}''
1570
1571# 0: set of string
1572compiler.warn.proc.annotations.without.processors=\
1573    No processor claimed any of these annotations: {0}
1574
1575# 0: source version, 1: string, 2: string
1576compiler.warn.proc.processor.incompatible.source.version=\
1577    Supported source version ''{0}'' from annotation processor ''{1}'' less than -source ''{2}''
1578
1579compiler.warn.proc.proc-only.requested.no.procs=\
1580    Annotation processing without compilation requested but no processors were found.
1581
1582compiler.warn.proc.use.implicit=\
1583    Implicitly compiled files were not subject to annotation processing.\n\
1584    Use -implicit to specify a policy for implicit compilation.
1585
1586compiler.warn.proc.use.proc.or.implicit=\
1587    Implicitly compiled files were not subject to annotation processing.\n\
1588    Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
1589
1590# Print a client-generated warning; assumed to be localized, no translation required
1591# 0: string
1592compiler.warn.proc.messager=\
1593    {0}
1594
1595# 0: set of name
1596compiler.warn.proc.unclosed.type.files=\
1597    Unclosed files for the types ''{0}''; these types will not undergo annotation processing
1598
1599# 0: string
1600compiler.warn.proc.unmatched.processor.options=\
1601    The following options were not recognized by any processor: ''{0}''
1602
1603compiler.warn.try.explicit.close.call=\
1604    explicit call to close() on an auto-closeable resource
1605
1606# 0: symbol
1607compiler.warn.try.resource.not.referenced=\
1608    auto-closeable resource {0} is never referenced in body of corresponding try statement
1609
1610# 0: type
1611compiler.warn.try.resource.throws.interrupted.exc=\
1612    auto-closeable resource {0} has a member method close() that could throw InterruptedException
1613
1614compiler.warn.unchecked.assign=\
1615    unchecked assignment: {0} to {1}
1616
1617# 0: symbol, 1: type
1618compiler.warn.unchecked.assign.to.var=\
1619    unchecked assignment to variable {0} as member of raw type {1}
1620
1621# 0: symbol, 1: type
1622compiler.warn.unchecked.call.mbr.of.raw.type=\
1623    unchecked call to {0} as a member of the raw type {1}
1624
1625compiler.warn.unchecked.cast.to.type=\
1626    unchecked cast to type {0}
1627
1628# 0: symbol kind, 1: name, 2: list of type, 3: list of type, 4: symbol kind, 5: symbol
1629compiler.warn.unchecked.meth.invocation.applied=\
1630    unchecked method invocation: {0} {1} in {4} {5} is applied to given types\n\
1631    required: {2}\n\
1632    found: {3}
1633
1634# 0: type
1635compiler.warn.unchecked.generic.array.creation=\
1636    unchecked generic array creation for varargs parameter of type {0}
1637
1638# 0: type
1639compiler.warn.unchecked.varargs.non.reifiable.type=\
1640    Possible heap pollution from parameterized vararg type {0}
1641
1642# 0: symbol
1643compiler.warn.varargs.unsafe.use.varargs.param=\
1644    Varargs method could cause heap pollution from non-reifiable varargs parameter {0}
1645
1646compiler.warn.missing.deprecated.annotation=\
1647    deprecated item is not annotated with @Deprecated
1648
1649compiler.warn.invalid.archive.file=\
1650    Unexpected file on path: {0}
1651
1652compiler.warn.unexpected.archive.file=\
1653    Unexpected extension for archive file: {0}
1654
1655compiler.warn.div.zero=\
1656    division by zero
1657
1658compiler.warn.empty.if=\
1659    empty statement after if
1660
1661compiler.warn.annotation.method.not.found=\
1662    Cannot find annotation method ''{1}()'' in type ''{0}''
1663
1664compiler.warn.annotation.method.not.found.reason=\
1665    Cannot find annotation method ''{1}()'' in type ''{0}'': {2}
1666
1667# 0: symbol, 1: name
1668compiler.warn.unknown.enum.constant=\
1669    unknown enum constant {1}.{2}
1670
1671# 0: symbol, 1: name, 2: message segment
1672compiler.warn.unknown.enum.constant.reason=\
1673    unknown enum constant {1}.{2}\n\
1674    reason: {3}
1675
1676# 0: type, 1: type
1677compiler.warn.raw.class.use=\
1678    found raw type: {0}\n\
1679    missing type arguments for generic class {1}
1680
1681# 0: unused, 1: unused
1682compiler.warn.diamond.redundant.args=\
1683    Redundant type arguments in new expression (use diamond operator instead).
1684
1685compiler.warn.potential.lambda.found=\
1686    This anonymous inner class creation can be turned into a lambda expression.
1687
1688compiler.warn.method.redundant.typeargs=\
1689    Redundant type arguments in method call.
1690
1691# 0: symbol, 1: message segment
1692compiler.warn.varargs.redundant.trustme.anno=\
1693    Redundant {0} annotation. {1}
1694
1695# 0: symbol
1696compiler.warn.access.to.sensitive.member.from.serializable.element=\
1697    access to sensitive member {0} from serializable element can be publicly accessible to untrusted code
1698
1699#####
1700
1701## The following are tokens which are non-terminals in the language. They should
1702## be named as JLS3 calls them when translated to the appropriate language.
1703compiler.misc.token.identifier=\
1704    <identifier>
1705
1706compiler.misc.token.character=\
1707    <character>
1708
1709compiler.misc.token.string=\
1710    <string>
1711
1712compiler.misc.token.integer=\
1713    <integer>
1714
1715compiler.misc.token.long-integer=\
1716    <long integer>
1717
1718compiler.misc.token.float=\
1719    <float>
1720
1721compiler.misc.token.double=\
1722    <double>
1723
1724compiler.misc.token.bad-symbol=\
1725    <bad symbol>
1726
1727compiler.misc.token.end-of-input=\
1728    <end of input>
1729
1730## The argument to the following string will always be one of the following:
1731## 1. one of the above non-terminals
1732## 2. a keyword (JLS1.8)
1733## 3. a boolean literal (JLS3.10.3)
1734## 4. the null literal (JLS3.10.7)
1735## 5. a Java separator (JLS3.11)
1736## 6. an operator (JLS3.12)
1737##
1738## This is the only place these tokens will be used.
1739# 0: token
1740compiler.err.expected=\
1741    {0} expected
1742
1743# 0: token, 1: token
1744compiler.err.expected2=\
1745    {0} or {1} expected
1746
1747# 0: token, 1: token, 2: token
1748compiler.err.expected3=\
1749    {0}, {1}, or {2} expected
1750
1751compiler.err.premature.eof=\
1752    reached end of file while parsing
1753
1754## The following are related in form, but do not easily fit the above paradigm.
1755compiler.err.dot.class.expected=\
1756    ''.class'' expected
1757
1758## The argument to this string will always be either 'case' or 'default'.
1759# 0: token
1760compiler.err.orphaned=\
1761    orphaned {0}
1762
1763# 0: name
1764compiler.misc.anonymous.class=\
1765    <anonymous {0}>
1766
1767# 0: name, 1: type
1768compiler.misc.type.captureof=\
1769    capture#{0} of {1}
1770
1771compiler.misc.type.captureof.1=\
1772    capture#{0}
1773
1774compiler.misc.type.none=\
1775    <none>
1776
1777compiler.misc.unnamed.package=\
1778    unnamed package
1779
1780compiler.misc.unnamed.module=\
1781    unnamed module
1782
1783#####
1784
1785# 0: symbol, 1: message segment
1786compiler.err.cant.access=\
1787    cannot access {0}\n\
1788    {1}
1789
1790# 0: name
1791compiler.misc.bad.class.file=\
1792    class file is invalid for class {0}
1793
1794# 0: file name, 1: string (expected constant pool entry type), 2: number (constant pool index)
1795compiler.misc.bad.const.pool.entry=\
1796    bad constant pool entry in {0}\n\
1797    expected {1} at index {2}
1798
1799# 0: file name, 1: message segment
1800compiler.misc.bad.class.file.header=\
1801    bad class file: {0}\n\
1802    {1}\n\
1803    Please remove or make sure it appears in the correct subdirectory of the classpath.
1804
1805# 0: file name, 1: message segment
1806compiler.misc.bad.source.file.header=\
1807    bad source file: {0}\n\
1808    {1}\n\
1809    Please remove or make sure it appears in the correct subdirectory of the sourcepath.
1810
1811## The following are all possible strings for the second argument ({1}) of the
1812## above strings.
1813compiler.misc.bad.class.signature=\
1814    bad class signature: {0}
1815
1816#0: symbol, 1: symbol
1817compiler.misc.bad.enclosing.class=\
1818    bad enclosing class for {0}: {1}
1819
1820# 0: symbol
1821compiler.misc.bad.enclosing.method=\
1822    bad enclosing method attribute for class {0}
1823
1824compiler.misc.bad.runtime.invisible.param.annotations=\
1825    bad RuntimeInvisibleParameterAnnotations attribute: {0}
1826
1827compiler.misc.bad.const.pool.tag=\
1828    bad constant pool tag: {0}
1829
1830compiler.misc.bad.const.pool.tag.at=\
1831    bad constant pool tag: {0} at {1}
1832
1833compiler.misc.bad.signature=\
1834    bad signature: {0}
1835
1836compiler.misc.bad.type.annotation.value=\
1837    bad type annotation target type value: {0}
1838
1839compiler.misc.bad.module-info.name=\
1840    bad class name
1841
1842compiler.misc.class.file.wrong.class=\
1843    class file contains wrong class: {0}
1844
1845compiler.misc.class.file.not.found=\
1846    class file for {0} not found
1847
1848# 0: string (classfile major version), 1: string (classfile minor version)
1849compiler.misc.invalid.default.interface=\
1850    default method found in version {0}.{1} classfile
1851
1852# 0: string (classfile major version), 1: string (classfile minor version)
1853compiler.misc.invalid.static.interface=\
1854    static method found in version {0}.{1} classfile
1855
1856# 0: name
1857compiler.misc.file.doesnt.contain.class=\
1858    file does not contain class {0}
1859
1860compiler.misc.file.does.not.contain.package=\
1861    file does not contain package {0}
1862
1863compiler.misc.file.does.not.contain.module=\
1864    file does not contain module declaration
1865
1866compiler.misc.illegal.start.of.class.file=\
1867    illegal start of class file
1868
1869compiler.misc.unable.to.access.file=\
1870    unable to access file: {0}
1871
1872compiler.misc.unicode.str.not.supported=\
1873    unicode string in class file not supported
1874
1875compiler.misc.undecl.type.var=\
1876    undeclared type variable: {0}
1877
1878compiler.misc.malformed.vararg.method=\
1879    class file contains malformed variable arity method: {0}
1880
1881compiler.misc.wrong.version=\
1882    class file has wrong version {0}.{1}, should be {2}.{3}
1883
1884#####
1885
1886# 0: type, 1: type or symbol
1887compiler.err.not.within.bounds=\
1888    type argument {0} is not within bounds of type-variable {1}
1889
1890## The following are all possible strings for the second argument ({1}) of the
1891## above string.
1892
1893## none yet...
1894
1895#####
1896
1897# 0: message segment
1898compiler.err.prob.found.req=\
1899    incompatible types: {0}
1900
1901# 0: message segment
1902compiler.misc.prob.found.req=\
1903    incompatible types: {0}
1904
1905# 0: message segment, 1: type, 2: type
1906compiler.warn.prob.found.req=\
1907    {0}\n\
1908    required: {2}\n\
1909    found:    {1}
1910
1911# 0: type, 1: type
1912compiler.misc.inconvertible.types=\
1913    {0} cannot be converted to {1}
1914
1915# 0: type, 1: type
1916compiler.misc.possible.loss.of.precision=\
1917    possible lossy conversion from {0} to {1}
1918
1919compiler.misc.unchecked.assign=\
1920    unchecked conversion
1921
1922# compiler.misc.storecheck=\
1923#     assignment might cause later store checks to fail
1924# compiler.misc.unchecked=\
1925#     assigned array cannot dynamically check its stores
1926compiler.misc.unchecked.cast.to.type=\
1927    unchecked cast
1928
1929# compiler.err.star.expected=\
1930#     ''*'' expected
1931# compiler.err.no.elem.type=\
1932#     \[\*\] cannot have a type
1933
1934# 0: type
1935compiler.misc.try.not.applicable.to.type=\
1936    try-with-resources not applicable to variable type\n\
1937    ({0})
1938
1939#####
1940
1941# 0: message segment or type, 1: message segment
1942compiler.err.type.found.req=\
1943    unexpected type\n\
1944    required: {1}\n\
1945    found:    {0}
1946
1947## The following are all possible strings for the first argument ({0}) of the
1948## above string.
1949compiler.misc.type.req.class=\
1950    class
1951
1952compiler.misc.type.req.class.array=\
1953    class or array
1954
1955compiler.misc.type.req.array.or.iterable=\
1956    array or java.lang.Iterable
1957
1958compiler.misc.type.req.ref=\
1959    reference
1960
1961compiler.misc.type.req.exact=\
1962    class or interface without bounds
1963
1964# 0: type
1965compiler.misc.type.parameter=\
1966    type parameter {0}
1967
1968#####
1969
1970## The following are all possible strings for the last argument of all those
1971## diagnostics whose key ends in ".1"
1972
1973# 0: type, 1: list of type
1974compiler.misc.no.unique.maximal.instance.exists=\
1975    no unique maximal instance exists for type variable {0} with upper bounds {1}
1976
1977compiler.misc.no.unique.minimal.instance.exists=\
1978    no unique minimal instance exists for type variable {0} with lower bounds {1}
1979
1980# 0: type, 1: list of type
1981compiler.misc.incompatible.upper.bounds=\
1982    inference variable {0} has incompatible upper bounds {1}
1983
1984# 0: type, 1: list of type
1985compiler.misc.incompatible.eq.bounds=\
1986    inference variable {0} has incompatible equality constraints {1}
1987
1988# 0: type, 1: list of type, 2: list of type
1989compiler.misc.incompatible.eq.upper.bounds=\
1990    inference variable {0} has incompatible bounds\n\
1991    equality constraints: {1}\n\
1992    upper bounds: {2}
1993
1994# 0: type, 1: list of type, 2: list of type
1995compiler.misc.incompatible.upper.lower.bounds=\
1996    inference variable {0} has incompatible bounds\n\
1997    upper bounds: {1}\n\
1998    lower bounds: {2}
1999
2000# 0: type, 1: list of type, 2: list of type
2001compiler.misc.incompatible.eq.lower.bounds=\
2002    inference variable {0} has incompatible bounds\n\
2003    equality constraints: {1}\n\
2004    lower bounds: {2}
2005
2006# 0: list of type, 1: type, 2: type
2007compiler.misc.infer.no.conforming.instance.exists=\
2008    no instance(s) of type variable(s) {0} exist so that {1} conforms to {2}
2009
2010# 0: list of type, 1: message segment
2011compiler.misc.infer.no.conforming.assignment.exists=\
2012    cannot infer type-variable(s) {0}\n\
2013    (argument mismatch; {1})
2014
2015# 0: list of type
2016compiler.misc.infer.arg.length.mismatch=\
2017    cannot infer type-variable(s) {0}\n\
2018    (actual and formal argument lists differ in length)
2019
2020# 0: list of type, 1: message segment
2021compiler.misc.infer.varargs.argument.mismatch=\
2022    cannot infer type-variable(s) {0}\n\
2023    (varargs mismatch; {1})
2024
2025# 0: type, 1: list of type
2026compiler.misc.inferred.do.not.conform.to.upper.bounds=\
2027    inferred type does not conform to upper bound(s)\n\
2028    inferred: {0}\n\
2029    upper bound(s): {1}
2030
2031# 0: type, 1: list of type
2032compiler.misc.inferred.do.not.conform.to.lower.bounds=\
2033    inferred type does not conform to lower bound(s)\n\
2034    inferred: {0}\n\
2035    lower bound(s): {1}
2036
2037# 0: type, 1: list of type
2038compiler.misc.inferred.do.not.conform.to.eq.bounds=\
2039    inferred type does not conform to equality constraint(s)\n\
2040    inferred: {0}\n\
2041    equality constraints(s): {1}
2042
2043# 0: symbol
2044compiler.misc.diamond=\
2045    {0}<>
2046
2047# 0: type
2048compiler.misc.diamond.non.generic=\
2049    cannot use ''<>'' with non-generic class {0}
2050
2051# 0: list of type, 1: message segment
2052compiler.misc.diamond.invalid.arg=\
2053    type argument {0} inferred for {1} is not allowed in this context\n\
2054    inferred argument is not expressible in the Signature attribute
2055
2056# 0: list of type, 1: message segment
2057compiler.misc.diamond.invalid.args=\
2058    type arguments {0} inferred for {1} are not allowed in this context\n\
2059    inferred arguments are not expressible in the Signature attribute
2060
2061# 0: unused
2062compiler.misc.diamond.and.explicit.params=\
2063    cannot use ''<>'' with explicit type parameters for constructor
2064
2065# 0: unused
2066compiler.misc.mref.infer.and.explicit.params=\
2067    cannot use raw constructor reference with explicit type parameters for constructor
2068
2069# 0: type, 1: list of type
2070compiler.misc.explicit.param.do.not.conform.to.bounds=\
2071    explicit type argument {0} does not conform to declared bound(s) {1}
2072
2073compiler.misc.arg.length.mismatch=\
2074    actual and formal argument lists differ in length
2075
2076# 0: message segment
2077compiler.misc.no.conforming.assignment.exists=\
2078    argument mismatch; {0}
2079
2080# 0: message segment
2081compiler.misc.varargs.argument.mismatch=\
2082    varargs mismatch; {0}
2083
2084#####
2085
2086# 0: symbol or type, 1: file name
2087compiler.warn.auxiliary.class.accessed.from.outside.of.its.source.file=\
2088    auxiliary class {0} in {1} should not be accessed from outside its own source file
2089
2090## The first argument ({0}) is a "kindname".
2091# 0: symbol kind, 1: symbol, 2: symbol
2092compiler.err.abstract.cant.be.accessed.directly=\
2093    abstract {0} {1} in {2} cannot be accessed directly
2094
2095## The first argument ({0}) is a "kindname".
2096# 0: symbol kind, 1: symbol
2097compiler.err.non-static.cant.be.ref=\
2098    non-static {0} {1} cannot be referenced from a static context
2099
2100# 0: symbol kind, 1: symbol
2101compiler.misc.bad.static.method.in.unbound.lookup=\
2102    unexpected static {0} {1} found in unbound lookup
2103
2104# 0: symbol kind, 1: symbol
2105compiler.misc.bad.instance.method.in.unbound.lookup=\
2106    unexpected instance {0} {1} found in unbound lookup
2107
2108# 0: symbol kind, 1: symbol
2109compiler.misc.bad.static.method.in.bound.lookup=\
2110    unexpected static {0} {1} found in bound lookup
2111
2112## Both arguments ({0}, {1}) are "kindname"s.  {0} is a comma-separated list
2113## of kindnames (the list should be identical to that provided in source.
2114compiler.err.unexpected.type=\
2115    unexpected type\n\
2116    required: {0}\n\
2117    found:    {1}
2118
2119compiler.err.unexpected.lambda=\
2120   lambda expression not expected here
2121
2122compiler.err.unexpected.mref=\
2123   method reference not expected here
2124
2125## The first argument {0} is a "kindname" (e.g. 'constructor', 'field', etc.)
2126## The second argument {1} is the non-resolved symbol
2127## The third argument {2} is a list of type parameters (non-empty if {1} is a method)
2128## The fourth argument {3} is a list of argument types (non-empty if {1} is a method)
2129# 0: symbol kind, 1: name, 2: unused, 3: unused
2130compiler.err.cant.resolve=\
2131    cannot find symbol\n\
2132    symbol: {0} {1}
2133
2134# 0: symbol kind, 1: name, 2: unused, 3: list of type
2135compiler.err.cant.resolve.args=\
2136    cannot find symbol\n\
2137    symbol: {0} {1}({3})
2138
2139# 0: symbol kind, 1: name, 2: list of type, 3: list of type
2140compiler.err.cant.resolve.args.params=\
2141    cannot find symbol\n\
2142    symbol: {0} <{2}>{1}({3})
2143
2144## arguments from {0} to {3} have the same meaning as above
2145## The fifth argument {4} is a location subdiagnostic (see below)
2146# 0: symbol kind, 1: name, 2: unused, 3: unused, 4: message segment
2147compiler.err.cant.resolve.location=\
2148    cannot find symbol\n\
2149    symbol:   {0} {1}\n\
2150    location: {4}
2151
2152# 0: symbol kind, 1: name, 2: unused, 3: list of type, 4: message segment
2153compiler.err.cant.resolve.location.args=\
2154    cannot find symbol\n\
2155    symbol:   {0} {1}({3})\n\
2156    location: {4}
2157
2158# 0: symbol kind, 1: name, 2: list of type, 3: list, 4: message segment
2159compiler.err.cant.resolve.location.args.params=\
2160    cannot find symbol\n\
2161    symbol:   {0} <{2}>{1}({3})\n\
2162    location: {4}
2163
2164### Following are replicated/used for method reference diagnostics
2165
2166# 0: symbol kind, 1: name, 2: unused, 3: list of type, 4: message segment
2167compiler.misc.cant.resolve.location.args=\
2168    cannot find symbol\n\
2169    symbol:   {0} {1}({3})\n\
2170    location: {4}
2171
2172# 0: symbol kind, 1: name, 2: list of type, 3: list, 4: message segment
2173compiler.misc.cant.resolve.location.args.params=\
2174    cannot find symbol\n\
2175    symbol:   {0} <{2}>{1}({3})\n\
2176    location: {4}
2177
2178##a location subdiagnostic is composed as follows:
2179## The first argument {0} is the location "kindname" (e.g. 'constructor', 'field', etc.)
2180## The second argument {1} is the location name
2181## The third argument {2} is the location type (only when {1} is a variable name)
2182
2183# 0: symbol kind, 1: type or symbol, 2: unused
2184compiler.misc.location=\
2185    {0} {1}
2186
2187# 0: symbol kind, 1: symbol, 2: type
2188compiler.misc.location.1=\
2189    {0} {1} of type {2}
2190
2191## The following are all possible string for "kindname".
2192## They should be called whatever the JLS calls them after it been translated
2193## to the appropriate language.
2194# compiler.misc.kindname.constructor=\
2195#     static member
2196compiler.misc.kindname.annotation=\
2197    @interface
2198
2199compiler.misc.kindname.constructor=\
2200    constructor
2201
2202compiler.misc.kindname.enum=\
2203    enum
2204
2205compiler.misc.kindname.interface=\
2206    interface
2207
2208compiler.misc.kindname.static=\
2209    static
2210
2211compiler.misc.kindname.type.variable=\
2212    type variable
2213
2214compiler.misc.kindname.type.variable.bound=\
2215    bound of type variable
2216
2217compiler.misc.kindname.variable=\
2218    variable
2219
2220compiler.misc.kindname.value=\
2221    value
2222
2223compiler.misc.kindname.method=\
2224    method
2225
2226compiler.misc.kindname.class=\
2227    class
2228
2229compiler.misc.kindname.package=\
2230    package
2231
2232compiler.misc.kindname.module=\
2233    module
2234
2235compiler.misc.kindname.static.init=\
2236    static initializer
2237
2238compiler.misc.kindname.instance.init=\
2239    instance initializer
2240
2241#####
2242
2243compiler.misc.no.args=\
2244    no arguments
2245
2246# 0: message segment
2247compiler.err.override.static=\
2248    {0}\n\
2249    overriding method is static
2250
2251# 0: message segment, 1: set of modifier
2252compiler.err.override.meth=\
2253    {0}\n\
2254    overridden method is {1}
2255
2256# 0: message segment, 1: type
2257compiler.err.override.meth.doesnt.throw=\
2258    {0}\n\
2259    overridden method does not throw {1}
2260
2261# In the following string {1} is a space separated list of Java Keywords, as
2262# they would have been declared in the source code
2263# 0: message segment, 1: set of modifier
2264compiler.err.override.weaker.access=\
2265    {0}\n\
2266    attempting to assign weaker access privileges; was {1}
2267
2268# 0: message segment, 1: type, 2: type
2269compiler.err.override.incompatible.ret=\
2270    {0}\n\
2271    return type {1} is not compatible with {2}
2272
2273# 0: message segment, 1: type, 2: type
2274compiler.warn.override.unchecked.ret=\
2275    {0}\n\
2276    return type requires unchecked conversion from {1} to {2}
2277
2278# 0: message segment, 1: type
2279compiler.warn.override.unchecked.thrown=\
2280    {0}\n\
2281    overridden method does not throw {1}
2282
2283# 0: symbol
2284compiler.warn.override.equals.but.not.hashcode=\
2285    Class {0} overrides equals, but neither it nor any superclass overrides hashCode method
2286
2287## The following are all possible strings for the first argument ({0}) of the
2288## above strings.
2289# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2290compiler.misc.cant.override=\
2291    {0} in {1} cannot override {2} in {3}
2292
2293# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2294compiler.misc.cant.hide=\
2295    {0} in {1} cannot hide {2} in {3}
2296
2297# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2298compiler.misc.cant.implement=\
2299    {0} in {1} cannot implement {2} in {3}
2300
2301# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2302compiler.misc.clashes.with=\
2303    {0} in {1} clashes with {2} in {3}
2304
2305# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2306compiler.misc.unchecked.override=\
2307    {0} in {1} overrides {2} in {3}
2308
2309# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2310compiler.misc.unchecked.implement=\
2311    {0} in {1} implements {2} in {3}
2312
2313# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2314compiler.misc.unchecked.clash.with=\
2315    {0} in {1} overrides {2} in {3}
2316
2317# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2318compiler.misc.varargs.override=\
2319    {0} in {1} overrides {2} in {3}
2320
2321# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2322compiler.misc.varargs.implement=\
2323    {0} in {1} implements {2} in {3}
2324
2325# 0: symbol, 1: symbol, 2: symbol, 3: symbol
2326compiler.misc.varargs.clash.with=\
2327    {0} in {1} overrides {2} in {3}
2328
2329# 0: symbol kind, 1: symbol, 2: symbol, 3: message segment
2330compiler.misc.inapplicable.method=\
2331    {0} {1}.{2} is not applicable\n\
2332    ({3})
2333
2334########################################
2335# Diagnostics for language feature changes
2336########################################
2337
2338# 0: string
2339compiler.err.modules.not.supported.in.source=\
2340   modules are not supported in -source {0}\n\
2341    (use -source 9 or higher to enable modules)
2342
2343# 0: string
2344compiler.misc.diamond.and.anon.class.not.supported.in.source=\
2345    cannot use ''<>'' with anonymous inner classes in -source {0}\n\
2346    (use -source 9 or higher to enable ''<>'' with anonymous inner classes)
2347
2348# 0: string
2349compiler.err.unsupported.binary.lit=\
2350    binary literals are not supported in -source {0}\n\
2351    (use -source 7 or higher to enable binary literals)
2352
2353# 0: string
2354compiler.err.unsupported.underscore.lit=\
2355    underscores in literals are not supported in -source {0}\n\
2356    (use -source 7 or higher to enable underscores in literals)
2357
2358# 0: string
2359compiler.err.try.with.resources.not.supported.in.source=\
2360    try-with-resources is not supported in -source {0}\n\
2361    (use -source 7 or higher to enable try-with-resources)
2362
2363# 0: string
2364compiler.err.var.in.try.with.resources.not.supported.in.source=\
2365    variables in try-with-resources not supported in -source {0}\n\
2366    (use -source 9 or higher to enable variables in try-with-resources)
2367
2368compiler.warn.underscore.as.identifier=\
2369    as of release 9, ''_'' is a keyword, and may not be used as an identifier
2370
2371compiler.err.underscore.as.identifier=\
2372    as of release 9, ''_'' is a keyword, and may not be used as an identifier
2373
2374compiler.err.underscore.as.identifier.in.lambda=\
2375    ''_'' used as an identifier\n\
2376    (use of ''_'' as an identifier is forbidden for lambda parameters)
2377
2378compiler.err.enum.as.identifier=\
2379    as of release 5, ''enum'' is a keyword, and may not be used as an identifier
2380
2381compiler.err.assert.as.identifier=\
2382    as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier
2383
2384# TODO 308: make a better error message
2385compiler.err.this.as.identifier=\
2386    as of release 8, ''this'' is allowed as the parameter name for the receiver type only, which has to be the first parameter
2387
2388# 0: symbol
2389compiler.err.receiver.parameter.not.applicable.constructor.toplevel.class=\
2390    receiver parameter not applicable for constructor of top-level class
2391
2392# TODO 308: make a better error message
2393# 0: symbol
2394compiler.err.cant.type.annotate.scoping.1=\
2395    scoping construct cannot be annotated with type-use annotation: {0}
2396
2397# TODO 308: make a better error message
2398# 0: list of symbol
2399compiler.err.cant.type.annotate.scoping=\
2400    scoping construct cannot be annotated with type-use annotations: {0}
2401
2402# 0: type, 1: type
2403compiler.err.incorrect.receiver.name=\
2404    the receiver name does not match the enclosing class type\n\
2405    required: {0}\n\
2406    found: {1}
2407
2408# 0: type, 1: type
2409compiler.err.incorrect.receiver.type=\
2410    the receiver type does not match the enclosing class type\n\
2411    required: {0}\n\
2412    found: {1}
2413
2414# 0: type, 1: type
2415compiler.err.incorrect.constructor.receiver.type=\
2416    the receiver type does not match the enclosing outer class type\n\
2417    required: {0}\n\
2418    found: {1}
2419
2420# 0: type, 1: type
2421compiler.err.incorrect.constructor.receiver.name=\
2422    the receiver name does not match the enclosing outer class type\n\
2423    required: {0}\n\
2424    found: {1}
2425
2426compiler.err.no.annotations.on.dot.class=\
2427    no annotations are allowed in the type of a class literal
2428
2429# 0: string
2430compiler.err.type.annotations.not.supported.in.source=\
2431    type annotations are not supported in -source {0}\n\
2432(use -source 8 or higher to enable type annotations)
2433
2434# 0: string
2435compiler.err.annotations.after.type.params.not.supported.in.source=\
2436    annotations after method type parameters are not supported in -source {0}\n\
2437(use -source 8 or higher to enable annotations after method type parameters)
2438
2439# 0: string
2440compiler.err.repeatable.annotations.not.supported.in.source=\
2441    repeated annotations are not supported in -source {0}\n\
2442(use -source 8 or higher to enable repeated annotations)
2443
2444# 0: string
2445compiler.err.diamond.not.supported.in.source=\
2446    diamond operator is not supported in -source {0}\n\
2447    (use -source 7 or higher to enable diamond operator)
2448
2449# 0: string
2450compiler.err.multicatch.not.supported.in.source=\
2451    multi-catch statement is not supported in -source {0}\n\
2452    (use -source 7 or higher to enable multi-catch statement)
2453
2454# 0: string
2455compiler.err.string.switch.not.supported.in.source=\
2456    strings in switch are not supported in -source {0}\n\
2457    (use -source 7 or higher to enable strings in switch)
2458
2459# 0: string
2460compiler.err.lambda.not.supported.in.source=\
2461    lambda expressions are not supported in -source {0}\n\
2462    (use -source 8 or higher to enable lambda expressions)
2463
2464# 0: string
2465compiler.err.method.references.not.supported.in.source=\
2466    method references are not supported in -source {0}\n\
2467    (use -source 8 or higher to enable method references)
2468
2469# 0: string
2470compiler.err.default.methods.not.supported.in.source=\
2471    default methods are not supported in -source {0}\n\
2472    (use -source 8 or higher to enable default methods)
2473
2474# 0: string
2475compiler.err.intersection.types.in.cast.not.supported.in.source=\
2476    intersection types in cast are not supported in -source {0}\n\
2477    (use -source 8 or higher to enable default methods)
2478
2479# 0: string
2480compiler.err.static.intf.methods.not.supported.in.source=\
2481    static interface methods are not supported in -source {0}\n\
2482    (use -source 8 or higher to enable static interface methods)
2483
2484# 0: string
2485compiler.err.static.intf.method.invoke.not.supported.in.source=\
2486    static interface method invocations are not supported in -source {0}\n\
2487    (use -source 8 or higher to enable static interface method invocations)
2488
2489# 0: string
2490compiler.err.private.intf.methods.not.supported.in.source=\
2491    private interface methods are not supported in -source {0}\n\
2492    (use -source 9 or higher to enable private interface methods)
2493
2494########################################
2495# Diagnostics for verbose resolution
2496# used by Resolve (debug only)
2497########################################
2498
2499# 0: number, 1: symbol, 2: unused
2500compiler.misc.applicable.method.found=\
2501    #{0} applicable method found: {1}
2502
2503# 0: number, 1: symbol, 2: message segment
2504compiler.misc.applicable.method.found.1=\
2505    #{0} applicable method found: {1}\n\
2506    ({2})
2507
2508# 0: number, 1: symbol, 2: message segment
2509compiler.misc.not.applicable.method.found=\
2510    #{0} not applicable method found: {1}\n\
2511    ({2})
2512
2513# 0: type
2514compiler.misc.partial.inst.sig=\
2515    partially instantiated to: {0}
2516
2517# 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
2518compiler.note.verbose.resolve.multi=\
2519    resolving method {0} in type {1} to candidate {2}\n\
2520    phase: {3}\n\
2521    with actuals: {4}\n\
2522    with type-args: {5}\n\
2523    candidates:
2524
2525# 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
2526compiler.note.verbose.resolve.multi.1=\
2527    erroneous resolution for method {0} in type {1}\n\
2528    phase: {3}\n\
2529    with actuals: {4}\n\
2530    with type-args: {5}\n\
2531    candidates:
2532
2533# 0: symbol, 1: type, 2: type
2534compiler.note.deferred.method.inst=\
2535    Deferred instantiation of method {0}\n\
2536    instantiated signature: {1}\n\
2537    target-type: {2}
2538
2539########################################
2540# Diagnostics for where clause implementation
2541# used by the RichDiagnosticFormatter.
2542########################################
2543
2544compiler.misc.type.null=\
2545    <null>
2546
2547# X#n (where n is an int id) is disambiguated tvar name
2548# 0: name, 1: number
2549compiler.misc.type.var=\
2550    {0}#{1}
2551
2552# CAP#n (where n is an int id) is an abbreviation for 'captured type'
2553# 0: number
2554compiler.misc.captured.type=\
2555    CAP#{0}
2556
2557# <INT#n> (where n is an int id) is an abbreviation for 'intersection type'
2558# 0: number
2559compiler.misc.intersection.type=\
2560    INT#{0}
2561
2562# where clause for captured type: contains upper ('extends {1}') and lower
2563# ('super {2}') bound along with the wildcard that generated this captured type ({3})
2564# 0: type, 1: type, 2: type, 3: type
2565compiler.misc.where.captured=\
2566    {0} extends {1} super: {2} from capture of {3}
2567
2568# compact where clause for captured type: contains upper ('extends {1}') along
2569# with the wildcard that generated this captured type ({3})
2570# 0: type, 1: type, 2: unused, 3: type
2571compiler.misc.where.captured.1=\
2572    {0} extends {1} from capture of {3}
2573
2574# where clause for type variable: contains upper bound(s) ('extends {1}') along with
2575# the kindname ({2}) and location ({3}) in which the typevar has been declared
2576# 0: type, 1: list of type, 2: symbol kind, 3: symbol
2577compiler.misc.where.typevar=\
2578    {0} extends {1} declared in {2} {3}
2579
2580# compact where clause for type variable: contains the kindname ({2}) and location ({3})
2581# in which the typevar has been declared
2582# 0: type, 1: list of type, 2: symbol kind, 3: symbol
2583compiler.misc.where.typevar.1=\
2584    {0} declared in {2} {3}
2585
2586# where clause for fresh type variable: contains upper bound(s) ('extends {1}').
2587# Since a fresh type-variable is synthetic - there's no location/kindname here.
2588# 0: type, 1: list of type
2589compiler.misc.where.fresh.typevar=\
2590    {0} extends {1}
2591
2592# where clause for type variable: contains all the upper bound(s) ('extends {1}')
2593# of this intersection type
2594# 0: type, 1: list of type
2595compiler.misc.where.intersection=\
2596    {0} extends {1}
2597
2598### Where clause headers ###
2599compiler.misc.where.description.captured=\
2600    where {0} is a fresh type-variable:
2601
2602# 0: set of type
2603compiler.misc.where.description.typevar=\
2604    where {0} is a type-variable:
2605
2606# 0: set of type
2607compiler.misc.where.description.intersection=\
2608    where {0} is an intersection type:
2609
2610# 0: set of type
2611compiler.misc.where.description.captured.1=\
2612    where {0} are fresh type-variables:
2613
2614# 0: set of type
2615compiler.misc.where.description.typevar.1=\
2616    where {0} are type-variables:
2617
2618# 0: set of type
2619compiler.misc.where.description.intersection.1=\
2620    where {0} are intersection types:
2621
2622###
2623# errors related to doc comments
2624
2625compiler.err.dc.bad.entity=\
2626    bad HTML entity
2627
2628compiler.err.dc.bad.gt=\
2629    bad use of ''>''
2630
2631compiler.err.dc.bad.inline.tag=\
2632    incorrect use of inline tag
2633
2634compiler.err.dc.identifier.expected=\
2635    identifier expected
2636
2637compiler.err.dc.malformed.html=\
2638    malformed HTML
2639
2640compiler.err.dc.missing.semicolon=\
2641    semicolon missing
2642
2643compiler.err.dc.no.content=\
2644    no content
2645
2646compiler.err.dc.no.tag.name=\
2647    no tag name after '@'
2648
2649compiler.err.dc.gt.expected=\
2650    ''>'' expected
2651
2652compiler.err.dc.ref.bad.parens=\
2653    '')'' missing in reference
2654
2655compiler.err.dc.ref.syntax.error=\
2656    syntax error in reference
2657
2658compiler.err.dc.ref.unexpected.input=\
2659    unexpected text
2660
2661compiler.err.dc.unexpected.content=\
2662    unexpected content
2663
2664compiler.err.dc.unterminated.inline.tag=\
2665    unterminated inline tag
2666
2667compiler.err.dc.unterminated.signature=\
2668    unterminated signature
2669
2670compiler.err.dc.unterminated.string=\
2671    unterminated string
2672
2673###
2674# errors related to modules
2675
2676compiler.err.expected.module=\
2677    expected ''module''
2678
2679# 0: symbol
2680compiler.err.module.not.found=\
2681    module not found: {0}
2682
2683compiler.err.too.many.modules=\
2684    too many module declarations found
2685
2686# 0: symbol
2687compiler.err.duplicate.module=\
2688    duplicate module: {0}
2689
2690# 0: symbol
2691compiler.err.duplicate.requires=\
2692    duplicate requires: {0}
2693
2694# 0: symbol
2695compiler.err.duplicate.exports=\
2696    duplicate export: {0}
2697
2698# 0: symbol, 1: symbol
2699compiler.err.duplicate.provides=\
2700    duplicate provides: service {0}, implementation {1}
2701
2702# 0: symbol
2703compiler.err.duplicate.uses=\
2704    duplicate uses: {0}
2705
2706# 0: symbol
2707compiler.err.service.implementation.is.abstract=\
2708    the service implementation is an abstract class: {0}
2709
2710# 0: symbol
2711compiler.err.service.implementation.is.inner=\
2712    the service implementation is an inner class: {0}
2713
2714# 0: symbol
2715compiler.err.service.definition.is.inner=\
2716    the service definition is an inner class: {0}
2717
2718# 0: symbol
2719compiler.err.service.implementation.doesnt.have.a.no.args.constructor=\
2720    the service implementation does not have a default constructor: {0}
2721
2722# 0: symbol
2723compiler.err.service.implementation.no.args.constructor.not.public=\
2724    the no arguments constructor of the service implementation is not public: {0}
2725
2726# 0: symbol
2727compiler.err.package.empty.or.not.found=\
2728    package is empty or does not exist: {0}
2729
2730compiler.err.no.output.dir=\
2731    no class output directory specified
2732
2733compiler.err.unnamed.pkg.not.allowed.named.modules=\
2734    unnamed package is not allowed in named modules
2735
2736# 0: name, 1: name
2737compiler.err.module.name.mismatch=\
2738    module name {0} does not match expected name {1}
2739
2740compiler.err.module.decl.sb.in.module-info.java=\
2741    module declarations should be in a file named module-info.java
2742
2743compiler.err.unexpected.after.module=\
2744    unexpected input after module declaration
2745
2746compiler.err.module-info.with.xmodule.sourcepath=\
2747    illegal combination of -Xmodule and module-info on sourcepath
2748
2749compiler.err.module-info.with.xmodule.classpath=\
2750    illegal combination of -Xmodule and module-info on classpath
2751
2752compiler.err.xmodule.no.module.sourcepath=\
2753    illegal combination of -Xmodule and -modulesourcepath
2754
2755compiler.err.processorpath.no.processormodulepath=\
2756    illegal combination of -processorpath and -processormodulepath
2757
2758# 0: symbol
2759compiler.err.package.in.other.module=\
2760    package exists in another module: {0}
2761
2762# 0: symbol, 1: name, 2: symbol, 3: symbol
2763compiler.err.package.clash.from.requires=\
2764    module {0} reads package {1} from both {2} and {3}
2765
2766# 0: string
2767compiler.err.module.not.found.in.module.source.path=\
2768    module {0} not found in module source path
2769
2770compiler.err.output.dir.must.be.specified.with.dash.m.option=\
2771    class output directory must be specified if -m option is used
2772
2773compiler.err.modulesourcepath.must.be.specified.with.dash.m.option=\
2774    module source path must be specified if -m option is used
2775
2776# 0: symbol
2777compiler.err.service.implementation.not.in.right.module=\
2778    service implementation must be defined in the same module as the provides directive
2779
2780# 0: symbol
2781compiler.err.cyclic.requires=\
2782    cyclic dependence involving {0}
2783
2784# 0: fragment, 1: name
2785compiler.err.duplicate.module.on.path=\
2786    duplicate module on {0}\nmodule in {1}
2787
2788# 0:  string
2789compiler.err.xaddexports.malformed.entry=\
2790    bad value for -XaddExports: {0}
2791
2792# 0: string
2793compiler.err.xaddexports.too.many=\
2794    multiple -XaddExports options for {0}
2795
2796# 0:  string
2797compiler.err.xaddreads.malformed.entry=\
2798    bad value for -XaddReads: {0}
2799
2800# 0: string
2801compiler.err.xaddreads.too.many=\
2802    multiple -XaddReads options for {0}
2803
2804compiler.err.addmods.all.module.path.invalid=\
2805    -addmods ALL-MODULE-PATH can only be used when compiling the unnamed module
2806
2807compiler.misc.locn.module_source_path=\
2808    module source path
2809
2810compiler.misc.locn.upgrade_module_path=\
2811    upgrade module path
2812
2813compiler.misc.locn.system_modules=\
2814    system modules
2815
2816compiler.misc.locn.module_path=\
2817    application module path
2818
2819compiler.misc.cant.resolve.modules=\
2820    cannot resolve modules
2821
2822# 0: symbol
2823compiler.err.cant.find.module=\
2824    cannot find module: {0}
2825
2826# 0: string
2827compiler.err.invalid.module.specifier=\
2828    module specifier not allowed: {0}
2829
2830# 0: symbol
2831compiler.warn.service.provided.but.not.exported.or.used=\
2832    service interface provided but not exported or used
2833
2834###
2835# errors related to options
2836
2837# 0: string, 1: string
2838compiler.err.illegal.argument.for.option=\
2839    illegal argument for {0}: {1}
2840