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