Fri, 29 Apr 2011 16:06:28 +0100
6550655: com.sun.tools.javac.code.Symbol$CompletionFailure
Summary: Accessing a non-existing enum constant from an annotation whose class is available results in an internal error
Reviewed-by: jjg
1 #
2 # Copyright (c) 1999, 2011, 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 #
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 types currently in use are
30 #
31 # boolean true or false
32 # file name the name of an input file; e.g. MyFile.java
33 # message segment a sub-message; see compiler.misc.*
34 # modifier a Java modifier; e.g. public, private, protected
35 # name a name, typically a Java identifier
36 # number an integer
37 # option name the name of a command line option
38 # source version a source version number, such as 1.5, 1.6, 1.7
39 # string a general string
40 # symbol the name of a declared type
41 # symbol kind a description of the kind of a declaration; see compiler.misc.kindname.*
42 # token the name of a non-terminal in source code; see compiler.misc.token.*
43 # type a Java type; e.g. int, X, X<T>
44 # unused the value is not used in this message
45 #
46 # list of X a comma-separated list of items; e.g. list of type
47 # X or Y alternation; e.g. message segment or type
48 # set of X a comma-separated collection of items; e.g. set of modifier
49 #
50 # These may be composed: e.g. list of type or message segment
51 #
52 # These comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
53 # using info derived from the collected set of examples in test/tools/javac/diags/examples.
54 # MessageInfo can also be run as a standalone utility providing more facilities
55 # for manipulating this file. For more details, see MessageInfo.java.
57 ##
58 ## errors
59 ##
61 # 0: symbol
62 compiler.err.abstract.cant.be.instantiated=\
63 {0} is abstract; cannot be instantiated
65 compiler.err.abstract.meth.cant.have.body=\
66 abstract methods cannot have a body
68 compiler.err.already.annotated=\
69 {0} {1} has already been annotated
71 # 0: symbol, 1: symbol
72 compiler.err.already.defined=\
73 {0} is already defined in {1}
75 # 0: string
76 compiler.err.already.defined.single.import=\
77 {0} is already defined in a single-type import
79 # 0: string
80 compiler.err.already.defined.static.single.import=\
81 {0} is already defined in a static single-type import
83 compiler.err.already.defined.this.unit=\
84 {0} is already defined in this compilation unit
86 # 0: type, 1: list of name
87 compiler.err.annotation.missing.default.value=\
88 annotation {0} is missing value for the attribute {1}
90 # 0: type, 1: list of name
91 compiler.err.annotation.missing.default.value.1=\
92 annotation {0} is missing values for attributes {1}
94 # 0: type
95 compiler.err.annotation.not.valid.for.type=\
96 annotation not valid for a value of type {0}
98 compiler.err.annotation.type.not.applicable=\
99 annotation type not applicable to this kind of declaration
101 compiler.err.annotation.value.must.be.annotation=\
102 annotation value must be an annotation
104 compiler.err.annotation.value.must.be.class.literal=\
105 annotation value must be a class literal
107 compiler.err.annotation.value.must.be.name.value=\
108 annotation values must be of the form ''name=value''
110 compiler.err.annotation.value.not.allowable.type=\
111 annotation value not of an allowable type
113 compiler.err.anon.class.impl.intf.no.args=\
114 anonymous class implements interface; cannot have arguments
116 compiler.err.anon.class.impl.intf.no.typeargs=\
117 anonymous class implements interface; cannot have type arguments
119 compiler.err.anon.class.impl.intf.no.qual.for.new=\
120 anonymous class implements interface; cannot have qualifier for new
122 # 0: symbol, 1: symbol, 2: symbol
123 compiler.err.array.and.varargs=\
124 cannot declare both {0} and {1} in {2}
126 compiler.err.array.dimension.missing=\
127 array dimension missing
129 # 0: type
130 compiler.err.array.req.but.found=\
131 array required, but {0} found
133 compiler.err.assignment.from.super-bound=\
134 assigning from wildcard {0}
136 compiler.err.assignment.to.extends-bound=\
137 assigning to wildcard {0}
139 compiler.err.attribute.value.must.be.constant=\
140 attribute value must be constant
142 compiler.err.break.outside.switch.loop=\
143 break outside switch or loop
145 # 0: name
146 compiler.err.call.must.be.first.stmt.in.ctor=\
147 call to {0} must be first statement in constructor
149 compiler.err.cant.apply.symbol=\
150 {0} {1} in {4} {5} cannot be applied to given types\n\
151 required: {2}\n\
152 found: {3}
154 # 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
155 compiler.err.cant.apply.symbol.1=\
156 {0} {1} in {4} {5} cannot be applied to given types;\n\
157 required: {2}\n\
158 found: {3}\n\
159 reason: {6}
161 # 0: symbol kind, 1: name, 2: list of type
162 compiler.err.cant.apply.symbols=\
163 no suitable {0} found for {1}({2})
165 # 0: symbol
166 compiler.err.cant.assign.val.to.final.var=\
167 cannot assign a value to final variable {0}
169 # 0: type
170 compiler.err.cant.deref=\
171 {0} cannot be dereferenced
173 compiler.err.cant.extend.intf.annotation=\
174 ''extends'' not allowed for @interfaces
176 # 0: symbol
177 compiler.err.cant.inherit.from.final=\
178 cannot inherit from final {0}
180 # 0: symbol
181 compiler.err.cant.ref.before.ctor.called=\
182 cannot reference {0} before supertype constructor has been called
184 compiler.err.cant.ret.val.from.meth.decl.void=\
185 cannot return a value from method whose result type is void
187 compiler.err.cant.select.static.class.from.param.type=\
188 cannot select a static class from a parameterized type
190 # 0: symbol, 1: string, 2: string
191 compiler.err.cant.inherit.diff.arg=\
192 {0} cannot be inherited with different arguments: <{1}> and <{2}>
194 compiler.err.catch.without.try=\
195 ''catch'' without ''try''
197 # 0: symbol kind, 1: symbol
198 compiler.err.clash.with.pkg.of.same.name=\
199 {0} {1} clashes with package of same name
201 compiler.err.const.expr.req=\
202 constant expression required
204 compiler.err.cont.outside.loop=\
205 continue outside of loop
207 # 0: symbol
208 compiler.err.cyclic.inheritance=\
209 cyclic inheritance involving {0}
211 compiler.err.cyclic.annotation.element=\
212 cyclic annotation element type
214 # 0: unused
215 compiler.err.call.to.super.not.allowed.in.enum.ctor=\
216 call to super not allowed in enum constructor
218 # 0: type
219 compiler.err.no.superclass=\
220 {0} has no superclass
222 compiler.err.wrong.target.for.polymorphic.signature.definition=\
223 MethodHandle API building requires -target 7 runtimes or better; current is -target {0}
225 # 0: symbol, 1: type, 2: symbol, 3: type, 4: unused
226 compiler.err.concrete.inheritance.conflict=\
227 methods {0} from {1} and {2} from {3} are inherited with the same signature
229 compiler.err.default.allowed.in.intf.annotation.member=\
230 default value only allowed in an @interface member
232 # 0: symbol
233 compiler.err.doesnt.exist=\
234 package {0} does not exist
236 compiler.err.duplicate.annotation=\
237 duplicate annotation
239 # 0: name, 1: type
240 compiler.err.duplicate.annotation.member.value=\
241 duplicate annotation member value {0} in {1}
243 # 0: name
244 compiler.err.duplicate.class=\
245 duplicate class: {0}
247 compiler.err.duplicate.case.label=\
248 duplicate case label
250 compiler.err.duplicate.default.label=\
251 duplicate default label
253 compiler.err.else.without.if=\
254 ''else'' without ''if''
256 compiler.err.empty.char.lit=\
257 empty character literal
259 # 0: symbol
260 compiler.err.encl.class.required=\
261 an enclosing instance that contains {0} is required
263 compiler.err.enum.annotation.must.be.enum.constant=\
264 an enum annotation value must be an enum constant
266 compiler.err.enum.cant.be.instantiated=\
267 enum types may not be instantiated
269 compiler.err.enum.label.must.be.unqualified.enum=\
270 an enum switch case label must be the unqualified name of an enumeration constant
272 compiler.err.enum.no.subclassing=\
273 classes cannot directly extend java.lang.Enum
275 compiler.err.enum.types.not.extensible=\
276 enum types are not extensible
278 compiler.err.enum.no.finalize=\
279 enums cannot have finalize methods
281 # 0: file name, 1: string
282 compiler.err.error.reading.file=\
283 error reading {0}; {1}
285 # 0: type
286 compiler.err.except.already.caught=\
287 exception {0} has already been caught
289 # 0: type
290 compiler.err.except.never.thrown.in.try=\
291 exception {0} is never thrown in body of corresponding try statement
293 # 0: symbol
294 compiler.err.final.parameter.may.not.be.assigned=\
295 final parameter {0} may not be assigned
297 # 0: symbol
298 compiler.err.try.resource.may.not.be.assigned=\
299 auto-closeable resource {0} may not be assigned
301 # 0: symbol
302 compiler.err.multicatch.parameter.may.not.be.assigned=\
303 multi-catch parameter {0} may not be assigned
305 # 0: type, 1: type
306 compiler.err.multicatch.types.must.be.disjoint=\
307 Alternatives in a multi-catch statement cannot be related by subclassing\n\
308 Alternative {0} is a subclass of alternative {1}
310 compiler.err.finally.without.try=\
311 ''finally'' without ''try''
313 # 0: type, 1: message segment
314 compiler.err.foreach.not.applicable.to.type=\
315 for-each not applicable to expression type\n\
316 required: {1}\n\
317 found: {0}
319 compiler.err.fp.number.too.large=\
320 floating point number too large
322 compiler.err.fp.number.too.small=\
323 floating point number too small
325 compiler.err.generic.array.creation=\
326 generic array creation
328 compiler.err.generic.throwable=\
329 a generic class may not extend java.lang.Throwable
331 # 0: symbol
332 compiler.err.icls.cant.have.static.decl=\
333 Illegal static declaration in inner class {0}\n\
334 modifier \''static\'' is only allowed in constant variable declarations
336 # 0: string
337 compiler.err.illegal.char=\
338 illegal character: \\{0}
340 compiler.err.illegal.char.for.encoding=\
341 unmappable character for encoding {0}
343 # 0: set of modifier, 1: set of modifier
344 compiler.err.illegal.combination.of.modifiers=\
345 illegal combination of modifiers: {0} and {1}
347 compiler.err.illegal.enum.static.ref=\
348 illegal reference to static field from initializer
350 compiler.err.illegal.esc.char=\
351 illegal escape character
353 compiler.err.illegal.forward.ref=\
354 illegal forward reference
356 # 0: symbol
357 compiler.warn.forward.ref=\
358 reference to variable ''{0}'' before it has been initialized
360 compiler.err.illegal.self.ref=\
361 self-reference in initializer
363 # 0: symbol
364 compiler.warn.self.ref=\
365 self-reference in initializer of variable ''{0}''
367 compiler.err.illegal.generic.type.for.instof=\
368 illegal generic type for instanceof
370 # 0: type
371 compiler.err.illegal.initializer.for.type=\
372 illegal initializer for {0}
374 compiler.err.illegal.line.end.in.char.lit=\
375 illegal line end in character literal
377 compiler.err.illegal.nonascii.digit=\
378 illegal non-ASCII digit
380 compiler.err.illegal.underscore=\
381 illegal underscore
383 # 0: symbol
384 compiler.err.illegal.qual.not.icls=\
385 illegal qualifier; {0} is not an inner class
387 compiler.err.illegal.start.of.expr=\
388 illegal start of expression
390 compiler.err.illegal.start.of.type=\
391 illegal start of type
393 compiler.err.illegal.unicode.esc=\
394 illegal unicode escape
396 # 0: symbol
397 compiler.err.import.requires.canonical=\
398 import requires canonical name for {0}
400 compiler.err.improperly.formed.type.param.missing=\
401 improperly formed type, some parameters are missing
403 compiler.err.improperly.formed.type.inner.raw.param=\
404 improperly formed type, type arguments given on a raw type
406 # 0: type, 1: type
407 compiler.err.incomparable.types=\
408 incomparable types: {0} and {1}
410 # 0: number
411 compiler.err.int.number.too.large=\
412 integer number too large: {0}
414 compiler.err.internal.error.cant.instantiate=\
415 internal error; cannot instantiate {0} at {1} to ({2})
417 compiler.err.intf.annotation.members.cant.have.params=\
418 @interface members may not have parameters
420 compiler.err.intf.annotation.cant.have.type.params=\
421 @interface may not have type parameters
423 compiler.err.intf.annotation.members.cant.have.type.params=\
424 @interface members may not have type parameters
426 # 0: symbol, 1: type
427 compiler.err.intf.annotation.member.clash=\
428 @interface member clashes with method ''{0}'' in {1}
430 compiler.err.intf.expected.here=\
431 interface expected here
433 compiler.err.intf.meth.cant.have.body=\
434 interface methods cannot have body
436 compiler.err.invalid.annotation.member.type=\
437 invalid type for annotation member
439 compiler.err.invalid.binary.number=\
440 binary numbers must contain at least one binary digit
442 compiler.err.invalid.hex.number=\
443 hexadecimal numbers must contain at least one hexadecimal digit
445 compiler.err.invalid.meth.decl.ret.type.req=\
446 invalid method declaration; return type required
448 compiler.err.varargs.and.old.array.syntax=\
449 legacy array notation not allowed on variable-arity parameter
451 # 0: name
452 compiler.err.label.already.in.use=\
453 label {0} already in use
455 # 0: symbol
456 compiler.err.local.var.accessed.from.icls.needs.final=\
457 local variable {0} is accessed from within inner class; needs to be declared final
459 compiler.err.local.enum=\
460 enum types must not be local
462 compiler.err.cannot.create.array.with.type.arguments=\
463 cannot create array with type arguments
465 #
466 # limits. We don't give the limits in the diagnostic because we expect
467 # them to change, yet we want to use the same diagnostic. These are all
468 # detected during code generation.
469 #
470 compiler.err.limit.code=\
471 code too large
473 compiler.err.limit.code.too.large.for.try.stmt=\
474 code too large for try statement
476 compiler.err.limit.dimensions=\
477 array type has too many dimensions
479 compiler.err.limit.locals=\
480 too many local variables
482 compiler.err.limit.parameters=\
483 too many parameters
485 compiler.err.limit.pool=\
486 too many constants
488 compiler.err.limit.pool.in.class=\
489 too many constants in class {0}
491 compiler.err.limit.stack=\
492 code requires too much stack
494 compiler.err.limit.string=\
495 constant string too long
497 compiler.err.limit.string.overflow=\
498 UTF8 representation for string \"{0}...\" is too long for the constant pool
500 compiler.err.malformed.fp.lit=\
501 malformed floating point literal
503 compiler.err.method.does.not.override.superclass=\
504 method does not override or implement a method from a supertype
506 compiler.err.missing.meth.body.or.decl.abstract=\
507 missing method body, or declare abstract
509 compiler.err.missing.ret.stmt=\
510 missing return statement
512 compiler.err.missing.ret.val=\
513 missing return value
515 # 0: set of modifier
516 compiler.err.mod.not.allowed.here=\
517 modifier {0} not allowed here
519 compiler.err.intf.not.allowed.here=\
520 interface not allowed here
522 compiler.err.enums.must.be.static=\
523 enum declarations allowed only in static contexts
525 # 0: symbol, 1: symbol
526 compiler.err.name.clash.same.erasure=\
527 name clash: {0} and {1} have the same erasure
529 # 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: unused, 5: unused
530 compiler.err.name.clash.same.erasure.no.override=\
531 name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither overrides the other
533 # 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: symbol, 5: symbol
534 compiler.err.name.clash.same.erasure.no.override.1=\
535 name clash: {0} in {1} overrides a method whose erasure is the same as another method, yet neither overrides the other\n\
536 first method: {2} in {3}\n\
537 second method: {4} in {5}
539 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
540 compiler.err.name.clash.same.erasure.no.hide=\
541 name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither hides the other
543 compiler.err.name.reserved.for.internal.use=\
544 {0} is reserved for internal use
546 compiler.err.native.meth.cant.have.body=\
547 native methods cannot have a body
549 # 0: type, 1: type
550 compiler.err.neither.conditional.subtype=\
551 incompatible types for ?: neither is a subtype of the other\n\
552 second operand: {0}\n\
553 third operand : {1}
555 compiler.err.new.not.allowed.in.annotation=\
556 ''new'' not allowed in an annotation
558 compiler.err.no.annotation.member=\
559 no annotation member {0} in {1}
561 compiler.err.no.encl.instance.of.type.in.scope=\
562 no enclosing instance of type {0} is in scope
564 compiler.err.no.intf.expected.here=\
565 no interface expected here
567 compiler.err.no.match.entry=\
568 {0} has no match in entry in {1}; required {2}
570 compiler.err.not.annotation.type=\
571 {0} is not an annotation type
573 # 0: symbol, 1: symbol
574 compiler.err.not.def.access.class.intf.cant.access=\
575 {0} in {1} is defined in an inaccessible class or interface
577 # 0: symbol, 1: symbol
578 compiler.err.not.def.public.cant.access=\
579 {0} is not public in {1}; cannot be accessed from outside package
581 # 0: name
582 compiler.err.not.loop.label=\
583 not a loop label: {0}
585 compiler.err.not.stmt=\
586 not a statement
588 # 0: symbol
589 compiler.err.not.encl.class=\
590 not an enclosing class: {0}
592 # 0: name, 1: type, 2: unused
593 compiler.err.operator.cant.be.applied=\
594 bad operand type {1} for unary operator ''{0}''
596 # 0: name, 1: type, 2: type
597 compiler.err.operator.cant.be.applied.1=\
598 bad operand types for binary operator ''{0}''\n\
599 first type: {1}\n\
600 second type: {2}
602 compiler.err.pkg.annotations.sb.in.package-info.java=\
603 package annotations should be in file package-info.java
605 # 0: symbol
606 compiler.err.pkg.clashes.with.class.of.same.name=\
607 package {0} clashes with class of same name
609 compiler.err.warnings.and.werror=\
610 warnings found and -Werror specified
612 # Errors related to annotation processing
614 # 0: symbol, 1: string, 2: stack-trace
615 compiler.err.proc.cant.access=\
616 cannot access {0}\n\
617 {1}\n\
618 Consult the following stack trace for details.\n\
619 {2}
621 # 0: symbol, 1: string
622 compiler.err.proc.cant.access.1=\
623 cannot access {0}\n\
624 {1}
626 # 0: string
627 compiler.err.proc.cant.find.class=\
628 Could not find class file for ''{0}''.
630 # Print a client-generated error message; assumed to be localized, no translation required
631 # 0: string
632 compiler.err.proc.messager=\
633 {0}
635 # 0: list of string
636 compiler.err.proc.no.explicit.annotation.processing.requested=\
637 Class names, ''{0}'', are only accepted if annotation processing is explicitly requested
639 compiler.err.proc.no.service=\
640 A service loader class could not be found.\n\
641 Either java.util.ServiceLoader or sun.misc.Service must be available.
643 compiler.err.proc.processor.bad.option.name=\
644 Bad option name ''{0}'' provided by processor ''{1}''
646 # 0: string
647 compiler.err.proc.processor.cant.instantiate=\
648 Could not instantiate an instance of processor ''{0}''
650 compiler.err.proc.processor.constructor.error=\
651 Exception thrown while constructing Processor object: {0}
653 # 0: string
654 compiler.err.proc.processor.not.found=\
655 Annotation processor ''{0}'' not found
657 # 0: string
658 compiler.err.proc.processor.wrong.type=\
659 Annotation processor ''{0}'' does not implement javax.annotation.processing.Processor
661 compiler.err.proc.service.problem=\
662 Error creating a service loader to load Processors.
664 compiler.err.proc.bad.config.file=\
665 Bad service configuration file, or exception thrown while constructing Processor object: {0}
667 compiler.err.proc.cant.create.loader=\
668 Could not create class loader for annotation processors: {0}
670 # 0: unused
671 compiler.err.qualified.new.of.static.class=\
672 qualified new of static class
674 compiler.err.recursive.ctor.invocation=\
675 recursive constructor invocation
677 # 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
678 compiler.err.ref.ambiguous=\
679 reference to {0} is ambiguous, both {1} {2} in {3} and {4} {5} in {6} match
681 compiler.err.repeated.annotation.target=\
682 repeated annotation target
684 compiler.err.repeated.interface=\
685 repeated interface
687 compiler.err.repeated.modifier=\
688 repeated modifier
690 # 0: symbol, 1: set of modifier, 2: symbol
691 compiler.err.report.access=\
692 {0} has {1} access in {2}
694 compiler.err.ret.outside.meth=\
695 return outside method
697 compiler.err.signature.doesnt.match.supertype=\
698 signature does not match {0}; incompatible supertype
700 compiler.err.signature.doesnt.match.intf=\
701 signature does not match {0}; incompatible interfaces
703 # 0: symbol, 1: symbol, 2: symbol
704 compiler.err.does.not.override.abstract=\
705 {0} is not abstract and does not override abstract method {1} in {2}
707 compiler.err.source.cant.overwrite.input.file=\
708 error writing source; cannot overwrite input file {0}
710 compiler.err.stack.sim.error=\
711 Internal error: stack sim error on {0}
713 compiler.err.static.imp.only.classes.and.interfaces=\
714 static import only from classes and interfaces
716 compiler.err.string.const.req=\
717 constant string expression required
719 # 0: symbol, 1: symbol
720 compiler.err.synthetic.name.conflict=\
721 the symbol {0} conflicts with a compiler-synthesized symbol in {1}
723 # 0: symbol, 1: symbol
724 compiler.warn.synthetic.name.conflict=\
725 the symbol {0} conflicts with a compiler-synthesized symbol in {1}
727 compiler.err.throws.not.allowed.in.intf.annotation=\
728 throws clause not allowed in @interface members
730 compiler.err.try.without.catch.or.finally=\
731 ''try'' without ''catch'' or ''finally''
733 compiler.err.try.without.catch.finally.or.resource.decls=\
734 ''try'' without ''catch'', ''finally'' or resource declarations
736 # 0: symbol
737 compiler.err.type.doesnt.take.params=\
738 type {0} does not take parameters
740 compiler.err.type.var.cant.be.deref=\
741 cannot select from a type variable
743 compiler.err.type.var.may.not.be.followed.by.other.bounds=\
744 a type variable may not be followed by other bounds
746 compiler.err.type.var.more.than.once=\
747 type variable {0} occurs more than once in result type of {1}; cannot be left uninstantiated
749 compiler.err.type.var.more.than.once.in.result=\
750 type variable {0} occurs more than once in type of {1}; cannot be left uninstantiated
752 # 0: type, 1: type, 2: string
753 compiler.err.types.incompatible.diff.ret=\
754 types {0} and {1} are incompatible; both define {2}, but with unrelated return types
756 compiler.err.unclosed.char.lit=\
757 unclosed character literal
759 compiler.err.unclosed.comment=\
760 unclosed comment
762 compiler.err.unclosed.str.lit=\
763 unclosed string literal
765 # 0: name
766 compiler.err.unsupported.encoding=\
767 unsupported encoding: {0}
769 compiler.err.io.exception=\
770 error reading source file: {0}
772 # 0: name
773 compiler.err.undef.label=\
774 undefined label: {0}
776 compiler.err.undetermined.type=\
777 cannot infer type arguments for {0}
779 # 0: type, 1: message segment
780 compiler.err.undetermined.type.1=\
781 cannot infer type arguments for {0};\n\
782 reason: {1}
784 # 0: list of type, 1: message segment
785 compiler.err.invalid.inferred.types=\
786 invalid inferred types for {0}; {1}
788 # 0: message segment, 1: unused
789 compiler.err.cant.apply.diamond=\
790 cannot infer type arguments for {0}
792 # 0: message segment, 1: message segment
793 compiler.err.cant.apply.diamond.1=\
794 cannot infer type arguments for {0};\n\
795 reason: {1}
797 compiler.err.unreachable.stmt=\
798 unreachable statement
800 compiler.err.initializer.must.be.able.to.complete.normally=\
801 initializer must be able to complete normally
803 # 0: type
804 compiler.err.unreported.exception.need.to.catch.or.throw=\
805 unreported exception {0}; must be caught or declared to be thrown
807 # 0: type
808 compiler.err.unreported.exception.default.constructor=\
809 unreported exception {0} in default constructor
811 # 0: type, 1: name
812 compiler.err.unreported.exception.implicit.close=\
813 unreported exception {0}; must be caught or declared to be thrown\n\
814 exception thrown from implicit call to close() on resource variable ''{1}''
816 compiler.err.unsupported.cross.fp.lit=\
817 hexadecimal floating-point literals are not supported on this VM
819 compiler.err.void.not.allowed.here=\
820 ''void'' type not allowed here
822 # 0: string
823 compiler.err.wrong.number.type.args=\
824 wrong number of type arguments; required {0}
826 # 0: symbol
827 compiler.err.var.might.already.be.assigned=\
828 variable {0} might already have been assigned
830 # 0: symbol
831 compiler.err.var.might.not.have.been.initialized=\
832 variable {0} might not have been initialized
834 # 0: symbol
835 compiler.err.var.might.be.assigned.in.loop=\
836 variable {0} might be assigned in loop
838 # 0: symbol, 1: message segment
839 compiler.err.varargs.invalid.trustme.anno=\
840 Invalid {0} annotation. {1}
842 # 0: type
843 compiler.misc.varargs.trustme.on.reifiable.varargs=\
844 Varargs element type {0} is reifiable.
846 # 0: symbol
847 compiler.misc.varargs.trustme.on.non.varargs.meth=\
848 Method {0} is not a varargs method.
850 # 0: symbol
851 compiler.misc.varargs.trustme.on.virtual.varargs=\
852 Instance method {0} is not final.
854 # 0: type, 1: kind, 2: symbol
855 compiler.misc.inaccessible.varargs.type=\
856 formal varargs element type {0} is not accessible from {1} {2}
858 # In the following string, {1} will always be the detail message from
859 # java.io.IOException.
860 # 0: symbol, 1: string
861 compiler.err.class.cant.write=\
862 error while writing {0}: {1}
864 # In the following string, {0} is the name of the class in the Java source.
865 # It really should be used two times..
866 # 0: name
867 compiler.err.class.public.should.be.in.file=\
868 class {0} is public, should be declared in a file named {0}.java
870 ## All errors which do not refer to a particular line in the source code are
871 ## preceded by this string.
872 compiler.err.error=\
873 error:\u0020
875 # The following error messages do not refer to a line in the source code.
876 compiler.err.cant.read.file=\
877 cannot read: {0}
879 #####
881 # Fatal Errors
883 compiler.misc.fatal.err.no.java.lang=\
884 Fatal Error: Unable to find package java.lang in classpath or bootclasspath
886 compiler.misc.fatal.err.cant.locate.meth=\
887 Fatal Error: Unable to find method {0}
889 compiler.misc.fatal.err.cant.locate.field=\
890 Fatal Error: Unable to find field {0}
892 compiler.misc.fatal.err.cant.locate.ctor=\
893 Fatal Error: Unable to find constructor for {0}
895 compiler.misc.fatal.err.cant.close.loader=\
896 Fatal Error: Cannot close class loader for annotation processors
898 #####
900 ##
901 ## miscellaneous strings
902 ##
904 compiler.misc.source.unavailable=\
905 (source unavailable)
907 compiler.misc.base.membership=\
908 all your base class are belong to us
910 # 0: string, 1: string, 2: boolean
911 compiler.misc.x.print.processor.info=\
912 Processor {0} matches {1} and returns {2}.
914 # 0: number, 1: string, 2: set of symbol, 3: boolean
915 compiler.misc.x.print.rounds=\
916 Round {0}:\n\tinput files: {1}\n\tannotations: {2}\n\tlast round: {3}
918 #####
920 ## The following string will appear before all messages keyed as:
921 ## "compiler.note".
922 compiler.note.note=\
923 Note:\u0020
925 # 0: file name
926 compiler.note.deprecated.filename=\
927 {0} uses or overrides a deprecated API.
929 compiler.note.deprecated.plural=\
930 Some input files use or override a deprecated API.
932 # The following string may appear after one of the above deprecation
933 # messages.
934 compiler.note.deprecated.recompile=\
935 Recompile with -Xlint:deprecation for details.
937 # 0: file name
938 compiler.note.deprecated.filename.additional=\
939 {0} has additional uses or overrides of a deprecated API.
941 compiler.note.deprecated.plural.additional=\
942 Some input files additionally use or override a deprecated API.
944 # 0: file name
945 compiler.note.unchecked.filename=\
946 {0} uses unchecked or unsafe operations.
948 compiler.note.unchecked.plural=\
949 Some input files use unchecked or unsafe operations.
951 # The following string may appear after one of the above deprecation
952 # messages.
953 compiler.note.unchecked.recompile=\
954 Recompile with -Xlint:unchecked for details.
956 # 0: file name
957 compiler.note.unchecked.filename.additional=\
958 {0} has additional unchecked or unsafe operations.
960 compiler.note.unchecked.plural.additional=\
961 Some input files additionally use unchecked or unsafe operations.
963 # 0: file name
964 compiler.note.sunapi.filename=\
965 {0} uses internal proprietary API that may be removed in a future release.
967 compiler.note.sunapi.plural=\
968 Some input files use internal proprietary API that may be removed in a future release.
970 # The following string may appear after one of the above sunapi messages.
971 compiler.note.sunapi.recompile=\
972 Recompile with -Xlint:sunapi for details.
974 # 0: file name
975 compiler.note.sunapi.filename.additional=\
976 {0} uses additional internal proprietary API that may be removed in a future release.
978 compiler.note.sunapi.plural.additional=\
979 Some input files additionally use internal proprietary API that may be removed in a future release.
981 # Notes related to annotation processing
983 # Print a client-generated note; assumed to be localized, no translation required
984 # 0: string
985 compiler.note.proc.messager=\
986 {0}
988 #####
990 # 0: number
991 compiler.misc.count.error=\
992 {0} error
994 # 0: number
995 compiler.misc.count.error.plural=\
996 {0} errors
998 # 0: number
999 compiler.misc.count.warn=\
1000 {0} warning
1002 # 0: number
1003 compiler.misc.count.warn.plural=\
1004 {0} warnings
1006 compiler.misc.version.not.available=\
1007 (version info not available)
1009 ## extra output when using -verbose (JavaCompiler)
1011 # 0: symbol
1012 compiler.misc.verbose.checking.attribution=\
1013 [checking {0}]
1015 # 0: string
1016 compiler.misc.verbose.parsing.done=\
1017 [parsing completed {0}ms]
1019 # 0: file name
1020 compiler.misc.verbose.parsing.started=\
1021 [parsing started {0}]
1023 # 0: string
1024 compiler.misc.verbose.total=\
1025 [total {0}ms]
1027 # 0: file name
1028 compiler.misc.verbose.wrote.file=\
1029 [wrote {0}]
1031 ## extra output when using -verbose (Retro)
1032 compiler.misc.verbose.retro=\
1033 [retrofitting {0}]
1035 compiler.misc.verbose.retro.with=\
1036 \tretrofitting {0} with {1}
1038 compiler.misc.verbose.retro.with.list=\
1039 \tretrofitting {0} with type parameters {1}, supertype {2}, interfaces {3}
1041 ## extra output when using -verbose (code/ClassReader)
1042 # 0: string
1043 compiler.misc.verbose.loading=\
1044 [loading {0}]
1046 # 0: string
1047 compiler.misc.verbose.sourcepath=\
1048 [search path for source files: {0}]
1050 # 0: string
1051 compiler.misc.verbose.classpath=\
1052 [search path for class files: {0}]
1054 ## extra output when using -checkclassfile (code/ClassReader)
1055 compiler.misc.ccf.found.later.version=\
1056 class file has later version than expected: {0}
1058 compiler.misc.ccf.unrecognized.attribute=\
1059 unrecognized attribute: {0}
1061 ## extra output when using -prompt (util/Log)
1062 compiler.misc.resume.abort=\
1063 R)esume, A)bort>
1065 #####
1067 ##
1068 ## warnings
1069 ##
1071 ## All warning messages are preceded by the following string.
1072 compiler.warn.warning=\
1073 warning:\u0020
1075 ## Warning messages may also include the following prefix to identify a
1076 ## lint option
1077 # 0: option name
1078 compiler.warn.lintOption=\
1079 [{0}]\u0020
1081 # 0: symbol
1082 compiler.warn.constant.SVUID=\
1083 serialVersionUID must be constant in class {0}
1085 # 0: file name
1086 compiler.warn.dir.path.element.not.found=\
1087 bad path element "{0}": no such directory
1089 compiler.warn.finally.cannot.complete=\
1090 finally clause cannot complete normally
1092 # 0: symbol, 1: symbol
1093 compiler.warn.has.been.deprecated=\
1094 {0} in {1} has been deprecated
1096 # 0: symbol
1097 compiler.warn.sun.proprietary=\
1098 {0} is internal proprietary API and may be removed in a future release
1100 compiler.warn.illegal.char.for.encoding=\
1101 unmappable character for encoding {0}
1103 # 0: symbol
1104 compiler.warn.improper.SVUID=\
1105 serialVersionUID must be declared static final in class {0}
1107 # 0: type, 1: type
1108 compiler.warn.inexact.non-varargs.call=\
1109 non-varargs call of varargs method with inexact argument type for last parameter;\n\
1110 cast to {0} for a varargs call\n\
1111 cast to {1} for a non-varargs call and to suppress this warning
1113 # 0: list of type
1114 compiler.warn.unreachable.catch=\
1115 unreachable catch clause\n\
1116 thrown type {0} has already been caught
1118 # 0: list of type
1119 compiler.warn.unreachable.catch.1=\
1120 unreachable catch clause\n\
1121 thrown types {0} have already been caught
1123 # 0: symbol
1124 compiler.warn.long.SVUID=\
1125 serialVersionUID must be of type long in class {0}
1127 # 0: symbol
1128 compiler.warn.missing.SVUID=\
1129 serializable class {0} has no definition of serialVersionUID
1131 # 0: message segment
1132 compiler.warn.override.varargs.missing=\
1133 {0}; overridden method has no ''...''
1135 # 0: message segment
1136 compiler.warn.override.varargs.extra=\
1137 {0}; overriding method is missing ''...''
1139 compiler.warn.override.bridge=\
1140 {0}; overridden method is a bridge method
1142 # 0: symbol
1143 compiler.warn.pkg-info.already.seen=\
1144 a package-info.java file has already been seen for package {0}
1146 # 0: file name
1147 compiler.warn.path.element.not.found=\
1148 bad path element "{0}": no such file or directory
1150 compiler.warn.possible.fall-through.into.case=\
1151 possible fall-through into case
1153 # 0: type
1154 compiler.warn.redundant.cast=\
1155 redundant cast to {0}
1157 # 0: number
1158 compiler.warn.position.overflow=\
1159 Position encoding overflows at line {0}
1161 # 0: file name, 1: number, 2: number
1162 compiler.warn.big.major.version=\
1163 {0}: major version {1} is newer than {2}, the highest major version supported by this compiler.\n\
1164 It is recommended that the compiler be upgraded.
1166 # 0: symbol kind, 1: symbol
1167 compiler.warn.static.not.qualified.by.type=\
1168 static {0} should be qualified by type name, {1}, instead of by an expression
1170 # 0: string
1171 compiler.warn.source.no.bootclasspath=\
1172 bootstrap class path not set in conjunction with -source {0}
1174 # 0: name, 1: number, 2: number, 3: number, 4: number
1175 compiler.warn.future.attr=\
1176 {0} attribute introduced in version {1}.{2} class files is ignored in version {3}.{4} class files
1178 # Warnings related to annotation processing
1179 # 0: name
1180 compiler.warn.proc.package.does.not.exist=\
1181 package {0} does not exist
1183 # 0: name
1184 compiler.warn.proc.file.reopening=\
1185 Attempt to create a file for ''{0}'' multiple times
1187 # 0: name
1188 compiler.warn.proc.type.already.exists=\
1189 A file for type ''{0}'' already exists on the sourcepath or classpath
1191 # 0: name
1192 compiler.warn.proc.type.recreate=\
1193 Attempt to create a file for type ''{0}'' multiple times
1195 # 0: string
1196 compiler.warn.proc.illegal.file.name=\
1197 Cannot create file for illegal name ''{0}''.
1199 # 0: string, 1: string
1200 compiler.warn.proc.suspicious.class.name=\
1201 Creating file for a type whose name ends in {1}: ''{0}''
1203 # 0: name
1204 compiler.warn.proc.file.create.last.round=\
1205 File for type ''{0}'' created in the last round will not be subject to annotation processing.
1207 # 0: string, 1: string
1208 compiler.warn.proc.malformed.supported.string=\
1209 Malformed string ''{0}'' for a supported annotation type returned by processor ''{1}''
1211 # 0: set of string
1212 compiler.warn.proc.annotations.without.processors=\
1213 No processor claimed any of these annotations: {0}
1215 # 0: source version, 1: string, 2: string
1216 compiler.warn.proc.processor.incompatible.source.version=\
1217 Supported source version ''{0}'' from annotation processor ''{1}'' less than -source ''{2}''
1219 compiler.warn.proc.proc-only.requested.no.procs=\
1220 Annotation processing without compilation requested but no processors were found.
1222 compiler.warn.proc.use.implicit=\
1223 Implicitly compiled files were not subject to annotation processing.\n\
1224 Use -implicit to specify a policy for implicit compilation.
1226 compiler.warn.proc.use.proc.or.implicit=\
1227 Implicitly compiled files were not subject to annotation processing.\n\
1228 Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
1230 # Print a client-generated warning; assumed to be localized, no translation required
1231 # 0: string
1232 compiler.warn.proc.messager=\
1233 {0}
1235 # 0: set of name
1236 compiler.warn.proc.unclosed.type.files=\
1237 Unclosed files for the types ''{0}''; these types will not undergo annotation processing
1239 # 0: string
1240 compiler.warn.proc.unmatched.processor.options=\
1241 The following options were not recognized by any processor: ''{0}''
1243 compiler.warn.try.explicit.close.call=\
1244 explicit call to close() on an auto-closeable resource
1246 # 0: symbol
1247 compiler.warn.try.resource.not.referenced=\
1248 auto-closeable resource {0} is never referenced in body of corresponding try statement
1250 # 0: type
1251 compiler.warn.try.resource.throws.interrupted.exc=\
1252 auto-closeable resource {0} has a member method close() that could throw InterruptedException
1254 compiler.warn.unchecked.assign=\
1255 unchecked assignment: {0} to {1}
1257 # 0: symbol, 1: type
1258 compiler.warn.unchecked.assign.to.var=\
1259 unchecked assignment to variable {0} as member of raw type {1}
1261 # 0: symbol, 1: type
1262 compiler.warn.unchecked.call.mbr.of.raw.type=\
1263 unchecked call to {0} as a member of the raw type {1}
1265 compiler.warn.unchecked.cast.to.type=\
1266 unchecked cast to type {0}
1268 # 0: symbol kind, 1: name, 2: list of type, 3: list of type, 4: symbol kind, 5: symbol
1269 compiler.warn.unchecked.meth.invocation.applied=\
1270 unchecked method invocation: {0} {1} in {4} {5} is applied to given types\n\
1271 required: {2}\n\
1272 found: {3}
1274 # 0: type
1275 compiler.warn.unchecked.generic.array.creation=\
1276 unchecked generic array creation for varargs parameter of type {0}
1278 # 0: type
1279 compiler.warn.unchecked.varargs.non.reifiable.type=\
1280 Possible heap pollution from parameterized vararg type {0}
1282 # 0: symbol
1283 compiler.warn.varargs.unsafe.use.varargs.param=\
1284 Varargs method could cause heap pollution from non-reifiable varargs parameter {0}
1286 compiler.warn.missing.deprecated.annotation=\
1287 deprecated item is not annotated with @Deprecated
1289 compiler.warn.invalid.archive.file=\
1290 Unexpected file on path: {0}
1292 compiler.warn.unexpected.archive.file=\
1293 Unexpected extension for archive file: {0}
1295 compiler.warn.div.zero=\
1296 division by zero
1298 compiler.warn.empty.if=\
1299 empty statement after if
1301 compiler.warn.annotation.method.not.found=\
1302 Cannot find annotation method ''{1}()'' in type ''{0}''
1304 compiler.warn.annotation.method.not.found.reason=\
1305 Cannot find annotation method ''{1}()'' in type ''{0}'': {2}
1307 # 0: symbol, 1: name
1308 compiler.warn.unknown.enum.constant=\
1309 unknown enum constant {1}.{2}
1311 # 0: symbol, 1: name, 2: message segment
1312 compiler.warn.unknown.enum.constant.reason=\
1313 unknown enum constant {1}.{2}\n\
1314 reason: {3}
1316 # 0: type, 1: type
1317 compiler.warn.raw.class.use=\
1318 found raw type: {0}\n\
1319 missing type arguments for generic class {1}
1321 # 0: unused, 1: unused
1322 compiler.warn.diamond.redundant.args=\
1323 redundant type arguments in new expression (use diamond operator instead).
1325 # 0: type, 1: type
1326 compiler.warn.diamond.redundant.args.1=\
1327 redundant type arguments in new expression (use diamond operator instead).\n\
1328 explicit: {0}\n\
1329 inferred: {1}
1331 # 0: symbol, 1: message segment
1332 compiler.warn.varargs.redundant.trustme.anno=\
1333 Redundant {0} annotation. {1}
1335 #####
1337 ## The following are tokens which are non-terminals in the language. They should
1338 ## be named as JLS3 calls them when translated to the appropriate language.
1339 compiler.misc.token.identifier=\
1340 <identifier>
1342 compiler.misc.token.character=\
1343 <character>
1345 compiler.misc.token.string=\
1346 <string>
1348 compiler.misc.token.integer=\
1349 <integer>
1351 compiler.misc.token.long-integer=\
1352 <long integer>
1354 compiler.misc.token.float=\
1355 <float>
1357 compiler.misc.token.double=\
1358 <double>
1360 compiler.misc.token.bad-symbol=\
1361 <bad symbol>
1363 compiler.misc.token.end-of-input=\
1364 <end of input>
1366 ## The argument to the following string will always be one of the following:
1367 ## 1. one of the above non-terminals
1368 ## 2. a keyword (JLS1.8)
1369 ## 3. a boolean literal (JLS3.10.3)
1370 ## 4. the null literal (JLS3.10.7)
1371 ## 5. a Java separator (JLS3.11)
1372 ## 6. an operator (JLS3.12)
1373 ##
1374 ## This is the only place these tokens will be used.
1375 # 0: token
1376 compiler.err.expected=\
1377 {0} expected
1379 # 0: token, 1: token
1380 compiler.err.expected2=\
1381 {0} or {1} expected
1383 # 0: token, 1: token, 2: token
1384 compiler.err.expected3=\
1385 {0}, {1}, or {2} expected
1387 compiler.err.premature.eof=\
1388 reached end of file while parsing
1390 ## The following are related in form, but do not easily fit the above paradigm.
1391 compiler.err.dot.class.expected=\
1392 ''.class'' expected
1394 ## The argument to this string will always be either 'case' or 'default'.
1395 # 0: token
1396 compiler.err.orphaned=\
1397 orphaned {0}
1399 # 0: name
1400 compiler.misc.anonymous.class=\
1401 <anonymous {0}>
1403 # 0: name, 1: type
1404 compiler.misc.type.captureof=\
1405 capture#{0} of {1}
1407 compiler.misc.type.captureof.1=\
1408 capture#{0}
1410 compiler.misc.type.none=\
1411 <none>
1413 compiler.misc.unnamed.package=\
1414 unnamed package
1416 #####
1418 # 0: symbol, 1: message segment
1419 compiler.err.cant.access=\
1420 cannot access {0}\n\
1421 {1}
1423 compiler.misc.bad.class.file.header=\
1424 bad class file: {0}\n\
1425 {1}\n\
1426 Please remove or make sure it appears in the correct subdirectory of the classpath.
1428 # 0: file name, 1: message segment
1429 compiler.misc.bad.source.file.header=\
1430 bad source file: {0}\n\
1431 {1}\n\
1432 Please remove or make sure it appears in the correct subdirectory of the sourcepath.
1434 ## The following are all possible strings for the second argument ({1}) of the
1435 ## above strings.
1436 compiler.misc.bad.class.signature=\
1437 bad class signature: {0}
1439 #0: symbol, 1: symbol
1440 compiler.misc.bad.enclosing.class=\
1441 bad enclosing class for {0}: {1}
1443 # 0: symbol
1444 compiler.misc.bad.enclosing.method=\
1445 bad enclosing method attribute for class {0}
1447 compiler.misc.bad.runtime.invisible.param.annotations=\
1448 bad RuntimeInvisibleParameterAnnotations attribute: {0}
1450 compiler.misc.bad.const.pool.tag=\
1451 bad constant pool tag: {0}
1453 compiler.misc.bad.const.pool.tag.at=\
1454 bad constant pool tag: {0} at {1}
1456 compiler.misc.bad.signature=\
1457 bad signature: {0}
1459 compiler.misc.class.file.wrong.class=\
1460 class file contains wrong class: {0}
1462 compiler.misc.class.file.not.found=\
1463 class file for {0} not found
1465 # 0: name
1466 compiler.misc.file.doesnt.contain.class=\
1467 file does not contain class {0}
1469 compiler.misc.file.does.not.contain.package=\
1470 file does not contain package {0}
1472 compiler.misc.illegal.start.of.class.file=\
1473 illegal start of class file
1475 compiler.misc.unable.to.access.file=\
1476 unable to access file: {0}
1478 compiler.misc.unicode.str.not.supported=\
1479 unicode string in class file not supported
1481 compiler.misc.undecl.type.var=\
1482 undeclared type variable: {0}
1484 compiler.misc.wrong.version=\
1485 class file has wrong version {0}.{1}, should be {2}.{3}
1487 #####
1489 # 0: type, 1: type or symbol
1490 compiler.err.not.within.bounds=\
1491 type argument {0} is not within bounds of type-variable {1}
1493 ## The following are all possible strings for the second argument ({1}) of the
1494 ## above string.
1496 ## none yet...
1498 #####
1500 # 0: message segment, 1: type, 2: type
1501 compiler.err.prob.found.req=\
1502 {0}\n\
1503 required: {2}\n\
1504 found: {1}
1506 # 0: message segment, 1: type, 2: type
1507 compiler.warn.prob.found.req=\
1508 {0}\n\
1509 required: {2}\n\
1510 found: {1}
1512 compiler.err.prob.found.req.1=\
1513 {0} {3}\n\
1514 required: {2}\n\
1515 found: {1}
1517 ## The following are all possible strings for the first argument ({0}) of the
1518 ## above strings.
1519 compiler.misc.incompatible.types=\
1520 incompatible types
1522 # 0: message segment
1523 compiler.misc.incompatible.types.1=\
1524 incompatible types; {0}
1526 compiler.misc.inconvertible.types=\
1527 inconvertible types
1529 compiler.misc.possible.loss.of.precision=\
1530 possible loss of precision
1532 compiler.misc.unchecked.assign=\
1533 unchecked conversion
1535 # compiler.misc.storecheck=\
1536 # assignment might cause later store checks to fail
1537 # compiler.misc.unchecked=\
1538 # assigned array cannot dynamically check its stores
1539 compiler.misc.unchecked.cast.to.type=\
1540 unchecked cast
1542 compiler.misc.assignment.from.super-bound=\
1543 assignment from super-bound type {0}
1545 compiler.misc.assignment.to.extends-bound=\
1546 assignment to extends-bound type {0}
1548 # compiler.err.star.expected=\
1549 # ''*'' expected
1550 # compiler.err.no.elem.type=\
1551 # \[\*\] cannot have a type
1553 compiler.misc.try.not.applicable.to.type=\
1554 try-with-resources not applicable to variable type
1556 #####
1558 # 0: message segment or type, 1: message segment
1559 compiler.err.type.found.req=\
1560 unexpected type\n\
1561 required: {1}\n\
1562 found: {0}
1564 ## The following are all possible strings for the first argument ({0}) of the
1565 ## above string.
1566 compiler.misc.type.req.class=\
1567 class
1569 compiler.misc.type.req.class.array=\
1570 class or array
1572 compiler.misc.type.req.array.or.iterable=\
1573 array or java.lang.Iterable
1575 compiler.misc.type.req.ref=\
1576 reference
1578 compiler.misc.type.req.exact=\
1579 class or interface without bounds
1581 # 0: type
1582 compiler.misc.type.parameter=\
1583 type parameter {0}
1585 #####
1587 ## The following are all possible strings for the last argument of all those
1588 ## diagnostics whose key ends in ".1"
1589 compiler.misc.undetermined.type=\
1590 undetermined type
1592 compiler.misc.type.variable.has.undetermined.type=\
1593 type variable {0} has undetermined type
1595 # 0: type, 1: list of type
1596 compiler.misc.no.unique.maximal.instance.exists=\
1597 no unique maximal instance exists for type variable {0} with upper bounds {1}
1599 compiler.misc.no.unique.minimal.instance.exists=\
1600 no unique minimal instance exists for type variable {0} with lower bounds {1}
1602 # 0: list of type, 1: type, 2: type
1603 compiler.misc.infer.no.conforming.instance.exists=\
1604 no instance(s) of type variable(s) {0} exist so that {1} conforms to {2}
1606 # 0: list of type, 1: type, 2: type
1607 compiler.misc.infer.no.conforming.assignment.exists=\
1608 no instance(s) of type variable(s) {0} exist so that argument type {1} conforms to formal parameter type {2}
1610 compiler.misc.infer.arg.length.mismatch=\
1611 cannot instantiate from arguments because actual and formal argument lists differ in length
1613 # 0: type, 1: list of type
1614 compiler.misc.inferred.do.not.conform.to.bounds=\
1615 inferred type does not conform to declared bound(s)\n\
1616 inferred: {0}\n\
1617 bound(s): {1}
1619 # 0: symbol
1620 compiler.misc.diamond=\
1621 {0}<>
1623 # 0: type
1624 compiler.misc.diamond.non.generic=\
1625 cannot use ''<>'' with non-generic class {0}
1627 # 0: type, 1: list of type
1628 compiler.misc.explicit.param.do.not.conform.to.bounds=\
1629 explicit type argument {0} does not conform to declared bound(s) {1}
1631 compiler.misc.arg.length.mismatch=\
1632 actual and formal argument lists differ in length
1634 # 0: type, 1: type
1635 compiler.misc.no.conforming.assignment.exists=\
1636 actual argument {0} cannot be converted to {1} by method invocation conversion
1638 # 0: type, 1: type
1639 compiler.misc.varargs.argument.mismatch=\
1640 argument type {0} does not conform to vararg element type {1}
1642 #####
1644 ## The first argument ({0}) is a "kindname".
1645 # 0: symbol kind, 1: symbol, 2: symbol
1646 compiler.err.abstract.cant.be.accessed.directly=\
1647 abstract {0} {1} in {2} cannot be accessed directly
1649 ## The first argument ({0}) is a "kindname".
1650 # 0: symbol kind, 1: symbol
1651 compiler.err.non-static.cant.be.ref=\
1652 non-static {0} {1} cannot be referenced from a static context
1654 ## Both arguments ({0}, {1}) are "kindname"s. {0} is a comma-separated list
1655 ## of kindnames (the list should be identical to that provided in source.
1656 compiler.err.unexpected.type=\
1657 unexpected type\n\
1658 required: {0}\n\
1659 found: {1}
1661 ## The first argument {0} is a "kindname" (e.g. 'constructor', 'field', etc.)
1662 ## The second argument {1} is the non-resolved symbol
1663 ## The third argument {2} is a list of type parameters (non-empty if {1} is a method)
1664 ## The fourth argument {3} is a list of argument types (non-empty if {1} is a method)
1665 # 0: symbol kind, 1: name, 2: unused, 3: unused
1666 compiler.err.cant.resolve=\
1667 cannot find symbol\n\
1668 symbol: {0} {1}
1670 # 0: symbol kind, 1: name, 2: unused, 3: list of type
1671 compiler.err.cant.resolve.args=\
1672 cannot find symbol\n\
1673 symbol: {0} {1}({3})
1675 # 0: symbol kind, 1: name, 2: list of type, 3: list of type
1676 compiler.err.cant.resolve.args.params=\
1677 cannot find symbol\n\
1678 symbol: {0} <{2}>{1}({3})
1680 ## arguments from {0} to {3} have the same meaning as above
1681 ## The fifth argument {4} is a location subdiagnostic (see below)
1682 # 0: symbol kind, 1: name, 2: unused, 3: unused, 4: message segment
1683 compiler.err.cant.resolve.location=\
1684 cannot find symbol\n\
1685 symbol: {0} {1}\n\
1686 location: {4}
1688 # 0: symbol kind, 1: name, 2: unused, 3: list of type, 4: message segment
1689 compiler.err.cant.resolve.location.args=\
1690 cannot find symbol\n\
1691 symbol: {0} {1}({3})\n\
1692 location: {4}
1694 # 0: symbol kind, 1: name, 2: list of type, 3: list, 4: message segment
1695 compiler.err.cant.resolve.location.args.params=\
1696 cannot find symbol\n\
1697 symbol: {0} <{2}>{1}({3})\n\
1698 location: {4}
1700 ##a location subdiagnostic is composed as follows:
1701 ## The first argument {0} is the location "kindname" (e.g. 'constructor', 'field', etc.)
1702 ## The second argument {1} is the location name
1703 ## The third argument {2} is the location type (only when {1} is a variable name)
1705 # 0: symbol kind, 1: symbol, 2: unused
1706 compiler.misc.location=\
1707 {0} {1}
1709 # 0: symbol kind, 1: symbol, 2: type
1710 compiler.misc.location.1=\
1711 {0} {1} of type {2}
1713 ## The following are all possible string for "kindname".
1714 ## They should be called whatever the JLS calls them after it been translated
1715 ## to the appropriate language.
1716 # compiler.misc.kindname.constructor=\
1717 # static member
1718 compiler.misc.kindname.annotation=\
1719 @interface
1721 compiler.misc.kindname.constructor=\
1722 constructor
1724 compiler.misc.kindname.enum=\
1725 enum
1727 compiler.misc.kindname.interface=\
1728 interface
1730 compiler.misc.kindname.static=\
1731 static
1733 compiler.misc.kindname.type.variable=\
1734 type variable
1736 compiler.misc.kindname.type.variable.bound=\
1737 bound of type variable
1739 compiler.misc.kindname.variable=\
1740 variable
1742 compiler.misc.kindname.value=\
1743 value
1745 compiler.misc.kindname.method=\
1746 method
1748 compiler.misc.kindname.class=\
1749 class
1751 compiler.misc.kindname.package=\
1752 package
1754 #####
1756 compiler.misc.no.args=\
1757 no arguments
1759 # 0: message segment
1760 compiler.err.override.static=\
1761 {0}\n\
1762 overriding method is static
1764 # 0: message segment, 1: set of modifier
1765 compiler.err.override.meth=\
1766 {0}\n\
1767 overridden method is {1}
1769 # 0: message segment, 1: type
1770 compiler.err.override.meth.doesnt.throw=\
1771 {0}\n\
1772 overridden method does not throw {1}
1774 # In the following string {1} is a space separated list of Java Keywords, as
1775 # they would have been declared in the source code
1776 # 0: message segment, 1: set of modifier
1777 compiler.err.override.weaker.access=\
1778 {0}\n\
1779 attempting to assign weaker access privileges; was {1}
1781 # 0: message segment, 1: type, 2: type
1782 compiler.err.override.incompatible.ret=\
1783 {0}\n\
1784 return type {1} is not compatible with {2}
1786 # 0: message segment, 1: type, 2: type
1787 compiler.warn.override.unchecked.ret=\
1788 {0}\n\
1789 return type requires unchecked conversion from {1} to {2}
1791 # 0: message segment, 1: type
1792 compiler.warn.override.unchecked.thrown=\
1793 {0}\n\
1794 overridden method does not throw {1}
1796 ## The following are all possible strings for the first argument ({0}) of the
1797 ## above strings.
1798 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1799 compiler.misc.cant.override=\
1800 {0} in {1} cannot override {2} in {3}
1802 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1803 compiler.misc.cant.implement=\
1804 {0} in {1} cannot implement {2} in {3}
1806 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1807 compiler.misc.clashes.with=\
1808 {0} in {1} clashes with {2} in {3}
1810 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1811 compiler.misc.unchecked.override=\
1812 {0} in {1} overrides {2} in {3}
1814 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1815 compiler.misc.unchecked.implement=\
1816 {0} in {1} implements {2} in {3}
1818 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1819 compiler.misc.unchecked.clash.with=\
1820 {0} in {1} overrides {2} in {3}
1822 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1823 compiler.misc.varargs.override=\
1824 {0} in {1} overrides {2} in {3}
1826 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1827 compiler.misc.varargs.implement=\
1828 {0} in {1} implements {2} in {3}
1830 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1831 compiler.misc.varargs.clash.with=\
1832 {0} in {1} overrides {2} in {3}
1834 compiler.misc.diamond.and.anon.class=\
1835 cannot use ''<>'' with anonymous inner classes
1837 # 0: symbol kind, 1: symbol, 2: symbol, 3: message segment
1838 compiler.misc.inapplicable.method=\
1839 {0} {1}.{2} is not applicable\n\
1840 ({3})
1842 ########################################
1843 # Diagnostics for language feature changes
1844 ########################################
1845 # 0: string
1846 compiler.err.unsupported.fp.lit=\
1847 hexadecimal floating point literals are not supported in -source {0}\n\
1848 (use -source 5 or higher to enable hexadecimal floating point literals)
1850 # 0: string
1851 compiler.err.unsupported.binary.lit=\
1852 binary literals are not supported in -source {0}\n\
1853 (use -source 7 or higher to enable binary literals)
1855 # 0: string
1856 compiler.err.unsupported.underscore.lit=\
1857 underscores in literals are not supported in -source {0}\n\
1858 (use -source 7 or higher to enable underscores in literals)
1860 # 0: string
1861 compiler.err.try.with.resources.not.supported.in.source=\
1862 try-with-resources is not supported in -source {0}\n\
1863 (use -source 7 or higher to enable try-with-resources)
1865 compiler.warn.enum.as.identifier=\
1866 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\
1867 (use -source 5 or higher to use ''enum'' as a keyword)
1869 compiler.warn.assert.as.identifier=\
1870 as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier\n\
1871 (use -source 1.4 or higher to use ''assert'' as a keyword)
1873 compiler.err.enum.as.identifier=\
1874 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\
1875 (use -source 1.4 or lower to use ''enum'' as an identifier)
1877 compiler.err.assert.as.identifier=\
1878 as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier\n\
1879 (use -source 1.3 or lower to use ''assert'' as an identifier)
1881 # 0: string
1882 compiler.err.generics.not.supported.in.source=\
1883 generics are not supported in -source {0}\n\
1884 (use -source 5 or higher to enable generics)
1886 # 0: string
1887 compiler.err.varargs.not.supported.in.source=\
1888 variable-arity methods are not supported in -source {0}\n\
1889 (use -source 5 or higher to enable variable-arity methods)
1891 # 0: string
1892 compiler.err.annotations.not.supported.in.source=\
1893 annotations are not supported in -source {0}\n\
1894 (use -source 5 or higher to enable annotations)
1896 #308 compiler.err.type.annotations.not.supported.in.source=\
1897 #308 type annotations are not supported in -source {0}\n\
1898 #308 (use -source 7 or higher to enable type annotations)
1900 # 0: string
1901 compiler.err.foreach.not.supported.in.source=\
1902 for-each loops are not supported in -source {0}\n\
1903 (use -source 5 or higher to enable for-each loops)
1905 # 0: string
1906 compiler.err.static.import.not.supported.in.source=\
1907 static import declarations are not supported in -source {0}\n\
1908 (use -source 5 or higher to enable static import declarations)
1910 # 0: string
1911 compiler.err.enums.not.supported.in.source=\
1912 enums are not supported in -source {0}\n\
1913 (use -source 5 or higher to enable enums)
1915 # 0: string
1916 compiler.err.diamond.not.supported.in.source=\
1917 diamond operator is not supported in -source {0}\n\
1918 (use -source 7 or higher to enable diamond operator)
1920 # 0: string
1921 compiler.err.multicatch.not.supported.in.source=\
1922 multi-catch statement is not supported in -source {0}\n\
1923 (use -source 7 or higher to enable multi-catch statement)
1925 # 0: string
1926 compiler.err.string.switch.not.supported.in.source=\
1927 strings in switch are not supported in -source {0}\n\
1928 (use -source 7 or higher to enable strings in switch)
1930 ########################################
1931 # Diagnostics for where clause implementation
1932 # used by the RichDiagnosticFormatter.
1933 ########################################
1935 compiler.misc.type.null=\
1936 <null>
1938 # X#n (where n is an int id) is disambiguated tvar name
1939 # 0: name, 1: number
1940 compiler.misc.type.var=\
1941 {0}#{1}
1943 # CAP#n (where n is an int id) is an abbreviation for 'captured type'
1944 # 0: number
1945 compiler.misc.captured.type=\
1946 CAP#{0}
1948 # <INT#n> (where n is an int id) is an abbreviation for 'intersection type'
1949 # 0: number
1950 compiler.misc.intersection.type=\
1951 INT#{0}
1953 # where clause for captured type: contains upper ('extends {1}') and lower
1954 # ('super {2}') bound along with the wildcard that generated this captured type ({3})
1955 # 0: type, 1: type, 2: type, 3: type
1956 compiler.misc.where.captured=\
1957 {0} extends {1} super: {2} from capture of {3}
1959 # compact where clause for captured type: contains upper ('extends {1}') along
1960 # with the wildcard that generated this captured type ({3})
1961 # 0: type, 1: type, 2: unused, 3: type
1962 compiler.misc.where.captured.1=\
1963 {0} extends {1} from capture of {3}
1965 # where clause for type variable: contains upper bound(s) ('extends {1}') along with
1966 # the kindname ({2}) and location ({3}) in which the typevar has been declared
1967 # 0: type, 1: list of type, 2: symbol kind, 3: symbol
1968 compiler.misc.where.typevar=\
1969 {0} extends {1} declared in {2} {3}
1971 # compact where clause for type variable: contains the kindname ({2}) and location ({3})
1972 # in which the typevar has been declared
1973 compiler.misc.where.typevar.1=\
1974 {0} declared in {2} {3}
1976 # where clause for type variable: contains all the upper bound(s) ('extends {1}')
1977 # of this intersection type
1978 # 0: type, 1: list of type
1979 compiler.misc.where.intersection=\
1980 {0} extends {1}
1982 ### Where clause headers ###
1983 compiler.misc.where.description.captured=\
1984 where {0} is a fresh type-variable:
1986 # 0: set of type
1987 compiler.misc.where.description.typevar=\
1988 where {0} is a type-variable:
1990 # 0: set of type
1991 compiler.misc.where.description.intersection=\
1992 where {0} is an intersection type:
1994 # 0: set of type
1995 compiler.misc.where.description.captured.1=\
1996 where {0} are fresh type-variables:
1998 # 0: set of type
1999 compiler.misc.where.description.typevar.1=\
2000 where {0} are type-variables:
2002 compiler.misc.where.description.intersection.1=\
2003 where {0} are intersection types: