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