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