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