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