Thu, 04 Nov 2010 12:57:48 +0000
6993963: Project Coin: Use precise exception analysis for effectively final catch parameters
Summary: More precise rethrow analysis should be extended to effectively-final exception parameters. Multicatch parameters should be made implicitly final.
Reviewed-by: jjg, darcy
1 #
2 # Copyright (c) 1999, 2009, 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 ##
27 ## errors
28 ##
30 compiler.err.abstract.cant.be.instantiated=\
31 {0} is abstract; cannot be instantiated
32 compiler.err.abstract.meth.cant.have.body=\
33 abstract methods cannot have a body
34 compiler.err.already.annotated=\
35 {0} {1} has already been annotated
36 compiler.err.already.defined=\
37 {0} is already defined in {1}
38 compiler.err.already.defined.single.import=\
39 {0} is already defined in a single-type import
40 compiler.err.already.defined.static.single.import=\
41 {0} is already defined in a static single-type import
42 compiler.err.already.defined.this.unit=\
43 {0} is already defined in this compilation unit
44 compiler.err.annotation.missing.default.value=\
45 annotation {0} is missing value for the attribute {1}
46 compiler.err.annotation.missing.default.value.1=\
47 annotation {0} is missing values for attributes {1}
48 compiler.err.annotation.not.valid.for.type=\
49 annotation not valid for a value of type {0}
50 compiler.err.annotation.type.not.applicable=\
51 annotation type not applicable to this kind of declaration
52 compiler.err.annotation.value.must.be.annotation=\
53 annotation value must be an annotation
54 compiler.err.annotation.value.must.be.class.literal=\
55 annotation value must be a class literal
56 compiler.err.annotation.value.must.be.name.value=\
57 annotation values must be of the form ''name=value''
58 compiler.err.annotation.value.not.allowable.type=\
59 annotation value not of an allowable type
60 compiler.err.anon.class.impl.intf.no.args=\
61 anonymous class implements interface; cannot have arguments
62 compiler.err.anon.class.impl.intf.no.typeargs=\
63 anonymous class implements interface; cannot have type arguments
64 compiler.err.anon.class.impl.intf.no.qual.for.new=\
65 anonymous class implements interface; cannot have qualifier for new
66 compiler.misc.twr.not.applicable.to.type=\
67 automatic resource management not applicable to variable type
68 compiler.err.array.and.varargs=\
69 cannot declare both {0} and {1} in {2}
70 compiler.err.array.dimension.missing=\
71 array dimension missing
72 compiler.err.array.req.but.found=\
73 array required, but {0} found
75 compiler.err.assignment.from.super-bound=\
76 assigning from wildcard {0}
77 compiler.err.assignment.to.extends-bound=\
78 assigning to wildcard {0}
79 compiler.err.attribute.value.must.be.constant=\
80 attribute value must be constant
82 compiler.err.break.outside.switch.loop=\
83 break outside switch or loop
85 compiler.err.call.must.be.first.stmt.in.ctor=\
86 call to {0} must be first statement in constructor
87 compiler.err.cant.apply.symbol=\
88 {0} {1} in {4} {5} cannot be applied to given types\n\
89 required: {2}\n\
90 found: {3}
91 compiler.err.cant.apply.symbol.1=\
92 {0} {1} in {4} {5} cannot be applied to given types;\n\
93 required: {2}\n\
94 found: {3}\n\
95 reason: {6}
96 compiler.err.cant.apply.symbols=\
97 no suitable {0} found for {1}({2})
98 compiler.err.cant.assign.val.to.final.var=\
99 cannot assign a value to final variable {0}
100 compiler.err.cant.deref=\
101 {0} cannot be dereferenced
102 compiler.err.cant.extend.intf.annotation=\
103 ''extends'' not allowed for @interfaces
104 compiler.err.cant.inherit.from.final=\
105 cannot inherit from final {0}
106 compiler.err.cant.ref.before.ctor.called=\
107 cannot reference {0} before supertype constructor has been called
108 compiler.err.cant.ret.val.from.meth.decl.void=\
109 cannot return a value from method whose result type is void
110 compiler.err.cant.select.static.class.from.param.type=\
111 cannot select a static class from a parameterized type
112 compiler.err.cant.inherit.diff.arg=\
113 {0} cannot be inherited with different arguments: <{1}> and <{2}>
114 compiler.err.catch.without.try=\
115 ''catch'' without ''try''
116 compiler.err.clash.with.pkg.of.same.name=\
117 {0} clashes with package of same name
118 compiler.err.const.expr.req=\
119 constant expression required
120 compiler.err.enum.const.req=\
121 unqualified enumeration constant name required
122 compiler.err.cont.outside.loop=\
123 continue outside of loop
124 compiler.err.cyclic.inheritance=\
125 cyclic inheritance involving {0}
126 compiler.err.cyclic.annotation.element=\
127 cyclic annotation element type
128 compiler.err.call.to.super.not.allowed.in.enum.ctor=\
129 call to super not allowed in enum constructor
130 compiler.err.no.superclass=\
131 {0} has no superclass
133 compiler.warn.type.parameter.on.polymorphic.signature=\
134 change obsolete notation for MethodHandle invocations from x.<T>invoke(y) to (T)x.invoke(y)
135 compiler.warn.wrong.target.for.polymorphic.signature.definition=\
136 MethodHandle API building requires -target 7 runtimes or better; current is -target {0}
138 compiler.err.concrete.inheritance.conflict=\
139 methods {0} from {1} and {2} from {3} are inherited with the same signature
141 compiler.err.default.allowed.in.intf.annotation.member=\
142 default value only allowed in an @interface member
143 compiler.err.doesnt.exist=\
144 package {0} does not exist
145 compiler.err.duplicate.annotation=\
146 duplicate annotation
147 compiler.err.duplicate.annotation.member.value=\
148 duplicate annotation member value {0} in {1}
149 compiler.err.duplicate.class=\
150 duplicate class: {0}
151 compiler.err.duplicate.case.label=\
152 duplicate case label
153 compiler.err.duplicate.default.label=\
154 duplicate default label
156 compiler.err.else.without.if=\
157 ''else'' without ''if''
158 compiler.err.empty.bytecode.ident=\
159 empty bytecode identifier
160 compiler.err.empty.char.lit=\
161 empty character literal
162 compiler.err.encl.class.required=\
163 an enclosing instance that contains {0} is required
164 compiler.err.enum.annotation.must.be.enum.constant=\
165 an enum annotation value must be an enum constant
167 compiler.err.enum.cant.be.instantiated=\
168 enum types may not be instantiated
169 compiler.err.enum.label.must.be.unqualified.enum=\
170 an enum switch case label must be the unqualified name of an enumeration constant
171 compiler.err.enum.no.subclassing=\
172 classes cannot directly extend java.lang.Enum
173 compiler.err.enum.types.not.extensible=\
174 enum types are not extensible
175 compiler.err.enum.no.finalize=\
176 enums cannot have finalize methods
177 compiler.err.error.reading.file=\
178 error reading {0}; {1}
179 compiler.err.except.already.caught=\
180 exception {0} has already been caught
181 compiler.err.except.never.thrown.in.try=\
182 exception {0} is never thrown in body of corresponding try statement
184 compiler.err.final.parameter.may.not.be.assigned=\
185 final parameter {0} may not be assigned
186 compiler.err.twr.resource.may.not.be.assigned=\
187 automatic resource {0} may not be assigned
188 compiler.err.multicatch.parameter.may.not.be.assigned=\
189 multi-catch parameter {0} may not be assigned
190 compiler.err.finally.without.try=\
191 ''finally'' without ''try''
192 compiler.err.foreach.not.applicable.to.type=\
193 foreach not applicable to expression type
194 compiler.err.fp.number.too.large=\
195 floating point number too large
196 compiler.err.fp.number.too.small=\
197 floating point number too small
199 compiler.err.generic.array.creation=\
200 generic array creation
201 compiler.err.generic.throwable=\
202 a generic class may not extend java.lang.Throwable
204 compiler.err.icls.cant.have.static.decl=\
205 inner classes cannot have static declarations
206 compiler.err.illegal.bytecode.ident.char=\
207 illegal bytecode identifier character: \\{0}
208 compiler.err.illegal.char=\
209 illegal character: \\{0}
210 compiler.err.illegal.char.for.encoding=\
211 unmappable character for encoding {0}
212 compiler.err.illegal.combination.of.modifiers=\
213 illegal combination of modifiers: {0} and {1}
214 compiler.err.illegal.enum.static.ref=\
215 illegal reference to static field from initializer
216 compiler.err.illegal.esc.char=\
217 illegal escape character
218 compiler.err.illegal.forward.ref=\
219 illegal forward reference
220 compiler.warn.forward.ref=\
221 reference to variable ''{0}'' before it has been initialized
222 compiler.err.illegal.self.ref=\
223 self-reference in initializer
224 compiler.warn.self.ref=\
225 self-reference in initializer of variable ''{0}''
226 compiler.err.illegal.generic.type.for.instof=\
227 illegal generic type for instanceof
228 compiler.err.illegal.initializer.for.type=\
229 illegal initializer for {0}
230 compiler.err.illegal.line.end.in.char.lit=\
231 illegal line end in character literal
232 compiler.err.illegal.nonascii.digit=\
233 illegal non-ASCII digit
234 compiler.err.illegal.underscore=\
235 illegal underscore
236 compiler.err.illegal.qual.not.icls=\
237 illegal qualifier; {0} is not an inner class
238 compiler.err.illegal.start.of.expr=\
239 illegal start of expression
240 compiler.err.illegal.start.of.type=\
241 illegal start of type
242 compiler.err.illegal.unicode.esc=\
243 illegal unicode escape
244 compiler.err.import.requires.canonical=\
245 import requires canonical name for {0}
246 compiler.err.improperly.formed.type.param.missing=\
247 improperly formed type, some parameters are missing
248 compiler.err.improperly.formed.type.inner.raw.param=\
249 improperly formed type, type parameters given on a raw type
250 compiler.err.incomparable.types=\
251 incomparable types: {0} and {1}
252 compiler.err.int.number.too.large=\
253 integer number too large: {0}
254 compiler.err.internal.error.cant.instantiate=\
255 internal error; cannot instantiate {0} at {1} to ({2})
256 compiler.err.intf.annotation.members.cant.have.params=\
257 @interface members may not have parameters
258 compiler.err.intf.annotation.cant.have.type.params=\
259 @interface may not have type parameters
260 compiler.err.intf.annotation.members.cant.have.type.params=\
261 @interface members may not have type parameters
262 compiler.err.intf.annotation.member.clash=\
263 @interface member clashes with method ''{0}'' in {1}
264 compiler.err.intf.expected.here=\
265 interface expected here
266 compiler.err.intf.meth.cant.have.body=\
267 interface methods cannot have body
268 compiler.err.invalid.annotation.member.type=\
269 invalid type for annotation member
270 compiler.err.invalid.binary.number=\
271 binary numbers must contain at least one binary digit
272 compiler.err.invalid.hex.number=\
273 hexadecimal numbers must contain at least one hexadecimal digit
274 compiler.err.invalid.meth.decl.ret.type.req=\
275 invalid method declaration; return type required
277 compiler.err.label.already.in.use=\
278 label {0} already in use
279 compiler.err.local.var.accessed.from.icls.needs.final=\
280 local variable {0} is accessed from within inner class; needs to be declared final
281 compiler.err.local.enum=\
282 enum types must not be local
283 compiler.err.cannot.create.array.with.type.arguments=\
284 cannot create array with type arguments
286 #
287 # limits. We don't give the limits in the diagnostic because we expect
288 # them to change, yet we want to use the same diagnostic. These are all
289 # detected during code generation.
290 #
291 compiler.err.limit.code=\
292 code too large
293 compiler.err.limit.code.too.large.for.try.stmt=\
294 code too large for try statement
295 compiler.err.limit.dimensions=\
296 array type has too many dimensions
297 compiler.err.limit.locals=\
298 too many local variables
299 compiler.err.limit.parameters=\
300 too many parameters
301 compiler.err.limit.pool=\
302 too many constants
303 compiler.err.limit.pool.in.class=\
304 too many constants in class {0}
305 compiler.err.limit.stack=\
306 code requires too much stack
307 compiler.err.limit.string=\
308 constant string too long
309 compiler.err.limit.string.overflow=\
310 UTF8 representation for string \"{0}...\" is too long for the constant pool
312 compiler.err.malformed.fp.lit=\
313 malformed floating point literal
314 compiler.err.method.does.not.override.superclass=\
315 method does not override or implement a method from a supertype
316 compiler.err.missing.meth.body.or.decl.abstract=\
317 missing method body, or declare abstract
318 compiler.err.missing.ret.stmt=\
319 missing return statement
320 compiler.err.missing.ret.val=\
321 missing return value
322 compiler.err.mod.not.allowed.here=\
323 modifier {0} not allowed here
324 compiler.err.intf.not.allowed.here=\
325 interface not allowed here
326 compiler.err.enums.must.be.static=\
327 enum declarations allowed only in static contexts
329 compiler.err.name.clash.same.erasure=\
330 name clash: {0} and {1} have the same erasure
331 compiler.err.name.clash.same.erasure.no.override=\
332 name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither overrides the other
333 compiler.err.name.reserved.for.internal.use=\
334 {0} is reserved for internal use
335 compiler.err.native.meth.cant.have.body=\
336 native methods cannot have a body
337 compiler.err.neither.conditional.subtype=\
338 incompatible types for ?: neither is a subtype of the other\n\
339 second operand: {0}\n\
340 third operand : {1}
341 compiler.err.new.not.allowed.in.annotation=\
342 ''new'' not allowed in an annotation
343 compiler.err.no.annotation.member=\
344 no annotation member {0} in {1}
345 compiler.err.no.encl.instance.of.type.in.scope=\
346 no enclosing instance of type {0} is in scope
347 compiler.err.no.intf.expected.here=\
348 no interface expected here
349 compiler.err.no.match.entry=\
350 {0} has no match in entry in {1}; required {2}
351 compiler.err.not.annotation.type=\
352 {0} is not an annotation type
353 compiler.err.not.def.access.class.intf.cant.access=\
354 {0} in {1} is defined in an inaccessible class or interface
355 compiler.err.not.def.public.cant.access=\
356 {0} is not public in {1}; cannot be accessed from outside package
357 compiler.err.not.loop.label=\
358 not a loop label: {0}
359 compiler.err.not.stmt=\
360 not a statement
361 compiler.err.not.encl.class=\
362 not an enclosing class: {0}
364 compiler.err.operator.cant.be.applied=\
365 operator {0} cannot be applied to {1}
367 compiler.err.pkg.annotations.sb.in.package-info.java=\
368 package annotations should be in file package-info.java
369 compiler.err.pkg.clashes.with.class.of.same.name=\
370 package {0} clashes with class of same name
372 compiler.err.warnings.and.werror=\
373 warnings found and -Werror specified
375 # Errors related to annotation processing
377 compiler.err.proc.cant.access=\
378 cannot access {0}\n\
379 {1}\n\
380 Consult the following stack trace for details.\n\
381 {2}
383 compiler.err.proc.cant.find.class=\
384 Could not find class file for ''{0}''.
386 # Print a client-generated error message; assumed to be localized, no translation required
387 compiler.err.proc.messager=\
388 {0}
390 compiler.err.proc.no.explicit.annotation.processing.requested=\
391 Class names, ''{0}'', are only accepted if annotation processing is explicitly requested
393 compiler.err.proc.no.service=\
394 A service loader class could not be found.\n\
395 Either java.util.ServiceLoader or sun.misc.Service must be available.
397 compiler.err.proc.processor.bad.option.name=\
398 Bad option name ''{0}'' provided by processor ''{1}''
400 compiler.err.proc.processor.cant.instantiate=\
401 Could not instantiate an instance of processor ''{0}''
403 compiler.err.proc.processor.constructor.error=\
404 Exception thrown while constructing Processor object: {0}
406 compiler.err.proc.processor.not.found=\
407 Annotation processor ''{0}'' not found
409 compiler.err.proc.processor.wrong.type=\
410 Annotation processor ''{0}'' does not implement javax.annotation.processing.Processor
412 compiler.err.proc.service.problem=\
413 Error creating a service loader to load Processors.
415 compiler.err.proc.bad.config.file=\
416 Bad service configuration file, or exception thrown while constructing Processor object: {0}
418 compiler.err.proc.cant.create.loader=\
419 Could not create class loader for annotation processors: {0}
421 compiler.err.qualified.new.of.static.class=\
422 qualified new of static class
424 compiler.err.recursive.ctor.invocation=\
425 recursive constructor invocation
426 compiler.err.ref.ambiguous=\
427 reference to {0} is ambiguous, both {1} {2} in {3} and {4} {5} in {6} match
428 compiler.err.repeated.annotation.target=\
429 repeated annotation target
430 compiler.err.repeated.interface=\
431 repeated interface
432 compiler.err.repeated.modifier=\
433 repeated modifier
434 compiler.err.report.access=\
435 {0} has {1} access in {2}
436 compiler.err.ret.outside.meth=\
437 return outside method
439 compiler.err.signature.doesnt.match.supertype=\
440 signature does not match {0}; incompatible supertype
441 compiler.err.signature.doesnt.match.intf=\
442 signature does not match {0}; incompatible interfaces
443 compiler.err.does.not.override.abstract=\
444 {0} is not abstract and does not override abstract method {1} in {2}
445 compiler.err.source.cant.overwrite.input.file=\
446 error writing source; cannot overwrite input file {0}
447 compiler.err.stack.sim.error=\
448 Internal error: stack sim error on {0}
449 compiler.err.static.imp.only.classes.and.interfaces=\
450 static import only from classes and interfaces
451 compiler.err.string.const.req=\
452 constant string expression required
453 compiler.err.synthetic.name.conflict=\
454 the symbol {0} conflicts with a compiler-synthesized symbol in {1}
455 compiler.warn.synthetic.name.conflict=\
456 the symbol {0} conflicts with a compiler-synthesized symbol in {1}
458 compiler.err.throws.not.allowed.in.intf.annotation=\
459 throws clause not allowed in @interface members
460 compiler.err.try.without.catch.or.finally=\
461 ''try'' without ''catch'' or ''finally''
462 compiler.err.try.without.catch.finally.or.resource.decls=\
463 ''try'' without ''catch'', ''finally'' or resource declarations
464 compiler.err.type.doesnt.take.params=\
465 type {0} does not take parameters
466 compiler.err.type.var.cant.be.deref=\
467 cannot select from a type variable
468 compiler.err.type.var.may.not.be.followed.by.other.bounds=\
469 a type variable may not be followed by other bounds
470 compiler.err.type.var.more.than.once=\
471 type variable {0} occurs more than once in result type of {1}; cannot be left uninstantiated
472 compiler.err.type.var.more.than.once.in.result=\
473 type variable {0} occurs more than once in type of {1}; cannot be left uninstantiated
474 compiler.err.types.incompatible.diff.ret=\
475 types {0} and {1} are incompatible; both define {2}, but with unrelated return types
477 compiler.err.unclosed.bytecode.ident=\
478 unclosed bytecode identifier
479 compiler.err.unclosed.char.lit=\
480 unclosed character literal
481 compiler.err.unclosed.comment=\
482 unclosed comment
483 compiler.err.unclosed.str.lit=\
484 unclosed string literal
485 compiler.err.unknown.enum.constant=\
486 in class file {0}: unknown enum constant {1}.{2}
487 compiler.err.unsupported.encoding=\
488 unsupported encoding: {0}
489 compiler.err.io.exception=\
490 error reading source file: {0}
491 compiler.err.undef.label=\
492 undefined label: {0}
493 compiler.err.undetermined.type=\
494 type parameters of {0} cannot be determined
495 compiler.err.undetermined.type.1=\
496 type parameters of {0} cannot be determined; {1}
497 compiler.err.invalid.inferred.types=\
498 invalid inferred types for {0}; {1}
499 compiler.err.cant.apply.diamond=\
500 cannot infer type arguments for {0}
501 compiler.err.cant.apply.diamond.1=\
502 cannot infer type arguments for {0};\n\
503 reason: {1}
504 compiler.err.unreachable.stmt=\
505 unreachable statement
506 compiler.err.initializer.must.be.able.to.complete.normally=\
507 initializer must be able to complete normally
508 compiler.err.unreported.exception.need.to.catch.or.throw=\
509 unreported exception {0}; must be caught or declared to be thrown
510 compiler.err.unreported.exception.default.constructor=\
511 unreported exception {0} in default constructor
512 compiler.err.unsupported.cross.fp.lit=\
513 hexadecimal floating-point literals are not supported on this VM
514 compiler.err.void.not.allowed.here=\
515 ''void'' type not allowed here
517 compiler.err.wrong.number.type.args=\
518 wrong number of type arguments; required {0}
520 compiler.err.var.might.already.be.assigned=\
521 variable {0} might already have been assigned
522 compiler.err.var.might.not.have.been.initialized=\
523 variable {0} might not have been initialized
524 compiler.err.var.might.be.assigned.in.loop=\
525 variable {0} might be assigned in loop
527 # In the following string, {1} will always be the detail message from
528 # java.io.IOException.
529 compiler.err.class.cant.write=\
530 error while writing {0}: {1}
532 # In the following string, {0} is the name of the class in the Java source.
533 # It really should be used two times..
534 compiler.err.class.public.should.be.in.file=\
535 class {0} is public, should be declared in a file named {0}.java
537 ## All errors which do not refer to a particular line in the source code are
538 ## preceded by this string.
539 compiler.err.error=\
540 error:\u0020
542 # The following error messages do not refer to a line in the source code.
543 compiler.err.cant.read.file=\
544 cannot read: {0}
546 #####
548 # Fatal Errors
550 compiler.misc.fatal.err.no.java.lang=\
551 Fatal Error: Unable to find package java.lang in classpath or bootclasspath
552 compiler.misc.fatal.err.cant.locate.meth=\
553 Fatal Error: Unable to find method {0}
554 compiler.misc.fatal.err.cant.locate.field=\
555 Fatal Error: Unable to find field {0}
556 compiler.misc.fatal.err.cant.locate.ctor=\
557 Fatal Error: Unable to find constructor for {0}
558 compiler.misc.fatal.err.cant.close.loader=\
559 Fatal Error: Cannot close class loader for annotation processors
561 #####
563 ##
564 ## miscellaneous strings
565 ##
567 compiler.misc.source.unavailable=\
568 (source unavailable)
569 compiler.misc.base.membership=\
570 all your base class are belong to us
571 compiler.misc.x.print.processor.info=\
572 Processor {0} matches {1} and returns {2}.
573 compiler.misc.x.print.rounds=\
574 Round {0}:\n\tinput files: {1}\n\tannotations: {2}\n\tlast round: {3}
576 #####
578 ## The following string will appear before all messages keyed as:
579 ## "compiler.note".
580 compiler.note.note=\
581 Note:\u0020
583 compiler.note.deprecated.filename=\
584 {0} uses or overrides a deprecated API.
585 compiler.note.deprecated.plural=\
586 Some input files use or override a deprecated API.
587 # The following string may appear after one of the above deprecation
588 # messages.
589 compiler.note.deprecated.recompile=\
590 Recompile with -Xlint:deprecation for details.
592 compiler.note.deprecated.filename.additional=\
593 {0} has additional uses or overrides of a deprecated API.
594 compiler.note.deprecated.plural.additional=\
595 Some input files additionally use or override a deprecated API.
597 compiler.note.unchecked.filename=\
598 {0} uses unchecked or unsafe operations.
599 compiler.note.unchecked.plural=\
600 Some input files use unchecked or unsafe operations.
601 # The following string may appear after one of the above deprecation
602 # messages.
603 compiler.note.unchecked.recompile=\
604 Recompile with -Xlint:unchecked for details.
606 compiler.note.unchecked.filename.additional=\
607 {0} has additional unchecked or unsafe operations.
608 compiler.note.unchecked.plural.additional=\
609 Some input files additionally use unchecked or unsafe operations.
611 compiler.note.varargs.filename=\
612 {0} declares unsafe vararg methods.
613 compiler.note.varargs.plural=\
614 Some input files declare unsafe vararg methods.
615 # The following string may appear after one of the above unsafe varargs
616 # messages.
617 compiler.note.varargs.recompile=\
618 Recompile with -Xlint:varargs for details.
620 compiler.note.varargs.filename.additional=\
621 {0} declares additional unsafe vararg methods.
622 compiler.note.varargs.plural.additional=\
623 Some input files additionally declares unsafe vararg methods.
625 compiler.note.sunapi.filename=\
626 {0} uses internal proprietary API that may be removed in a future release.
627 compiler.note.sunapi.plural=\
628 Some input files use internal proprietary API that may be removed in a future release.
629 # The following string may appear after one of the above sunapi messages.
630 compiler.note.sunapi.recompile=\
631 Recompile with -Xlint:sunapi for details.
633 compiler.note.sunapi.filename.additional=\
634 {0} uses additional internal proprietary API that may be removed in a future release.
635 compiler.note.sunapi.plural.additional=\
636 Some input files additionally use internal proprietary API that may be removed in a future release.
638 # Notes related to annotation processing
640 # Print a client-generated note; assumed to be localized, no translation required
641 compiler.note.proc.messager=\
642 {0}
644 #####
646 compiler.misc.count.error=\
647 {0} error
648 compiler.misc.count.error.plural=\
649 {0} errors
650 compiler.misc.count.warn=\
651 {0} warning
652 compiler.misc.count.warn.plural=\
653 {0} warnings
655 compiler.misc.version.not.available=\
656 (version info not available)
658 ## extra output when using -verbose (JavaCompiler)
660 compiler.misc.verbose.checking.attribution=\
661 [checking {0}]
662 compiler.misc.verbose.parsing.done=\
663 [parsing completed {0}ms]
664 compiler.misc.verbose.parsing.started=\
665 [parsing started {0}]
666 compiler.misc.verbose.total=\
667 [total {0}ms]
668 compiler.misc.verbose.wrote.file=\
669 [wrote {0}]
671 ## extra output when using -verbose (Retro)
672 compiler.misc.verbose.retro=\
673 [retrofitting {0}]
674 compiler.misc.verbose.retro.with=\
675 \tretrofitting {0} with {1}
676 compiler.misc.verbose.retro.with.list=\
677 \tretrofitting {0} with type parameters {1}, supertype {2}, interfaces {3}
679 ## extra output when using -verbose (code/ClassReader)
680 compiler.misc.verbose.loading=\
681 [loading {0}]
683 compiler.misc.verbose.sourcepath=\
684 [search path for source files: {0}]
686 compiler.misc.verbose.classpath=\
687 [search path for class files: {0}]
689 ## extra output when using -checkclassfile (code/ClassReader)
690 compiler.misc.ccf.found.later.version=\
691 class file has later version than expected: {0}
692 compiler.misc.ccf.unrecognized.attribute=\
693 unrecognized attribute: {0}
695 ## extra output when using -prompt (util/Log)
696 compiler.misc.resume.abort=\
697 R)esume, A)bort>
699 #####
701 ##
702 ## warnings
703 ##
705 ## All warning messages are preceded by the following string.
706 compiler.warn.warning=\
707 warning:\u0020
709 ## Warning messages may also include the following prefix to identify a
710 ## lint option
711 compiler.warn.lintOption=\
712 [{0}]\u0020
714 compiler.warn.constant.SVUID=\
715 serialVersionUID must be constant in class {0}
717 compiler.warn.dir.path.element.not.found=\
718 bad path element "{0}": no such directory
720 compiler.warn.finally.cannot.complete=\
721 finally clause cannot complete normally
723 compiler.warn.has.been.deprecated=\
724 {0} in {1} has been deprecated
726 compiler.warn.sun.proprietary=\
727 {0} is internal proprietary API and may be removed in a future release
729 compiler.warn.illegal.char.for.encoding=\
730 unmappable character for encoding {0}
732 compiler.warn.improper.SVUID=\
733 serialVersionUID must be declared static final in class {0}
735 compiler.warn.inexact.non-varargs.call=\
736 non-varargs call of varargs method with inexact argument type for last parameter;\n\
737 cast to {0} for a varargs call\n\
738 cast to {1} for a non-varargs call and to suppress this warning
740 compiler.warn.long.SVUID=\
741 serialVersionUID must be of type long in class {0}
743 compiler.warn.missing.SVUID=\
744 serializable class {0} has no definition of serialVersionUID
746 compiler.warn.override.varargs.missing=\
747 {0}; overridden method has no ''...''
748 compiler.warn.override.varargs.extra=\
749 {0}; overriding method is missing ''...''
750 compiler.warn.override.bridge=\
751 {0}; overridden method is a bridge method
753 compiler.warn.pkg-info.already.seen=\
754 a package-info.java file has already been seen for package {0}
756 compiler.warn.path.element.not.found=\
757 bad path element "{0}": no such file or directory
759 compiler.warn.possible.fall-through.into.case=\
760 possible fall-through into case
762 compiler.warn.redundant.cast=\
763 redundant cast to {0}
765 compiler.warn.position.overflow=\
766 Position encoding overflows at line {0}
768 compiler.warn.big.major.version=\
769 {0}: major version {1} is newer than {2}, the highest major version supported by this compiler.\n\
770 It is recommended that the compiler be upgraded.
772 compiler.warn.static.not.qualified.by.type=\
773 static {0} should be qualified by type name, {1}, instead of by an expression
775 # Warnings related to annotation processing
776 compiler.warn.proc.package.does.not.exist=\
777 package {0} does not exist
778 compiler.warn.proc.file.reopening=\
779 Attempt to create a file for ''{0}'' multiple times
781 compiler.warn.proc.type.already.exists=\
782 A file for type ''{0}'' already exists on the sourcepath or classpath
784 compiler.warn.proc.type.recreate=\
785 Attempt to create a file for type ''{0}'' multiple times
787 compiler.warn.proc.illegal.file.name=\
788 Cannot create file for illegal name ''{0}''.
790 compiler.warn.proc.suspicious.class.name=\
791 Creating file for a type whose name ends in {1}: ''{0}''
793 compiler.warn.proc.file.create.last.round=\
794 File for type ''{0}'' created in the last round will not be subject to annotation processing.
796 compiler.warn.proc.malformed.supported.string=\
797 Malformed string ''{0}'' for a supported annotation type returned by processor ''{1}''
799 compiler.warn.proc.annotations.without.processors=\
800 No processor claimed any of these annotations: {0}
802 compiler.warn.proc.processor.incompatible.source.version=\
803 Supported source version ''{0}'' from annotation processor ''{1}'' less than -source ''{2}''
805 compiler.warn.proc.proc-only.requested.no.procs=\
806 Annotation processing without compilation requested but no processors were found.
808 compiler.warn.proc.use.implicit=\
809 Implicitly compiled files were not subject to annotation processing.\n\
810 Use -implicit to specify a policy for implicit compilation.
812 compiler.warn.proc.use.proc.or.implicit=\
813 Implicitly compiled files were not subject to annotation processing.\n\
814 Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
816 # Print a client-generated warning; assumed to be localized, no translation required
817 compiler.warn.proc.messager=\
818 {0}
820 compiler.warn.proc.unclosed.type.files=\
821 Unclosed files for the types ''{0}''; these types will not undergo annotation processing
823 compiler.warn.proc.unmatched.processor.options=\
824 The following options were not recognized by any processor: ''{0}''
826 compiler.warn.twr.explicit.close.call=\
827 [arm] explicit call to close() on an automatic resource
828 compiler.warn.automatic.resource.not.referenced=\
829 [arm] automatic resource {0} is never referenced in body of corresponding try statement
830 compiler.warn.unchecked.assign=\
831 unchecked assignment: {0} to {1}
832 compiler.warn.unchecked.assign.to.var=\
833 unchecked assignment to variable {0} as member of raw type {1}
834 compiler.warn.unchecked.call.mbr.of.raw.type=\
835 unchecked call to {0} as a member of the raw type {1}
836 compiler.warn.unchecked.cast.to.type=\
837 unchecked cast to type {0}
838 compiler.warn.unchecked.meth.invocation.applied=\
839 unchecked method invocation: {0} {1} in {4} {5} is applied to given types\n\
840 required: {2}\n\
841 found: {3}
843 compiler.warn.unchecked.generic.array.creation=\
844 unchecked generic array creation for varargs parameter of type {0}
846 compiler.warn.varargs.non.reifiable.type=\
847 Possible heap pollution from parameterized vararg type {0}
849 compiler.warn.missing.deprecated.annotation=\
850 deprecated item is not annotated with @Deprecated
852 compiler.warn.invalid.archive.file=\
853 Unexpected file on path: {0}
855 compiler.warn.unexpected.archive.file=\
856 Unexpected extension for archive file: {0}
858 compiler.warn.div.zero=\
859 division by zero
861 compiler.warn.empty.if=\
862 empty statement after if
864 compiler.warn.annotation.method.not.found=\
865 Cannot find annotation method ''{1}()'' in type ''{0}''
867 compiler.warn.annotation.method.not.found.reason=\
868 Cannot find annotation method ''{1}()'' in type ''{0}'': {2}
870 compiler.warn.raw.class.use=\
871 found raw type: {0}\n\
872 missing type parameters for generic class {1}
874 compiler.warn.diamond.redundant.args=\
875 redundant type arguments in new expression (use diamond operator instead).
876 compiler.warn.diamond.redundant.args.1=\
877 redundant type arguments in new expression (use diamond operator instead).\n\
878 explicit: {0}\n\
879 inferred: {1}
881 #####
883 ## The following are tokens which are non-terminals in the language. They should
884 ## be named as JLS3 calls them when translated to the appropriate language.
885 compiler.misc.token.identifier=\
886 <identifier>
887 compiler.misc.token.character=\
888 <character>
889 compiler.misc.token.string=\
890 <string>
891 compiler.misc.token.integer=\
892 <integer>
893 compiler.misc.token.long-integer=\
894 <long integer>
895 compiler.misc.token.float=\
896 <float>
897 compiler.misc.token.double=\
898 <double>
899 compiler.misc.token.bad-symbol=\
900 <bad symbol>
901 compiler.misc.token.end-of-input=\
902 <end of input>
904 ## The argument to the following string will always be one of the following:
905 ## 1. one of the above non-terminals
906 ## 2. a keyword (JLS1.8)
907 ## 3. a boolean literal (JLS3.10.3)
908 ## 4. the null literal (JLS3.10.7)
909 ## 5. a Java separator (JLS3.11)
910 ## 6. an operator (JLS3.12)
911 ##
912 ## This is the only place these tokens will be used.
913 compiler.err.expected=\
914 {0} expected
915 compiler.err.expected2=\
916 {0} or {1} expected
917 compiler.err.expected3=\
918 {0}, {1}, or {2} expected
920 compiler.err.premature.eof=\
921 reached end of file while parsing
923 ## The following are related in form, but do not easily fit the above paradigm.
924 compiler.err.dot.class.expected=\
925 ''.class'' expected
927 ## The argument to this string will always be either 'case' or 'default'.
928 compiler.err.orphaned=\
929 orphaned {0}
931 compiler.misc.anonymous.class=\
932 <anonymous {0}>
934 compiler.misc.type.captureof=\
935 capture#{0} of {1}
937 compiler.misc.type.captureof.1=\
938 capture#{0}
940 compiler.misc.type.none=\
941 <none>
943 compiler.misc.unnamed.package=\
944 unnamed package
946 #####
948 compiler.err.cant.access=\
949 cannot access {0}\n\
950 {1}
952 compiler.misc.bad.class.file.header=\
953 bad class file: {0}\n\
954 {1}\n\
955 Please remove or make sure it appears in the correct subdirectory of the classpath.
956 compiler.misc.bad.source.file.header=\
957 bad source file: {0}\n\
958 {1}\n\
959 Please remove or make sure it appears in the correct subdirectory of the sourcepath.
961 ## The following are all possible strings for the second argument ({1}) of the
962 ## above strings.
963 compiler.misc.bad.class.signature=\
964 bad class signature: {0}
965 compiler.misc.bad.enclosing.method=\
966 bad enclosing method attribute: {0}
967 compiler.misc.bad.runtime.invisible.param.annotations=\
968 bad RuntimeInvisibleParameterAnnotations attribute: {0}
969 compiler.misc.bad.const.pool.tag=\
970 bad constant pool tag: {0}
971 compiler.misc.bad.const.pool.tag.at=\
972 bad constant pool tag: {0} at {1}
973 compiler.misc.bad.signature=\
974 bad signature: {0}
975 compiler.misc.bad.type.annotation.value=\
976 bad type annotation target type value: {0}
977 compiler.misc.class.file.wrong.class=\
978 class file contains wrong class: {0}
979 compiler.misc.class.file.not.found=\
980 class file for {0} not found
981 compiler.misc.file.doesnt.contain.class=\
982 file does not contain class {0}
983 compiler.misc.file.does.not.contain.package=\
984 file does not contain package {0}
985 compiler.misc.illegal.start.of.class.file=\
986 illegal start of class file
987 compiler.misc.unable.to.access.file=\
988 unable to access file: {0}
989 compiler.misc.unicode.str.not.supported=\
990 unicode string in class file not supported
991 compiler.misc.undecl.type.var=\
992 undeclared type variable: {0}
993 compiler.misc.wrong.version=\
994 class file has wrong version {0}.{1}, should be {2}.{3}
996 #####
998 compiler.err.not.within.bounds=\
999 type parameter {0} is not within its bound
1001 compiler.err.not.within.bounds.explain=\
1002 type parameter {0} is not within its bound; {1}
1004 ## The following are all possible strings for the second argument ({1}) of the
1005 ## above string.
1007 ## none yet...
1009 #####
1011 compiler.err.prob.found.req=\
1012 {0}\n\
1013 required: {2}\n\
1014 found: {1}
1015 compiler.warn.prob.found.req=\
1016 {0}\n\
1017 required: {2}\n\
1018 found: {1}
1019 compiler.err.prob.found.req.1=\
1020 {0} {3}\n\
1021 required: {2}\n\
1022 found: {1}
1024 ## The following are all possible strings for the first argument ({0}) of the
1025 ## above strings.
1026 compiler.misc.incompatible.types=\
1027 incompatible types
1028 compiler.misc.incompatible.types.1=\
1029 incompatible types; {0}
1030 compiler.misc.inconvertible.types=\
1031 inconvertible types
1032 compiler.misc.possible.loss.of.precision=\
1033 possible loss of precision
1035 compiler.misc.unchecked.assign=\
1036 unchecked conversion
1037 # compiler.misc.storecheck=\
1038 # assignment might cause later store checks to fail
1039 # compiler.misc.unchecked=\
1040 # assigned array cannot dynamically check its stores
1041 compiler.misc.unchecked.cast.to.type=\
1042 unchecked cast
1044 compiler.misc.assignment.from.super-bound=\
1045 assignment from super-bound type {0}
1046 compiler.misc.assignment.to.extends-bound=\
1047 assignment to extends-bound type {0}
1048 # compiler.err.star.expected=\
1049 # ''*'' expected
1050 # compiler.err.no.elem.type=\
1051 # \[\*\] cannot have a type
1053 #####
1055 compiler.err.type.found.req=\
1056 unexpected type\n\
1057 required: {1}\n\
1058 found: {0}
1060 ## The following are all possible strings for the first argument ({0}) of the
1061 ## above string.
1062 compiler.misc.type.req.class=\
1063 class
1064 compiler.misc.type.req.class.array=\
1065 class or array
1066 compiler.misc.type.req.ref=\
1067 reference
1068 compiler.misc.type.req.exact=\
1069 class or interface without bounds
1070 compiler.misc.type.parameter=\
1071 type parameter {0}
1073 #####
1075 ## The following are all possible strings for the last argument of all those
1076 ## diagnostics whose key ends in ".1"
1077 compiler.misc.undetermined.type=\
1078 undetermined type
1079 compiler.misc.type.variable.has.undetermined.type=\
1080 type variable {0} has undetermined type
1081 compiler.misc.no.unique.maximal.instance.exists=\
1082 no unique maximal instance exists for type variable {0} with upper bounds {1}
1083 compiler.misc.no.unique.minimal.instance.exists=\
1084 no unique minimal instance exists for type variable {0} with lower bounds {1}
1085 compiler.misc.infer.no.conforming.instance.exists=\
1086 no instance(s) of type variable(s) {0} exist so that {1} conforms to {2}
1087 compiler.misc.infer.no.conforming.assignment.exists=\
1088 no instance(s) of type variable(s) {0} exist so that argument type {1} conforms to formal parameter type {2}
1089 compiler.misc.infer.arg.length.mismatch=\
1090 cannot instantiate from arguments because actual and formal argument lists differ in length
1091 compiler.misc.inferred.do.not.conform.to.bounds=\
1092 inferred type does not conform to declared bound(s)\n\
1093 inferred: {0}\n\
1094 bound(s): {1}
1095 compiler.misc.inferred.do.not.conform.to.params=\
1096 actual arguments do not conform to inferred formal arguments\n\
1097 required: {0}\n\
1098 found: {1}
1099 compiler.misc.diamond=\
1100 {0}<>
1101 compiler.misc.diamond.invalid.arg=\
1102 type argument {0} inferred for {1} is not allowed in this context
1103 compiler.misc.diamond.invalid.args=\
1104 type arguments {0} inferred for {1} are not allowed in this context
1106 compiler.misc.explicit.param.do.not.conform.to.bounds=\
1107 explicit type argument {0} does not conform to declared bound(s) {1}
1109 compiler.misc.arg.length.mismatch=\
1110 actual and formal argument lists differ in length
1111 compiler.misc.no.conforming.assignment.exists=\
1112 actual argument {0} cannot be converted to {1} by method invocation conversion
1113 compiler.misc.varargs.argument.mismatch=\
1114 argument type {0} does not conform to vararg element type {1}
1115 #####
1117 ## The first argument ({0}) is a "kindname".
1118 compiler.err.abstract.cant.be.accessed.directly=\
1119 abstract {0} {1} in {2} cannot be accessed directly
1121 ## The first argument ({0}) is a "kindname".
1122 compiler.err.non-static.cant.be.ref=\
1123 non-static {0} {1} cannot be referenced from a static context
1125 ## Both arguments ({0}, {1}) are "kindname"s. {0} is a comma-separated list
1126 ## of kindnames (the list should be identical to that provided in source.
1127 compiler.err.unexpected.type=\
1128 unexpected type\n\
1129 required: {0}\n\
1130 found: {1}
1132 ## The first argument {0} is a "kindname" (e.g. 'constructor', 'field', etc.)
1133 ## The second argument {1} is the non-resolved symbol
1134 ## The third argument {2} is a list of type parameters (non-empty if {1} is a method)
1135 ## The fourth argument {3} is a list of argument types (non-empty if {1} is a method)
1136 compiler.err.cant.resolve=\
1137 cannot find symbol\n\
1138 symbol: {0} {1}
1140 compiler.err.cant.resolve.args=\
1141 cannot find symbol\n\
1142 symbol: {0} {1}({3})
1144 compiler.err.cant.resolve.args.params=\
1145 cannot find symbol\n\
1146 symbol: {0} <{2}>{1}({3})
1148 ## arguments from {0} to {3} have the same meaning as above
1149 ## The fifth argument {4} is the location "kindname" (e.g. 'constructor', 'field', etc.)
1150 ## The sixth argument {5} is the location type
1151 compiler.err.cant.resolve.location=\
1152 cannot find symbol\n\
1153 symbol: {0} {1}\n\
1154 location: {4} {5}
1156 compiler.err.cant.resolve.location.args=\
1157 cannot find symbol\n\
1158 symbol: {0} {1}({3})\n\
1159 location: {4} {5}
1161 compiler.err.cant.resolve.location.args.params=\
1162 cannot find symbol\n\
1163 symbol: {0} <{2}>{1}({3})\n\
1164 location: {4} {5}
1166 ## The following are all possible string for "kindname".
1167 ## They should be called whatever the JLS calls them after it been translated
1168 ## to the appropriate language.
1169 # compiler.misc.kindname.constructor=\
1170 # static member
1171 compiler.misc.kindname.annotation=\
1172 @interface
1173 compiler.misc.kindname.constructor=\
1174 constructor
1175 compiler.misc.kindname.enum=\
1176 enum
1177 compiler.misc.kindname.interface=\
1178 interface
1179 compiler.misc.kindname.static=\
1180 static
1181 compiler.misc.kindname.type.variable=\
1182 type variable
1183 compiler.misc.kindname.type.variable.bound=\
1184 bound of type variable
1185 compiler.misc.kindname.variable=\
1186 variable
1187 compiler.misc.kindname.value=\
1188 value
1189 compiler.misc.kindname.method=\
1190 method
1191 compiler.misc.kindname.class=\
1192 class
1193 compiler.misc.kindname.package=\
1194 package
1195 #####
1197 compiler.misc.no.args=\
1198 no arguments
1200 compiler.err.override.static=\
1201 {0}\n\
1202 overriding method is static
1203 compiler.err.override.meth=\
1204 {0}\n\
1205 overridden method is {1}
1207 compiler.err.override.meth.doesnt.throw=\
1208 {0}\n\
1209 overridden method does not throw {1}
1211 # In the following string {1} is a space separated list of Java Keywords, as
1212 # they would have been declared in the source code
1213 compiler.err.override.weaker.access=\
1214 {0}\n\
1215 attempting to assign weaker access privileges; was {1}
1217 compiler.err.override.incompatible.ret=\
1218 {0}\n\
1219 return type {1} is not compatible with {2}
1221 compiler.warn.override.unchecked.ret=\
1222 {0}\n\
1223 return type requires unchecked conversion from {1} to {2}
1225 compiler.warn.override.unchecked.thrown=\
1226 {0}\n\
1227 overridden method does not throw {1}
1229 ## The following are all possible strings for the first argument ({0}) of the
1230 ## above strings.
1231 compiler.misc.cant.override=\
1232 {0} in {1} cannot override {2} in {3}
1233 compiler.misc.cant.implement=\
1234 {0} in {1} cannot implement {2} in {3}
1235 compiler.misc.clashes.with=\
1236 {0} in {1} clashes with {2} in {3}
1237 compiler.misc.unchecked.override=\
1238 {0} in {1} overrides {2} in {3}
1239 compiler.misc.unchecked.implement=\
1240 {0} in {1} implements {2} in {3}
1241 compiler.misc.unchecked.clash.with=\
1242 {0} in {1} overrides {2} in {3}
1243 compiler.misc.varargs.override=\
1244 {0} in {1} overrides {2} in {3}
1245 compiler.misc.varargs.implement=\
1246 {0} in {1} implements {2} in {3}
1247 compiler.misc.varargs.clash.with=\
1248 {0} in {1} overrides {2} in {3}
1249 compiler.misc.non.denotable.type=\
1250 Non-denotable type {0} not allowed here
1252 compiler.misc.inapplicable.method=\
1253 {0} {1}.{2} is not applicable\n\
1254 ({3})
1256 ########################################
1257 # Diagnostics for language feature changes
1258 ########################################
1259 compiler.err.unsupported.fp.lit=\
1260 hexadecimal floating point literals are not supported in -source {0}\n\
1261 (use -source 5 or higher to enable hexadecimal floating point literals)
1263 compiler.err.unsupported.binary.lit=\
1264 binary literals are not supported in -source {0}\n\
1265 (use -source 7 or higher to enable binary literals)
1267 compiler.err.unsupported.underscore.lit=\
1268 underscores in literals are not supported in -source {0}\n\
1269 (use -source 7 or higher to enable underscores in literals)
1271 compiler.err.unsupported.exotic.id=\
1272 exotic identifiers #"___" are not supported in -source {0}\n\
1273 (use -source 7 or higher to enable exotic identifiers)
1275 compiler.err.automatic.resource.management.not.supported.in.source=\
1276 automatic resource management is not supported in -source {0}\n\
1277 (use -source 7 or higher to enable automatic resource management)
1279 compiler.warn.enum.as.identifier=\
1280 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\
1281 (use -source 5 or higher to use ''enum'' as a keyword)
1283 compiler.warn.assert.as.identifier=\
1284 as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier\n\
1285 (use -source 1.4 or higher to use ''assert'' as a keyword)
1287 compiler.err.enum.as.identifier=\
1288 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\
1289 (use -source 1.4 or lower to use ''enum'' as an identifier)
1291 compiler.err.assert.as.identifier=\
1292 as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier\n\
1293 (use -source 1.3 or lower to use ''assert'' as an identifier)
1295 compiler.err.generics.not.supported.in.source=\
1296 generics are not supported in -source {0}\n\
1297 (use -source 5 or higher to enable generics)
1299 compiler.err.varargs.not.supported.in.source=\
1300 variable-arity methods are not supported in -source {0}\n\
1301 (use -source 5 or higher to enable variable-arity methods)
1303 compiler.err.annotations.not.supported.in.source=\
1304 annotations are not supported in -source {0}\n\
1305 (use -source 5 or higher to enable annotations)
1307 #308 compiler.err.type.annotations.not.supported.in.source=\
1308 #308 type annotations are not supported in -source {0}\n\
1309 #308 (use -source 7 or higher to enable type annotations)
1311 compiler.err.foreach.not.supported.in.source=\
1312 for-each loops are not supported in -source {0}\n\
1313 (use -source 5 or higher to enable for-each loops)
1315 compiler.err.static.import.not.supported.in.source=\
1316 static import declarations are not supported in -source {0}\n\
1317 (use -source 5 or higher to enable static import declarations)
1319 compiler.err.enums.not.supported.in.source=\
1320 enums are not supported in -source {0}\n\
1321 (use -source 5 or higher to enable enums)
1323 compiler.err.diamond.not.supported.in.source=\
1324 diamond operator is not supported in -source {0}\n\
1325 (use -source 7 or higher to enable diamond operator)
1327 compiler.err.multicatch.not.supported.in.source=\
1328 multi-catch statement is not supported in -source {0}\n\
1329 (use -source 7 or higher to enable multi-catch statement)
1331 compiler.err.string.switch.not.supported.in.source=\
1332 strings in switch are not supported in -source {0}\n\
1333 (use -source 7 or higher to enable strings in switch)
1335 ########################################
1336 # Diagnostics for where clause implementation
1337 # used by the RichDiagnosticFormatter.
1338 ########################################
1340 compiler.misc.type.null=\
1341 <null>
1343 # X#n (where n is an int id) is disambiguated tvar name
1344 compiler.misc.type.var=\
1345 {0}#{1}
1347 # CAP#n (where n is an int id) is an abbreviation for 'captured type'
1348 compiler.misc.captured.type=\
1349 CAP#{0}
1351 # <INT#n> (where n is an int id) is an abbreviation for 'intersection type'
1352 compiler.misc.intersection.type=\
1353 INT#{0}
1355 # where clause for captured type: contains upper ('extends {1}') and lower
1356 # ('super {2}') bound along with the wildcard that generated this captured type ({3})
1357 compiler.misc.where.captured=\
1358 {0} extends {1} super: {2} from capture of {3}
1360 # compact where clause for captured type: contains upper ('extends {1}') along
1361 # with the wildcard that generated this captured type ({3})
1362 compiler.misc.where.captured.1=\
1363 {0} extends {1} from capture of {3}
1365 # where clause for type variable: contains upper bound(s) ('extends {1}') along with
1366 # the kindname ({2}) and location ({3}) in which the typevar has been declared
1367 compiler.misc.where.typevar=\
1368 {0} extends {1} declared in {2} {3}
1370 # compact where clause for type variable: contains the kindname ({2}) and location ({3})
1371 # in which the typevar has been declared
1372 compiler.misc.where.typevar.1=\
1373 {0} declared in {2} {3}
1375 # where clause for type variable: contains all the upper bound(s) ('extends {1}')
1376 # of this intersection type
1377 compiler.misc.where.intersection=\
1378 {0} extends {1}
1380 ### Where clause headers ###
1381 compiler.misc.where.description.captured=\
1382 where {0} is a fresh type-variable:
1383 compiler.misc.where.description.typevar=\
1384 where {0} is a type-variable:
1385 compiler.misc.where.description.intersection=\
1386 where {0} is an intersection type:
1387 compiler.misc.where.description.captured.1=\
1388 where {0} are fresh type-variables:
1389 compiler.misc.where.description.typevar.1=\
1390 where {0} are type-variables:
1391 compiler.misc.where.description.intersection.1=\
1392 where {0} are intersection types: