1 #
   2 # Copyright (c) 1999, 2022, Oracle and/or its affiliates. All rights reserved.
   3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4 #
   5 # This code is free software; you can redistribute it and/or modify it
   6 # under the terms of the GNU General Public License version 2 only, as
   7 # published by the Free Software Foundation.  Oracle designates this
   8 # particular file as subject to the "Classpath" exception as provided
   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 # Messages in this file which use "placeholders" for values (e.g. {0}, {1})
  27 # are preceded by a stylized comment describing the type of the corresponding
  28 # values.
  29 # The simple types currently in use are:
  30 #
  31 # annotation        annotation compound
  32 # boolean           true or false
  33 # diagnostic        a sub-message; see compiler.misc.*
  34 # fragment          similar to 'message segment', but with more specific type
  35 # modifier          a Java modifier; e.g. public, private, protected
  36 # file              a file URL
  37 # file object       a file URL - similar to 'file' but typically used for source/class files, hence more specific
  38 # flag              a Flags.Flag instance
  39 # name              a name, typically a Java identifier
  40 # number            an integer
  41 # option name       the name of a command line option
  42 # path              a path
  43 # profile           a profile name
  44 # source            a source version number, such as 1.5, 1.6, 1.7, taken from a com.sun.tools.javac.code.Source
  45 # source version    a source version number, such as 1.5, 1.6, 1.7, taken from a javax.lang.model.SourceVersion
  46 # string            a general string
  47 # symbol            the name of a declared type
  48 # symbol kind       the kind of a symbol (i.e. method, variable)
  49 # kind name         an informative description of the kind of a declaration; see compiler.misc.kindname.*
  50 # target            a target version number, such as 1.5, 1.6, 1.7, taken from a com.sun.tools.javac.jvm.Target
  51 # token             the name of a non-terminal in source code; see compiler.misc.token.*
  52 # tree tag          the name of a non-terminal in source code; see compiler.misc.token.*
  53 # type              a Java type; e.g. int, X, X<T>
  54 # url               a URL
  55 # object            a Java object (unspecified)
  56 # unused            the value is not used in this message
  57 #
  58 # The following compound types are also used:
  59 #
  60 # collection of X   a comma-separated collection of items; e.g. collection of type
  61 # list of X         a comma-separated list of items; e.g. list of type
  62 # set of X          a comma-separated set of items; e.g. set of modifier
  63 #
  64 # These may be composed:
  65 #
  66 # list of type or message segment
  67 #
  68 # The following type aliases are supported:
  69 #
  70 # message segment --> diagnostic or fragment
  71 # file name --> file, path or file object
  72 #
  73 # Custom comments are supported in parenthesis i.e.
  74 #
  75 # number (classfile major version)
  76 #
  77 # These comments are used internally in order to generate an enum-like class declaration containing
  78 # a method/field for each of the diagnostic keys listed here. Those methods/fields can then be used
  79 # by javac code to build diagnostics in a type-safe fashion.
  80 #
  81 # In addition, these comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
  82 # using info derived from the collected set of examples in test/tools/javac/diags/examples.
  83 # MessageInfo can also be run as a standalone utility providing more facilities
  84 # for manipulating this file. For more details, see MessageInfo.java.
  85 
  86 ##
  87 ## errors
  88 ##
  89 
  90 # 0: symbol
  91 compiler.err.abstract.cant.be.instantiated=\
  92     {0} is abstract; cannot be instantiated
  93 
  94 compiler.err.abstract.meth.cant.have.body=\
  95     abstract methods cannot have a body
  96 
  97 # 0: kind name, 1: symbol
  98 compiler.err.already.annotated=\
  99     {0} {1} has already been annotated
 100 
 101 # 0: kind name, 1: symbol, 2: kind name, 3: symbol
 102 compiler.err.already.defined=\
 103     {0} {1} is already defined in {2} {3}
 104 
 105 # 0: kind name, 1: symbol, 2: kind name, 3: kind name, 4: symbol
 106 compiler.err.already.defined.in.clinit=\
 107     {0} {1} is already defined in {2} of {3} {4}
 108 
 109 # 0: symbol
 110 compiler.err.already.defined.single.import=\
 111     a type with the same simple name is already defined by the single-type-import of {0}
 112 
 113 # 0: symbol
 114 compiler.err.already.defined.static.single.import=\
 115     a type with the same simple name is already defined by the static single-type-import of {0}
 116 
 117 # 0: symbol
 118 compiler.err.already.defined.this.unit=\
 119     {0} is already defined in this compilation unit
 120 
 121 compiler.err.annotation.missing.element.value=\
 122     annotation is missing element value
 123 
 124 # 0: type, 1: list of name
 125 compiler.err.annotation.missing.default.value=\
 126     annotation @{0} is missing a default value for the element ''{1}''
 127 
 128 # 0: type, 1: list of name
 129 compiler.err.annotation.missing.default.value.1=\
 130     annotation @{0} is missing default values for elements {1}
 131 
 132 # 0: type
 133 compiler.err.annotation.not.valid.for.type=\
 134     annotation not valid for an element of type {0}
 135 
 136 compiler.err.annotation.type.not.applicable=\
 137     annotation interface not applicable to this kind of declaration
 138 
 139 # 0: type
 140 compiler.err.annotation.type.not.applicable.to.type=\
 141     annotation @{0} not applicable in this type context
 142 
 143 compiler.err.annotation.value.must.be.annotation=\
 144     annotation value must be an annotation
 145 
 146 compiler.err.annotation.value.must.be.class.literal=\
 147     annotation value must be a class literal
 148 
 149 compiler.err.annotation.value.must.be.name.value=\
 150     annotation values must be of the form ''name=value''
 151 
 152 compiler.err.annotation.value.not.allowable.type=\
 153     annotation value not of an allowable type
 154 
 155 compiler.err.expression.not.allowable.as.annotation.value=\
 156     expression not allowed as annotation value
 157 
 158 compiler.err.anon.class.impl.intf.no.args=\
 159     anonymous class implements interface; cannot have arguments
 160 
 161 compiler.err.anon.class.impl.intf.no.typeargs=\
 162     anonymous class implements interface; cannot have type arguments
 163 
 164 compiler.err.anon.class.impl.intf.no.qual.for.new=\
 165     anonymous class implements interface; cannot have qualifier for new
 166 
 167 compiler.err.cant.inherit.from.anon=\
 168     cannot inherit from anonymous class
 169 
 170 # 0: symbol, 1: symbol, 2: symbol
 171 compiler.err.array.and.varargs=\
 172     cannot declare both {0} and {1} in {2}
 173 
 174 compiler.err.array.dimension.missing=\
 175     array dimension missing
 176 
 177 compiler.err.illegal.array.creation.both.dimension.and.initialization=\
 178     array creation with both dimension expression and initialization is illegal
 179 
 180 # 0: type
 181 compiler.err.array.req.but.found=\
 182     array required, but {0} found
 183 
 184 compiler.err.attribute.value.must.be.constant=\
 185     element value must be a constant expression
 186 
 187 # 0: string (statement type)
 188 compiler.err.bad.initializer=\
 189     bad initializer for {0}
 190 
 191 compiler.err.break.outside.switch.loop=\
 192     break outside switch or loop
 193 
 194 compiler.err.break.outside.switch.expression=\
 195     attempt to break out of a switch expression
 196 
 197 compiler.err.continue.outside.switch.expression=\
 198     attempt to continue out of a switch expression
 199 
 200 compiler.err.return.outside.switch.expression=\
 201     attempt to return out of a switch expression
 202 
 203 compiler.err.rule.completes.normally=\
 204     switch rule completes without providing a value\n\
 205     (switch rules in switch expressions must either provide a value or throw)
 206 
 207 compiler.err.switch.expression.completes.normally=\
 208     switch expression completes without providing a value\n\
 209     (switch expressions must either provide a value or throw for all possible input values)
 210 
 211 compiler.err.no.switch.expression =\
 212     yield outside of switch expression
 213 
 214 compiler.err.no.switch.expression.qualify=\
 215     yield outside of switch expression\n\
 216     (to invoke a method called yield, qualify the yield with a receiver or type name)
 217 
 218 compiler.err.invalid.yield=\
 219     invalid use of a restricted identifier ''yield''\n\
 220     (to invoke a method called yield, qualify the yield with a receiver or type name)
 221 
 222 compiler.warn.invalid.yield=\
 223     ''yield'' may become a restricted identifier in a future release\n\
 224     (to invoke a method called yield, qualify the yield with a receiver or type name)
 225 
 226 compiler.err.switch.expression.empty=\
 227     switch expression does not have any case clauses
 228 
 229 compiler.err.switch.expression.no.result.expressions=\
 230     switch expression does not have any result expressions
 231 
 232 # 0: name
 233 compiler.err.call.must.be.first.stmt.in.ctor=\
 234     call to {0} must be first statement in constructor
 235 
 236 # 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
 237 compiler.err.cant.apply.symbol=\
 238     {0} {1} in {4} {5} cannot be applied to given types;\n\
 239     required: {2}\n\
 240     found:    {3}\n\
 241     reason: {6}
 242 
 243 # 0: symbol kind, 1: name, 2: list of type
 244 compiler.err.cant.apply.symbols=\
 245     no suitable {0} found for {1}({2})
 246 
 247 # 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
 248 compiler.misc.cant.apply.symbol=\
 249     {0} {1} in {4} {5} cannot be applied to given types\n\
 250     required: {2}\n\
 251     found:    {3}\n\
 252     reason: {6}
 253 
 254 # 0: symbol kind, 1: name, 2: list of type
 255 compiler.misc.cant.apply.symbols=\
 256     no suitable {0} found for {1}({2})
 257 
 258 # 0: kind name, 1: symbol
 259 compiler.misc.no.abstracts=\
 260     no abstract method found in {0} {1}
 261 
 262 # 0: kind name, 1: symbol
 263 compiler.misc.incompatible.abstracts=\
 264     multiple non-overriding abstract methods found in {0} {1}
 265 
 266 compiler.misc.value.interface.nonfunctional=\
 267     since it is a value interface
 268 
 269 compiler.misc.identity.interface.nonfunctional=\
 270     since it is an identity interface
 271 
 272 compiler.err.bad.functional.intf.anno=\
 273     Unexpected @FunctionalInterface annotation
 274 
 275 # 0: message segment
 276 compiler.err.bad.functional.intf.anno.1=\
 277     Unexpected @FunctionalInterface annotation\n\
 278     {0}
 279 
 280 # 0: message segment
 281 compiler.err.anonymous.diamond.method.does.not.override.superclass=\
 282     method does not override or implement a method from a supertype\n\
 283     {0}
 284 
 285 # 0: symbol
 286 compiler.misc.not.a.functional.intf=\
 287     {0} is not a functional interface
 288 
 289 # 0: symbol, 1: message segment
 290 compiler.misc.not.a.functional.intf.1=\
 291     {0} is not a functional interface\n\
 292     {1}
 293 
 294 # 0: type, 1: kind name, 2: symbol
 295 compiler.misc.invalid.generic.lambda.target=\
 296     invalid functional descriptor for lambda expression\n\
 297     method {0} in {1} {2} is generic
 298 
 299 # 0: kind name, 1: symbol
 300 compiler.misc.incompatible.descs.in.functional.intf=\
 301     incompatible function descriptors found in {0} {1}
 302 
 303 # 0: name, 1: list of type, 2: type, 3: list of type
 304 compiler.misc.descriptor=\
 305     descriptor: {2} {0}({1})
 306 
 307 # 0: name, 1: list of type, 2: type, 3: list of type
 308 compiler.misc.descriptor.throws=\
 309     descriptor: {2} {0}({1}) throws {3}
 310 
 311 # 0: type
 312 compiler.misc.no.suitable.functional.intf.inst=\
 313     cannot infer functional interface descriptor for {0}
 314 
 315 # 0: message segment
 316 compiler.misc.bad.intersection.target.for.functional.expr=\
 317     bad intersection type target for lambda or method reference\n\
 318     {0}
 319 
 320 # 0: symbol or type
 321 compiler.misc.not.an.intf.component=\
 322     component type {0} is not an interface
 323 
 324 # 0: kind name, 1: message segment
 325 compiler.err.invalid.mref=\
 326     invalid {0} reference\n\
 327     {1}
 328 
 329 # 0: kind name, 1: message segment
 330 compiler.misc.invalid.mref=\
 331     invalid {0} reference\n\
 332     {1}
 333 
 334 compiler.misc.static.mref.with.targs=\
 335     parameterized qualifier on static method reference
 336 
 337 # 0: symbol
 338 compiler.err.cant.assign.val.to.final.var=\
 339     cannot assign a value to final variable {0}
 340 
 341 compiler.err.cant.assign.val.to.this=\
 342     cannot assign to ''this''
 343 
 344 # 0: symbol, 1: message segment
 345 compiler.err.cant.ref.non.effectively.final.var=\
 346     local variables referenced from {1} must be final or effectively final
 347 
 348 compiler.err.try.with.resources.expr.needs.var=\
 349     the try-with-resources resource must either be a variable declaration or an expression denoting \
 350 a reference to a final or effectively final variable
 351 
 352 # 0: symbol
 353 compiler.err.try.with.resources.expr.effectively.final.var=\
 354     variable {0} used as a try-with-resources resource neither final nor effectively final
 355 
 356 
 357 compiler.misc.lambda=\
 358     a lambda expression
 359 
 360 compiler.misc.inner.cls=\
 361     an inner class
 362 
 363 compiler.misc.guard=\
 364     a guard
 365 
 366 # 0: type
 367 compiler.err.cant.deref=\
 368     {0} cannot be dereferenced
 369 
 370 compiler.err.cant.extend.intf.annotation=\
 371     ''extends'' not allowed for @interfaces
 372 
 373 compiler.err.annotation.decl.not.allowed.here=\
 374     annotation interface declaration not allowed here
 375 
 376 # 0: symbol
 377 compiler.err.cant.inherit.from.final=\
 378     cannot inherit from final {0}
 379 
 380 # 0: symbol or string
 381 compiler.err.cant.ref.before.ctor.called=\
 382     cannot reference {0} before supertype constructor has been called
 383 
 384 compiler.err.cant.select.static.class.from.param.type=\
 385     cannot select a static class from a parameterized type
 386 
 387 # 0: symbol, 1: string, 2: string
 388 compiler.err.cant.inherit.diff.arg=\
 389     {0} cannot be inherited with different arguments: <{1}> and <{2}>
 390 
 391 compiler.err.catch.without.try=\
 392     ''catch'' without ''try''
 393 
 394 # 0: kind name, 1: symbol
 395 compiler.err.clash.with.pkg.of.same.name=\
 396     {0} {1} clashes with package of same name
 397 
 398 compiler.err.class.not.allowed=\
 399     class, interface or enum declaration not allowed here
 400 
 401 compiler.err.const.expr.req=\
 402     constant expression required
 403 
 404 compiler.err.cont.outside.loop=\
 405     continue outside of loop
 406 
 407 # 0: symbol or type
 408 compiler.err.cyclic.inheritance=\
 409     cyclic inheritance involving {0}
 410 
 411 # 0: symbol
 412 compiler.err.cyclic.annotation.element=\
 413     type of element {0} is cyclic
 414 
 415 # 0: symbol
 416 compiler.err.call.to.super.not.allowed.in.enum.ctor=\
 417     call to super not allowed in enum constructor
 418 
 419 # 0: type
 420 compiler.err.no.superclass=\
 421     {0} has no superclass.
 422 
 423 # 0: symbol, 1: type, 2: symbol, 3: type, 4: type
 424 compiler.err.concrete.inheritance.conflict=\
 425     methods {0} from {1} and {2} from {3} are inherited with the same signature
 426 
 427 compiler.err.default.allowed.in.intf.annotation.member=\
 428     default value only allowed in an annotation interface declaration
 429 
 430 # 0: symbol
 431 compiler.err.doesnt.exist=\
 432     package {0} does not exist
 433 
 434 # 0: type
 435 compiler.err.duplicate.annotation.invalid.repeated=\
 436     annotation {0} is not a valid repeatable annotation
 437 
 438 # 0: name, 1: type
 439 compiler.err.duplicate.annotation.member.value=\
 440     duplicate element ''{0}'' in annotation @{1}.
 441 
 442 # 0: type
 443 compiler.err.duplicate.annotation.missing.container=\
 444     {0} is not a repeatable annotation interface
 445 
 446 # 0: symbol
 447 compiler.err.invalid.repeatable.annotation=\
 448     duplicate annotation: {0} is annotated with an invalid @Repeatable annotation
 449 
 450 # 0: symbol or type
 451 compiler.err.invalid.repeatable.annotation.no.value=\
 452     {0} is not a valid @Repeatable, no value element method declared
 453 
 454 # 0: type, 1: number
 455 compiler.err.invalid.repeatable.annotation.multiple.values=\
 456     {0} is not a valid @Repeatable, {1} element methods named ''value'' declared
 457 
 458 # 0: type
 459 compiler.err.invalid.repeatable.annotation.invalid.value=\
 460     {0} is not a valid @Repeatable: invalid value element
 461 
 462 # 0: symbol or type, 1: type, 2: type
 463 compiler.err.invalid.repeatable.annotation.value.return=\
 464     containing annotation interface ({0}) must declare an element named ''value'' of type {2}
 465 
 466 # 0: symbol or type, 1: symbol
 467 compiler.err.invalid.repeatable.annotation.elem.nondefault=\
 468     containing annotation interface ({0}) does not have a default value for element {1}
 469 
 470 # 0: symbol, 1: string, 2: symbol, 3: string
 471 compiler.err.invalid.repeatable.annotation.retention=\
 472     retention of containing annotation interface ({0}) is shorter than the retention of repeatable annotation interface ({2})
 473 
 474 # 0: symbol, 1: symbol
 475 compiler.err.invalid.repeatable.annotation.not.documented=\
 476     repeatable annotation interface ({1}) is @Documented while containing annotation interface ({0}) is not
 477 
 478 # 0: symbol, 1: symbol
 479 compiler.err.invalid.repeatable.annotation.not.inherited=\
 480     repeatable annotation interface ({1}) is @Inherited while containing annotation interface ({0}) is not
 481 
 482 # 0: symbol, 1: symbol
 483 compiler.err.invalid.repeatable.annotation.incompatible.target=\
 484     containing annotation interface ({0}) is applicable to more targets than repeatable annotation interface ({1})
 485 
 486 # 0: symbol
 487 compiler.err.invalid.repeatable.annotation.repeated.and.container.present=\
 488     container {0} must not be present at the same time as the element it contains
 489 
 490 # 0: type, 1: symbol
 491 compiler.err.invalid.repeatable.annotation.not.applicable=\
 492     container {0} is not applicable to element {1}
 493 
 494 # 0: type
 495 compiler.err.invalid.repeatable.annotation.not.applicable.in.context=\
 496     container {0} is not applicable in this type context
 497 
 498 # 0: name
 499 compiler.err.duplicate.class=\
 500     duplicate class: {0}
 501 
 502 # 0: name, 1: name
 503 compiler.err.same.binary.name=\
 504     classes: {0} and {1} have the same binary name
 505 
 506 compiler.err.duplicate.case.label=\
 507     duplicate case label
 508 
 509 compiler.err.pattern.dominated=\
 510     this case label is dominated by a preceding case label
 511 
 512 compiler.err.duplicate.default.label=\
 513     duplicate default label
 514 
 515 compiler.err.duplicate.unconditional.pattern=\
 516     duplicate unconditional pattern
 517 
 518 compiler.err.unconditional.pattern.and.default=\
 519     switch has both an unconditional pattern and a default label
 520 
 521 compiler.err.guard.has.constant.expression.false=\
 522     this case label has a guard that is a constant expression with value ''false''
 523 
 524 # 0: type, 1: type
 525 compiler.err.constant.label.not.compatible=\
 526     constant label of type {0} is not compatible with switch selector type {1}
 527 
 528 compiler.err.flows.through.to.pattern=\
 529     illegal fall-through to a pattern
 530 
 531 compiler.err.flows.through.from.pattern=\
 532     illegal fall-through from a pattern
 533 
 534 compiler.err.else.without.if=\
 535     ''else'' without ''if''
 536 
 537 compiler.err.empty.char.lit=\
 538     empty character literal
 539 
 540 # 0: symbol
 541 compiler.err.encl.class.required=\
 542     an enclosing instance that contains {0} is required
 543 
 544 compiler.err.enum.annotation.must.be.enum.constant=\
 545     an enum annotation value must be an enum constant
 546 
 547 compiler.err.enum.cant.be.instantiated=\
 548     enum classes may not be instantiated
 549 
 550 compiler.err.enum.label.must.be.unqualified.enum=\
 551     an enum switch case label must be the unqualified name of an enumeration constant
 552 
 553 compiler.err.enum.no.subclassing=\
 554     classes cannot directly extend java.lang.Enum
 555 
 556 compiler.err.enum.types.not.extensible=\
 557     enum classes are not extensible
 558 
 559 compiler.err.enum.no.finalize=\
 560     enums cannot have finalize methods
 561 
 562 compiler.err.enum.cant.be.generic=\
 563     enums cannot be generic
 564 
 565 # 0: file name, 1: string
 566 compiler.err.error.reading.file=\
 567     error reading {0}; {1}
 568 
 569 # 0: type
 570 compiler.err.except.already.caught=\
 571     exception {0} has already been caught
 572 
 573 # 0: type
 574 compiler.err.except.never.thrown.in.try=\
 575     exception {0} is never thrown in body of corresponding try statement
 576 
 577 # 0: symbol
 578 compiler.err.final.parameter.may.not.be.assigned=\
 579     final parameter {0} may not be assigned
 580 
 581 # 0: symbol
 582 compiler.err.try.resource.may.not.be.assigned=\
 583     auto-closeable resource {0} may not be assigned
 584 
 585 # 0: symbol
 586 compiler.err.multicatch.parameter.may.not.be.assigned=\
 587     multi-catch parameter {0} may not be assigned
 588 
 589 # 0: type, 1: type
 590 compiler.err.multicatch.types.must.be.disjoint=\
 591     Alternatives in a multi-catch statement cannot be related by subclassing\n\
 592     Alternative {0} is a subclass of alternative {1}
 593 
 594 compiler.err.finally.without.try=\
 595     ''finally'' without ''try''
 596 
 597 # 0: type, 1: message segment
 598 compiler.err.foreach.not.applicable.to.type=\
 599     for-each not applicable to expression type\n\
 600     required: {1}\n\
 601     found:    {0}
 602 
 603 compiler.err.fp.number.too.large=\
 604     floating-point number too large
 605 
 606 compiler.err.fp.number.too.small=\
 607     floating-point number too small
 608 
 609 compiler.err.generic.array.creation=\
 610     generic array creation
 611 
 612 compiler.err.generic.throwable=\
 613     a generic class may not extend java.lang.Throwable
 614 
 615 # 0: symbol
 616 compiler.err.icls.cant.have.static.decl=\
 617     Illegal static declaration in inner class {0}\n\
 618     modifier \''static\'' is only allowed in constant variable declarations
 619 
 620 # 0: string
 621 compiler.err.illegal.char=\
 622     illegal character: ''{0}''
 623 
 624 # 0: string, 1: string
 625 compiler.err.illegal.char.for.encoding=\
 626     unmappable character (0x{0}) for encoding {1}
 627 
 628 # 0: set of flag, 1: set of flag
 629 compiler.err.illegal.combination.of.modifiers=\
 630     illegal combination of modifiers: {0} and {1}
 631 
 632 compiler.err.illegal.enum.static.ref=\
 633     illegal reference to static field from initializer
 634 
 635 compiler.err.illegal.esc.char=\
 636     illegal escape character
 637 
 638 compiler.err.illegal.forward.ref=\
 639     illegal forward reference
 640 
 641 # 0: symbol, 1: object
 642 compiler.err.not.in.profile=\
 643     {0} is not available in profile ''{1}''
 644 
 645 # 0: symbol
 646 compiler.warn.forward.ref=\
 647     reference to variable ''{0}'' before it has been initialized
 648 
 649 compiler.err.illegal.self.ref=\
 650     self-reference in initializer
 651 
 652 # 0: symbol
 653 compiler.warn.self.ref=\
 654     self-reference in initializer of variable ''{0}''
 655 
 656 # 0: type
 657 compiler.err.illegal.initializer.for.type=\
 658     illegal initializer for {0}
 659 
 660 compiler.err.illegal.line.end.in.char.lit=\
 661     illegal line end in character literal
 662 
 663 compiler.err.illegal.text.block.open=\
 664     illegal text block open delimiter sequence, missing line terminator
 665 
 666 compiler.warn.inconsistent.white.space.indentation=\
 667     inconsistent white space indentation
 668 
 669 compiler.warn.trailing.white.space.will.be.removed=\
 670     trailing white space will be removed
 671 
 672 compiler.err.illegal.nonascii.digit=\
 673     illegal non-ASCII digit
 674 
 675 compiler.err.illegal.underscore=\
 676     illegal underscore
 677 
 678 compiler.err.illegal.dot=\
 679     illegal ''.''
 680 
 681 # 0: symbol
 682 compiler.err.illegal.qual.not.icls=\
 683     illegal qualifier; {0} is not an inner class
 684 
 685 compiler.err.illegal.start.of.expr=\
 686     illegal start of expression
 687 
 688 compiler.err.illegal.start.of.stmt=\
 689     illegal start of statement
 690 
 691 compiler.err.illegal.start.of.type=\
 692     illegal start of type
 693 
 694 compiler.err.illegal.parenthesized.expression=\
 695     illegal parenthesized expression
 696 
 697 compiler.err.illegal.unicode.esc=\
 698     illegal unicode escape
 699 
 700 # 0: symbol
 701 compiler.err.import.requires.canonical=\
 702     import requires canonical name for {0}
 703 
 704 compiler.err.improperly.formed.type.param.missing=\
 705     improperly formed type, some parameters are missing or misplaced
 706 
 707 compiler.err.improperly.formed.type.inner.raw.param=\
 708     improperly formed type, type arguments given on a raw type
 709 
 710 # 0: type, 1: type
 711 compiler.err.incomparable.types=\
 712     incomparable types: {0} and {1}
 713 
 714 # 0: string
 715 compiler.err.int.number.too.large=\
 716     integer number too large
 717 
 718 compiler.err.intf.annotation.members.cant.have.params=\
 719     elements in annotation interface declarations cannot declare formal parameters
 720 
 721 # 0: symbol
 722 compiler.err.intf.annotation.cant.have.type.params=\
 723     annotation interface {0} cannot be generic
 724 
 725 compiler.err.intf.annotation.members.cant.have.type.params=\
 726     elements in annotation interface declarations cannot be generic methods
 727 
 728 # 0: symbol, 1: type
 729 compiler.err.intf.annotation.member.clash=\
 730     annotation interface {1} declares an element with the same name as method {0}
 731 
 732 compiler.err.intf.expected.here=\
 733     interface expected here
 734 
 735 compiler.err.intf.meth.cant.have.body=\
 736     interface abstract methods cannot have body
 737 
 738 compiler.err.invalid.annotation.member.type=\
 739     invalid type for annotation interface element
 740 
 741 compiler.err.invalid.binary.number=\
 742     binary numbers must contain at least one binary digit
 743 
 744 compiler.err.invalid.hex.number=\
 745     hexadecimal numbers must contain at least one hexadecimal digit
 746 
 747 compiler.err.invalid.meth.decl.ret.type.req=\
 748     invalid method declaration; return type required
 749 
 750 compiler.err.varargs.and.old.array.syntax=\
 751     legacy array notation not allowed on variable-arity parameter
 752 
 753 compiler.err.varargs.and.receiver =\
 754     varargs notation not allowed on receiver parameter
 755 
 756 compiler.err.varargs.must.be.last =\
 757     varargs parameter must be the last parameter
 758 
 759 compiler.err.array.and.receiver =\
 760     legacy array notation not allowed on receiver parameter
 761 
 762 compiler.err.wrong.receiver =\
 763     wrong receiver parameter name
 764 
 765 compiler.err.variable.not.allowed=\
 766     variable declaration not allowed here
 767 
 768 # 0: name
 769 compiler.err.label.already.in.use=\
 770     label {0} already in use
 771 
 772 compiler.err.local.enum=\
 773     enum classes must not be local
 774 
 775 compiler.err.cannot.create.array.with.type.arguments=\
 776     cannot create array with type arguments
 777 
 778 compiler.err.cannot.create.array.with.diamond=\
 779     cannot create array with ''<>''
 780 
 781 compiler.err.invalid.module.directive=\
 782   module directive keyword or ''}'' expected
 783 
 784 #
 785 # limits.  We don't give the limits in the diagnostic because we expect
 786 # them to change, yet we want to use the same diagnostic.  These are all
 787 # detected during code generation.
 788 #
 789 compiler.err.limit.code=\
 790     code too large
 791 
 792 compiler.err.limit.code.too.large.for.try.stmt=\
 793     code too large for try statement
 794 
 795 compiler.err.limit.dimensions=\
 796     array type has too many dimensions
 797 
 798 compiler.err.limit.locals=\
 799     too many local variables
 800 
 801 compiler.err.limit.parameters=\
 802     too many parameters
 803 
 804 compiler.err.limit.pool=\
 805     too many constants
 806 
 807 compiler.err.limit.pool.in.class=\
 808     too many constants in class {0}
 809 
 810 compiler.err.limit.stack=\
 811     code requires too much stack
 812 
 813 compiler.err.limit.string=\
 814     constant string too long
 815 
 816 # 0: string
 817 compiler.err.limit.string.overflow=\
 818     UTF8 representation for string \"{0}...\" is too long for the constant pool
 819 
 820 compiler.err.malformed.fp.lit=\
 821     malformed floating-point literal
 822 
 823 compiler.err.method.does.not.override.superclass=\
 824     method does not override or implement a method from a supertype
 825 
 826 compiler.err.static.methods.cannot.be.annotated.with.override=\
 827     static methods cannot be annotated with @Override
 828 
 829 compiler.err.missing.meth.body.or.decl.abstract=\
 830     missing method body, or declare abstract
 831 
 832 compiler.err.missing.ret.stmt=\
 833     missing return statement
 834 
 835 # 0: type
 836 compiler.misc.missing.ret.val=\
 837     missing return value
 838 
 839 compiler.misc.unexpected.ret.val=\
 840     unexpected return value
 841 
 842 # 0: set of flag
 843 compiler.err.mod.not.allowed.here=\
 844     modifier {0} not allowed here
 845 
 846 # 0: name
 847 compiler.err.modifier.not.allowed.here=\
 848     modifier {0} not allowed here
 849 
 850 compiler.err.intf.not.allowed.here=\
 851     interface not allowed here
 852 
 853 # 0: symbol, 1: symbol
 854 compiler.err.name.clash.same.erasure=\
 855     name clash: {0} and {1} have the same erasure
 856 
 857 # 0: name, 1: list of type, 2: symbol, 3: name, 4: list of type, 5: symbol
 858 compiler.err.name.clash.same.erasure.no.override=\
 859     name clash: {0}({1}) in {2} and {3}({4}) in {5} have the same erasure, yet neither overrides the other
 860 
 861 # 0: string, 1: name, 2: name, 3: list of type, 4: symbol, 5: name, 6: list of type, 7: symbol
 862 compiler.err.name.clash.same.erasure.no.override.1=\
 863     name clash: {0} {1} has two methods with the same erasure, yet neither overrides the other\n\
 864     first method:  {2}({3}) in {4}\n\
 865     second method: {5}({6}) in {7}
 866 
 867 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
 868 compiler.err.name.clash.same.erasure.no.hide=\
 869     name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither hides the other
 870 
 871 compiler.err.name.reserved.for.internal.use=\
 872     {0} is reserved for internal use
 873 
 874 compiler.err.native.meth.cant.have.body=\
 875     native methods cannot have a body
 876 
 877 
 878 # 0: message segment
 879 compiler.misc.incompatible.type.in.conditional=\
 880     bad type in conditional expression\n\
 881     {0}
 882 
 883 compiler.misc.conditional.target.cant.be.void=\
 884     target-type for conditional expression cannot be void
 885 
 886 compiler.misc.switch.expression.target.cant.be.void=\
 887     target-type for switch expression cannot be void
 888 
 889 # 0: message segment
 890 compiler.misc.incompatible.type.in.switch.expression=\
 891     bad type in switch expression\n\
 892     {0}
 893 
 894 # 0: message segment
 895 compiler.misc.incompatible.ret.type.in.lambda=\
 896     bad return type in lambda expression\n\
 897     {0}
 898 
 899 compiler.misc.stat.expr.expected=\
 900     lambda body is not compatible with a void functional interface\n\
 901     (consider using a block lambda body, or use a statement expression instead)
 902 
 903 # 0: message segment
 904 compiler.misc.incompatible.ret.type.in.mref=\
 905     bad return type in method reference\n\
 906     {0}
 907 
 908 compiler.err.lambda.body.neither.value.nor.void.compatible=\
 909     lambda body is neither value nor void compatible
 910 
 911 # 0: list of type
 912 compiler.err.incompatible.thrown.types.in.mref=\
 913     incompatible thrown types {0} in functional expression
 914 
 915 compiler.misc.incompatible.arg.types.in.lambda=\
 916     incompatible parameter types in lambda expression
 917 
 918 compiler.misc.incompatible.arg.types.in.mref=\
 919     incompatible parameter types in method reference
 920 
 921 compiler.err.new.not.allowed.in.annotation=\
 922     ''new'' not allowed in an annotation
 923 
 924 # 0: name, 1: type
 925 compiler.err.no.annotation.member=\
 926     no annotation member {0} in {1}
 927 
 928 # 0: symbol
 929 compiler.err.no.encl.instance.of.type.in.scope=\
 930     no enclosing instance of type {0} is in scope
 931 
 932 compiler.err.no.intf.expected.here=\
 933     no interface expected here
 934 
 935 compiler.err.no.match.entry=\
 936     {0} has no match in entry in {1}; required {2}
 937 
 938 # 0: type
 939 compiler.err.not.annotation.type=\
 940     {0} is not an annotation interface
 941 
 942 # 0: symbol, 1: symbol, 2: message segment
 943 compiler.err.not.def.access.package.cant.access=\
 944     {0} is not visible\n\
 945     ({2})
 946 
 947 # 0: symbol, 1: symbol, 2: message segment
 948 compiler.misc.not.def.access.package.cant.access=\
 949     {0} is not visible\n\
 950     ({2})
 951 
 952 # 0: symbol, 1: message segment
 953 compiler.err.package.not.visible=\
 954     package {0} is not visible\n\
 955     ({1})
 956 
 957 # 0: symbol, 1: message segment
 958 compiler.misc.package.not.visible=\
 959     package {0} is not visible\n\
 960     ({1})
 961 
 962 # {0} - current module
 963 # {1} - package in which the invisible class is declared
 964 # {2} - module in which {1} is declared
 965 # 0: symbol, 1: symbol, 2: symbol
 966 compiler.misc.not.def.access.does.not.read=\
 967     package {1} is declared in module {2}, but module {0} does not read it
 968 
 969 # {0} - package in which the invisible class is declared
 970 # {1} - module in which {0} is declared
 971 # 0: symbol, 1: symbol
 972 compiler.misc.not.def.access.does.not.read.from.unnamed=\
 973     package {0} is declared in module {1}, which is not in the module graph
 974 
 975 # {0} - package in which the invisible class is declared
 976 # {1} - current module
 977 # 0: symbol, 1: symbol
 978 compiler.misc.not.def.access.does.not.read.unnamed=\
 979     package {0} is declared in the unnamed module, but module {1} does not read it
 980 
 981 # {0} - package in which the invisible class is declared
 982 # {1} - module in which {0} is declared
 983 # 0: symbol, 1: symbol
 984 compiler.misc.not.def.access.not.exported=\
 985     package {0} is declared in module {1}, which does not export it
 986 
 987 # {0} - package in which the invisible class is declared
 988 # {1} - module in which {0} is declared
 989 # 0: symbol, 1: symbol
 990 compiler.misc.not.def.access.not.exported.from.unnamed=\
 991     package {0} is declared in module {1}, which does not export it
 992 
 993 # {0} - package in which the invisible class is declared
 994 # {1} - module in which {0} is declared
 995 # {2} - current module
 996 # 0: symbol, 1: symbol, 2: symbol
 997 compiler.misc.not.def.access.not.exported.to.module=\
 998     package {0} is declared in module {1}, which does not export it to module {2}
 999 
1000 # {0} - package in which the invisible class is declared
1001 # {1} - module in which {0} is declared
1002 # 0: symbol, 1: symbol
1003 compiler.misc.not.def.access.not.exported.to.module.from.unnamed=\
1004     package {0} is declared in module {1}, which does not export it to the unnamed module
1005 
1006 # 0: symbol, 1: symbol
1007 compiler.err.not.def.access.class.intf.cant.access=\
1008     {1}.{0} is defined in an inaccessible class or interface
1009 
1010 # 0: symbol, 1: symbol
1011 compiler.misc.not.def.access.class.intf.cant.access=\
1012     {1}.{0} is defined in an inaccessible class or interface
1013 
1014 # 0: symbol, 1: symbol, 2: symbol, 3: message segment
1015 compiler.err.not.def.access.class.intf.cant.access.reason=\
1016     {1}.{0} in package {2} is not accessible\n\
1017     ({3})
1018 
1019 # 0: symbol, 1: symbol, 2: symbol, 3: message segment
1020 compiler.misc.not.def.access.class.intf.cant.access.reason=\
1021     {1}.{0} in package {2} is not accessible\n\
1022     ({3})
1023 
1024 # 0: symbol, 1: list of type, 2: type
1025 compiler.misc.cant.access.inner.cls.constr=\
1026     cannot access constructor {0}({1})\n\
1027     an enclosing instance of type {2} is not in scope
1028 
1029 # 0: symbol, 1: symbol
1030 compiler.err.not.def.public.cant.access=\
1031     {0} is not public in {1}; cannot be accessed from outside package
1032 
1033 # 0: symbol, 1: symbol
1034 compiler.err.not.def.public=\
1035     {0} is not public in {1}
1036 
1037 # 0: symbol, 1: symbol
1038 compiler.misc.not.def.public.cant.access=\
1039     {0} is not public in {1}; cannot be accessed from outside package
1040 
1041 # 0: name
1042 compiler.err.not.loop.label=\
1043     not a loop label: {0}
1044 
1045 compiler.err.not.stmt=\
1046     not a statement
1047 
1048 # 0: symbol
1049 compiler.err.not.encl.class=\
1050     not an enclosing class: {0}
1051 
1052 # 0: name, 1: type
1053 compiler.err.operator.cant.be.applied=\
1054     bad operand type {1} for unary operator ''{0}''
1055 
1056 # 0: name, 1: type, 2: type
1057 compiler.err.operator.cant.be.applied.1=\
1058     bad operand types for binary operator ''{0}''\n\
1059     first type:  {1}\n\
1060     second type: {2}
1061 
1062 compiler.err.pkg.annotations.sb.in.package-info.java=\
1063     package annotations should be in file package-info.java
1064 
1065 compiler.err.no.pkg.in.module-info.java=\
1066     package declarations not allowed in file module-info.java
1067 
1068 # 0: symbol
1069 compiler.err.pkg.clashes.with.class.of.same.name=\
1070     package {0} clashes with class of same name
1071 
1072 compiler.err.warnings.and.werror=\
1073     warnings found and -Werror specified
1074 
1075 # Errors related to annotation processing
1076 
1077 # 0: symbol, 1: message segment, 2: string (stack-trace)
1078 compiler.err.proc.cant.access=\
1079     cannot access {0}\n\
1080     {1}\n\
1081     Consult the following stack trace for details.\n\
1082     {2}
1083 
1084 # 0: symbol, 1: message segment
1085 compiler.err.proc.cant.access.1=\
1086     cannot access {0}\n\
1087     {1}
1088 
1089 # 0: string
1090 compiler.err.proc.cant.find.class=\
1091     Could not find class file for ''{0}''.
1092 
1093 # 0: string
1094 compiler.err.proc.cant.load.class=\
1095     Could not load processor class file due to ''{0}''.
1096 
1097 # Print a client-generated error message; assumed to be localized, no translation required
1098 # 0: string
1099 compiler.err.proc.messager=\
1100     {0}
1101 
1102 # 0: string
1103 compiler.misc.exception.message=\
1104     {0}
1105 
1106 compiler.misc.user.selected.completion.failure=\
1107     user-selected completion failure by class name
1108 
1109 # 0: collection of string
1110 compiler.err.proc.no.explicit.annotation.processing.requested=\
1111     Class names, ''{0}'', are only accepted if annotation processing is explicitly requested
1112 
1113 compiler.err.proc.no.service=\
1114     A ServiceLoader was not usable and is required for annotation processing.
1115 
1116 # 0: string, 1: string
1117 compiler.err.proc.processor.bad.option.name=\
1118     Bad option name ''{0}'' provided by processor ''{1}''
1119 
1120 # 0: string
1121 compiler.err.proc.processor.cant.instantiate=\
1122     Could not instantiate an instance of processor ''{0}''
1123 
1124 # 0: string
1125 compiler.err.proc.processor.not.found=\
1126     Annotation processor ''{0}'' not found
1127 
1128 # 0: string
1129 compiler.err.proc.processor.wrong.type=\
1130     Annotation processor ''{0}'' does not implement javax.annotation.processing.Processor
1131 
1132 compiler.err.proc.service.problem=\
1133     Error creating a service loader to load Processors.
1134 
1135 # 0: string
1136 compiler.err.proc.bad.config.file=\
1137     Bad service configuration file, or exception thrown while constructing Processor object: {0}
1138 
1139 compiler.err.proc.cant.create.loader=\
1140     Could not create class loader for annotation processors: {0}
1141 
1142 # 0: symbol
1143 compiler.err.qualified.new.of.static.class=\
1144     qualified new of static class
1145 
1146 compiler.err.recursive.ctor.invocation=\
1147     recursive constructor invocation
1148 
1149 # 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
1150 compiler.err.ref.ambiguous=\
1151     reference to {0} is ambiguous\n\
1152     both {1} {2} in {3} and {4} {5} in {6} match
1153 
1154 # 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
1155 compiler.misc.ref.ambiguous=\
1156     reference to {0} is ambiguous\n\
1157     both {1} {2} in {3} and {4} {5} in {6} match
1158 
1159 compiler.err.repeated.annotation.target=\
1160     repeated annotation target
1161 
1162 compiler.err.repeated.interface=\
1163     repeated interface
1164 
1165 compiler.err.repeated.modifier=\
1166     repeated modifier
1167 
1168 # 0: symbol, 1: set of modifier, 2: symbol
1169 compiler.err.report.access=\
1170     {0} has {1} access in {2}
1171 
1172 # 0: symbol, 1: set of modifier, 2: symbol
1173 compiler.misc.report.access=\
1174     {0} has {1} access in {2}
1175 
1176 compiler.err.ret.outside.meth=\
1177     return outside method
1178 
1179 compiler.err.signature.doesnt.match.supertype=\
1180     signature does not match {0}; incompatible supertype
1181 
1182 compiler.err.signature.doesnt.match.intf=\
1183     signature does not match {0}; incompatible interfaces
1184 
1185 # 0: symbol, 1: symbol, 2: symbol
1186 compiler.err.does.not.override.abstract=\
1187     {0} is not abstract and does not override abstract method {1} in {2}
1188 
1189 # 0: file object
1190 compiler.err.source.cant.overwrite.input.file=\
1191     error writing source; cannot overwrite input file {0}
1192 
1193 # 0: symbol
1194 compiler.err.stack.sim.error=\
1195     Internal error: stack sim error on {0}
1196 
1197 compiler.err.static.imp.only.classes.and.interfaces=\
1198     static import only from classes and interfaces
1199 
1200 compiler.err.string.const.req=\
1201     constant string expression required
1202 
1203 compiler.err.pattern.expected=\
1204     type pattern expected
1205 
1206 # 0: symbol, 1: fragment
1207 compiler.err.cannot.generate.class=\
1208     error while generating class {0}\n\
1209     ({1})
1210 
1211 # 0: symbol, 1: symbol
1212 compiler.misc.synthetic.name.conflict=\
1213     the symbol {0} conflicts with a compiler-synthesized symbol in {1}
1214 
1215 # 0: symbol, 1: type
1216 compiler.misc.illegal.signature=\
1217     illegal signature attribute for type {1}
1218 
1219 compiler.err.throws.not.allowed.in.intf.annotation=\
1220     throws clause not allowed in @interface members
1221 
1222 compiler.err.try.without.catch.finally.or.resource.decls=\
1223     ''try'' without ''catch'', ''finally'' or resource declarations
1224 
1225 # 0: symbol
1226 compiler.err.type.doesnt.take.params=\
1227     type {0} does not take parameters
1228 
1229 compiler.err.type.var.cant.be.deref=\
1230     cannot select from a type variable
1231 
1232 compiler.err.type.var.may.not.be.followed.by.other.bounds=\
1233     a type variable may not be followed by other bounds
1234 
1235 compiler.err.type.var.more.than.once=\
1236     type variable {0} occurs more than once in result type of {1}; cannot be left uninstantiated
1237 
1238 compiler.err.type.var.more.than.once.in.result=\
1239     type variable {0} occurs more than once in type of {1}; cannot be left uninstantiated
1240 
1241 # 0: type, 1: type, 2: fragment
1242 compiler.err.types.incompatible=\
1243     types {0} and {1} are incompatible;\n\
1244     {2}
1245 
1246 # 0: name, 1: list of type
1247 compiler.misc.incompatible.diff.ret=\
1248     both define {0}({1}), but with unrelated return types
1249 
1250 # 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
1251 compiler.misc.incompatible.unrelated.defaults=\
1252     {0} {1} inherits unrelated defaults for {2}({3}) from types {4} and {5}
1253 
1254 # 0: kind name, 1: type, 2: name, 3: list of type, 4: symbol, 5: symbol
1255 compiler.misc.incompatible.abstract.default=\
1256     {0} {1} inherits abstract and default for {2}({3}) from types {4} and {5}
1257 
1258 # 0: name, 1: kind name, 2: symbol
1259 compiler.err.default.overrides.object.member=\
1260     default method {0} in {1} {2} overrides a member of java.lang.Object
1261 
1262 # 0: type
1263 compiler.err.illegal.static.intf.meth.call=\
1264     illegal static interface method call\n\
1265     the receiver expression should be replaced with the type qualifier ''{0}''
1266 
1267 # 0: symbol or type, 1: message segment
1268 compiler.err.illegal.default.super.call=\
1269     bad type qualifier {0} in default super call\n\
1270     {1}
1271 
1272 # 0: symbol, 1: type
1273 compiler.misc.overridden.default=\
1274     method {0} is overridden in {1}
1275 
1276 # 0: symbol, 1: type or symbol
1277 compiler.misc.redundant.supertype=\
1278     redundant interface {0} is extended by {1}
1279 
1280 compiler.err.unclosed.char.lit=\
1281     unclosed character literal
1282 
1283 compiler.err.unclosed.comment=\
1284     unclosed comment
1285 
1286 compiler.err.unclosed.str.lit=\
1287     unclosed string literal
1288 
1289 compiler.err.unclosed.text.block=\
1290     unclosed text block
1291 
1292 # 0: string
1293 compiler.err.unsupported.encoding=\
1294     unsupported encoding: {0}
1295 
1296 compiler.err.io.exception=\
1297     error reading source file: {0}
1298 
1299 # 0: name
1300 compiler.err.undef.label=\
1301     undefined label: {0}
1302 
1303 # 0: name
1304 compiler.err.illegal.ref.to.restricted.type=\
1305     illegal reference to restricted type ''{0}''
1306 
1307 # 0: name
1308 compiler.warn.illegal.ref.to.restricted.type=\
1309     illegal reference to restricted type ''{0}''
1310 
1311 # 0: name, 1: source
1312 compiler.err.restricted.type.not.allowed=\
1313     ''{0}'' not allowed here\n\
1314     as of release {1}, ''{0}'' is a restricted type name and cannot be used for type declarations
1315 
1316 # 0: name, 1: source
1317 compiler.warn.restricted.type.not.allowed=\
1318     as of release {1}, ''{0}'' is a restricted type name and cannot be used for type declarations or as the element type of an array
1319 
1320 # 0: name, 1: source
1321 compiler.warn.restricted.type.not.allowed.preview=\
1322     ''{0}'' may become a restricted type name in a future release and may be unusable for type declarations or as the element type of an array
1323 
1324 # 0: name (variable), 1: message segment
1325 compiler.err.cant.infer.local.var.type=\
1326     cannot infer type for local variable {0}\n\
1327     ({1})
1328 
1329 # 0: name
1330 compiler.err.restricted.type.not.allowed.here=\
1331     ''{0}'' is not allowed here
1332 
1333 # 0: name
1334 compiler.err.restricted.type.not.allowed.array=\
1335     ''{0}'' is not allowed as an element type of an array
1336 
1337 # 0: name
1338 compiler.err.restricted.type.not.allowed.compound=\
1339     ''{0}'' is not allowed in a compound declaration
1340 
1341 # 0: fragment
1342 compiler.err.invalid.lambda.parameter.declaration=\
1343     invalid lambda parameter declaration\n\
1344     ({0})
1345 
1346 compiler.misc.implicit.and.explicit.not.allowed=\
1347     cannot mix implicitly-typed and explicitly-typed parameters
1348 
1349 compiler.misc.var.and.explicit.not.allowed=\
1350     cannot mix ''var'' and explicitly-typed parameters
1351 
1352 compiler.misc.var.and.implicit.not.allowed=\
1353     cannot mix ''var'' and implicitly-typed parameters
1354 
1355 compiler.misc.local.cant.infer.null=\
1356     variable initializer is ''null''
1357 
1358 compiler.misc.local.cant.infer.void=\
1359     variable initializer is ''void''
1360 
1361 compiler.misc.local.missing.init=\
1362     cannot use ''var'' on variable without initializer
1363 
1364 compiler.misc.local.lambda.missing.target=\
1365     lambda expression needs an explicit target-type
1366 
1367 compiler.misc.local.mref.missing.target=\
1368     method reference needs an explicit target-type
1369 
1370 compiler.misc.local.array.missing.target=\
1371     array initializer needs an explicit target-type
1372 
1373 compiler.misc.local.self.ref=\
1374     cannot use ''var'' on self-referencing variable
1375 
1376 # 0: message segment, 1: unused
1377 compiler.err.cant.apply.diamond=\
1378     cannot infer type arguments for {0}
1379 
1380 # 0: message segment or type, 1: message segment
1381 compiler.err.cant.apply.diamond.1=\
1382     cannot infer type arguments for {0}\n\
1383     reason: {1}
1384 
1385 # 0: message segment or type, 1: message segment
1386 compiler.misc.cant.apply.diamond.1=\
1387     cannot infer type arguments for {0}\n\
1388     reason: {1}
1389 
1390 compiler.err.unreachable.stmt=\
1391     unreachable statement
1392 
1393 compiler.err.not.exhaustive=\
1394     the switch expression does not cover all possible input values
1395 
1396 compiler.err.not.exhaustive.statement=\
1397     the switch statement does not cover all possible input values
1398 
1399 compiler.err.initializer.must.be.able.to.complete.normally=\
1400     initializer must be able to complete normally
1401 
1402 compiler.err.initializer.not.allowed=\
1403     initializers not allowed in interfaces
1404 
1405 # 0: type
1406 compiler.err.unreported.exception.need.to.catch.or.throw=\
1407     unreported exception {0}; must be caught or declared to be thrown
1408 
1409 # 0: type
1410 compiler.err.unreported.exception.default.constructor=\
1411     unreported exception {0} in default constructor
1412 
1413 # 0: type, 1: name
1414 compiler.err.unreported.exception.implicit.close=\
1415     unreported exception {0}; must be caught or declared to be thrown\n\
1416     exception thrown from implicit call to close() on resource variable ''{1}''
1417 
1418 compiler.err.void.not.allowed.here=\
1419     ''void'' type not allowed here
1420 
1421 # 0: string
1422 compiler.err.wrong.number.type.args=\
1423     wrong number of type arguments; required {0}
1424 
1425 # 0: symbol
1426 compiler.err.var.might.already.be.assigned=\
1427     variable {0} might already have been assigned
1428 
1429 # 0: symbol
1430 compiler.err.var.might.not.have.been.initialized=\
1431     variable {0} might not have been initialized
1432 
1433 # 0: symbol
1434 compiler.err.var.not.initialized.in.default.constructor=\
1435     variable {0} not initialized in the default constructor
1436 
1437 # 0: symbol
1438 compiler.err.var.might.be.assigned.in.loop=\
1439     variable {0} might be assigned in loop
1440 
1441 # 0: symbol, 1: message segment
1442 compiler.err.varargs.invalid.trustme.anno=\
1443     Invalid {0} annotation. {1}
1444 
1445 # 0: type
1446 compiler.misc.varargs.trustme.on.reifiable.varargs=\
1447     Varargs element type {0} is reifiable.
1448 
1449 # 0: type, 1: type
1450 compiler.err.instanceof.reifiable.not.safe=\
1451     {0} cannot be safely cast to {1}
1452 
1453 # 0: type, 1: type
1454 compiler.err.instanceof.pattern.no.subtype=\
1455     expression type {0} is a subtype of pattern type {1}
1456 
1457 # 0: symbol
1458 compiler.misc.varargs.trustme.on.non.varargs.meth=\
1459     Method {0} is not a varargs method.
1460 
1461 # 0: symbol
1462 compiler.misc.varargs.trustme.on.non.varargs.accessor=\
1463     Accessor {0} is not a varargs method.
1464 
1465 # 0: symbol
1466 compiler.misc.varargs.trustme.on.virtual.varargs=\
1467     Instance method {0} is neither final nor private.
1468 
1469 # 0: symbol
1470 compiler.misc.varargs.trustme.on.virtual.varargs.final.only=\
1471     Instance method {0} is not final.
1472 
1473 # 0: type, 1: symbol kind, 2: symbol
1474 compiler.misc.inaccessible.varargs.type=\
1475     formal varargs element type {0} is not accessible from {1} {2}
1476 
1477 # In the following string, {1} will always be the detail message from
1478 # java.io.IOException.
1479 # 0: symbol, 1: string
1480 compiler.err.class.cant.write=\
1481     error while writing {0}: {1}
1482 
1483 # In the following string, {0} is the name of the class in the Java source.
1484 # It really should be used two times..
1485 # 0: kind name, 1: name
1486 compiler.err.class.public.should.be.in.file=\
1487     {0} {1} is public, should be declared in a file named {1}.java
1488 
1489 ## All errors which do not refer to a particular line in the source code are
1490 ## preceded by this string.
1491 compiler.err.error=\
1492     error:\u0020
1493 
1494 # The following error messages do not refer to a line in the source code.
1495 compiler.err.cant.read.file=\
1496     cannot read: {0}
1497 
1498 # 0: string
1499 compiler.err.plugin.not.found=\
1500     plug-in not found: {0}
1501 
1502 # 0: path
1503 compiler.warn.locn.unknown.file.on.module.path=\
1504     unknown file on module path: {0}
1505 
1506 
1507 # 0: path
1508 compiler.err.locn.bad.module-info=\
1509     problem reading module-info.class in {0}
1510 
1511 # 0: path
1512 compiler.err.locn.cant.read.directory=\
1513     cannot read directory {0}
1514 
1515 # 0: path
1516 compiler.err.locn.cant.read.file=\
1517     cannot read file {0}
1518 
1519 # 0: path
1520 compiler.err.locn.cant.get.module.name.for.jar=\
1521     cannot determine module name for {0}
1522 
1523 # 0: path
1524 compiler.err.multi-module.outdir.cannot.be.exploded.module=\
1525     in multi-module mode, the output directory cannot be an exploded module: {0}
1526 
1527 # 0: path
1528 compiler.warn.outdir.is.in.exploded.module=\
1529     the output directory is within an exploded module: {0}
1530 
1531 # 0: file object
1532 compiler.err.locn.module-info.not.allowed.on.patch.path=\
1533     module-info.class not allowed on patch path: {0}
1534 
1535 # 0: string
1536 compiler.err.locn.invalid.arg.for.xpatch=\
1537     invalid argument for --patch-module option: {0}
1538 
1539 compiler.err.file.sb.on.source.or.patch.path.for.module=\
1540     file should be on source path, or on patch path for module
1541 
1542 compiler.err.no.java.lang=\
1543     Unable to find package java.lang in platform classes
1544 
1545 #####
1546 
1547 # Fatal Errors
1548 
1549 # 0: name
1550 compiler.misc.fatal.err.cant.locate.meth=\
1551     Fatal Error: Unable to find method {0}
1552 
1553 # 0: name
1554 compiler.misc.fatal.err.cant.locate.field=\
1555     Fatal Error: Unable to find field {0}
1556 
1557 # 0: type
1558 compiler.misc.fatal.err.cant.locate.ctor=\
1559     Fatal Error: Unable to find constructor for {0}
1560 
1561 compiler.misc.fatal.err.cant.close=\
1562     Fatal Error: Cannot close compiler resources
1563 
1564 #####
1565 
1566 ##
1567 ## miscellaneous strings
1568 ##
1569 
1570 compiler.misc.diamond.anonymous.methods.implicitly.override=\
1571     (due to <>, every non-private method declared in this anonymous class must override or implement a method from a supertype)
1572 
1573 compiler.misc.source.unavailable=\
1574     (source unavailable)
1575 
1576 # 0: string, 1: string, 2: boolean
1577 compiler.misc.x.print.processor.info=\
1578     Processor {0} matches {1} and returns {2}.
1579 
1580 # 0: number, 1: string, 2: set of symbol, 3: boolean
1581 compiler.misc.x.print.rounds=\
1582     Round {0}:\n\tinput files: {1}\n\tannotations: {2}\n\tlast round: {3}
1583 
1584 # 0: file name
1585 compiler.warn.file.from.future=\
1586     Modification date is in the future for file {0}
1587 
1588 #####
1589 
1590 ## The following string will appear before all messages keyed as:
1591 ## "compiler.note".
1592 
1593 compiler.note.compressed.diags=\
1594     Some messages have been simplified; recompile with -Xdiags:verbose to get full output
1595 
1596 # 0: boolean, 1: symbol
1597 compiler.note.lambda.stat=\
1598     Translating lambda expression\n\
1599     alternate metafactory = {0}\n\
1600     synthetic method = {1}
1601 
1602 # 0: boolean, 1: unused
1603 compiler.note.mref.stat=\
1604     Translating method reference\n\
1605     alternate metafactory = {0}\n\
1606 
1607 # 0: boolean, 1: symbol
1608 compiler.note.mref.stat.1=\
1609     Translating method reference\n\
1610     alternate metafactory = {0}\n\
1611     bridge method = {1}
1612 
1613 compiler.note.note=\
1614     Note:\u0020
1615 
1616 # 0: file name
1617 compiler.note.deprecated.filename=\
1618     {0} uses or overrides a deprecated API.
1619 
1620 compiler.note.deprecated.plural=\
1621     Some input files use or override a deprecated API.
1622 
1623 # The following string may appear after one of the above deprecation
1624 # messages.
1625 compiler.note.deprecated.recompile=\
1626     Recompile with -Xlint:deprecation for details.
1627 
1628 # 0: file name
1629 compiler.note.deprecated.filename.additional=\
1630     {0} has additional uses or overrides of a deprecated API.
1631 
1632 compiler.note.deprecated.plural.additional=\
1633     Some input files additionally use or override a deprecated API.
1634 
1635 # 0: file name
1636 compiler.note.removal.filename=\
1637     {0} uses or overrides a deprecated API that is marked for removal.
1638 
1639 compiler.note.removal.plural=\
1640     Some input files use or override a deprecated API that is marked for removal.
1641 
1642 # The following string may appear after one of the above removal messages.
1643 compiler.note.removal.recompile=\
1644     Recompile with -Xlint:removal for details.
1645 
1646 # 0: file name
1647 compiler.note.removal.filename.additional=\
1648     {0} has additional uses or overrides of a deprecated API that is marked for removal.
1649 
1650 compiler.note.removal.plural.additional=\
1651     Some input files additionally use or override a deprecated API that is marked for removal.
1652 
1653 # 0: file name
1654 compiler.note.unchecked.filename=\
1655     {0} uses unchecked or unsafe operations.
1656 
1657 compiler.note.unchecked.plural=\
1658     Some input files use unchecked or unsafe operations.
1659 
1660 # The following string may appear after one of the above unchecked messages.
1661 compiler.note.unchecked.recompile=\
1662     Recompile with -Xlint:unchecked for details.
1663 
1664 # 0: file name
1665 compiler.note.unchecked.filename.additional=\
1666     {0} has additional unchecked or unsafe operations.
1667 
1668 compiler.note.unchecked.plural.additional=\
1669     Some input files additionally use unchecked or unsafe operations.
1670 
1671 # 0: file name, 1: source
1672 compiler.note.preview.filename=\
1673     {0} uses preview features of Java SE {1}.
1674 
1675 # 0: source
1676 compiler.note.preview.plural=\
1677     Some input files use preview features of Java SE {0}.
1678 
1679 # The following string may appear after one of the above deprecation
1680 # messages.
1681 compiler.note.preview.recompile=\
1682     Recompile with -Xlint:preview for details.
1683 
1684 # 0: file name, 1: source
1685 compiler.note.preview.filename.additional=\
1686     {0} has additional uses of preview features of Java SE {1}.
1687 
1688 # 0: source
1689 compiler.note.preview.plural.additional=\
1690     Some input files additionally use preview features of Java SE {0}.
1691 
1692 # Notes related to annotation processing
1693 
1694 # Print a client-generated note; assumed to be localized, no translation required
1695 # 0: string
1696 compiler.note.proc.messager=\
1697     {0}
1698 
1699 # 0: string, 1: string, 2: string
1700 compiler.note.multiple.elements=\
1701     Multiple elements named ''{1}'' in modules ''{2}'' were found by javax.lang.model.util.Elements.{0}.
1702 
1703 #####
1704 
1705 # 0: number
1706 compiler.misc.count.error=\
1707     {0} error
1708 
1709 # 0: number
1710 compiler.misc.count.error.plural=\
1711     {0} errors
1712 
1713 # 0: number, 1: number
1714 compiler.misc.count.error.recompile=\
1715     only showing the first {0} errors, of {1} total; use -Xmaxerrs if you would like to see more
1716 
1717 # 0: number, 1: number
1718 compiler.misc.count.warn.recompile=\
1719     only showing the first {0} warnings, of {1} total; use -Xmaxwarns if you would like to see more
1720 
1721 # 0: number
1722 compiler.misc.count.warn=\
1723     {0} warning
1724 
1725 # 0: number
1726 compiler.misc.count.warn.plural=\
1727     {0} warnings
1728 
1729 compiler.misc.version.not.available=\
1730     (version info not available)
1731 
1732 ## extra output when using -verbose (JavaCompiler)
1733 
1734 # 0: symbol
1735 compiler.misc.verbose.checking.attribution=\
1736     [checking {0}]
1737 
1738 # 0: string
1739 compiler.misc.verbose.parsing.done=\
1740     [parsing completed {0}ms]
1741 
1742 # 0: file name
1743 compiler.misc.verbose.parsing.started=\
1744     [parsing started {0}]
1745 
1746 # 0: string
1747 compiler.misc.verbose.total=\
1748     [total {0}ms]
1749 
1750 # 0: file name
1751 compiler.misc.verbose.wrote.file=\
1752     [wrote {0}]
1753 
1754 ## extra output when using -verbose (code/ClassReader)
1755 # 0: string
1756 compiler.misc.verbose.loading=\
1757     [loading {0}]
1758 
1759 # 0: string
1760 compiler.misc.verbose.sourcepath=\
1761     [search path for source files: {0}]
1762 
1763 # 0: string
1764 compiler.misc.verbose.classpath=\
1765     [search path for class files: {0}]
1766 
1767 ## extra output when using -prompt (util/Log)
1768 compiler.misc.resume.abort=\
1769     R)esume, A)bort>
1770 
1771 #####
1772 
1773 ##
1774 ## warnings
1775 ##
1776 
1777 ## All warning messages are preceded by the following string.
1778 compiler.warn.warning=\
1779     warning:\u0020
1780 
1781 ## Warning messages may also include the following prefix to identify a
1782 ## lint option
1783 # 0: option name
1784 compiler.warn.lintOption=\
1785     [{0}]\u0020
1786 
1787 # 0: symbol
1788 compiler.warn.constant.SVUID=\
1789     serialVersionUID must be constant in class {0}
1790 
1791 # 0: path
1792 compiler.warn.dir.path.element.not.found=\
1793     bad path element "{0}": no such directory
1794 
1795 # 0: file name
1796 compiler.warn.dir.path.element.not.directory=\
1797     bad path element "{0}": not a directory
1798 
1799 # 0: symbol, 1: symbol, 2: symbol
1800 compiler.warn.missing-explicit-ctor=\
1801     class {0} in exported package {1} declares no explicit constructors, thereby exposing a default constructor to clients of module {2}
1802 
1803 compiler.warn.strictfp=\
1804     as of release 17, all floating-point expressions are evaluated strictly and ''strictfp'' is not required
1805 
1806 compiler.warn.finally.cannot.complete=\
1807     finally clause cannot complete normally
1808 
1809 # 0: name
1810 compiler.warn.poor.choice.for.module.name=\
1811     module name component {0} should avoid terminal digits
1812 
1813 # 0: string
1814 compiler.warn.incubating.modules=\
1815     using incubating module(s): {0}
1816 
1817 # 0: symbol, 1: symbol
1818 compiler.warn.has.been.deprecated=\
1819     {0} in {1} has been deprecated
1820 
1821 # 0: symbol, 1: symbol
1822 compiler.warn.has.been.deprecated.for.removal=\
1823     {0} in {1} has been deprecated and marked for removal
1824 
1825 # 0: symbol
1826 compiler.warn.is.preview=\
1827     {0} is a preview API and may be removed in a future release.
1828 
1829 # 0: symbol
1830 compiler.err.is.preview=\
1831     {0} is a preview API and is disabled by default.\n\
1832     (use --enable-preview to enable preview APIs)
1833 
1834 # 0: symbol
1835 compiler.warn.is.preview.reflective=\
1836     {0} is a reflective preview API and may be removed in a future release.
1837 
1838 # 0: symbol
1839 compiler.warn.has.been.deprecated.module=\
1840     module {0} has been deprecated
1841 
1842 # 0: symbol
1843 compiler.warn.has.been.deprecated.for.removal.module=\
1844     module {0} has been deprecated and marked for removal
1845 
1846 # 0: symbol
1847 compiler.warn.sun.proprietary=\
1848     {0} is internal proprietary API and may be removed in a future release
1849 
1850 compiler.warn.illegal.char.for.encoding=\
1851     unmappable character for encoding {0}
1852 
1853 # 0: symbol
1854 compiler.warn.improper.SVUID=\
1855     serialVersionUID must be declared static final in class {0}
1856 
1857 compiler.warn.improper.SPF=\
1858     serialPersistentFields must be declared private static final to be effective
1859 
1860 compiler.warn.SPF.null.init=\
1861     serialPersistentFields ineffective if initialized to null.\n\
1862     Initialize to an empty array to indicate no fields
1863 
1864 
1865 # 0: type, 1: type
1866 compiler.warn.inexact.non-varargs.call=\
1867     non-varargs call of varargs method with inexact argument type for last parameter;\n\
1868     cast to {0} for a varargs call\n\
1869     cast to {1} for a non-varargs call and to suppress this warning
1870 
1871 # 0: list of type
1872 compiler.warn.unreachable.catch=\
1873     unreachable catch clause\n\
1874     thrown type {0} has already been caught
1875 
1876 # 0: list of type
1877 compiler.warn.unreachable.catch.1=\
1878     unreachable catch clause\n\
1879     thrown types {0} have already been caught
1880 
1881 # 0: symbol
1882 compiler.warn.long.SVUID=\
1883     serialVersionUID must be of type long in class {0}
1884 
1885 compiler.warn.OSF.array.SPF=\
1886     serialPersistentFields must be of type java.io.ObjectStreamField[] to be effective
1887 
1888 # 0: symbol
1889 compiler.warn.missing.SVUID=\
1890     serializable class {0} has no definition of serialVersionUID
1891 
1892 # 0: name
1893 compiler.warn.serializable.missing.access.no.arg.ctor=\
1894     cannot access a no-arg constructor in first non-serializable superclass {0}
1895 
1896 # 0: name
1897 compiler.warn.serial.method.not.private=\
1898     serialization-related method {0} not declared private
1899 
1900 # 0: name
1901 compiler.warn.serial.concrete.instance.method=\
1902     serialization-related method {0} must be a concrete instance method to be effective, neither abstract nor static
1903 
1904 # 0: name
1905 compiler.warn.serial.method.static=\
1906     serialization-related method {0} declared static; must instead be an instance method to be effective
1907 
1908 # 0: name
1909 compiler.warn.serial.method.no.args=\
1910     to be effective serialization-related method {0} must have no parameters
1911 
1912 # 0: name, 1: number
1913 compiler.warn.serial.method.one.arg=\
1914     to be effective serialization-related method {0} must have exactly one parameter rather than {1} parameters
1915 
1916 # 0: name, 1: type, 2: type
1917 compiler.warn.serial.method.parameter.type=\
1918     sole parameter of serialization-related method {0} must have type {1} to be effective rather than type {2}
1919 
1920 # 0: name, 1: type, 2: type
1921 compiler.warn.serial.method.unexpected.return.type=\
1922     serialization-related method {0} declared with a return type of {1} rather than expected type {2}.\n\
1923     As declared, the method will be ineffective for serialization
1924 
1925 # 0: name, 1: type
1926 compiler.warn.serial.method.unexpected.exception=\
1927     serialization-related method {0} declared to throw an unexpected type {1}
1928 
1929 compiler.warn.ineffectual.serial.field.interface=\
1930     serialPersistentFields is not effective in an interface
1931 
1932 # 0: string
1933 compiler.warn.ineffectual.serial.field.enum=\
1934      serialization-related field {0} is not effective in an enum class
1935 
1936 # 0: string
1937 compiler.warn.ineffectual.serial.method.enum=\
1938     serialization-related method {0} is not effective in an enum class
1939 
1940 compiler.warn.ineffectual.serial.field.record=\
1941     serialPersistentFields is not effective in a record class
1942 
1943 # 0: string
1944 compiler.warn.ineffectual.serial.method.record=\
1945     serialization-related method {0} is not effective in a record class
1946 
1947 # 0: name
1948 compiler.warn.ineffectual.serial.method.externalizable=\
1949     serialization-related method {0} is not effective in an Externalizable class
1950 
1951 compiler.warn.ineffectual.serial.field.externalizable=\
1952     serialPersistentFields is not effective in an Externalizable class
1953 
1954 compiler.warn.externalizable.missing.public.no.arg.ctor=\
1955     an Externalizable class needs a public no-arg constructor
1956 
1957 compiler.warn.non.serializable.instance.field=\
1958     non-transient instance field of a serializable class declared with a non-serializable type
1959 
1960 # 0: type
1961 compiler.warn.non.serializable.instance.field.array=\
1962     non-transient instance field of a serializable class declared with an array having a non-serializable base component type {0}
1963 
1964 compiler.warn.non.private.method.weaker.access=\
1965     serialization-related method declared non-private in an interface will prevent\n\
1966     classes implementing the interface from declaring the method as private
1967 
1968 compiler.warn.default.ineffective=\
1969     serialization-related default method from an interface will not be run by serialization for an implementing class
1970 
1971 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
1972 compiler.warn.potentially.ambiguous.overload=\
1973     {0} in {1} is potentially ambiguous with {2} in {3}
1974 
1975 # 0: message segment
1976 compiler.warn.override.varargs.missing=\
1977     {0}; overridden method has no ''...''
1978 
1979 # 0: message segment
1980 compiler.warn.override.varargs.extra=\
1981     {0}; overriding method is missing ''...''
1982 
1983 # 0: message segment
1984 compiler.warn.override.bridge=\
1985     {0}; overridden method is a bridge method
1986 
1987 # 0: symbol
1988 compiler.warn.pkg-info.already.seen=\
1989     a package-info.java file has already been seen for package {0}
1990 
1991 # 0: path
1992 compiler.warn.path.element.not.found=\
1993     bad path element "{0}": no such file or directory
1994 
1995 compiler.warn.possible.fall-through.into.case=\
1996     possible fall-through into case
1997 
1998 # 0: type
1999 compiler.warn.redundant.cast=\
2000     redundant cast to {0}
2001 
2002 # 0: number
2003 compiler.warn.position.overflow=\
2004     Position encoding overflows at line {0}
2005 
2006 # 0: file name, 1: number, 2: number
2007 compiler.warn.big.major.version=\
2008     {0}: major version {1} is newer than {2}, the highest major version supported by this compiler.\n\
2009     It is recommended that the compiler be upgraded.
2010 
2011 # 0: kind name, 1: symbol
2012 compiler.warn.static.not.qualified.by.type=\
2013     static {0} should be qualified by type name, {1}, instead of by an expression
2014 
2015 # 0: kind name
2016 compiler.warn.static.not.qualified.by.type2=\
2017     static {0} should not be used as a member of an anonymous class
2018 
2019 # 0: string
2020 compiler.warn.source.no.bootclasspath=\
2021     bootstrap class path not set in conjunction with -source {0}
2022 
2023 # 0: string
2024 compiler.warn.source.no.system.modules.path=\
2025     system modules path not set in conjunction with -source {0}
2026 
2027 # 0: string
2028 compiler.warn.option.obsolete.source=\
2029     source value {0} is obsolete and will be removed in a future release
2030 
2031 # 0: target
2032 compiler.warn.option.obsolete.target=\
2033     target value {0} is obsolete and will be removed in a future release
2034 
2035 # 0: string, 1: string
2036 compiler.err.option.removed.source=\
2037     Source option {0} is no longer supported. Use {1} or later.
2038 
2039 # 0: target, 1: target
2040 compiler.err.option.removed.target=\
2041     Target option {0} is no longer supported. Use {1} or later.
2042 
2043 compiler.warn.option.obsolete.suppression=\
2044     To suppress warnings about obsolete options, use -Xlint:-options.
2045 
2046 # 0: name, 1: number, 2: number, 3: number, 4: number
2047 compiler.warn.future.attr=\
2048     {0} attribute introduced in version {1}.{2} class files is ignored in version {3}.{4} class files
2049 
2050 compiler.warn.requires.automatic=\
2051     requires directive for an automatic module
2052 
2053 compiler.warn.requires.transitive.automatic=\
2054     requires transitive directive for an automatic module
2055 
2056 # Warnings related to annotation processing
2057 # 0: string
2058 compiler.warn.proc.package.does.not.exist=\
2059     package {0} does not exist
2060 
2061 # 0: string
2062 compiler.warn.proc.file.reopening=\
2063     Attempt to create a file for ''{0}'' multiple times
2064 
2065 # 0: string
2066 compiler.warn.proc.type.already.exists=\
2067     A file for type ''{0}'' already exists on the sourcepath or classpath
2068 
2069 # 0: string
2070 compiler.warn.proc.type.recreate=\
2071     Attempt to create a file for type ''{0}'' multiple times
2072 
2073 # 0: string
2074 compiler.warn.proc.illegal.file.name=\
2075     Cannot create file for illegal name ''{0}''.
2076 
2077 # 0: string, 1: string
2078 compiler.warn.proc.suspicious.class.name=\
2079     Creating file for a type whose name ends in {1}: ''{0}''
2080 
2081 # 0: string
2082 compiler.warn.proc.file.create.last.round=\
2083     File for type ''{0}'' created in the last round will not be subject to annotation processing.
2084 
2085 # 0: string, 1: string
2086 compiler.warn.proc.malformed.supported.string=\
2087     Malformed string ''{0}'' for a supported annotation interface returned by processor ''{1}''
2088 
2089 # 0: set of string
2090 compiler.warn.proc.annotations.without.processors=\
2091     No processor claimed any of these annotations: {0}
2092 
2093 # 0: source version, 1: string, 2: string
2094 compiler.warn.proc.processor.incompatible.source.version=\
2095     Supported source version ''{0}'' from annotation processor ''{1}'' less than -source ''{2}''
2096 
2097 # 0: string, 1: string
2098 compiler.warn.proc.duplicate.option.name=\
2099     Duplicate supported option ''{0}'' returned by annotation processor ''{1}''
2100 
2101 # 0: string, 1: string
2102 compiler.warn.proc.duplicate.supported.annotation=\
2103     Duplicate supported annotation interface ''{0}'' returned by annotation processor ''{1}''
2104 
2105 # 0: string
2106 compiler.warn.proc.redundant.types.with.wildcard=\
2107     Annotation processor ''{0}'' redundantly supports both ''*'' and other annotation interfaces
2108 
2109 compiler.warn.proc.proc-only.requested.no.procs=\
2110     Annotation processing without compilation requested but no processors were found.
2111 
2112 compiler.warn.proc.use.implicit=\
2113     Implicitly compiled files were not subject to annotation processing.\n\
2114     Use -implicit to specify a policy for implicit compilation.
2115 
2116 compiler.warn.proc.use.proc.or.implicit=\
2117     Implicitly compiled files were not subject to annotation processing.\n\
2118     Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
2119 
2120 # Print a client-generated warning; assumed to be localized, no translation required
2121 # 0: string
2122 compiler.warn.proc.messager=\
2123     {0}
2124 
2125 # 0: set of string
2126 compiler.warn.proc.unclosed.type.files=\
2127     Unclosed files for the types ''{0}''; these types will not undergo annotation processing
2128 
2129 # 0: string
2130 compiler.warn.proc.unmatched.processor.options=\
2131     The following options were not recognized by any processor: ''{0}''
2132 
2133 compiler.warn.try.explicit.close.call=\
2134     explicit call to close() on an auto-closeable resource
2135 
2136 # 0: symbol
2137 compiler.warn.try.resource.not.referenced=\
2138     auto-closeable resource {0} is never referenced in body of corresponding try statement
2139 
2140 # 0: type
2141 compiler.warn.try.resource.throws.interrupted.exc=\
2142     auto-closeable resource {0} has a member method close() that could throw InterruptedException
2143 
2144 compiler.warn.unchecked.assign=\
2145     unchecked assignment: {0} to {1}
2146 
2147 # 0: symbol, 1: type
2148 compiler.warn.unchecked.assign.to.var=\
2149     unchecked assignment to variable {0} as member of raw type {1}
2150 
2151 # 0: symbol, 1: type
2152 compiler.warn.unchecked.call.mbr.of.raw.type=\
2153     unchecked call to {0} as a member of the raw type {1}
2154 
2155 compiler.warn.unchecked.cast.to.type=\
2156     unchecked cast to type {0}
2157 
2158 # 0: kind name, 1: name, 2: object, 3: object, 4: kind name, 5: symbol
2159 compiler.warn.unchecked.meth.invocation.applied=\
2160     unchecked method invocation: {0} {1} in {4} {5} is applied to given types\n\
2161     required: {2}\n\
2162     found:    {3}
2163 
2164 # 0: type
2165 compiler.warn.unchecked.generic.array.creation=\
2166     unchecked generic array creation for varargs parameter of type {0}
2167 
2168 # 0: type
2169 compiler.warn.unchecked.varargs.non.reifiable.type=\
2170     Possible heap pollution from parameterized vararg type {0}
2171 
2172 # 0: symbol
2173 compiler.warn.varargs.unsafe.use.varargs.param=\
2174     Varargs method could cause heap pollution from non-reifiable varargs parameter {0}
2175 
2176 compiler.warn.missing.deprecated.annotation=\
2177     deprecated item is not annotated with @Deprecated
2178 
2179 # 0: kind name
2180 compiler.warn.deprecated.annotation.has.no.effect=\
2181     @Deprecated annotation has no effect on this {0} declaration
2182 
2183 # 0: string
2184 compiler.warn.invalid.path=\
2185     Invalid filename: {0}
2186 
2187 compiler.warn.doclint.not.available=\
2188     No service provider for doclint is available
2189 
2190 # 0: string
2191 compiler.err.invalid.path=\
2192     Invalid filename: {0}
2193 
2194 
2195 # 0: path
2196 compiler.warn.invalid.archive.file=\
2197     Unexpected file on path: {0}
2198 
2199 # 0: path
2200 compiler.warn.unexpected.archive.file=\
2201     Unexpected extension for archive file: {0}
2202 
2203 # 0: path
2204 compiler.err.no.zipfs.for.archive=\
2205     No file system provider is available to handle this file: {0}
2206 
2207 compiler.warn.div.zero=\
2208     division by zero
2209 
2210 compiler.warn.empty.if=\
2211     empty statement after if
2212 
2213 # 0: type, 1: name
2214 compiler.warn.annotation.method.not.found=\
2215     Cannot find annotation method ''{1}()'' in type ''{0}''
2216 
2217 # 0: type, 1: name, 2: message segment
2218 compiler.warn.annotation.method.not.found.reason=\
2219     Cannot find annotation method ''{1}()'' in type ''{0}'': {2}
2220 
2221 # 0: file object, 1: symbol, 2: name
2222 compiler.warn.unknown.enum.constant=\
2223     unknown enum constant {1}.{2}
2224 
2225 # 0: file object, 1: symbol, 2: name, 3: message segment
2226 compiler.warn.unknown.enum.constant.reason=\
2227     unknown enum constant {1}.{2}\n\
2228     reason: {3}
2229 
2230 # 0: type, 1: type
2231 compiler.warn.raw.class.use=\
2232     found raw type: {0}\n\
2233     missing type arguments for generic class {1}
2234 
2235 compiler.warn.diamond.redundant.args=\
2236     Redundant type arguments in new expression (use diamond operator instead).
2237 
2238 compiler.warn.local.redundant.type=\
2239     Redundant type for local variable (replace explicit type with ''var'').
2240 
2241 compiler.warn.potential.lambda.found=\
2242     This anonymous inner class creation can be turned into a lambda expression.
2243 
2244 compiler.warn.method.redundant.typeargs=\
2245     Redundant type arguments in method call.
2246 
2247 # 0: symbol, 1: message segment
2248 compiler.warn.varargs.redundant.trustme.anno=\
2249     Redundant {0} annotation. {1}
2250 
2251 # 0: symbol
2252 compiler.warn.access.to.member.from.serializable.element=\
2253     access to member {0} from serializable element can be publicly accessible to untrusted code
2254 
2255 # 0: symbol
2256 compiler.warn.access.to.member.from.serializable.lambda=\
2257     access to member {0} from serializable lambda can be publicly accessible to untrusted code
2258 
2259 #####
2260 
2261 ## The following are tokens which are non-terminals in the language. They should
2262 ## be named as JLS3 calls them when translated to the appropriate language.
2263 compiler.misc.token.identifier=\
2264     <identifier>
2265 
2266 compiler.misc.token.character=\
2267     <character>
2268 
2269 compiler.misc.token.string=\
2270     <string>
2271 
2272 compiler.misc.token.integer=\
2273     <integer>
2274 
2275 compiler.misc.token.long-integer=\
2276     <long integer>
2277 
2278 compiler.misc.token.float=\
2279     <float>
2280 
2281 compiler.misc.token.double=\
2282     <double>
2283 
2284 compiler.misc.token.bad-symbol=\
2285     <bad symbol>
2286 
2287 compiler.misc.token.end-of-input=\
2288     <end of input>
2289 
2290 ## The argument to the following string will always be one of the following:
2291 ## 1. one of the above non-terminals
2292 ## 2. a keyword (JLS1.8)
2293 ## 3. a boolean literal (JLS3.10.3)
2294 ## 4. the null literal (JLS3.10.7)
2295 ## 5. a Java separator (JLS3.11)
2296 ## 6. an operator (JLS3.12)
2297 ##
2298 ## This is the only place these tokens will be used.
2299 # 0: token
2300 compiler.err.expected=\
2301     {0} expected
2302 
2303 # 0: string
2304 compiler.err.expected.str=\
2305     {0} expected
2306 
2307 # 0: token, 1: token
2308 compiler.err.expected2=\
2309     {0} or {1} expected
2310 
2311 # 0: token, 1: token, 2: token
2312 compiler.err.expected3=\
2313     {0}, {1}, or {2} expected
2314 
2315 # 0: token, 1: token, 2: token, 3: string
2316 compiler.err.expected4=\
2317     {0}, {1}, {2}, or {3} expected
2318 
2319 compiler.err.premature.eof=\
2320     reached end of file while parsing
2321 
2322 compiler.err.enum.constant.expected=\
2323     enum constant expected here
2324 
2325 compiler.err.enum.constant.not.expected=\
2326     enum constant not expected here
2327 
2328 ## The following are related in form, but do not easily fit the above paradigm.
2329 compiler.err.expected.module.or.open=\
2330     ''module'' or ''open'' expected
2331 
2332 compiler.err.dot.class.expected=\
2333     ''.class'' expected
2334 
2335 ## The argument to this string will always be either 'case' or 'default'.
2336 # 0: token
2337 compiler.err.orphaned=\
2338     orphaned {0}
2339 
2340 # 0: name
2341 compiler.misc.anonymous.class=\
2342     <anonymous {0}>
2343 
2344 # 0: name, 1: type
2345 compiler.misc.type.captureof=\
2346     capture#{0} of {1}
2347 
2348 compiler.misc.type.captureof.1=\
2349     capture#{0}
2350 
2351 compiler.misc.type.none=\
2352     <none>
2353 
2354 compiler.misc.unnamed.package=\
2355     unnamed package
2356 
2357 compiler.misc.unnamed.module=\
2358     unnamed module
2359 
2360 #####
2361 
2362 # 0: symbol, 1: message segment
2363 compiler.err.cant.access=\
2364     cannot access {0}\n\
2365     {1}
2366 
2367 # 0: name
2368 compiler.misc.bad.class.file=\
2369     class file is invalid for class {0}
2370 
2371 # 0: file name, 1: string (expected constant pool entry type), 2: number (constant pool index)
2372 compiler.misc.bad.const.pool.entry=\
2373     bad constant pool entry in {0}\n\
2374     expected {1} at index {2}
2375 
2376 # 0: file name, 1: number (constant pool index), 2: number (constant pool size)
2377 compiler.misc.bad.const.pool.index=\
2378     bad constant pool index in {0}\n\
2379     index {1} is not within pool size {2}.
2380 
2381 # 0: file name, 1: message segment
2382 compiler.misc.bad.class.file.header=\
2383     bad class file: {0}\n\
2384     {1}\n\
2385     Please remove or make sure it appears in the correct subdirectory of the classpath.
2386 
2387 # 0: file name, 1: message segment
2388 compiler.misc.bad.source.file.header=\
2389     bad source file: {0}\n\
2390     {1}\n\
2391     Please remove or make sure it appears in the correct subdirectory of the sourcepath.
2392 
2393 ## The following are all possible strings for the second argument ({1}) of the
2394 ## above strings.
2395 compiler.misc.bad.class.signature=\
2396     bad class signature: {0}
2397 
2398 #0: symbol, 1: symbol
2399 compiler.misc.bad.enclosing.class=\
2400     bad enclosing class for {0}: {1}
2401 
2402 # 0: symbol
2403 compiler.misc.bad.enclosing.method=\
2404     bad enclosing method attribute for class {0}
2405 
2406 compiler.misc.bad.runtime.invisible.param.annotations=\
2407     bad RuntimeInvisibleParameterAnnotations attribute: {0}
2408 
2409 compiler.misc.bad.const.pool.tag=\
2410     bad constant pool tag: {0}
2411 
2412 compiler.misc.bad.const.pool.tag.at=\
2413     bad constant pool tag: {0} at {1}
2414 
2415 compiler.misc.unexpected.const.pool.tag.at=\
2416     unexpected constant pool tag: {0} at {1}
2417 
2418 compiler.misc.bad.signature=\
2419     bad signature: {0}
2420 
2421 compiler.misc.bad.type.annotation.value=\
2422     bad type annotation target type value: {0}
2423 
2424 compiler.misc.bad.module-info.name=\
2425     bad class name
2426 
2427 compiler.misc.class.file.wrong.class=\
2428     class file contains wrong class: {0}
2429 
2430 compiler.misc.module.info.invalid.super.class=\
2431     module-info with invalid super class
2432 
2433 # 0: name
2434 compiler.misc.class.file.not.found=\
2435     class file for {0} not found
2436 
2437 # 0: string (constant value), 1: symbol (constant field), 2: type (field type)
2438 compiler.misc.bad.constant.range=\
2439     constant value ''{0}'' for {1} is outside the expected range for {2}
2440 
2441 # 0: string (constant value), 1: symbol (constant field), 2: string (expected class)
2442 compiler.misc.bad.constant.value=\
2443     bad constant value ''{0}'' for {1}, expected {2}
2444 
2445 # 0: type (field type)
2446 compiler.misc.bad.constant.value.type=\
2447     variable of type ''{0}'' cannot have a constant value, but has one specified
2448 
2449 # 0: string (classfile major version), 1: string (classfile minor version)
2450 compiler.misc.invalid.default.interface=\
2451     default method found in version {0}.{1} classfile
2452 
2453 # 0: string (classfile major version), 1: string (classfile minor version)
2454 compiler.misc.invalid.static.interface=\
2455     static method found in version {0}.{1} classfile
2456 
2457 # 0: string (classfile major version), 1: string (classfile minor version)
2458 compiler.misc.anachronistic.module.info=\
2459     module declaration found in version {0}.{1} classfile
2460 
2461 compiler.misc.module.info.definition.expected=\
2462     module-info definition expected
2463 
2464 # 0: name
2465 compiler.misc.file.doesnt.contain.class=\
2466     file does not contain class {0}
2467 
2468 # 0: symbol
2469 compiler.misc.file.does.not.contain.package=\
2470     file does not contain package {0}
2471 
2472 compiler.misc.file.does.not.contain.module=\
2473     file does not contain module declaration
2474 
2475 compiler.misc.illegal.start.of.class.file=\
2476     illegal start of class file
2477 
2478 # 0: name
2479 compiler.misc.method.descriptor.invalid=\
2480     method descriptor invalid for {0}
2481 
2482 compiler.misc.unable.to.access.file=\
2483     unable to access file: {0}
2484 
2485 compiler.misc.unicode.str.not.supported=\
2486     unicode string in class file not supported
2487 
2488 compiler.misc.undecl.type.var=\
2489     undeclared type variable: {0}
2490 
2491 compiler.misc.malformed.vararg.method=\
2492     class file contains malformed variable arity method: {0}
2493 
2494 compiler.misc.wrong.version=\
2495     class file has wrong version {0}.{1}, should be {2}.{3}
2496 
2497 #####
2498 
2499 # 0: type, 1: type or symbol
2500 compiler.err.not.within.bounds=\
2501     type argument {0} is not within bounds of type-variable {1}
2502 
2503 ## The following are all possible strings for the second argument ({1}) of the
2504 ## above string.
2505 
2506 ## none yet...
2507 
2508 #####
2509 
2510 # 0: message segment
2511 compiler.err.prob.found.req=\
2512     incompatible types: {0}
2513 
2514 # 0: message segment
2515 compiler.misc.prob.found.req=\
2516     incompatible types: {0}
2517 
2518 # 0: message segment, 1: type, 2: type
2519 compiler.warn.prob.found.req=\
2520     {0}\n\
2521     required: {2}\n\
2522     found:    {1}
2523 
2524 # 0: type, 1: type
2525 compiler.misc.inconvertible.types=\
2526     {0} cannot be converted to {1}
2527 
2528 # 0: type, 1: type
2529 compiler.misc.not.applicable.types=\
2530     pattern of type {1} is not applicable at {0}
2531 
2532 # 0: type, 1: type
2533 compiler.misc.possible.loss.of.precision=\
2534     possible lossy conversion from {0} to {1}
2535 
2536 # 0: type, 1: type
2537 compiler.warn.possible.loss.of.precision=\
2538     implicit cast from {0} to {1} in compound assignment is possibly lossy
2539 
2540 compiler.misc.unchecked.assign=\
2541     unchecked conversion
2542 
2543 # compiler.misc.storecheck=\
2544 #     assignment might cause later store checks to fail
2545 # compiler.misc.unchecked=\
2546 #     assigned array cannot dynamically check its stores
2547 compiler.misc.unchecked.cast.to.type=\
2548     unchecked cast
2549 
2550 # compiler.err.star.expected=\
2551 #     ''*'' expected
2552 # compiler.err.no.elem.type=\
2553 #     \[\*\] cannot have a type
2554 
2555 # 0: message segment
2556 compiler.misc.try.not.applicable.to.type=\
2557     try-with-resources not applicable to variable type\n\
2558     ({0})
2559 
2560 #####
2561 
2562 # 0: object, 1: message segment
2563 compiler.err.type.found.req=\
2564     unexpected type\n\
2565     required: {1}\n\
2566     found:    {0}
2567 
2568 ## The following are all possible strings for the first argument ({0}) of the
2569 ## above string.
2570 compiler.misc.type.req.class=\
2571     class
2572 
2573 compiler.misc.type.req.class.array=\
2574     class or array
2575 
2576 compiler.misc.type.req.array.or.iterable=\
2577     array or java.lang.Iterable
2578 
2579 compiler.misc.type.req.ref=\
2580     reference
2581 
2582 compiler.misc.type.req.exact=\
2583     class or interface without bounds
2584 
2585 compiler.misc.type.req.identity=\
2586     a type with identity
2587 
2588 # 0: type
2589 compiler.misc.type.parameter=\
2590     type parameter {0}
2591 
2592 #####
2593 
2594 ## The following are all possible strings for the last argument of all those
2595 ## diagnostics whose key ends in ".1"
2596 
2597 # 0: type, 1: list of type
2598 compiler.misc.no.unique.maximal.instance.exists=\
2599     no unique maximal instance exists for type variable {0} with upper bounds {1}
2600 
2601 # 0: type, 1: list of type
2602 compiler.misc.no.unique.minimal.instance.exists=\
2603     no unique minimal instance exists for type variable {0} with lower bounds {1}
2604 
2605 # 0: type, 1: list of type
2606 compiler.misc.incompatible.upper.bounds=\
2607     inference variable {0} has incompatible upper bounds {1}
2608 
2609 # 0: type, 1: list of type
2610 compiler.misc.incompatible.eq.bounds=\
2611     inference variable {0} has incompatible equality constraints {1}
2612 
2613 # 0: type, 1: fragment, 2: fragment
2614 compiler.misc.incompatible.bounds=\
2615     inference variable {0} has incompatible bounds\n\
2616     {1}\n\
2617     {2}
2618 
2619 # 0: list of type
2620 compiler.misc.lower.bounds=\
2621         lower bounds: {0}
2622 
2623 # 0: list of type
2624 compiler.misc.eq.bounds=\
2625         equality constraints: {0}
2626 
2627 # 0: list of type
2628 compiler.misc.upper.bounds=\
2629         upper bounds: {0}
2630 
2631 # 0: list of type, 1: type, 2: type
2632 compiler.misc.infer.no.conforming.instance.exists=\
2633     no instance(s) of type variable(s) {0} exist so that {1} conforms to {2}
2634 
2635 # 0: list of type, 1: message segment
2636 compiler.misc.infer.no.conforming.assignment.exists=\
2637     cannot infer type-variable(s) {0}\n\
2638     (argument mismatch; {1})
2639 
2640 # 0: list of type
2641 compiler.misc.infer.arg.length.mismatch=\
2642     cannot infer type-variable(s) {0}\n\
2643     (actual and formal argument lists differ in length)
2644 
2645 # 0: list of type, 1: message segment
2646 compiler.misc.infer.varargs.argument.mismatch=\
2647     cannot infer type-variable(s) {0}\n\
2648     (varargs mismatch; {1})
2649 
2650 # 0: type, 1: list of type
2651 compiler.misc.inferred.do.not.conform.to.upper.bounds=\
2652     inferred type does not conform to upper bound(s)\n\
2653     inferred: {0}\n\
2654     upper bound(s): {1}
2655 
2656 # 0: type, 1: list of type
2657 compiler.misc.inferred.do.not.conform.to.lower.bounds=\
2658     inferred type does not conform to lower bound(s)\n\
2659     inferred: {0}\n\
2660     lower bound(s): {1}
2661 
2662 # 0: type, 1: list of type
2663 compiler.misc.inferred.do.not.conform.to.eq.bounds=\
2664     inferred type does not conform to equality constraint(s)\n\
2665     inferred: {0}\n\
2666     equality constraints(s): {1}
2667 
2668 # 0: symbol
2669 compiler.misc.diamond=\
2670     {0}<>
2671 
2672 # 0: type
2673 compiler.misc.diamond.non.generic=\
2674     cannot use ''<>'' with non-generic class {0}
2675 
2676 # 0: list of type, 1: message segment
2677 compiler.misc.diamond.invalid.arg=\
2678     type argument {0} inferred for {1} is not allowed in this context\n\
2679     inferred argument is not expressible in the Signature attribute
2680 
2681 # 0: list of type, 1: message segment
2682 compiler.misc.diamond.invalid.args=\
2683     type arguments {0} inferred for {1} are not allowed in this context\n\
2684     inferred arguments are not expressible in the Signature attribute
2685 
2686 # 0: type
2687 compiler.misc.diamond.and.explicit.params=\
2688     cannot use ''<>'' with explicit type parameters for constructor
2689 
2690 compiler.misc.mref.infer.and.explicit.params=\
2691     cannot use raw constructor reference with explicit type parameters for constructor
2692 
2693 # 0: type, 1: list of type
2694 compiler.misc.explicit.param.do.not.conform.to.bounds=\
2695     explicit type argument {0} does not conform to declared bound(s) {1}
2696 
2697 compiler.misc.arg.length.mismatch=\
2698     actual and formal argument lists differ in length
2699 
2700 # 0: string
2701 compiler.misc.wrong.number.type.args=\
2702     wrong number of type arguments; required {0}
2703 
2704 # 0: message segment
2705 compiler.misc.no.conforming.assignment.exists=\
2706     argument mismatch; {0}
2707 
2708 # 0: message segment
2709 compiler.misc.varargs.argument.mismatch=\
2710     varargs mismatch; {0}
2711 
2712 #####
2713 
2714 # 0: symbol or type, 1: file name
2715 compiler.warn.auxiliary.class.accessed.from.outside.of.its.source.file=\
2716     auxiliary class {0} in {1} should not be accessed from outside its own source file
2717 
2718 ## The first argument ({0}) is a "kindname".
2719 # 0: kind name, 1: symbol, 2: symbol
2720 compiler.err.abstract.cant.be.accessed.directly=\
2721     abstract {0} {1} in {2} cannot be accessed directly
2722 
2723 ## The first argument ({0}) is a "kindname".
2724 # 0: symbol kind, 1: symbol
2725 compiler.err.non-static.cant.be.ref=\
2726     non-static {0} {1} cannot be referenced from a static context
2727 
2728 # 0: symbol kind, 1: symbol
2729 compiler.misc.bad.static.method.in.unbound.lookup=\
2730     unexpected static {0} {1} found in unbound lookup
2731 
2732 # 0: symbol kind, 1: symbol
2733 compiler.misc.bad.instance.method.in.unbound.lookup=\
2734     unexpected instance {0} {1} found in unbound lookup
2735 
2736 # 0: symbol kind, 1: symbol
2737 compiler.misc.bad.static.method.in.bound.lookup=\
2738     unexpected static {0} {1} found in bound lookup
2739 
2740 ## Both arguments ({0}, {1}) are "kindname"s.  {0} is a comma-separated list
2741 ## of kindnames (the list should be identical to that provided in source.
2742 # 0: set of kind name, 1: set of kind name
2743 compiler.err.unexpected.type=\
2744     unexpected type\n\
2745     required: {0}\n\
2746     found:    {1}
2747 
2748 compiler.err.unexpected.lambda=\
2749    lambda expression not expected here
2750 
2751 compiler.err.unexpected.mref=\
2752    method reference not expected here
2753 
2754 ## The first argument {0} is a "kindname" (e.g. 'constructor', 'field', etc.)
2755 ## The second argument {1} is the non-resolved symbol
2756 ## The third argument {2} is a list of type parameters (non-empty if {1} is a method)
2757 ## The fourth argument {3} is a list of argument types (non-empty if {1} is a method)
2758 # 0: kind name, 1: name, 2: unused, 3: unused
2759 compiler.err.cant.resolve=\
2760     cannot find symbol\n\
2761     symbol: {0} {1}
2762 
2763 # 0: kind name, 1: name, 2: unused, 3: list of type
2764 compiler.err.cant.resolve.args=\
2765     cannot find symbol\n\
2766     symbol: {0} {1}({3})
2767 
2768 # 0: kind name, 1: name, 2: unused, 3: list of type
2769 compiler.misc.cant.resolve.args=\
2770     cannot find symbol\n\
2771     symbol: {0} {1}({3})
2772 
2773 # 0: kind name, 1: name, 2: list of type, 3: list of type
2774 compiler.err.cant.resolve.args.params=\
2775     cannot find symbol\n\
2776     symbol: {0} <{2}>{1}({3})
2777 
2778 ## arguments from {0} to {3} have the same meaning as above
2779 ## The fifth argument {4} is a location subdiagnostic (see below)
2780 # 0: kind name, 1: name, 2: unused, 3: unused, 4: message segment
2781 compiler.err.cant.resolve.location=\
2782     cannot find symbol\n\
2783     symbol:   {0} {1}\n\
2784     location: {4}
2785 
2786 # 0: kind name, 1: name, 2: unused, 3: list of type, 4: message segment
2787 compiler.err.cant.resolve.location.args=\
2788     cannot find symbol\n\
2789     symbol:   {0} {1}({3})\n\
2790     location: {4}
2791 
2792 # 0: kind name, 1: name, 2: list of type, 3: list, 4: message segment
2793 compiler.err.cant.resolve.location.args.params=\
2794     cannot find symbol\n\
2795     symbol:   {0} <{2}>{1}({3})\n\
2796     location: {4}
2797 
2798 ### Following are replicated/used for method reference diagnostics
2799 
2800 # 0: kind name, 1: name, 2: unused, 3: list of type, 4: message segment
2801 compiler.misc.cant.resolve.location.args=\
2802     cannot find symbol\n\
2803     symbol:   {0} {1}({3})\n\
2804     location: {4}
2805 
2806 # 0: kind name, 1: name, 2: list of type, 3: list, 4: message segment
2807 compiler.misc.cant.resolve.location.args.params=\
2808     cannot find symbol\n\
2809     symbol:   {0} <{2}>{1}({3})\n\
2810     location: {4}
2811 
2812 ##a location subdiagnostic is composed as follows:
2813 ## The first argument {0} is the location "kindname" (e.g. 'constructor', 'field', etc.)
2814 ## The second argument {1} is the location name
2815 ## The third argument {2} is the location type (only when {1} is a variable name)
2816 
2817 # 0: kind name, 1: type or symbol, 2: unused
2818 compiler.misc.location=\
2819     {0} {1}
2820 
2821 # 0: kind name, 1: symbol, 2: type
2822 compiler.misc.location.1=\
2823     {0} {1} of type {2}
2824 
2825 ## The following are all possible string for "kindname".
2826 ## They should be called whatever the JLS calls them after it been translated
2827 ## to the appropriate language.
2828 # compiler.misc.kindname.constructor=\
2829 #     static member
2830 compiler.misc.kindname.annotation=\
2831     @interface
2832 
2833 compiler.misc.kindname.constructor=\
2834     constructor
2835 
2836 compiler.misc.kindname.enum=\
2837     enum
2838 
2839 compiler.misc.kindname.interface=\
2840     interface
2841 
2842 compiler.misc.kindname.static=\
2843     static
2844 
2845 compiler.misc.kindname.type.variable=\
2846     type variable
2847 
2848 compiler.misc.kindname.type.variable.bound=\
2849     bound of type variable
2850 
2851 compiler.misc.kindname.variable=\
2852     variable
2853 
2854 compiler.misc.kindname.value=\
2855     value
2856 
2857 compiler.misc.kindname.method=\
2858     method
2859 
2860 compiler.misc.kindname.class=\
2861     class
2862 
2863 compiler.misc.kindname.package=\
2864     package
2865 
2866 compiler.misc.kindname.module=\
2867     module
2868 
2869 compiler.misc.kindname.static.init=\
2870     static initializer
2871 
2872 compiler.misc.kindname.instance.init=\
2873     instance initializer
2874 
2875 compiler.misc.kindname.record.component=\
2876     record component
2877 
2878 compiler.misc.kindname.record=\
2879     record
2880 
2881 #####
2882 
2883 compiler.misc.no.args=\
2884     no arguments
2885 
2886 # 0: message segment
2887 compiler.err.override.static=\
2888     {0}\n\
2889     overriding method is static
2890 
2891 # 0: message segment, 1: set of flag
2892 compiler.err.override.meth=\
2893     {0}\n\
2894     overridden method is {1}
2895 
2896 # 0: message segment, 1: type
2897 compiler.err.override.meth.doesnt.throw=\
2898     {0}\n\
2899     overridden method does not throw {1}
2900 
2901 # In the following string {1} is a space separated list of Java Keywords, as
2902 # they would have been declared in the source code
2903 # 0: message segment, 1: set of flag or string
2904 compiler.err.override.weaker.access=\
2905     {0}\n\
2906     attempting to assign weaker access privileges; was {1}
2907 
2908 # 0: message segment, 1: type, 2: type
2909 compiler.err.override.incompatible.ret=\
2910     {0}\n\
2911     return type {1} is not compatible with {2}
2912 
2913 # 0: message segment, 1: type, 2: type
2914 compiler.warn.override.unchecked.ret=\
2915     {0}\n\
2916     return type requires unchecked conversion from {1} to {2}
2917 
2918 # 0: message segment, 1: type
2919 compiler.warn.override.unchecked.thrown=\
2920     {0}\n\
2921     overridden method does not throw {1}
2922 
2923 # 0: symbol
2924 compiler.warn.override.equals.but.not.hashcode=\
2925     Class {0} overrides equals, but neither it nor any superclass overrides hashCode method
2926 
2927 ## The following are all possible strings for the first argument ({0}) of the
2928 ## above strings.
2929 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2930 compiler.misc.cant.override=\
2931     {0} in {1} cannot override {2} in {3}
2932 
2933 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2934 compiler.misc.cant.hide=\
2935     {0} in {1} cannot hide {2} in {3}
2936 
2937 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2938 compiler.misc.cant.implement=\
2939     {0} in {1} cannot implement {2} in {3}
2940 
2941 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2942 compiler.misc.clashes.with=\
2943     {0} in {1} clashes with {2} in {3}
2944 
2945 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2946 compiler.misc.unchecked.override=\
2947     {0} in {1} overrides {2} in {3}
2948 
2949 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2950 compiler.misc.unchecked.implement=\
2951     {0} in {1} implements {2} in {3}
2952 
2953 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2954 compiler.misc.unchecked.clash.with=\
2955     {0} in {1} overrides {2} in {3}
2956 
2957 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2958 compiler.misc.varargs.override=\
2959     {0} in {1} overrides {2} in {3}
2960 
2961 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2962 compiler.misc.varargs.implement=\
2963     {0} in {1} implements {2} in {3}
2964 
2965 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
2966 compiler.misc.varargs.clash.with=\
2967     {0} in {1} overrides {2} in {3}
2968 
2969 # 0: kind name, 1: symbol, 2: symbol, 3: message segment
2970 compiler.misc.inapplicable.method=\
2971     {0} {1}.{2} is not applicable\n\
2972     ({3})
2973 
2974 ########################################
2975 # Diagnostics for language feature changes.
2976 # Such diagnostics have a common template which can be customized by using a feature
2977 # diagnostic fragment (one of those given below).
2978 ########################################
2979 
2980 # 0: message segment (feature), 1: string (found version), 2: string (expected version)
2981 compiler.err.feature.not.supported.in.source=\
2982    {0} is not supported in -source {1}\n\
2983     (use -source {2} or higher to enable {0})
2984 
2985 # 0: message segment (feature), 1: string (found version), 2: string (expected version)
2986 compiler.err.feature.not.supported.in.source.plural=\
2987    {0} are not supported in -source {1}\n\
2988     (use -source {2} or higher to enable {0})
2989 
2990 # 0: message segment (feature), 1: string (found version), 2: string (expected version)
2991 compiler.misc.feature.not.supported.in.source=\
2992    {0} is not supported in -source {1}\n\
2993     (use -source {2} or higher to enable {0})
2994 
2995 # 0: message segment (feature), 1: string (found version), 2: string (expected version)
2996 compiler.misc.feature.not.supported.in.source.plural=\
2997    {0} are not supported in -source {1}\n\
2998     (use -source {2} or higher to enable {0})
2999 
3000 # 0: message segment (feature)
3001 compiler.err.preview.feature.disabled=\
3002    {0} is a preview feature and is disabled by default.\n\
3003    (use --enable-preview to enable {0})
3004 
3005 # 0: message segment (feature)
3006 compiler.err.preview.feature.disabled.plural=\
3007    {0} are a preview feature and are disabled by default.\n\
3008    (use --enable-preview to enable {0})
3009 
3010 # 0: file object (classfile), 1: string (expected version)
3011 compiler.err.preview.feature.disabled.classfile=\
3012    class file for {0} uses preview features of Java SE {1}.\n\
3013    (use --enable-preview to allow loading of class files which contain preview features)
3014 
3015 # 0: message segment (feature)
3016 compiler.warn.preview.feature.use=\
3017    {0} is a preview feature and may be removed in a future release.
3018 
3019 # 0: message segment (feature)
3020 compiler.warn.preview.feature.use.plural=\
3021    {0} are a preview feature and may be removed in a future release.
3022 
3023 # 0: file object (classfile), 1: string (expected version)
3024 compiler.warn.preview.feature.use.classfile=\
3025    class file for {0} uses preview features of Java SE {1}.
3026 
3027 compiler.misc.feature.modules=\
3028     modules
3029 
3030 compiler.misc.feature.diamond.and.anon.class=\
3031     ''<>'' with anonymous inner classes
3032 
3033 compiler.misc.feature.var.in.try.with.resources=\
3034     variables in try-with-resources
3035 
3036 compiler.misc.feature.private.intf.methods=\
3037     private interface methods
3038 
3039 compiler.misc.feature.text.blocks=\
3040     text blocks
3041 
3042 compiler.misc.feature.multiple.case.labels=\
3043     multiple case labels
3044 
3045 compiler.misc.feature.switch.rules=\
3046     switch rules
3047 
3048 compiler.misc.feature.switch.expressions=\
3049     switch expressions
3050 
3051 compiler.misc.feature.var.syntax.in.implicit.lambda=\
3052     var syntax in implicit lambdas
3053 
3054 compiler.misc.feature.pattern.matching.instanceof=\
3055     pattern matching in instanceof
3056 
3057 compiler.misc.feature.reifiable.types.instanceof=\
3058     reifiable types in instanceof
3059 
3060 compiler.misc.feature.deconstruction.patterns=\
3061     deconstruction patterns
3062 
3063 compiler.misc.feature.records=\
3064     records
3065 
3066 compiler.misc.feature.sealed.classes=\
3067     sealed classes
3068 
3069 compiler.misc.feature.case.null=\
3070     null in switch cases
3071 
3072 compiler.misc.feature.pattern.switch=\
3073     patterns in switch statements
3074 
3075 compiler.misc.feature.unconditional.patterns.in.instanceof=\
3076     unconditional patterns in instanceof
3077 
3078 compiler.warn.underscore.as.identifier=\
3079     as of release 9, ''_'' is a keyword, and may not be used as an identifier
3080 
3081 compiler.err.underscore.as.identifier=\
3082     as of release 9, ''_'' is a keyword, and may not be used as an identifier
3083 
3084 compiler.err.underscore.as.identifier.in.lambda=\
3085     ''_'' used as an identifier\n\
3086     (use of ''_'' as an identifier is forbidden for lambda parameters)
3087 
3088 compiler.err.enum.as.identifier=\
3089     as of release 5, ''enum'' is a keyword, and may not be used as an identifier
3090 
3091 compiler.err.assert.as.identifier=\
3092     as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier
3093 
3094 # TODO 308: make a better error message
3095 compiler.err.this.as.identifier=\
3096     as of release 8, ''this'' is allowed as the parameter name for the receiver type only\n\
3097     which has to be the first parameter, and cannot be a lambda parameter
3098 
3099 compiler.err.receiver.parameter.not.applicable.constructor.toplevel.class=\
3100     receiver parameter not applicable for constructor of top-level class
3101 
3102 # TODO 308: make a better error message
3103 # 0: annotation
3104 compiler.err.cant.type.annotate.scoping.1=\
3105     scoping construct cannot be annotated with type-use annotation: {0}
3106 
3107 # TODO 308: make a better error message
3108 # 0: list of annotation
3109 compiler.err.cant.type.annotate.scoping=\
3110     scoping construct cannot be annotated with type-use annotations: {0}
3111 
3112 # 0: type, 1: type
3113 compiler.err.incorrect.receiver.name=\
3114     the receiver name does not match the enclosing class type\n\
3115     required: {0}\n\
3116     found:    {1}
3117 
3118 # 0: type, 1: type
3119 compiler.err.incorrect.receiver.type=\
3120     the receiver type does not match the enclosing class type\n\
3121     required: {0}\n\
3122     found:    {1}
3123 
3124 # 0: type, 1: type
3125 compiler.err.incorrect.constructor.receiver.type=\
3126     the receiver type does not match the enclosing outer class type\n\
3127     required: {0}\n\
3128     found:    {1}
3129 
3130 # 0: type, 1: type
3131 compiler.err.incorrect.constructor.receiver.name=\
3132     the receiver name does not match the enclosing outer class type\n\
3133     required: {0}\n\
3134     found:    {1}
3135 
3136 compiler.err.no.annotations.on.dot.class=\
3137     no annotations are allowed in the type of a class literal
3138 
3139 ########################################
3140 # Diagnostics for verbose resolution
3141 # used by Resolve (debug only)
3142 ########################################
3143 
3144 # 0: number, 1: symbol, 2: unused
3145 compiler.misc.applicable.method.found=\
3146     #{0} applicable method found: {1}
3147 
3148 # 0: number, 1: symbol, 2: message segment
3149 compiler.misc.applicable.method.found.1=\
3150     #{0} applicable method found: {1}\n\
3151     ({2})
3152 
3153 # 0: number, 1: symbol, 2: message segment
3154 compiler.misc.not.applicable.method.found=\
3155     #{0} not applicable method found: {1}\n\
3156     ({2})
3157 
3158 # 0: type
3159 compiler.misc.partial.inst.sig=\
3160     partially instantiated to: {0}
3161 
3162 # 0: name, 1: symbol, 2: number, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
3163 compiler.note.verbose.resolve.multi=\
3164     resolving method {0} in type {1} to candidate {2}\n\
3165     phase: {3}\n\
3166     with actuals: {4}\n\
3167     with type-args: {5}\n\
3168     candidates:
3169 
3170 # 0: name, 1: symbol, 2: unused, 3: string (method resolution phase), 4: list of type or message segment, 5: list of type or message segment
3171 compiler.note.verbose.resolve.multi.1=\
3172     erroneous resolution for method {0} in type {1}\n\
3173     phase: {3}\n\
3174     with actuals: {4}\n\
3175     with type-args: {5}\n\
3176     candidates:
3177 
3178 # 0: symbol, 1: type, 2: type
3179 compiler.note.deferred.method.inst=\
3180     Deferred instantiation of method {0}\n\
3181     instantiated signature: {1}\n\
3182     target-type: {2}
3183 
3184 ########################################
3185 # Diagnostics for lambda deduplication
3186 # used by LambdaToMethod (debug only)
3187 ########################################
3188 
3189 # 0: symbol
3190 compiler.note.verbose.l2m.deduplicate=\
3191     deduplicating lambda implementation method {0}
3192 
3193 ########################################
3194 # Diagnostics for method reference search
3195 # results used by Resolve (debug only)
3196 ########################################
3197 
3198 # 0: fragment, 1: string, 2: number
3199 compiler.note.method.ref.search.results.multi=\
3200     {0} search results for {1}, with most specific {2}\n\
3201     applicable candidates:
3202 
3203 # 0: number, 1: fragment, 2: symbol
3204 compiler.misc.applicable.method.found.2=\
3205     #{0} applicable method found: {1} {2}
3206 
3207 # 0: number, 1: fragment, 2: symbol, 3: message segment
3208 compiler.misc.applicable.method.found.3=\
3209     #{0} applicable method found: {1} {2}\n\
3210     ({3})
3211 
3212 compiler.misc.static=\
3213     static
3214 
3215 compiler.misc.non.static=\
3216     non-static
3217 
3218 compiler.misc.bound=\
3219     bound
3220 
3221 compiler.misc.unbound=\
3222     unbound
3223 
3224 ########################################
3225 # Diagnostics for where clause implementation
3226 # used by the RichDiagnosticFormatter.
3227 ########################################
3228 
3229 compiler.misc.type.null=\
3230     <null>
3231 
3232 # X#n (where n is an int id) is disambiguated tvar name
3233 # 0: name, 1: number
3234 compiler.misc.type.var=\
3235     {0}#{1}
3236 
3237 # CAP#n (where n is an int id) is an abbreviation for 'captured type'
3238 # 0: number
3239 compiler.misc.captured.type=\
3240     CAP#{0}
3241 
3242 # <INT#n> (where n is an int id) is an abbreviation for 'intersection type'
3243 # 0: number
3244 compiler.misc.intersection.type=\
3245     INT#{0}
3246 
3247 # where clause for captured type: contains upper ('extends {1}') and lower
3248 # ('super {2}') bound along with the wildcard that generated this captured type ({3})
3249 # 0: type, 1: type, 2: type, 3: type
3250 compiler.misc.where.captured=\
3251     {0} extends {1} super: {2} from capture of {3}
3252 
3253 # compact where clause for captured type: contains upper ('extends {1}') along
3254 # with the wildcard that generated this captured type ({3})
3255 # 0: type, 1: type, 2: unused, 3: type
3256 compiler.misc.where.captured.1=\
3257     {0} extends {1} from capture of {3}
3258 
3259 # where clause for type variable: contains upper bound(s) ('extends {1}') along with
3260 # the kindname ({2}) and location ({3}) in which the typevar has been declared
3261 # 0: type, 1: list of type, 2: symbol kind, 3: symbol
3262 compiler.misc.where.typevar=\
3263     {0} extends {1} declared in {2} {3}
3264 
3265 # compact where clause for type variable: contains the kindname ({2}) and location ({3})
3266 # in which the typevar has been declared
3267 # 0: type, 1: list of type, 2: symbol kind, 3: symbol
3268 compiler.misc.where.typevar.1=\
3269     {0} declared in {2} {3}
3270 
3271 # where clause for fresh type variable: contains upper bound(s) ('extends {1}').
3272 # Since a fresh type-variable is synthetic - there's no location/kindname here.
3273 # 0: type, 1: list of type
3274 compiler.misc.where.fresh.typevar=\
3275     {0} extends {1}
3276 
3277 # where clause for type variable: contains all the upper bound(s) ('extends {1}')
3278 # of this intersection type
3279 # 0: type, 1: list of type
3280 compiler.misc.where.intersection=\
3281     {0} extends {1}
3282 
3283 ### Where clause headers ###
3284 compiler.misc.where.description.captured=\
3285     where {0} is a fresh type-variable:
3286 
3287 # 0: set of type
3288 compiler.misc.where.description.typevar=\
3289     where {0} is a type-variable:
3290 
3291 # 0: set of type
3292 compiler.misc.where.description.intersection=\
3293     where {0} is an intersection type:
3294 
3295 # 0: set of type
3296 compiler.misc.where.description.captured.1=\
3297     where {0} are fresh type-variables:
3298 
3299 # 0: set of type
3300 compiler.misc.where.description.typevar.1=\
3301     where {0} are type-variables:
3302 
3303 # 0: set of type
3304 compiler.misc.where.description.intersection.1=\
3305     where {0} are intersection types:
3306 
3307 ###
3308 # errors related to doc comments
3309 
3310 compiler.err.dc.bad.entity=\
3311     bad HTML entity
3312 
3313 compiler.err.dc.bad.inline.tag=\
3314     incorrect use of inline tag
3315 
3316 compiler.err.dc.identifier.expected=\
3317     identifier expected
3318 
3319 compiler.err.dc.invalid.html=\
3320     invalid HTML
3321 
3322 compiler.err.dc.malformed.html=\
3323     malformed HTML
3324 
3325 compiler.err.dc.missing.semicolon=\
3326     semicolon missing
3327 
3328 compiler.err.dc.no.content=\
3329     no content
3330 
3331 compiler.err.dc.no.tag.name=\
3332     no tag name after '@'
3333 
3334 compiler.err.dc.no.url=\
3335     no URL
3336 
3337 compiler.err.dc.no.title=\
3338     no title
3339 
3340 compiler.err.dc.gt.expected=\
3341     ''>'' expected
3342 
3343 compiler.err.dc.ref.bad.parens=\
3344     unexpected text after parenthesis
3345 
3346 compiler.err.dc.ref.syntax.error=\
3347     syntax error in reference
3348 
3349 compiler.err.dc.ref.unexpected.input=\
3350     unexpected text
3351 
3352 compiler.err.dc.unexpected.content=\
3353     unexpected content
3354 
3355 compiler.err.dc.unterminated.inline.tag=\
3356     unterminated inline tag
3357 
3358 compiler.err.dc.unterminated.signature=\
3359     unterminated signature
3360 
3361 compiler.err.dc.unterminated.string=\
3362     unterminated string
3363 
3364 compiler.err.dc.ref.annotations.not.allowed=\
3365     annotations not allowed
3366 
3367 ###
3368 # errors related to modules
3369 
3370 compiler.err.expected.module=\
3371     expected ''module''
3372 
3373 # 0: symbol
3374 compiler.err.module.not.found=\
3375     module not found: {0}
3376 
3377 # 0: symbol
3378 compiler.warn.module.not.found=\
3379     module not found: {0}
3380 
3381 compiler.err.too.many.modules=\
3382     too many module declarations found
3383 
3384 compiler.err.module.not.found.on.module.source.path=\
3385     module not found on module source path
3386 
3387 compiler.err.not.in.module.on.module.source.path=\
3388     not in a module on the module source path
3389 
3390 # 0: symbol
3391 compiler.err.duplicate.module=\
3392     duplicate module: {0}
3393 
3394 # 0: symbol
3395 compiler.err.duplicate.requires=\
3396     duplicate requires: {0}
3397 
3398 # 0: symbol
3399 compiler.err.conflicting.exports=\
3400     duplicate or conflicting exports: {0}
3401 
3402 # 0: symbol
3403 compiler.err.conflicting.opens=\
3404     duplicate or conflicting opens: {0}
3405 
3406 # 0: symbol
3407 compiler.err.conflicting.exports.to.module=\
3408     duplicate or conflicting exports to module: {0}
3409 
3410 # 0: symbol
3411 compiler.err.conflicting.opens.to.module=\
3412     duplicate or conflicting opens to module: {0}
3413 
3414 compiler.err.no.opens.unless.strong=\
3415     ''opens'' only allowed in strong modules
3416 
3417 # 0: symbol
3418 compiler.err.repeated.provides.for.service=\
3419     multiple ''provides'' for service {0}
3420 
3421 # 0: symbol, 1: symbol
3422 compiler.err.duplicate.provides=\
3423     duplicate provides: service {0}, implementation {1}
3424 
3425 # 0: symbol
3426 compiler.err.duplicate.uses=\
3427     duplicate uses: {0}
3428 
3429 # 0: symbol
3430 compiler.err.service.implementation.is.abstract=\
3431     the service implementation is an abstract class: {0}
3432 
3433 compiler.err.service.implementation.must.be.subtype.of.service.interface=\
3434     the service implementation type must be a subtype of the service interface type, or \
3435     have a public static no-args method named "provider" returning the service implementation
3436 
3437 compiler.err.service.implementation.provider.return.must.be.subtype.of.service.interface=\
3438     the "provider" method return type must be a subtype of the service interface type
3439 
3440 # 0: symbol
3441 compiler.err.service.implementation.is.inner=\
3442     the service implementation is an inner class: {0}
3443 
3444 # 0: symbol
3445 compiler.err.service.definition.is.enum=\
3446     the service definition is an enum: {0}
3447 
3448 # 0: symbol
3449 compiler.err.service.implementation.doesnt.have.a.no.args.constructor=\
3450     the service implementation does not have a default constructor: {0}
3451 
3452 # 0: symbol
3453 compiler.err.service.implementation.no.args.constructor.not.public=\
3454     the no arguments constructor of the service implementation is not public: {0}
3455 
3456 # 0: symbol
3457 compiler.err.package.empty.or.not.found=\
3458     package is empty or does not exist: {0}
3459 
3460 # 0: symbol
3461 compiler.warn.package.empty.or.not.found=\
3462     package is empty or does not exist: {0}
3463 
3464 compiler.err.no.output.dir=\
3465     no class output directory specified
3466 
3467 compiler.err.unnamed.pkg.not.allowed.named.modules=\
3468     unnamed package is not allowed in named modules
3469 
3470 # 0: name, 1: name
3471 compiler.err.module.name.mismatch=\
3472     module name {0} does not match expected name {1}
3473 
3474 # 0: name, 1: name
3475 compiler.misc.module.name.mismatch=\
3476     module name {0} does not match expected name {1}
3477 
3478 # 0: name
3479 compiler.err.module.non.zero.opens=\
3480     open module {0} has non-zero opens_count
3481 
3482 # 0: name
3483 compiler.misc.module.non.zero.opens=\
3484     open module {0} has non-zero opens_count
3485 
3486 compiler.err.module.decl.sb.in.module-info.java=\
3487     module declarations should be in a file named module-info.java
3488 
3489 # 0: set of string
3490 compiler.err.too.many.patched.modules=\
3491     too many patched modules ({0}), use --module-source-path
3492 
3493 # 0: name, 1: name
3494 compiler.err.file.patched.and.msp=\
3495     file accessible from both --patch-module and --module-source-path, \
3496     but belongs to a different module on each path: {0}, {1}
3497 
3498 compiler.err.processorpath.no.processormodulepath=\
3499     illegal combination of -processorpath and --processor-module-path
3500 
3501 # 0: symbol
3502 compiler.err.package.in.other.module=\
3503     package exists in another module: {0}
3504 
3505 # 0: symbol, 1: name, 2: symbol, 3: symbol
3506 compiler.err.package.clash.from.requires=\
3507     module {0} reads package {1} from both {2} and {3}
3508 
3509 # 0: name, 1: symbol, 2: symbol
3510 compiler.err.package.clash.from.requires.in.unnamed=\
3511     the unnamed module reads package {0} from both {1} and {2}
3512 
3513 # 0: string
3514 compiler.err.module.not.found.in.module.source.path=\
3515     module {0} not found in module source path
3516 
3517 compiler.err.output.dir.must.be.specified.with.dash.m.option=\
3518     class output directory must be specified if -m option is used
3519 
3520 compiler.err.modulesourcepath.must.be.specified.with.dash.m.option=\
3521     module source path must be specified if -m option is used
3522 
3523 # 0: symbol
3524 compiler.err.service.implementation.not.in.right.module=\
3525     service implementation must be defined in the same module as the provides directive
3526 
3527 # 0: symbol
3528 compiler.err.cyclic.requires=\
3529     cyclic dependence involving {0}
3530 
3531 # 0: fragment, 1: name
3532 compiler.err.duplicate.module.on.path=\
3533     duplicate module on {0}\nmodule in {1}
3534 
3535 # 0: option name, 1: string
3536 compiler.warn.bad.name.for.option=\
3537     bad name in value for {0} option: ''{1}''
3538 
3539 # 0: option name, 1: string
3540 compiler.err.bad.name.for.option=\
3541     bad name in value for {0} option: ''{1}''
3542 
3543 # 0: option name, 1: symbol
3544 compiler.warn.module.for.option.not.found=\
3545     module name in {0} option not found: {1}
3546 
3547 compiler.err.addmods.all.module.path.invalid=\
3548     --add-modules ALL-MODULE-PATH can only be used when compiling the unnamed module or \
3549     when compiling in the context of an automatic module
3550 
3551 # 0: symbol
3552 compiler.err.add.exports.with.release=\
3553     exporting a package from system module {0} is not allowed with --release
3554 
3555 # 0: symbol
3556 compiler.err.add.reads.with.release=\
3557     adding read edges for system module {0} is not allowed with --release
3558 
3559 compiler.warn.addopens.ignored=\
3560     --add-opens has no effect at compile time
3561 
3562 compiler.misc.locn.module_source_path=\
3563     module source path
3564 
3565 compiler.misc.locn.upgrade_module_path=\
3566     upgrade module path
3567 
3568 compiler.misc.locn.system_modules=\
3569     system modules
3570 
3571 compiler.misc.locn.module_path=\
3572     application module path
3573 
3574 compiler.misc.cant.resolve.modules=\
3575     cannot resolve modules
3576 
3577 compiler.misc.bad.requires.flag=\
3578     bad requires flag: {0}
3579 
3580 compiler.misc.bad.access.flags=\
3581     bad access flags combination: {0}
3582 
3583 # 0: string
3584 compiler.err.invalid.module.specifier=\
3585     module specifier not allowed: {0}
3586 
3587 # 0: symbol
3588 compiler.warn.service.provided.but.not.exported.or.used=\
3589     service interface provided but not exported or used
3590 
3591 # 0: kind name, 1: symbol, 2: symbol
3592 compiler.warn.leaks.not.accessible=\
3593     {0} {1} in module {2} is not accessible to clients that require this module
3594 # 0: kind name, 1: symbol, 2: symbol
3595 compiler.warn.leaks.not.accessible.unexported=\
3596     {0} {1} in module {2} is not exported
3597 # 0: kind name, 1: symbol, 2: symbol
3598 compiler.warn.leaks.not.accessible.not.required.transitive=\
3599     {0} {1} in module {2} is not indirectly exported using 'requires transitive'
3600 # 0: kind name, 1: symbol, 2: symbol
3601 compiler.warn.leaks.not.accessible.unexported.qualified=\
3602     {0} {1} in module {2} may not be visible to all clients that require this module
3603 
3604 ###
3605 # errors related to options
3606 
3607 # 0: string, 1: string
3608 compiler.err.illegal.argument.for.option=\
3609     illegal argument for {0}: {1}
3610 
3611 compiler.err.match.binding.exists=\
3612     illegal attempt to redefine an existing match binding
3613 
3614 compiler.err.switch.case.unexpected.statement=\
3615     unexpected statement in case, expected is an expression, a block or a throw statement
3616 
3617 compiler.err.switch.mixing.case.types=\
3618     different case kinds used in the switch
3619 
3620 ###
3621 # errors related to sealed classes
3622 
3623 # permits clause
3624 # 0: fragment
3625 compiler.err.invalid.permits.clause=\
3626     invalid permits clause\n\
3627     ({0})
3628 
3629 # 0: string
3630 compiler.misc.class.is.not.sealed=\
3631     {0} must be sealed
3632 
3633 # 0: type
3634 compiler.misc.is.a.type.variable=\
3635     must not include type variables: {0}
3636 
3637 # 0: type
3638 compiler.misc.is.duplicated=\
3639     must not contain duplicates: {0}
3640 
3641 # 0: type
3642 compiler.misc.doesnt.extend.sealed=\
3643     subclass {0} must extend sealed class
3644 
3645 compiler.misc.must.not.be.same.class=\
3646     illegal self-reference in permits clause
3647 
3648 # 0: type
3649 compiler.misc.must.not.be.supertype=\
3650     illegal reference to supertype {0}
3651 
3652 # other sealed types related errors
3653 
3654 compiler.err.sealed.class.must.have.subclasses=\
3655     sealed class must have subclasses
3656 
3657 # errors in subclasses of sealed classes
3658 # 0: symbol
3659 compiler.err.cant.inherit.from.sealed=\
3660     class is not allowed to extend sealed class: {0} \
3661     (as it is not listed in its 'permits' clause)
3662 
3663 # 0: symbol
3664 compiler.err.class.in.unnamed.module.cant.extend.sealed.in.diff.package=\
3665     class {0} in unnamed module cannot extend a sealed class in a different package
3666 
3667 # 0: symbol, 1: symbol
3668 compiler.err.class.in.module.cant.extend.sealed.in.diff.module=\
3669     class {0} in module {1} cannot extend a sealed class in a different module
3670 
3671 # 0: symbol
3672 compiler.err.non.sealed.with.no.sealed.supertype=\
3673     non-sealed modifier not allowed here\n\
3674     (class {0} does not have any sealed supertypes)
3675 
3676 compiler.err.non.sealed.sealed.or.final.expected=\
3677     sealed, non-sealed or final modifiers expected
3678 
3679 compiler.err.non.sealed.or.sealed.expected=\
3680     sealed or non-sealed modifiers expected
3681 
3682 compiler.err.sealed.or.non.sealed.local.classes.not.allowed=\
3683     sealed or non-sealed local classes are not allowed
3684 
3685 # 0: fragment
3686 compiler.err.local.classes.cant.extend.sealed=\
3687     {0} classes must not extend sealed classes\
3688 
3689 compiler.misc.anonymous=\
3690     anonymous
3691 
3692 compiler.misc.local=\
3693     local
3694 
3695 ###
3696 # errors related to records
3697 
3698 # record components
3699 compiler.err.record.cant.declare.field.modifiers=\
3700     record components cannot have modifiers
3701 
3702 # 0: symbol
3703 compiler.err.illegal.record.component.name=\
3704     illegal record component name {0}
3705 
3706 compiler.err.record.component.and.old.array.syntax=\
3707     legacy array notation not allowed on record components
3708 
3709 # accessor methods
3710 # 0: symbol, 1: fragment
3711 compiler.err.invalid.accessor.method.in.record=\
3712     invalid accessor method in record {0}\n\
3713     ({1})
3714 
3715 compiler.misc.method.must.be.public=\
3716     accessor method must be public
3717 
3718 # 0: symbol, 1: symbol
3719 compiler.misc.accessor.return.type.doesnt.match=\
3720     return type of accessor method {0} must match the type of record component {1}
3721 
3722 compiler.misc.accessor.method.cant.throw.exception=\
3723     throws clause not allowed for accessor method
3724 
3725 compiler.misc.accessor.method.must.not.be.generic=\
3726     accessor method must not be generic
3727 
3728 compiler.misc.accessor.method.must.not.be.static=\
3729     accessor method must not be static
3730 
3731 # canonical constructors
3732 # 0: fragment, 1: name, 2: fragment
3733 compiler.err.invalid.canonical.constructor.in.record=\
3734     invalid {0} constructor in record {1}\n\
3735     ({2})
3736 
3737 compiler.misc.canonical=\
3738     canonical
3739 
3740 compiler.misc.compact=\
3741     compact
3742 
3743 # 0: fragment
3744 compiler.misc.throws.clause.not.allowed.for.canonical.constructor=\
3745     throws clause not allowed for {0} constructor
3746 
3747 compiler.misc.canonical.with.name.mismatch=\
3748     invalid parameter names in canonical constructor
3749 
3750 compiler.misc.canonical.cant.have.return.statement=\
3751     compact constructor must not have return statements
3752 
3753 compiler.misc.canonical.must.not.declare.type.variables=\
3754     canonical constructor must not declare type variables
3755 
3756 compiler.misc.type.must.be.identical.to.corresponding.record.component.type=\
3757     type and arity must match that of the corresponding record component\
3758 
3759 compiler.misc.canonical.must.not.contain.explicit.constructor.invocation=\
3760     canonical constructor must not contain explicit constructor invocation
3761 
3762 # 0: set of flag or string
3763 compiler.misc.canonical.must.not.have.stronger.access=\
3764     attempting to assign stronger access privileges; was {0}
3765 
3766 # other
3767 compiler.err.record.cannot.declare.instance.fields=\
3768     field declaration must be static\n\
3769     (consider replacing field with record component)
3770 
3771 # 0: symbol
3772 compiler.err.invalid.supertype.record=\
3773     classes cannot directly extend {0}
3774 
3775 # 0: symbol
3776 compiler.err.first.statement.must.be.call.to.another.constructor=\
3777     constructor is not canonical, so its first statement must invoke another constructor of class {0}
3778 
3779 compiler.err.instance.initializer.not.allowed.in.records=\
3780     instance initializers not allowed in records
3781 
3782 compiler.err.static.declaration.not.allowed.in.inner.classes=\
3783     static declarations not allowed in inner classes
3784 
3785 compiler.err.record.header.expected=\
3786     record header expected
3787 
3788 ############################################
3789 # messages previously at javac.properties
3790 
3791 compiler.err.empty.A.argument=\
3792     -A requires an argument; use ''-Akey'' or ''-Akey=value''
3793 
3794 # 0: string
3795 compiler.err.invalid.A.key=\
3796     key in annotation processor option ''{0}'' is not a dot-separated sequence of identifiers
3797 
3798 # 0: string
3799 compiler.err.invalid.flag=\
3800     invalid flag: {0}
3801 
3802 compiler.err.profile.bootclasspath.conflict=\
3803     profile and bootclasspath options cannot be used together
3804 
3805 # 0: string
3806 compiler.err.invalid.profile=\
3807     invalid profile: {0}
3808 
3809 # 0: string
3810 compiler.err.invalid.target=\
3811     invalid target release: {0}
3812 
3813 # 0: option name, 1: target
3814 compiler.err.option.not.allowed.with.target=\
3815     option {0} not allowed with target {1}
3816 
3817 # 0: string
3818 compiler.err.option.too.many=\
3819     option {0} can only be specified once
3820 
3821 compiler.err.no.source.files=\
3822     no source files
3823 
3824 compiler.err.no.source.files.classes=\
3825     no source files or class names
3826 
3827 # 0: string
3828 compiler.err.req.arg=\
3829     {0} requires an argument
3830 
3831 # 0: string
3832 compiler.err.invalid.source=\
3833     invalid source release: {0}
3834 
3835 # 0: string, 1: string
3836 compiler.err.error.writing.file=\
3837     error writing {0}; {1}
3838 
3839 compiler.err.sourcepath.modulesourcepath.conflict=\
3840     cannot specify both --source-path and --module-source-path
3841 
3842 # 0: string, 1: target
3843 compiler.warn.source.target.conflict=\
3844     source release {0} requires target release {1}
3845 
3846 # 0: string, 1: target
3847 compiler.warn.target.default.source.conflict=\
3848     target release {0} conflicts with default source release {1}
3849 
3850 # 0: profile, 1: target
3851 compiler.warn.profile.target.conflict=\
3852     profile {0} is not valid for target release {1}
3853 
3854 # 0: string
3855 compiler.err.file.not.directory=\
3856     not a directory: {0}
3857 
3858 # 0: object
3859 compiler.err.file.not.file=\
3860     not a file: {0}
3861 
3862 compiler.err.two.class.loaders.1=\
3863     javac is split between multiple class loaders: check your configuration
3864 
3865 # 0: url, 1: url
3866 compiler.err.two.class.loaders.2=\
3867     javac is split between multiple class loaders:\n\
3868     one class comes from file: {0}\n\
3869     while javac comes from {1}
3870 
3871 # 0: string, 1: string
3872 compiler.err.bad.value.for.option=\
3873     bad value for {0} option: ''{1}''
3874 
3875 # 0: string
3876 compiler.err.no.value.for.option=\
3877     no value for {0} option
3878 
3879 # 0: string
3880 compiler.err.repeated.value.for.patch.module=\
3881     --patch-module specified more than once for module {0}
3882 
3883 # 0: string
3884 compiler.err.repeated.value.for.module.source.path=\
3885     --module-source-path specified more than once for module {0}
3886 
3887 compiler.err.multiple.values.for.module.source.path=\
3888     --module-source-path specified more than once with a pattern argument
3889 
3890 # 0: string
3891 compiler.err.unmatched.quote=\
3892     unmatched quote in environment variable {0}
3893 
3894 # 0: option name
3895 compiler.err.release.bootclasspath.conflict=\
3896     option {0} cannot be used together with --release
3897 
3898 # 0: string
3899 compiler.err.unsupported.release.version=\
3900     release version {0} not supported
3901 
3902 # 0: string
3903 compiler.err.file.not.found=\
3904     file not found: {0}
3905 
3906 # 0: string, 1: source
3907 compiler.err.preview.not.latest=\
3908     invalid source release {0} with --enable-preview\n\
3909     (preview language features are only supported for release {1})
3910 
3911 compiler.err.preview.without.source.or.release=\
3912     --enable-preview must be used with either -source or --release
3913 
3914 compiler.misc.feature.primitive.classes=\
3915     primitive classes
3916 
3917 compiler.misc.feature.value.classes=\
3918     value classes
3919 
3920 # 0: symbol
3921 compiler.err.cyclic.primitive.class.membership=\
3922     cyclic primitive class membership involving {0}
3923 
3924 # 0: string (expected version)
3925 compiler.err.primitive.classes.not.supported=\
3926     primitive classes are not supported\n\
3927      (use -source {0} or higher to enable primitive classes and pass compiler option: -XDenablePrimitiveClasses)
3928 
3929 compiler.warn.get.class.compared.with.interface=\
3930     return value of getClass() can never equal the class literal of an interface
3931 
3932 # 0: name (of method)
3933 compiler.err.value.class.does.not.support=\
3934     value classes do not support {0}
3935 
3936 compiler.err.value.class.may.not.extend=\
3937     inappropriate super class declaration for a value class
3938 
3939 compiler.err.this.exposed.prematurely=\
3940     value class instance should not be passed around before being fully initialized
3941 
3942 # 0: type
3943 compiler.err.generic.parameterization.with.primitive.class=\
3944     Inferred type {0} involves generic parameterization by a primitive class
3945 
3946 # 0: type, 1: type
3947 compiler.err.value.type.has.identity.super.type=\
3948     The identity type {1} cannot be a supertype of the value type {0}
3949 
3950 # 0: type, 1: type
3951 compiler.err.identity.type.has.value.super.type=\
3952     The value type {1} cannot be a supertype of the identity type {0}
3953 
3954 # 0: type, 1: type, 2: type
3955 compiler.err.mutually.incompatible.supers=\
3956     The type {0} has mutually incompatible supertypes: the identity type {1} and the value type {2}
3957 
3958 # 0: symbol, 1: type
3959 compiler.err.concrete.supertype.for.value.class=\
3960     The concrete class {1} is not allowed to be a super class of the value class {0} either directly or indirectly
3961 
3962 # 0: symbol, 1: symbol, 2: type
3963 compiler.err.super.method.cannot.be.synchronized=\
3964     The method {0} in the super class {2} of the value class {1} is synchronized. This is disallowed
3965 
3966 # 0: symbol, 1: message segment
3967 compiler.err.super.constructor.cannot.take.arguments=\
3968     {1} defines a constructor {0} that takes arguments. This is disallowed
3969 
3970 # 0: symbol, 1: message segment
3971 compiler.err.super.constructor.cannot.be.generic=\
3972     {1} defines a generic constructor {0}. This is disallowed
3973 
3974 # 0: symbol, 1: message segment
3975 compiler.err.super.constructor.cannot.throw=\
3976     {1} defines a constructor {0} that throws an exception. This is disallowed
3977 
3978 # 0: symbol, 1: message segment
3979 compiler.err.super.constructor.access.restricted=\
3980     {1} defines a constructor {0} with a weaker access privilege than the declaring class. This is disallowed
3981 
3982 # 0: symbol, 1: message segment
3983 compiler.err.super.field.not.allowed=\
3984     {1} defines an instance field {0}. This is disallowed
3985 
3986 # 0: symbol, 1: message segment
3987 compiler.err.super.no.arg.constructor.must.be.empty=\
3988     {1} defines a nonempty no-arg constructor {0}. This is disallowed
3989 
3990 # 0: message segment
3991 compiler.err.super.class.declares.init.block=\
3992     {0} declares one or more non-empty instance initializer blocks. This is disallowed.
3993 
3994 # 0: message segment
3995 compiler.err.super.class.cannot.be.inner=\
3996     {0} is an inner class. This is disallowed.
3997 
3998 # 0: symbol, 1: type
3999 compiler.misc.superclass.of.value.class=\
4000     The super class {1} of the value class {0}
4001 
4002 # 0: symbol
4003 compiler.misc.abstract.value.class=\
4004     The abstract value class {0}
4005 
4006 compiler.err.projection.cant.be.instantiated=\
4007     Illegal attempt to instantiate a projection type
4008 
4009 compiler.err.call.to.super.not.allowed.in.value.ctor=\
4010     call to super not allowed in value class constructor
4011 
4012 # 0: symbol
4013 compiler.err.deconstruction.pattern.only.records=\
4014     deconstruction patterns can only be applied to records, {0} is not a record
4015 
4016 # 0: list of type, 1: list of type
4017 compiler.err.incorrect.number.of.nested.patterns=\
4018     incorrect number of nested patterns\n\
4019     required: {0}\n\
4020     found: {1}
4021 
4022 compiler.err.raw.deconstruction.pattern=\
4023     raw deconstruction patterns are not allowed
4024 
4025 # 0: kind name, 1: symbol
4026 compiler.warn.declared.using.preview=\
4027     {0} {1} is declared using a preview feature, which may be removed in a future release.
4028 
4029 compiler.warn.attempt.to.synchronize.on.instance.of.value.based.class=\
4030     attempt to synchronize on an instance of a value-based class
4031 
4032 # 0: type
4033 compiler.err.enclosing.class.type.non.denotable=\
4034     enclosing class type: {0}\n\
4035     is non-denotable, try casting to a denotable type