src/share/classes/com/sun/tools/javac/resources/compiler.properties

Tue, 03 Jan 2012 11:37:00 -0800

author
jjg
date
Tue, 03 Jan 2012 11:37:00 -0800
changeset 1171
7a836147b266
parent 1145
3343b22e2761
child 1186
51fb17abfc32
permissions
-rw-r--r--

4881269: improve diagnostic for ill-formed tokens
Reviewed-by: mcimadamore

duke@1 1 #
jjg@815 2 # Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
duke@1 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
duke@1 4 #
duke@1 5 # This code is free software; you can redistribute it and/or modify it
duke@1 6 # under the terms of the GNU General Public License version 2 only, as
ohair@554 7 # published by the Free Software Foundation. Oracle designates this
duke@1 8 # particular file as subject to the "Classpath" exception as provided
ohair@554 9 # by Oracle in the LICENSE file that accompanied this code.
duke@1 10 #
duke@1 11 # This code is distributed in the hope that it will be useful, but WITHOUT
duke@1 12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
duke@1 13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
duke@1 14 # version 2 for more details (a copy is included in the LICENSE file that
duke@1 15 # accompanied this code).
duke@1 16 #
duke@1 17 # You should have received a copy of the GNU General Public License version
duke@1 18 # 2 along with this work; if not, write to the Free Software Foundation,
duke@1 19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
duke@1 20 #
ohair@554 21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ohair@554 22 # or visit www.oracle.com if you need additional information or have any
ohair@554 23 # questions.
duke@1 24 #
duke@1 25
jjg@842 26 # Messages in this file which use "placeholders" for values (e.g. {0}, {1})
jjg@842 27 # are preceded by a stylized comment describing the type of the corresponding
jjg@842 28 # values.
jjg@842 29 # The types currently in use are
jjg@842 30 #
jjg@842 31 # boolean true or false
jjg@842 32 # file name the name of an input file; e.g. MyFile.java
jjg@842 33 # message segment a sub-message; see compiler.misc.*
jjg@842 34 # modifier a Java modifier; e.g. public, private, protected
jjg@842 35 # name a name, typically a Java identifier
jjg@842 36 # number an integer
jjg@842 37 # option name the name of a command line option
jjg@842 38 # source version a source version number, such as 1.5, 1.6, 1.7
jjg@842 39 # string a general string
jjg@842 40 # symbol the name of a declared type
jjg@842 41 # symbol kind a description of the kind of a declaration; see compiler.misc.kindname.*
jjg@842 42 # token the name of a non-terminal in source code; see compiler.misc.token.*
jjg@842 43 # type a Java type; e.g. int, X, X<T>
jjg@842 44 # unused the value is not used in this message
jjg@842 45 #
jjg@842 46 # list of X a comma-separated list of items; e.g. list of type
jjg@842 47 # X or Y alternation; e.g. message segment or type
jjg@842 48 # set of X a comma-separated collection of items; e.g. set of modifier
jjg@842 49 #
jjg@842 50 # These may be composed: e.g. list of type or message segment
jjg@842 51 #
jjg@842 52 # These comments are verified by the jtreg test test/tools/javac/diags/MessageInfo,
jjg@842 53 # using info derived from the collected set of examples in test/tools/javac/diags/examples.
jjg@842 54 # MessageInfo can also be run as a standalone utility providing more facilities
jjg@842 55 # for manipulating this file. For more details, see MessageInfo.java.
jjg@842 56
duke@1 57 ##
duke@1 58 ## errors
duke@1 59 ##
duke@1 60
jjg@842 61 # 0: symbol
duke@1 62 compiler.err.abstract.cant.be.instantiated=\
duke@1 63 {0} is abstract; cannot be instantiated
jjg@842 64
duke@1 65 compiler.err.abstract.meth.cant.have.body=\
duke@1 66 abstract methods cannot have a body
jjg@842 67
duke@1 68 compiler.err.already.annotated=\
duke@1 69 {0} {1} has already been annotated
jjg@842 70
mcimadamore@1085 71 # 0: symbol kind, 1: symbol, 2: symbol kind, 3: symbol
duke@1 72 compiler.err.already.defined=\
mcimadamore@1085 73 {0} {1} is already defined in {2} {3}
mcimadamore@1085 74
mcimadamore@1085 75 # 0: symbol kind, 1: symbol, 2: symbol kind, 3: symbol kind, 4: symbol
mcimadamore@1085 76 compiler.err.already.defined.in.clinit=\
mcimadamore@1085 77 {0} {1} is already defined in {2} of {3} {4}
jjg@842 78
jjg@842 79 # 0: string
duke@1 80 compiler.err.already.defined.single.import=\
duke@1 81 {0} is already defined in a single-type import
jjg@842 82
jjg@842 83 # 0: string
duke@1 84 compiler.err.already.defined.static.single.import=\
duke@1 85 {0} is already defined in a static single-type import
jjg@842 86
duke@1 87 compiler.err.already.defined.this.unit=\
duke@1 88 {0} is already defined in this compilation unit
jjg@842 89
jjg@842 90 # 0: type, 1: list of name
duke@1 91 compiler.err.annotation.missing.default.value=\
mcimadamore@632 92 annotation {0} is missing value for the attribute {1}
jjg@842 93
jjg@842 94 # 0: type, 1: list of name
mcimadamore@632 95 compiler.err.annotation.missing.default.value.1=\
mcimadamore@632 96 annotation {0} is missing values for attributes {1}
jjg@842 97
jjg@842 98 # 0: type
duke@1 99 compiler.err.annotation.not.valid.for.type=\
duke@1 100 annotation not valid for a value of type {0}
jjg@842 101
duke@1 102 compiler.err.annotation.type.not.applicable=\
duke@1 103 annotation type not applicable to this kind of declaration
jjg@842 104
duke@1 105 compiler.err.annotation.value.must.be.annotation=\
duke@1 106 annotation value must be an annotation
jjg@842 107
duke@1 108 compiler.err.annotation.value.must.be.class.literal=\
duke@1 109 annotation value must be a class literal
jjg@842 110
duke@1 111 compiler.err.annotation.value.must.be.name.value=\
duke@1 112 annotation values must be of the form ''name=value''
jjg@842 113
duke@1 114 compiler.err.annotation.value.not.allowable.type=\
duke@1 115 annotation value not of an allowable type
jjg@842 116
duke@1 117 compiler.err.anon.class.impl.intf.no.args=\
duke@1 118 anonymous class implements interface; cannot have arguments
jjg@842 119
duke@1 120 compiler.err.anon.class.impl.intf.no.typeargs=\
duke@1 121 anonymous class implements interface; cannot have type arguments
jjg@842 122
duke@1 123 compiler.err.anon.class.impl.intf.no.qual.for.new=\
duke@1 124 anonymous class implements interface; cannot have qualifier for new
jjg@842 125
jjg@842 126 # 0: symbol, 1: symbol, 2: symbol
duke@1 127 compiler.err.array.and.varargs=\
duke@1 128 cannot declare both {0} and {1} in {2}
jjg@842 129
duke@1 130 compiler.err.array.dimension.missing=\
duke@1 131 array dimension missing
jjg@842 132
jjg@842 133 # 0: type
duke@1 134 compiler.err.array.req.but.found=\
duke@1 135 array required, but {0} found
duke@1 136
duke@1 137 compiler.err.assignment.from.super-bound=\
duke@1 138 assigning from wildcard {0}
jjg@842 139
duke@1 140 compiler.err.assignment.to.extends-bound=\
duke@1 141 assigning to wildcard {0}
jjg@842 142
duke@1 143 compiler.err.attribute.value.must.be.constant=\
duke@1 144 attribute value must be constant
duke@1 145
duke@1 146 compiler.err.break.outside.switch.loop=\
duke@1 147 break outside switch or loop
duke@1 148
jjg@842 149 # 0: name
duke@1 150 compiler.err.call.must.be.first.stmt.in.ctor=\
duke@1 151 call to {0} must be first statement in constructor
jjg@842 152
duke@1 153 compiler.err.cant.apply.symbol=\
mcimadamore@80 154 {0} {1} in {4} {5} cannot be applied to given types\n\
mcimadamore@80 155 required: {2}\n\
mcimadamore@80 156 found: {3}
jjg@842 157
jjg@842 158 # 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
mcimadamore@299 159 compiler.err.cant.apply.symbol.1=\
mcimadamore@80 160 {0} {1} in {4} {5} cannot be applied to given types;\n\
mcimadamore@80 161 required: {2}\n\
mcimadamore@80 162 found: {3}\n\
mcimadamore@80 163 reason: {6}
jjg@842 164
jjg@842 165 # 0: symbol kind, 1: name, 2: list of type
mcimadamore@689 166 compiler.err.cant.apply.symbols=\
mcimadamore@689 167 no suitable {0} found for {1}({2})
jjg@842 168
jjg@842 169 # 0: symbol
duke@1 170 compiler.err.cant.assign.val.to.final.var=\
duke@1 171 cannot assign a value to final variable {0}
jjg@842 172
jjg@842 173 # 0: type
duke@1 174 compiler.err.cant.deref=\
duke@1 175 {0} cannot be dereferenced
jjg@842 176
duke@1 177 compiler.err.cant.extend.intf.annotation=\
duke@1 178 ''extends'' not allowed for @interfaces
jjg@842 179
jjg@842 180 # 0: symbol
duke@1 181 compiler.err.cant.inherit.from.final=\
duke@1 182 cannot inherit from final {0}
jjg@842 183
jjg@842 184 # 0: symbol
duke@1 185 compiler.err.cant.ref.before.ctor.called=\
duke@1 186 cannot reference {0} before supertype constructor has been called
jjg@842 187
duke@1 188 compiler.err.cant.ret.val.from.meth.decl.void=\
duke@1 189 cannot return a value from method whose result type is void
jjg@842 190
duke@1 191 compiler.err.cant.select.static.class.from.param.type=\
duke@1 192 cannot select a static class from a parameterized type
jjg@842 193
jjg@842 194 # 0: symbol, 1: string, 2: string
duke@1 195 compiler.err.cant.inherit.diff.arg=\
duke@1 196 {0} cannot be inherited with different arguments: <{1}> and <{2}>
jjg@842 197
duke@1 198 compiler.err.catch.without.try=\
duke@1 199 ''catch'' without ''try''
jjg@842 200
jjg@842 201 # 0: symbol kind, 1: symbol
duke@1 202 compiler.err.clash.with.pkg.of.same.name=\
mcimadamore@829 203 {0} {1} clashes with package of same name
jjg@842 204
duke@1 205 compiler.err.const.expr.req=\
duke@1 206 constant expression required
jjg@842 207
duke@1 208 compiler.err.cont.outside.loop=\
duke@1 209 continue outside of loop
jjg@842 210
jjg@842 211 # 0: symbol
duke@1 212 compiler.err.cyclic.inheritance=\
duke@1 213 cyclic inheritance involving {0}
jjg@842 214
duke@1 215 compiler.err.cyclic.annotation.element=\
duke@1 216 cyclic annotation element type
jjg@842 217
jjg@842 218 # 0: unused
duke@1 219 compiler.err.call.to.super.not.allowed.in.enum.ctor=\
duke@1 220 call to super not allowed in enum constructor
jjg@842 221
jjg@842 222 # 0: type
duke@1 223 compiler.err.no.superclass=\
duke@1 224 {0} has no superclass
duke@1 225
mcimadamore@822 226 compiler.err.wrong.target.for.polymorphic.signature.definition=\
mcimadamore@674 227 MethodHandle API building requires -target 7 runtimes or better; current is -target {0}
mcimadamore@674 228
jjg@842 229 # 0: symbol, 1: type, 2: symbol, 3: type, 4: unused
duke@1 230 compiler.err.concrete.inheritance.conflict=\
duke@1 231 methods {0} from {1} and {2} from {3} are inherited with the same signature
duke@1 232
duke@1 233 compiler.err.default.allowed.in.intf.annotation.member=\
duke@1 234 default value only allowed in an @interface member
jjg@842 235
jjg@842 236 # 0: symbol
duke@1 237 compiler.err.doesnt.exist=\
duke@1 238 package {0} does not exist
jjg@842 239
duke@1 240 compiler.err.duplicate.annotation=\
duke@1 241 duplicate annotation
jjg@842 242
jjg@842 243 # 0: name, 1: type
duke@1 244 compiler.err.duplicate.annotation.member.value=\
duke@1 245 duplicate annotation member value {0} in {1}
jjg@842 246
jjg@842 247 # 0: name
duke@1 248 compiler.err.duplicate.class=\
duke@1 249 duplicate class: {0}
jjg@842 250
duke@1 251 compiler.err.duplicate.case.label=\
duke@1 252 duplicate case label
jjg@842 253
duke@1 254 compiler.err.duplicate.default.label=\
duke@1 255 duplicate default label
duke@1 256
duke@1 257 compiler.err.else.without.if=\
duke@1 258 ''else'' without ''if''
jjg@842 259
duke@1 260 compiler.err.empty.char.lit=\
duke@1 261 empty character literal
jjg@842 262
jjg@842 263 # 0: symbol
duke@1 264 compiler.err.encl.class.required=\
duke@1 265 an enclosing instance that contains {0} is required
jjg@842 266
duke@1 267 compiler.err.enum.annotation.must.be.enum.constant=\
duke@1 268 an enum annotation value must be an enum constant
duke@1 269
duke@1 270 compiler.err.enum.cant.be.instantiated=\
duke@1 271 enum types may not be instantiated
jjg@842 272
duke@1 273 compiler.err.enum.label.must.be.unqualified.enum=\
duke@1 274 an enum switch case label must be the unqualified name of an enumeration constant
jjg@842 275
duke@1 276 compiler.err.enum.no.subclassing=\
duke@1 277 classes cannot directly extend java.lang.Enum
jjg@842 278
duke@1 279 compiler.err.enum.types.not.extensible=\
duke@1 280 enum types are not extensible
jjg@842 281
duke@1 282 compiler.err.enum.no.finalize=\
duke@1 283 enums cannot have finalize methods
jjg@842 284
jjg@842 285 # 0: file name, 1: string
duke@1 286 compiler.err.error.reading.file=\
duke@1 287 error reading {0}; {1}
jjg@842 288
jjg@842 289 # 0: type
duke@1 290 compiler.err.except.already.caught=\
duke@1 291 exception {0} has already been caught
jjg@842 292
jjg@842 293 # 0: type
duke@1 294 compiler.err.except.never.thrown.in.try=\
duke@1 295 exception {0} is never thrown in body of corresponding try statement
duke@1 296
jjg@842 297 # 0: symbol
duke@1 298 compiler.err.final.parameter.may.not.be.assigned=\
duke@1 299 final parameter {0} may not be assigned
jjg@842 300
jjg@842 301 # 0: symbol
mcimadamore@743 302 compiler.err.try.resource.may.not.be.assigned=\
mcimadamore@743 303 auto-closeable resource {0} may not be assigned
jjg@842 304
jjg@842 305 # 0: symbol
mcimadamore@550 306 compiler.err.multicatch.parameter.may.not.be.assigned=\
mcimadamore@550 307 multi-catch parameter {0} may not be assigned
jjg@842 308
mcimadamore@949 309 # 0: type, 1: type
mcimadamore@949 310 compiler.err.multicatch.types.must.be.disjoint=\
mcimadamore@949 311 Alternatives in a multi-catch statement cannot be related by subclassing\n\
mcimadamore@949 312 Alternative {0} is a subclass of alternative {1}
mcimadamore@949 313
duke@1 314 compiler.err.finally.without.try=\
duke@1 315 ''finally'' without ''try''
jjg@842 316
jjg@842 317 # 0: type, 1: message segment
duke@1 318 compiler.err.foreach.not.applicable.to.type=\
mcimadamore@829 319 for-each not applicable to expression type\n\
mcimadamore@829 320 required: {1}\n\
mcimadamore@829 321 found: {0}
jjg@842 322
duke@1 323 compiler.err.fp.number.too.large=\
duke@1 324 floating point number too large
jjg@842 325
duke@1 326 compiler.err.fp.number.too.small=\
duke@1 327 floating point number too small
duke@1 328
duke@1 329 compiler.err.generic.array.creation=\
duke@1 330 generic array creation
jjg@842 331
duke@1 332 compiler.err.generic.throwable=\
duke@1 333 a generic class may not extend java.lang.Throwable
duke@1 334
jjg@842 335 # 0: symbol
duke@1 336 compiler.err.icls.cant.have.static.decl=\
mcimadamore@830 337 Illegal static declaration in inner class {0}\n\
mcimadamore@830 338 modifier \''static\'' is only allowed in constant variable declarations
jjg@842 339
jjg@842 340 # 0: string
duke@1 341 compiler.err.illegal.char=\
duke@1 342 illegal character: \\{0}
jjg@842 343
duke@1 344 compiler.err.illegal.char.for.encoding=\
duke@1 345 unmappable character for encoding {0}
jjg@842 346
jjg@842 347 # 0: set of modifier, 1: set of modifier
duke@1 348 compiler.err.illegal.combination.of.modifiers=\
duke@1 349 illegal combination of modifiers: {0} and {1}
jjg@842 350
duke@1 351 compiler.err.illegal.enum.static.ref=\
duke@1 352 illegal reference to static field from initializer
jjg@842 353
duke@1 354 compiler.err.illegal.esc.char=\
duke@1 355 illegal escape character
jjg@842 356
duke@1 357 compiler.err.illegal.forward.ref=\
duke@1 358 illegal forward reference
jjg@842 359
jjg@842 360 # 0: symbol
duke@1 361 compiler.warn.forward.ref=\
duke@1 362 reference to variable ''{0}'' before it has been initialized
jjg@842 363
mcimadamore@94 364 compiler.err.illegal.self.ref=\
mcimadamore@94 365 self-reference in initializer
jjg@842 366
jjg@842 367 # 0: symbol
mcimadamore@94 368 compiler.warn.self.ref=\
mcimadamore@94 369 self-reference in initializer of variable ''{0}''
jjg@842 370
duke@1 371 compiler.err.illegal.generic.type.for.instof=\
duke@1 372 illegal generic type for instanceof
jjg@842 373
jjg@842 374 # 0: type
duke@1 375 compiler.err.illegal.initializer.for.type=\
duke@1 376 illegal initializer for {0}
jjg@842 377
duke@1 378 compiler.err.illegal.line.end.in.char.lit=\
duke@1 379 illegal line end in character literal
jjg@842 380
duke@1 381 compiler.err.illegal.nonascii.digit=\
duke@1 382 illegal non-ASCII digit
jjg@842 383
jjg@409 384 compiler.err.illegal.underscore=\
jjg@409 385 illegal underscore
jjg@842 386
jjg@1171 387 compiler.err.illegal.dot=\
jjg@1171 388 illegal ''.''
jjg@1171 389
jjg@842 390 # 0: symbol
duke@1 391 compiler.err.illegal.qual.not.icls=\
duke@1 392 illegal qualifier; {0} is not an inner class
jjg@842 393
duke@1 394 compiler.err.illegal.start.of.expr=\
duke@1 395 illegal start of expression
jjg@842 396
duke@1 397 compiler.err.illegal.start.of.type=\
duke@1 398 illegal start of type
jjg@842 399
duke@1 400 compiler.err.illegal.unicode.esc=\
duke@1 401 illegal unicode escape
jjg@842 402
jjg@842 403 # 0: symbol
duke@1 404 compiler.err.import.requires.canonical=\
duke@1 405 import requires canonical name for {0}
jjg@842 406
duke@1 407 compiler.err.improperly.formed.type.param.missing=\
duke@1 408 improperly formed type, some parameters are missing
jjg@842 409
duke@1 410 compiler.err.improperly.formed.type.inner.raw.param=\
mcimadamore@829 411 improperly formed type, type arguments given on a raw type
jjg@842 412
jjg@842 413 # 0: type, 1: type
duke@1 414 compiler.err.incomparable.types=\
duke@1 415 incomparable types: {0} and {1}
jjg@842 416
jjg@842 417 # 0: number
duke@1 418 compiler.err.int.number.too.large=\
duke@1 419 integer number too large: {0}
jjg@842 420
duke@1 421 compiler.err.internal.error.cant.instantiate=\
duke@1 422 internal error; cannot instantiate {0} at {1} to ({2})
jjg@842 423
duke@1 424 compiler.err.intf.annotation.members.cant.have.params=\
duke@1 425 @interface members may not have parameters
jjg@842 426
duke@1 427 compiler.err.intf.annotation.cant.have.type.params=\
duke@1 428 @interface may not have type parameters
jjg@842 429
duke@1 430 compiler.err.intf.annotation.members.cant.have.type.params=\
duke@1 431 @interface members may not have type parameters
jjg@842 432
jjg@842 433 # 0: symbol, 1: type
duke@1 434 compiler.err.intf.annotation.member.clash=\
duke@1 435 @interface member clashes with method ''{0}'' in {1}
jjg@842 436
duke@1 437 compiler.err.intf.expected.here=\
duke@1 438 interface expected here
jjg@842 439
duke@1 440 compiler.err.intf.meth.cant.have.body=\
duke@1 441 interface methods cannot have body
jjg@842 442
duke@1 443 compiler.err.invalid.annotation.member.type=\
duke@1 444 invalid type for annotation member
jjg@842 445
jjg@423 446 compiler.err.invalid.binary.number=\
jjg@423 447 binary numbers must contain at least one binary digit
jjg@842 448
duke@1 449 compiler.err.invalid.hex.number=\
duke@1 450 hexadecimal numbers must contain at least one hexadecimal digit
jjg@842 451
duke@1 452 compiler.err.invalid.meth.decl.ret.type.req=\
duke@1 453 invalid method declaration; return type required
jjg@842 454
mcimadamore@831 455 compiler.err.varargs.and.old.array.syntax=\
mcimadamore@831 456 legacy array notation not allowed on variable-arity parameter
duke@1 457
jjg@842 458 # 0: name
duke@1 459 compiler.err.label.already.in.use=\
duke@1 460 label {0} already in use
jjg@842 461
jjg@842 462 # 0: symbol
duke@1 463 compiler.err.local.var.accessed.from.icls.needs.final=\
duke@1 464 local variable {0} is accessed from within inner class; needs to be declared final
jjg@842 465
duke@1 466 compiler.err.local.enum=\
duke@1 467 enum types must not be local
jjg@842 468
duke@1 469 compiler.err.cannot.create.array.with.type.arguments=\
duke@1 470 cannot create array with type arguments
duke@1 471
mcimadamore@1061 472 compiler.err.cannot.create.array.with.diamond=\
mcimadamore@1061 473 cannot create array with ''<>''
mcimadamore@1061 474
duke@1 475 #
duke@1 476 # limits. We don't give the limits in the diagnostic because we expect
duke@1 477 # them to change, yet we want to use the same diagnostic. These are all
duke@1 478 # detected during code generation.
duke@1 479 #
duke@1 480 compiler.err.limit.code=\
duke@1 481 code too large
jjg@842 482
duke@1 483 compiler.err.limit.code.too.large.for.try.stmt=\
duke@1 484 code too large for try statement
jjg@842 485
duke@1 486 compiler.err.limit.dimensions=\
duke@1 487 array type has too many dimensions
jjg@842 488
duke@1 489 compiler.err.limit.locals=\
duke@1 490 too many local variables
jjg@842 491
duke@1 492 compiler.err.limit.parameters=\
duke@1 493 too many parameters
jjg@842 494
duke@1 495 compiler.err.limit.pool=\
duke@1 496 too many constants
jjg@842 497
duke@1 498 compiler.err.limit.pool.in.class=\
duke@1 499 too many constants in class {0}
jjg@842 500
duke@1 501 compiler.err.limit.stack=\
duke@1 502 code requires too much stack
jjg@842 503
duke@1 504 compiler.err.limit.string=\
duke@1 505 constant string too long
jjg@842 506
duke@1 507 compiler.err.limit.string.overflow=\
duke@1 508 UTF8 representation for string \"{0}...\" is too long for the constant pool
duke@1 509
duke@1 510 compiler.err.malformed.fp.lit=\
duke@1 511 malformed floating point literal
jjg@842 512
duke@1 513 compiler.err.method.does.not.override.superclass=\
duke@1 514 method does not override or implement a method from a supertype
jjg@842 515
duke@1 516 compiler.err.missing.meth.body.or.decl.abstract=\
duke@1 517 missing method body, or declare abstract
jjg@842 518
duke@1 519 compiler.err.missing.ret.stmt=\
duke@1 520 missing return statement
jjg@842 521
duke@1 522 compiler.err.missing.ret.val=\
duke@1 523 missing return value
jjg@842 524
jjg@842 525 # 0: set of modifier
duke@1 526 compiler.err.mod.not.allowed.here=\
duke@1 527 modifier {0} not allowed here
jjg@842 528
duke@1 529 compiler.err.intf.not.allowed.here=\
duke@1 530 interface not allowed here
jjg@842 531
duke@1 532 compiler.err.enums.must.be.static=\
duke@1 533 enum declarations allowed only in static contexts
duke@1 534
jjg@842 535 # 0: symbol, 1: symbol
duke@1 536 compiler.err.name.clash.same.erasure=\
duke@1 537 name clash: {0} and {1} have the same erasure
jjg@842 538
mcimadamore@858 539 # 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: unused, 5: unused
duke@1 540 compiler.err.name.clash.same.erasure.no.override=\
duke@1 541 name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither overrides the other
jjg@842 542
mcimadamore@858 543 # 0: symbol, 1: symbol, 2: symbol, 3: symbol, 4: symbol, 5: symbol
mcimadamore@858 544 compiler.err.name.clash.same.erasure.no.override.1=\
mcimadamore@858 545 name clash: {0} in {1} overrides a method whose erasure is the same as another method, yet neither overrides the other\n\
mcimadamore@858 546 first method: {2} in {3}\n\
mcimadamore@858 547 second method: {4} in {5}
mcimadamore@858 548
mcimadamore@858 549 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
mcimadamore@858 550 compiler.err.name.clash.same.erasure.no.hide=\
mcimadamore@858 551 name clash: {0} in {1} and {2} in {3} have the same erasure, yet neither hides the other
mcimadamore@858 552
duke@1 553 compiler.err.name.reserved.for.internal.use=\
duke@1 554 {0} is reserved for internal use
jjg@842 555
duke@1 556 compiler.err.native.meth.cant.have.body=\
duke@1 557 native methods cannot have a body
jjg@842 558
jjg@842 559 # 0: type, 1: type
duke@1 560 compiler.err.neither.conditional.subtype=\
jjg@842 561 incompatible types for ?: neither is a subtype of the other\n\
jjg@842 562 second operand: {0}\n\
jjg@842 563 third operand : {1}
jjg@842 564
duke@1 565 compiler.err.new.not.allowed.in.annotation=\
duke@1 566 ''new'' not allowed in an annotation
jjg@842 567
duke@1 568 compiler.err.no.annotation.member=\
duke@1 569 no annotation member {0} in {1}
jjg@842 570
duke@1 571 compiler.err.no.encl.instance.of.type.in.scope=\
duke@1 572 no enclosing instance of type {0} is in scope
jjg@842 573
duke@1 574 compiler.err.no.intf.expected.here=\
duke@1 575 no interface expected here
jjg@842 576
duke@1 577 compiler.err.no.match.entry=\
duke@1 578 {0} has no match in entry in {1}; required {2}
jjg@842 579
duke@1 580 compiler.err.not.annotation.type=\
duke@1 581 {0} is not an annotation type
jjg@842 582
jjg@842 583 # 0: symbol, 1: symbol
duke@1 584 compiler.err.not.def.access.class.intf.cant.access=\
duke@1 585 {0} in {1} is defined in an inaccessible class or interface
jjg@842 586
jjg@842 587 # 0: symbol, 1: symbol
duke@1 588 compiler.err.not.def.public.cant.access=\
duke@1 589 {0} is not public in {1}; cannot be accessed from outside package
jjg@842 590
jjg@842 591 # 0: name
duke@1 592 compiler.err.not.loop.label=\
duke@1 593 not a loop label: {0}
jjg@842 594
duke@1 595 compiler.err.not.stmt=\
duke@1 596 not a statement
jjg@842 597
jjg@842 598 # 0: symbol
duke@1 599 compiler.err.not.encl.class=\
duke@1 600 not an enclosing class: {0}
duke@1 601
jjg@842 602 # 0: name, 1: type, 2: unused
duke@1 603 compiler.err.operator.cant.be.applied=\
mcimadamore@829 604 bad operand type {1} for unary operator ''{0}''
jjg@842 605
jjg@842 606 # 0: name, 1: type, 2: type
mcimadamore@829 607 compiler.err.operator.cant.be.applied.1=\
mcimadamore@829 608 bad operand types for binary operator ''{0}''\n\
mcimadamore@829 609 first type: {1}\n\
mcimadamore@829 610 second type: {2}
duke@1 611
duke@1 612 compiler.err.pkg.annotations.sb.in.package-info.java=\
duke@1 613 package annotations should be in file package-info.java
jjg@842 614
jjg@842 615 # 0: symbol
duke@1 616 compiler.err.pkg.clashes.with.class.of.same.name=\
duke@1 617 package {0} clashes with class of same name
duke@1 618
jjg@215 619 compiler.err.warnings.and.werror=\
jjg@215 620 warnings found and -Werror specified
jjg@215 621
duke@1 622 # Errors related to annotation processing
duke@1 623
jjg@952 624 # 0: symbol, 1: string, 2: stack-trace
duke@1 625 compiler.err.proc.cant.access=\
jjg@842 626 cannot access {0}\n\
jjg@842 627 {1}\n\
jjg@842 628 Consult the following stack trace for details.\n\
jjg@842 629 {2}
duke@1 630
jjg@952 631 # 0: symbol, 1: string
jjg@952 632 compiler.err.proc.cant.access.1=\
jjg@952 633 cannot access {0}\n\
jjg@952 634 {1}
jjg@952 635
jjg@842 636 # 0: string
duke@1 637 compiler.err.proc.cant.find.class=\
duke@1 638 Could not find class file for ''{0}''.
duke@1 639
duke@1 640 # Print a client-generated error message; assumed to be localized, no translation required
jjg@842 641 # 0: string
duke@1 642 compiler.err.proc.messager=\
duke@1 643 {0}
duke@1 644
jjg@842 645 # 0: list of string
duke@1 646 compiler.err.proc.no.explicit.annotation.processing.requested=\
duke@1 647 Class names, ''{0}'', are only accepted if annotation processing is explicitly requested
duke@1 648
duke@1 649 compiler.err.proc.no.service=\
darcy@1048 650 A ServiceLoader was not usable and is required for annotation processing.
duke@1 651
duke@1 652 compiler.err.proc.processor.bad.option.name=\
duke@1 653 Bad option name ''{0}'' provided by processor ''{1}''
duke@1 654
jjg@842 655 # 0: string
duke@1 656 compiler.err.proc.processor.cant.instantiate=\
duke@1 657 Could not instantiate an instance of processor ''{0}''
duke@1 658
jjg@842 659 # 0: string
duke@1 660 compiler.err.proc.processor.not.found=\
duke@1 661 Annotation processor ''{0}'' not found
duke@1 662
jjg@842 663 # 0: string
duke@1 664 compiler.err.proc.processor.wrong.type=\
duke@1 665 Annotation processor ''{0}'' does not implement javax.annotation.processing.Processor
duke@1 666
duke@1 667 compiler.err.proc.service.problem=\
duke@1 668 Error creating a service loader to load Processors.
duke@1 669
duke@1 670 compiler.err.proc.bad.config.file=\
duke@1 671 Bad service configuration file, or exception thrown while constructing Processor object: {0}
duke@1 672
duke@1 673 compiler.err.proc.cant.create.loader=\
duke@1 674 Could not create class loader for annotation processors: {0}
duke@1 675
jjg@842 676 # 0: unused
duke@1 677 compiler.err.qualified.new.of.static.class=\
duke@1 678 qualified new of static class
duke@1 679
duke@1 680 compiler.err.recursive.ctor.invocation=\
duke@1 681 recursive constructor invocation
jjg@842 682
jjg@842 683 # 0: name, 1: symbol kind, 2: symbol, 3: symbol, 4: symbol kind, 5: symbol, 6: symbol
duke@1 684 compiler.err.ref.ambiguous=\
duke@1 685 reference to {0} is ambiguous, both {1} {2} in {3} and {4} {5} in {6} match
jjg@842 686
duke@1 687 compiler.err.repeated.annotation.target=\
duke@1 688 repeated annotation target
jjg@842 689
duke@1 690 compiler.err.repeated.interface=\
duke@1 691 repeated interface
jjg@842 692
duke@1 693 compiler.err.repeated.modifier=\
duke@1 694 repeated modifier
jjg@842 695
jjg@842 696 # 0: symbol, 1: set of modifier, 2: symbol
duke@1 697 compiler.err.report.access=\
duke@1 698 {0} has {1} access in {2}
jjg@842 699
duke@1 700 compiler.err.ret.outside.meth=\
duke@1 701 return outside method
duke@1 702
duke@1 703 compiler.err.signature.doesnt.match.supertype=\
duke@1 704 signature does not match {0}; incompatible supertype
jjg@842 705
duke@1 706 compiler.err.signature.doesnt.match.intf=\
duke@1 707 signature does not match {0}; incompatible interfaces
jjg@842 708
jjg@842 709 # 0: symbol, 1: symbol, 2: symbol
duke@1 710 compiler.err.does.not.override.abstract=\
duke@1 711 {0} is not abstract and does not override abstract method {1} in {2}
jjg@842 712
duke@1 713 compiler.err.source.cant.overwrite.input.file=\
duke@1 714 error writing source; cannot overwrite input file {0}
jjg@842 715
duke@1 716 compiler.err.stack.sim.error=\
duke@1 717 Internal error: stack sim error on {0}
jjg@842 718
duke@1 719 compiler.err.static.imp.only.classes.and.interfaces=\
duke@1 720 static import only from classes and interfaces
jjg@842 721
darcy@430 722 compiler.err.string.const.req=\
darcy@430 723 constant string expression required
jjg@842 724
jjg@842 725 # 0: symbol, 1: symbol
duke@1 726 compiler.err.synthetic.name.conflict=\
duke@1 727 the symbol {0} conflicts with a compiler-synthesized symbol in {1}
jjg@842 728
jjg@842 729 # 0: symbol, 1: symbol
mcimadamore@359 730 compiler.warn.synthetic.name.conflict=\
mcimadamore@359 731 the symbol {0} conflicts with a compiler-synthesized symbol in {1}
duke@1 732
duke@1 733 compiler.err.throws.not.allowed.in.intf.annotation=\
duke@1 734 throws clause not allowed in @interface members
jjg@842 735
duke@1 736 compiler.err.try.without.catch.or.finally=\
duke@1 737 ''try'' without ''catch'' or ''finally''
jjg@842 738
darcy@609 739 compiler.err.try.without.catch.finally.or.resource.decls=\
darcy@609 740 ''try'' without ''catch'', ''finally'' or resource declarations
jjg@842 741
jjg@842 742 # 0: symbol
duke@1 743 compiler.err.type.doesnt.take.params=\
duke@1 744 type {0} does not take parameters
jjg@842 745
duke@1 746 compiler.err.type.var.cant.be.deref=\
duke@1 747 cannot select from a type variable
jjg@842 748
duke@1 749 compiler.err.type.var.may.not.be.followed.by.other.bounds=\
duke@1 750 a type variable may not be followed by other bounds
jjg@842 751
duke@1 752 compiler.err.type.var.more.than.once=\
duke@1 753 type variable {0} occurs more than once in result type of {1}; cannot be left uninstantiated
jjg@842 754
duke@1 755 compiler.err.type.var.more.than.once.in.result=\
duke@1 756 type variable {0} occurs more than once in type of {1}; cannot be left uninstantiated
jjg@842 757
jjg@842 758 # 0: type, 1: type, 2: string
duke@1 759 compiler.err.types.incompatible.diff.ret=\
duke@1 760 types {0} and {1} are incompatible; both define {2}, but with unrelated return types
duke@1 761
duke@1 762 compiler.err.unclosed.char.lit=\
duke@1 763 unclosed character literal
jjg@842 764
duke@1 765 compiler.err.unclosed.comment=\
duke@1 766 unclosed comment
jjg@842 767
duke@1 768 compiler.err.unclosed.str.lit=\
duke@1 769 unclosed string literal
jjg@842 770
jjg@842 771 # 0: name
duke@1 772 compiler.err.unsupported.encoding=\
duke@1 773 unsupported encoding: {0}
jjg@842 774
duke@1 775 compiler.err.io.exception=\
duke@1 776 error reading source file: {0}
jjg@842 777
jjg@842 778 # 0: name
duke@1 779 compiler.err.undef.label=\
duke@1 780 undefined label: {0}
jjg@842 781
duke@1 782 compiler.err.undetermined.type=\
mcimadamore@829 783 cannot infer type arguments for {0}
jjg@842 784
jjg@842 785 # 0: type, 1: message segment
duke@1 786 compiler.err.undetermined.type.1=\
mcimadamore@829 787 cannot infer type arguments for {0};\n\
mcimadamore@829 788 reason: {1}
jjg@842 789
jjg@842 790 # 0: list of type, 1: message segment
mcimadamore@299 791 compiler.err.invalid.inferred.types=\
mcimadamore@299 792 invalid inferred types for {0}; {1}
jjg@842 793
jjg@842 794 # 0: message segment, 1: unused
mcimadamore@537 795 compiler.err.cant.apply.diamond=\
mcimadamore@537 796 cannot infer type arguments for {0}
jjg@842 797
jjg@1136 798 # 0: message segment or type, 1: message segment
mcimadamore@537 799 compiler.err.cant.apply.diamond.1=\
mcimadamore@537 800 cannot infer type arguments for {0};\n\
mcimadamore@537 801 reason: {1}
jjg@842 802
duke@1 803 compiler.err.unreachable.stmt=\
duke@1 804 unreachable statement
jjg@842 805
duke@1 806 compiler.err.initializer.must.be.able.to.complete.normally=\
duke@1 807 initializer must be able to complete normally
jjg@842 808
jjg@842 809 # 0: type
duke@1 810 compiler.err.unreported.exception.need.to.catch.or.throw=\
duke@1 811 unreported exception {0}; must be caught or declared to be thrown
jjg@842 812
jjg@842 813 # 0: type
duke@1 814 compiler.err.unreported.exception.default.constructor=\
duke@1 815 unreported exception {0} in default constructor
jjg@842 816
mcimadamore@878 817 # 0: type, 1: name
mcimadamore@878 818 compiler.err.unreported.exception.implicit.close=\
mcimadamore@878 819 unreported exception {0}; must be caught or declared to be thrown\n\
mcimadamore@878 820 exception thrown from implicit call to close() on resource variable ''{1}''
mcimadamore@878 821
duke@1 822 compiler.err.unsupported.cross.fp.lit=\
duke@1 823 hexadecimal floating-point literals are not supported on this VM
jjg@842 824
duke@1 825 compiler.err.void.not.allowed.here=\
duke@1 826 ''void'' type not allowed here
duke@1 827
jjg@842 828 # 0: string
duke@1 829 compiler.err.wrong.number.type.args=\
duke@1 830 wrong number of type arguments; required {0}
duke@1 831
jjg@842 832 # 0: symbol
duke@1 833 compiler.err.var.might.already.be.assigned=\
duke@1 834 variable {0} might already have been assigned
jjg@842 835
jjg@842 836 # 0: symbol
duke@1 837 compiler.err.var.might.not.have.been.initialized=\
duke@1 838 variable {0} might not have been initialized
jjg@842 839
jjg@842 840 # 0: symbol
duke@1 841 compiler.err.var.might.be.assigned.in.loop=\
duke@1 842 variable {0} might be assigned in loop
duke@1 843
jjg@842 844 # 0: symbol, 1: message segment
mcimadamore@795 845 compiler.err.varargs.invalid.trustme.anno=\
mcimadamore@795 846 Invalid {0} annotation. {1}
jjg@842 847
jjg@842 848 # 0: type
mcimadamore@795 849 compiler.misc.varargs.trustme.on.reifiable.varargs=\
mcimadamore@795 850 Varargs element type {0} is reifiable.
jjg@842 851
jjg@842 852 # 0: symbol
mcimadamore@795 853 compiler.misc.varargs.trustme.on.non.varargs.meth=\
mcimadamore@795 854 Method {0} is not a varargs method.
jjg@842 855
jjg@842 856 # 0: symbol
mcimadamore@795 857 compiler.misc.varargs.trustme.on.virtual.varargs=\
mcimadamore@795 858 Instance method {0} is not final.
mcimadamore@795 859
jjg@1136 860 # 0: type, 1: symbol kind, 2: symbol
mcimadamore@845 861 compiler.misc.inaccessible.varargs.type=\
mcimadamore@845 862 formal varargs element type {0} is not accessible from {1} {2}
mcimadamore@845 863
duke@1 864 # In the following string, {1} will always be the detail message from
duke@1 865 # java.io.IOException.
jjg@842 866 # 0: symbol, 1: string
duke@1 867 compiler.err.class.cant.write=\
duke@1 868 error while writing {0}: {1}
duke@1 869
duke@1 870 # In the following string, {0} is the name of the class in the Java source.
duke@1 871 # It really should be used two times..
jjg@842 872 # 0: name
duke@1 873 compiler.err.class.public.should.be.in.file=\
duke@1 874 class {0} is public, should be declared in a file named {0}.java
duke@1 875
duke@1 876 ## All errors which do not refer to a particular line in the source code are
duke@1 877 ## preceded by this string.
duke@1 878 compiler.err.error=\
duke@1 879 error:\u0020
duke@1 880
duke@1 881 # The following error messages do not refer to a line in the source code.
duke@1 882 compiler.err.cant.read.file=\
duke@1 883 cannot read: {0}
duke@1 884
duke@1 885 #####
duke@1 886
duke@1 887 # Fatal Errors
duke@1 888
duke@1 889 compiler.misc.fatal.err.no.java.lang=\
duke@1 890 Fatal Error: Unable to find package java.lang in classpath or bootclasspath
jjg@842 891
duke@1 892 compiler.misc.fatal.err.cant.locate.meth=\
duke@1 893 Fatal Error: Unable to find method {0}
jjg@842 894
duke@1 895 compiler.misc.fatal.err.cant.locate.field=\
duke@1 896 Fatal Error: Unable to find field {0}
jjg@842 897
duke@1 898 compiler.misc.fatal.err.cant.locate.ctor=\
duke@1 899 Fatal Error: Unable to find constructor for {0}
jjg@842 900
jjg@1096 901 compiler.misc.fatal.err.cant.close=\
jjg@1096 902 Fatal Error: Cannot close compiler resources
duke@1 903
duke@1 904 #####
duke@1 905
duke@1 906 ##
duke@1 907 ## miscellaneous strings
duke@1 908 ##
duke@1 909
duke@1 910 compiler.misc.source.unavailable=\
duke@1 911 (source unavailable)
jjg@842 912
duke@1 913 compiler.misc.base.membership=\
duke@1 914 all your base class are belong to us
jjg@842 915
jjg@842 916 # 0: string, 1: string, 2: boolean
duke@1 917 compiler.misc.x.print.processor.info=\
duke@1 918 Processor {0} matches {1} and returns {2}.
jjg@842 919
jjg@842 920 # 0: number, 1: string, 2: set of symbol, 3: boolean
duke@1 921 compiler.misc.x.print.rounds=\
duke@1 922 Round {0}:\n\tinput files: {1}\n\tannotations: {2}\n\tlast round: {3}
duke@1 923
duke@1 924 #####
duke@1 925
duke@1 926 ## The following string will appear before all messages keyed as:
duke@1 927 ## "compiler.note".
duke@1 928 compiler.note.note=\
duke@1 929 Note:\u0020
duke@1 930
jjg@842 931 # 0: file name
duke@1 932 compiler.note.deprecated.filename=\
duke@1 933 {0} uses or overrides a deprecated API.
jjg@842 934
duke@1 935 compiler.note.deprecated.plural=\
duke@1 936 Some input files use or override a deprecated API.
jjg@842 937
duke@1 938 # The following string may appear after one of the above deprecation
duke@1 939 # messages.
duke@1 940 compiler.note.deprecated.recompile=\
duke@1 941 Recompile with -Xlint:deprecation for details.
duke@1 942
jjg@842 943 # 0: file name
duke@1 944 compiler.note.deprecated.filename.additional=\
duke@1 945 {0} has additional uses or overrides of a deprecated API.
jjg@842 946
duke@1 947 compiler.note.deprecated.plural.additional=\
duke@1 948 Some input files additionally use or override a deprecated API.
duke@1 949
jjg@842 950 # 0: file name
duke@1 951 compiler.note.unchecked.filename=\
duke@1 952 {0} uses unchecked or unsafe operations.
jjg@842 953
duke@1 954 compiler.note.unchecked.plural=\
duke@1 955 Some input files use unchecked or unsafe operations.
jjg@842 956
duke@1 957 # The following string may appear after one of the above deprecation
duke@1 958 # messages.
duke@1 959 compiler.note.unchecked.recompile=\
duke@1 960 Recompile with -Xlint:unchecked for details.
duke@1 961
jjg@842 962 # 0: file name
duke@1 963 compiler.note.unchecked.filename.additional=\
duke@1 964 {0} has additional unchecked or unsafe operations.
jjg@842 965
duke@1 966 compiler.note.unchecked.plural.additional=\
duke@1 967 Some input files additionally use unchecked or unsafe operations.
duke@1 968
jjg@842 969 # 0: file name
jjg@377 970 compiler.note.sunapi.filename=\
jjg@582 971 {0} uses internal proprietary API that may be removed in a future release.
jjg@842 972
jjg@377 973 compiler.note.sunapi.plural=\
jjg@582 974 Some input files use internal proprietary API that may be removed in a future release.
jjg@842 975
jjg@377 976 # The following string may appear after one of the above sunapi messages.
jjg@377 977 compiler.note.sunapi.recompile=\
jjg@377 978 Recompile with -Xlint:sunapi for details.
jjg@377 979
jjg@842 980 # 0: file name
jjg@377 981 compiler.note.sunapi.filename.additional=\
jjg@582 982 {0} uses additional internal proprietary API that may be removed in a future release.
jjg@842 983
jjg@377 984 compiler.note.sunapi.plural.additional=\
jjg@582 985 Some input files additionally use internal proprietary API that may be removed in a future release.
jjg@377 986
jjg@377 987 # Notes related to annotation processing
jjg@377 988
jjg@377 989 # Print a client-generated note; assumed to be localized, no translation required
jjg@842 990 # 0: string
jjg@377 991 compiler.note.proc.messager=\
jjg@377 992 {0}
jjg@377 993
duke@1 994 #####
duke@1 995
jjg@842 996 # 0: number
duke@1 997 compiler.misc.count.error=\
duke@1 998 {0} error
jjg@842 999
jjg@842 1000 # 0: number
duke@1 1001 compiler.misc.count.error.plural=\
duke@1 1002 {0} errors
jjg@842 1003
jjg@842 1004 # 0: number
duke@1 1005 compiler.misc.count.warn=\
duke@1 1006 {0} warning
jjg@842 1007
jjg@842 1008 # 0: number
duke@1 1009 compiler.misc.count.warn.plural=\
duke@1 1010 {0} warnings
duke@1 1011
jjg@597 1012 compiler.misc.version.not.available=\
jjg@597 1013 (version info not available)
jjg@597 1014
duke@1 1015 ## extra output when using -verbose (JavaCompiler)
duke@1 1016
jjg@842 1017 # 0: symbol
duke@1 1018 compiler.misc.verbose.checking.attribution=\
duke@1 1019 [checking {0}]
jjg@842 1020
jjg@842 1021 # 0: string
duke@1 1022 compiler.misc.verbose.parsing.done=\
duke@1 1023 [parsing completed {0}ms]
jjg@842 1024
jjg@842 1025 # 0: file name
duke@1 1026 compiler.misc.verbose.parsing.started=\
duke@1 1027 [parsing started {0}]
jjg@842 1028
jjg@842 1029 # 0: string
duke@1 1030 compiler.misc.verbose.total=\
duke@1 1031 [total {0}ms]
jjg@842 1032
jjg@842 1033 # 0: file name
duke@1 1034 compiler.misc.verbose.wrote.file=\
duke@1 1035 [wrote {0}]
duke@1 1036
duke@1 1037 ## extra output when using -verbose (Retro)
duke@1 1038 compiler.misc.verbose.retro=\
duke@1 1039 [retrofitting {0}]
jjg@842 1040
duke@1 1041 compiler.misc.verbose.retro.with=\
duke@1 1042 \tretrofitting {0} with {1}
jjg@842 1043
duke@1 1044 compiler.misc.verbose.retro.with.list=\
duke@1 1045 \tretrofitting {0} with type parameters {1}, supertype {2}, interfaces {3}
duke@1 1046
duke@1 1047 ## extra output when using -verbose (code/ClassReader)
jjg@842 1048 # 0: string
duke@1 1049 compiler.misc.verbose.loading=\
duke@1 1050 [loading {0}]
duke@1 1051
jjg@842 1052 # 0: string
duke@1 1053 compiler.misc.verbose.sourcepath=\
duke@1 1054 [search path for source files: {0}]
duke@1 1055
jjg@842 1056 # 0: string
duke@1 1057 compiler.misc.verbose.classpath=\
duke@1 1058 [search path for class files: {0}]
duke@1 1059
duke@1 1060 ## extra output when using -checkclassfile (code/ClassReader)
duke@1 1061 compiler.misc.ccf.found.later.version=\
duke@1 1062 class file has later version than expected: {0}
jjg@842 1063
duke@1 1064 compiler.misc.ccf.unrecognized.attribute=\
duke@1 1065 unrecognized attribute: {0}
duke@1 1066
duke@1 1067 ## extra output when using -prompt (util/Log)
duke@1 1068 compiler.misc.resume.abort=\
duke@1 1069 R)esume, A)bort>
duke@1 1070
duke@1 1071 #####
duke@1 1072
duke@1 1073 ##
duke@1 1074 ## warnings
duke@1 1075 ##
duke@1 1076
duke@1 1077 ## All warning messages are preceded by the following string.
duke@1 1078 compiler.warn.warning=\
duke@1 1079 warning:\u0020
duke@1 1080
jjg@612 1081 ## Warning messages may also include the following prefix to identify a
jjg@612 1082 ## lint option
jjg@842 1083 # 0: option name
jjg@612 1084 compiler.warn.lintOption=\
jjg@612 1085 [{0}]\u0020
jjg@612 1086
jjg@842 1087 # 0: symbol
duke@1 1088 compiler.warn.constant.SVUID=\
jjg@612 1089 serialVersionUID must be constant in class {0}
duke@1 1090
jjg@842 1091 # 0: file name
duke@1 1092 compiler.warn.dir.path.element.not.found=\
jjg@612 1093 bad path element "{0}": no such directory
duke@1 1094
duke@1 1095 compiler.warn.finally.cannot.complete=\
jjg@612 1096 finally clause cannot complete normally
duke@1 1097
jjg@842 1098 # 0: symbol, 1: symbol
duke@1 1099 compiler.warn.has.been.deprecated=\
jjg@612 1100 {0} in {1} has been deprecated
duke@1 1101
jjg@842 1102 # 0: symbol
duke@1 1103 compiler.warn.sun.proprietary=\
jjg@582 1104 {0} is internal proprietary API and may be removed in a future release
duke@1 1105
duke@1 1106 compiler.warn.illegal.char.for.encoding=\
duke@1 1107 unmappable character for encoding {0}
jjg@612 1108
jjg@842 1109 # 0: symbol
duke@1 1110 compiler.warn.improper.SVUID=\
jjg@612 1111 serialVersionUID must be declared static final in class {0}
duke@1 1112
jjg@842 1113 # 0: type, 1: type
duke@1 1114 compiler.warn.inexact.non-varargs.call=\
jjg@842 1115 non-varargs call of varargs method with inexact argument type for last parameter;\n\
jjg@842 1116 cast to {0} for a varargs call\n\
jjg@842 1117 cast to {1} for a non-varargs call and to suppress this warning
duke@1 1118
mcimadamore@935 1119 # 0: list of type
mcimadamore@935 1120 compiler.warn.unreachable.catch=\
mcimadamore@935 1121 unreachable catch clause\n\
mcimadamore@935 1122 thrown type {0} has already been caught
mcimadamore@935 1123
mcimadamore@935 1124 # 0: list of type
mcimadamore@935 1125 compiler.warn.unreachable.catch.1=\
mcimadamore@935 1126 unreachable catch clause\n\
mcimadamore@935 1127 thrown types {0} have already been caught
mcimadamore@935 1128
jjg@842 1129 # 0: symbol
duke@1 1130 compiler.warn.long.SVUID=\
jjg@612 1131 serialVersionUID must be of type long in class {0}
duke@1 1132
jjg@842 1133 # 0: symbol
duke@1 1134 compiler.warn.missing.SVUID=\
jjg@612 1135 serializable class {0} has no definition of serialVersionUID
duke@1 1136
jjg@842 1137 # 0: message segment
duke@1 1138 compiler.warn.override.varargs.missing=\
duke@1 1139 {0}; overridden method has no ''...''
jjg@842 1140
jjg@842 1141 # 0: message segment
duke@1 1142 compiler.warn.override.varargs.extra=\
duke@1 1143 {0}; overriding method is missing ''...''
jjg@842 1144
duke@1 1145 compiler.warn.override.bridge=\
duke@1 1146 {0}; overridden method is a bridge method
duke@1 1147
jjg@842 1148 # 0: symbol
duke@1 1149 compiler.warn.pkg-info.already.seen=\
jjg@457 1150 a package-info.java file has already been seen for package {0}
jjg@612 1151
jjg@842 1152 # 0: file name
duke@1 1153 compiler.warn.path.element.not.found=\
jjg@612 1154 bad path element "{0}": no such file or directory
jjg@612 1155
duke@1 1156 compiler.warn.possible.fall-through.into.case=\
jjg@612 1157 possible fall-through into case
duke@1 1158
jjg@842 1159 # 0: type
duke@1 1160 compiler.warn.redundant.cast=\
jjg@612 1161 redundant cast to {0}
duke@1 1162
jjg@842 1163 # 0: number
duke@1 1164 compiler.warn.position.overflow=\
duke@1 1165 Position encoding overflows at line {0}
duke@1 1166
jjg@842 1167 # 0: file name, 1: number, 2: number
duke@1 1168 compiler.warn.big.major.version=\
duke@1 1169 {0}: major version {1} is newer than {2}, the highest major version supported by this compiler.\n\
duke@1 1170 It is recommended that the compiler be upgraded.
duke@1 1171
jjg@842 1172 # 0: symbol kind, 1: symbol
jjg@505 1173 compiler.warn.static.not.qualified.by.type=\
jjg@612 1174 static {0} should be qualified by type name, {1}, instead of by an expression
jjg@505 1175
jjg@842 1176 # 0: string
jjg@757 1177 compiler.warn.source.no.bootclasspath=\
jjg@757 1178 bootstrap class path not set in conjunction with -source {0}
jjg@757 1179
jjg@842 1180 # 0: name, 1: number, 2: number, 3: number, 4: number
jjg@776 1181 compiler.warn.future.attr=\
jjg@776 1182 {0} attribute introduced in version {1}.{2} class files is ignored in version {3}.{4} class files
jjg@776 1183
duke@1 1184 # Warnings related to annotation processing
jjg@842 1185 # 0: name
duke@1 1186 compiler.warn.proc.package.does.not.exist=\
duke@1 1187 package {0} does not exist
jjg@842 1188
jjg@842 1189 # 0: name
duke@1 1190 compiler.warn.proc.file.reopening=\
duke@1 1191 Attempt to create a file for ''{0}'' multiple times
duke@1 1192
jjg@842 1193 # 0: name
duke@1 1194 compiler.warn.proc.type.already.exists=\
duke@1 1195 A file for type ''{0}'' already exists on the sourcepath or classpath
duke@1 1196
jjg@842 1197 # 0: name
duke@1 1198 compiler.warn.proc.type.recreate=\
duke@1 1199 Attempt to create a file for type ''{0}'' multiple times
duke@1 1200
jjg@842 1201 # 0: string
duke@1 1202 compiler.warn.proc.illegal.file.name=\
duke@1 1203 Cannot create file for illegal name ''{0}''.
duke@1 1204
jjg@842 1205 # 0: string, 1: string
jjg@618 1206 compiler.warn.proc.suspicious.class.name=\
jjg@618 1207 Creating file for a type whose name ends in {1}: ''{0}''
jjg@618 1208
jjg@842 1209 # 0: name
duke@1 1210 compiler.warn.proc.file.create.last.round=\
duke@1 1211 File for type ''{0}'' created in the last round will not be subject to annotation processing.
duke@1 1212
jjg@842 1213 # 0: string, 1: string
duke@1 1214 compiler.warn.proc.malformed.supported.string=\
duke@1 1215 Malformed string ''{0}'' for a supported annotation type returned by processor ''{1}''
duke@1 1216
jjg@842 1217 # 0: set of string
duke@1 1218 compiler.warn.proc.annotations.without.processors=\
duke@1 1219 No processor claimed any of these annotations: {0}
duke@1 1220
jjg@842 1221 # 0: source version, 1: string, 2: string
duke@1 1222 compiler.warn.proc.processor.incompatible.source.version=\
duke@1 1223 Supported source version ''{0}'' from annotation processor ''{1}'' less than -source ''{2}''
duke@1 1224
duke@1 1225 compiler.warn.proc.proc-only.requested.no.procs=\
duke@1 1226 Annotation processing without compilation requested but no processors were found.
duke@1 1227
duke@1 1228 compiler.warn.proc.use.implicit=\
jjg@842 1229 Implicitly compiled files were not subject to annotation processing.\n\
jjg@842 1230 Use -implicit to specify a policy for implicit compilation.
duke@1 1231
duke@1 1232 compiler.warn.proc.use.proc.or.implicit=\
jjg@842 1233 Implicitly compiled files were not subject to annotation processing.\n\
jjg@842 1234 Use -proc:none to disable annotation processing or -implicit to specify a policy for implicit compilation.
duke@1 1235
duke@1 1236 # Print a client-generated warning; assumed to be localized, no translation required
jjg@842 1237 # 0: string
duke@1 1238 compiler.warn.proc.messager=\
duke@1 1239 {0}
duke@1 1240
jjg@842 1241 # 0: set of name
duke@1 1242 compiler.warn.proc.unclosed.type.files=\
duke@1 1243 Unclosed files for the types ''{0}''; these types will not undergo annotation processing
duke@1 1244
jjg@842 1245 # 0: string
duke@1 1246 compiler.warn.proc.unmatched.processor.options=\
duke@1 1247 The following options were not recognized by any processor: ''{0}''
duke@1 1248
mcimadamore@743 1249 compiler.warn.try.explicit.close.call=\
mcimadamore@743 1250 explicit call to close() on an auto-closeable resource
jjg@842 1251
jjg@842 1252 # 0: symbol
mcimadamore@743 1253 compiler.warn.try.resource.not.referenced=\
mcimadamore@743 1254 auto-closeable resource {0} is never referenced in body of corresponding try statement
jjg@842 1255
mcimadamore@951 1256 # 0: type
mcimadamore@951 1257 compiler.warn.try.resource.throws.interrupted.exc=\
mcimadamore@951 1258 auto-closeable resource {0} has a member method close() that could throw InterruptedException
mcimadamore@951 1259
duke@1 1260 compiler.warn.unchecked.assign=\
jjg@612 1261 unchecked assignment: {0} to {1}
jjg@842 1262
jjg@842 1263 # 0: symbol, 1: type
duke@1 1264 compiler.warn.unchecked.assign.to.var=\
jjg@612 1265 unchecked assignment to variable {0} as member of raw type {1}
jjg@842 1266
jjg@842 1267 # 0: symbol, 1: type
duke@1 1268 compiler.warn.unchecked.call.mbr.of.raw.type=\
jjg@612 1269 unchecked call to {0} as a member of the raw type {1}
jjg@842 1270
duke@1 1271 compiler.warn.unchecked.cast.to.type=\
jjg@612 1272 unchecked cast to type {0}
jjg@842 1273
jjg@842 1274 # 0: symbol kind, 1: name, 2: list of type, 3: list of type, 4: symbol kind, 5: symbol
duke@1 1275 compiler.warn.unchecked.meth.invocation.applied=\
jjg@612 1276 unchecked method invocation: {0} {1} in {4} {5} is applied to given types\n\
mcimadamore@161 1277 required: {2}\n\
mcimadamore@161 1278 found: {3}
mcimadamore@161 1279
jjg@842 1280 # 0: type
duke@1 1281 compiler.warn.unchecked.generic.array.creation=\
jjg@612 1282 unchecked generic array creation for varargs parameter of type {0}
duke@1 1283
jjg@842 1284 # 0: type
mcimadamore@795 1285 compiler.warn.unchecked.varargs.non.reifiable.type=\
jjg@612 1286 Possible heap pollution from parameterized vararg type {0}
mcimadamore@580 1287
jjg@842 1288 # 0: symbol
mcimadamore@795 1289 compiler.warn.varargs.unsafe.use.varargs.param=\
mcimadamore@795 1290 Varargs method could cause heap pollution from non-reifiable varargs parameter {0}
mcimadamore@795 1291
duke@1 1292 compiler.warn.missing.deprecated.annotation=\
jjg@612 1293 deprecated item is not annotated with @Deprecated
duke@1 1294
duke@1 1295 compiler.warn.invalid.archive.file=\
jjg@612 1296 Unexpected file on path: {0}
duke@1 1297
duke@1 1298 compiler.warn.unexpected.archive.file=\
jjg@612 1299 Unexpected extension for archive file: {0}
duke@1 1300
duke@1 1301 compiler.warn.div.zero=\
jjg@612 1302 division by zero
duke@1 1303
duke@1 1304 compiler.warn.empty.if=\
jjg@612 1305 empty statement after if
duke@1 1306
duke@1 1307 compiler.warn.annotation.method.not.found=\
duke@1 1308 Cannot find annotation method ''{1}()'' in type ''{0}''
duke@1 1309
duke@1 1310 compiler.warn.annotation.method.not.found.reason=\
duke@1 1311 Cannot find annotation method ''{1}()'' in type ''{0}'': {2}
duke@1 1312
mcimadamore@992 1313 # 0: symbol, 1: name
mcimadamore@992 1314 compiler.warn.unknown.enum.constant=\
mcimadamore@992 1315 unknown enum constant {1}.{2}
mcimadamore@992 1316
mcimadamore@992 1317 # 0: symbol, 1: name, 2: message segment
mcimadamore@992 1318 compiler.warn.unknown.enum.constant.reason=\
mcimadamore@992 1319 unknown enum constant {1}.{2}\n\
mcimadamore@992 1320 reason: {3}
mcimadamore@992 1321
jjg@842 1322 # 0: type, 1: type
mcimadamore@122 1323 compiler.warn.raw.class.use=\
jjg@612 1324 found raw type: {0}\n\
mcimadamore@829 1325 missing type arguments for generic class {1}
mcimadamore@122 1326
jjg@842 1327 # 0: unused, 1: unused
mcimadamore@731 1328 compiler.warn.diamond.redundant.args=\
mcimadamore@731 1329 redundant type arguments in new expression (use diamond operator instead).
jjg@842 1330
jjg@842 1331 # 0: type, 1: type
mcimadamore@731 1332 compiler.warn.diamond.redundant.args.1=\
mcimadamore@731 1333 redundant type arguments in new expression (use diamond operator instead).\n\
mcimadamore@731 1334 explicit: {0}\n\
mcimadamore@731 1335 inferred: {1}
mcimadamore@731 1336
jjg@842 1337 # 0: symbol, 1: message segment
mcimadamore@795 1338 compiler.warn.varargs.redundant.trustme.anno=\
mcimadamore@795 1339 Redundant {0} annotation. {1}
mcimadamore@795 1340
duke@1 1341 #####
duke@1 1342
duke@1 1343 ## The following are tokens which are non-terminals in the language. They should
duke@1 1344 ## be named as JLS3 calls them when translated to the appropriate language.
duke@1 1345 compiler.misc.token.identifier=\
duke@1 1346 <identifier>
jjg@842 1347
duke@1 1348 compiler.misc.token.character=\
duke@1 1349 <character>
jjg@842 1350
duke@1 1351 compiler.misc.token.string=\
duke@1 1352 <string>
jjg@842 1353
duke@1 1354 compiler.misc.token.integer=\
duke@1 1355 <integer>
jjg@842 1356
duke@1 1357 compiler.misc.token.long-integer=\
duke@1 1358 <long integer>
jjg@842 1359
duke@1 1360 compiler.misc.token.float=\
duke@1 1361 <float>
jjg@842 1362
duke@1 1363 compiler.misc.token.double=\
duke@1 1364 <double>
jjg@842 1365
duke@1 1366 compiler.misc.token.bad-symbol=\
duke@1 1367 <bad symbol>
jjg@842 1368
duke@1 1369 compiler.misc.token.end-of-input=\
duke@1 1370 <end of input>
duke@1 1371
duke@1 1372 ## The argument to the following string will always be one of the following:
duke@1 1373 ## 1. one of the above non-terminals
duke@1 1374 ## 2. a keyword (JLS1.8)
duke@1 1375 ## 3. a boolean literal (JLS3.10.3)
duke@1 1376 ## 4. the null literal (JLS3.10.7)
duke@1 1377 ## 5. a Java separator (JLS3.11)
duke@1 1378 ## 6. an operator (JLS3.12)
duke@1 1379 ##
duke@1 1380 ## This is the only place these tokens will be used.
jjg@842 1381 # 0: token
duke@1 1382 compiler.err.expected=\
duke@1 1383 {0} expected
jjg@842 1384
jjg@842 1385 # 0: token, 1: token
duke@1 1386 compiler.err.expected2=\
duke@1 1387 {0} or {1} expected
jjg@842 1388
jjg@842 1389 # 0: token, 1: token, 2: token
duke@1 1390 compiler.err.expected3=\
duke@1 1391 {0}, {1}, or {2} expected
duke@1 1392
duke@1 1393 compiler.err.premature.eof=\
duke@1 1394 reached end of file while parsing
duke@1 1395
duke@1 1396 ## The following are related in form, but do not easily fit the above paradigm.
duke@1 1397 compiler.err.dot.class.expected=\
duke@1 1398 ''.class'' expected
duke@1 1399
duke@1 1400 ## The argument to this string will always be either 'case' or 'default'.
jjg@842 1401 # 0: token
duke@1 1402 compiler.err.orphaned=\
duke@1 1403 orphaned {0}
duke@1 1404
jjg@842 1405 # 0: name
duke@1 1406 compiler.misc.anonymous.class=\
duke@1 1407 <anonymous {0}>
duke@1 1408
jjg@842 1409 # 0: name, 1: type
mcimadamore@121 1410 compiler.misc.type.captureof=\
mcimadamore@121 1411 capture#{0} of {1}
mcimadamore@121 1412
mcimadamore@238 1413 compiler.misc.type.captureof.1=\
mcimadamore@238 1414 capture#{0}
mcimadamore@238 1415
mcimadamore@121 1416 compiler.misc.type.none=\
mcimadamore@121 1417 <none>
mcimadamore@121 1418
duke@1 1419 compiler.misc.unnamed.package=\
duke@1 1420 unnamed package
duke@1 1421
duke@1 1422 #####
duke@1 1423
jjg@842 1424 # 0: symbol, 1: message segment
duke@1 1425 compiler.err.cant.access=\
jjg@842 1426 cannot access {0}\n\
jjg@842 1427 {1}
duke@1 1428
duke@1 1429 compiler.misc.bad.class.file.header=\
jjg@842 1430 bad class file: {0}\n\
jjg@842 1431 {1}\n\
jjg@842 1432 Please remove or make sure it appears in the correct subdirectory of the classpath.
jjg@842 1433
jjg@842 1434 # 0: file name, 1: message segment
jjg@12 1435 compiler.misc.bad.source.file.header=\
jjg@842 1436 bad source file: {0}\n\
jjg@842 1437 {1}\n\
jjg@842 1438 Please remove or make sure it appears in the correct subdirectory of the sourcepath.
duke@1 1439
duke@1 1440 ## The following are all possible strings for the second argument ({1}) of the
duke@1 1441 ## above strings.
duke@1 1442 compiler.misc.bad.class.signature=\
duke@1 1443 bad class signature: {0}
jjg@842 1444
jjg@952 1445 #0: symbol, 1: symbol
jjg@952 1446 compiler.misc.bad.enclosing.class=\
jjg@952 1447 bad enclosing class for {0}: {1}
jjg@952 1448
jjg@952 1449 # 0: symbol
duke@1 1450 compiler.misc.bad.enclosing.method=\
jjg@952 1451 bad enclosing method attribute for class {0}
jjg@842 1452
duke@1 1453 compiler.misc.bad.runtime.invisible.param.annotations=\
duke@1 1454 bad RuntimeInvisibleParameterAnnotations attribute: {0}
jjg@842 1455
duke@1 1456 compiler.misc.bad.const.pool.tag=\
duke@1 1457 bad constant pool tag: {0}
jjg@842 1458
duke@1 1459 compiler.misc.bad.const.pool.tag.at=\
duke@1 1460 bad constant pool tag: {0} at {1}
jjg@842 1461
duke@1 1462 compiler.misc.bad.signature=\
duke@1 1463 bad signature: {0}
jjg@842 1464
duke@1 1465 compiler.misc.class.file.wrong.class=\
duke@1 1466 class file contains wrong class: {0}
jjg@842 1467
duke@1 1468 compiler.misc.class.file.not.found=\
duke@1 1469 class file for {0} not found
jjg@842 1470
jjg@842 1471 # 0: name
duke@1 1472 compiler.misc.file.doesnt.contain.class=\
duke@1 1473 file does not contain class {0}
jjg@842 1474
duke@1 1475 compiler.misc.file.does.not.contain.package=\
duke@1 1476 file does not contain package {0}
jjg@842 1477
duke@1 1478 compiler.misc.illegal.start.of.class.file=\
duke@1 1479 illegal start of class file
jjg@842 1480
duke@1 1481 compiler.misc.unable.to.access.file=\
duke@1 1482 unable to access file: {0}
jjg@842 1483
duke@1 1484 compiler.misc.unicode.str.not.supported=\
duke@1 1485 unicode string in class file not supported
jjg@842 1486
duke@1 1487 compiler.misc.undecl.type.var=\
duke@1 1488 undeclared type variable: {0}
jjg@842 1489
duke@1 1490 compiler.misc.wrong.version=\
duke@1 1491 class file has wrong version {0}.{1}, should be {2}.{3}
duke@1 1492
duke@1 1493 #####
duke@1 1494
jjg@842 1495 # 0: type, 1: type or symbol
duke@1 1496 compiler.err.not.within.bounds=\
mcimadamore@829 1497 type argument {0} is not within bounds of type-variable {1}
duke@1 1498
duke@1 1499 ## The following are all possible strings for the second argument ({1}) of the
duke@1 1500 ## above string.
duke@1 1501
duke@1 1502 ## none yet...
duke@1 1503
duke@1 1504 #####
duke@1 1505
jjg@842 1506 # 0: message segment, 1: type, 2: type
duke@1 1507 compiler.err.prob.found.req=\
jjg@842 1508 {0}\n\
jjg@842 1509 required: {2}\n\
jjg@842 1510 found: {1}
jjg@842 1511
jjg@842 1512 # 0: message segment, 1: type, 2: type
duke@1 1513 compiler.warn.prob.found.req=\
jjg@842 1514 {0}\n\
jjg@842 1515 required: {2}\n\
jjg@842 1516 found: {1}
jjg@842 1517
duke@1 1518 compiler.err.prob.found.req.1=\
jjg@842 1519 {0} {3}\n\
jjg@842 1520 required: {2}\n\
jjg@842 1521 found: {1}
duke@1 1522
duke@1 1523 ## The following are all possible strings for the first argument ({0}) of the
duke@1 1524 ## above strings.
duke@1 1525 compiler.misc.incompatible.types=\
duke@1 1526 incompatible types
jjg@842 1527
jjg@842 1528 # 0: message segment
duke@1 1529 compiler.misc.incompatible.types.1=\
duke@1 1530 incompatible types; {0}
jjg@842 1531
duke@1 1532 compiler.misc.inconvertible.types=\
duke@1 1533 inconvertible types
jjg@842 1534
duke@1 1535 compiler.misc.possible.loss.of.precision=\
duke@1 1536 possible loss of precision
duke@1 1537
duke@1 1538 compiler.misc.unchecked.assign=\
jjg@612 1539 unchecked conversion
jjg@842 1540
duke@1 1541 # compiler.misc.storecheck=\
jjg@612 1542 # assignment might cause later store checks to fail
duke@1 1543 # compiler.misc.unchecked=\
jjg@612 1544 # assigned array cannot dynamically check its stores
duke@1 1545 compiler.misc.unchecked.cast.to.type=\
jjg@612 1546 unchecked cast
duke@1 1547
duke@1 1548 compiler.misc.assignment.from.super-bound=\
duke@1 1549 assignment from super-bound type {0}
jjg@842 1550
duke@1 1551 compiler.misc.assignment.to.extends-bound=\
duke@1 1552 assignment to extends-bound type {0}
jjg@842 1553
duke@1 1554 # compiler.err.star.expected=\
duke@1 1555 # ''*'' expected
duke@1 1556 # compiler.err.no.elem.type=\
duke@1 1557 # \[\*\] cannot have a type
duke@1 1558
mcimadamore@743 1559 compiler.misc.try.not.applicable.to.type=\
mcimadamore@743 1560 try-with-resources not applicable to variable type
mcimadamore@743 1561
duke@1 1562 #####
duke@1 1563
jjg@842 1564 # 0: message segment or type, 1: message segment
duke@1 1565 compiler.err.type.found.req=\
jjg@842 1566 unexpected type\n\
jjg@842 1567 required: {1}\n\
jjg@842 1568 found: {0}
duke@1 1569
duke@1 1570 ## The following are all possible strings for the first argument ({0}) of the
duke@1 1571 ## above string.
duke@1 1572 compiler.misc.type.req.class=\
duke@1 1573 class
jjg@842 1574
duke@1 1575 compiler.misc.type.req.class.array=\
duke@1 1576 class or array
jjg@842 1577
mcimadamore@829 1578 compiler.misc.type.req.array.or.iterable=\
mcimadamore@829 1579 array or java.lang.Iterable
jjg@842 1580
duke@1 1581 compiler.misc.type.req.ref=\
duke@1 1582 reference
jjg@842 1583
duke@1 1584 compiler.misc.type.req.exact=\
duke@1 1585 class or interface without bounds
jjg@842 1586
jjg@842 1587 # 0: type
duke@1 1588 compiler.misc.type.parameter=\
mcimadamore@80 1589 type parameter {0}
duke@1 1590
duke@1 1591 #####
duke@1 1592
duke@1 1593 ## The following are all possible strings for the last argument of all those
duke@1 1594 ## diagnostics whose key ends in ".1"
duke@1 1595 compiler.misc.undetermined.type=\
duke@1 1596 undetermined type
jjg@842 1597
jjg@597 1598 compiler.misc.type.variable.has.undetermined.type=\
duke@1 1599 type variable {0} has undetermined type
jjg@842 1600
jjg@842 1601 # 0: type, 1: list of type
duke@1 1602 compiler.misc.no.unique.maximal.instance.exists=\
duke@1 1603 no unique maximal instance exists for type variable {0} with upper bounds {1}
jjg@842 1604
duke@1 1605 compiler.misc.no.unique.minimal.instance.exists=\
duke@1 1606 no unique minimal instance exists for type variable {0} with lower bounds {1}
jjg@842 1607
mcimadamore@1087 1608 # 0: type, 1: list of type
mcimadamore@1087 1609 compiler.misc.incompatible.upper.bounds=\
mcimadamore@1087 1610 inference variable {0} has incompatible upper bounds {1}
mcimadamore@1087 1611
jjg@842 1612 # 0: list of type, 1: type, 2: type
mcimadamore@689 1613 compiler.misc.infer.no.conforming.instance.exists=\
duke@1 1614 no instance(s) of type variable(s) {0} exist so that {1} conforms to {2}
jjg@842 1615
jjg@842 1616 # 0: list of type, 1: type, 2: type
mcimadamore@689 1617 compiler.misc.infer.no.conforming.assignment.exists=\
duke@1 1618 no instance(s) of type variable(s) {0} exist so that argument type {1} conforms to formal parameter type {2}
jjg@842 1619
mcimadamore@689 1620 compiler.misc.infer.arg.length.mismatch=\
duke@1 1621 cannot instantiate from arguments because actual and formal argument lists differ in length
jjg@842 1622
jjg@842 1623 # 0: type, 1: list of type
duke@1 1624 compiler.misc.inferred.do.not.conform.to.bounds=\
mcimadamore@299 1625 inferred type does not conform to declared bound(s)\n\
mcimadamore@299 1626 inferred: {0}\n\
mcimadamore@299 1627 bound(s): {1}
jjg@842 1628
jjg@842 1629 # 0: symbol
mcimadamore@537 1630 compiler.misc.diamond=\
mcimadamore@537 1631 {0}<>
jjg@842 1632
mcimadamore@881 1633 # 0: type
mcimadamore@881 1634 compiler.misc.diamond.non.generic=\
mcimadamore@881 1635 cannot use ''<>'' with non-generic class {0}
mcimadamore@881 1636
jjg@1136 1637 # 0: unused
mcimadamore@993 1638 compiler.misc.diamond.and.explicit.params=\
mcimadamore@993 1639 cannot use ''<>'' with explicit type parameters for constructor
mcimadamore@993 1640
jjg@842 1641 # 0: type, 1: list of type
mcimadamore@689 1642 compiler.misc.explicit.param.do.not.conform.to.bounds=\
mcimadamore@689 1643 explicit type argument {0} does not conform to declared bound(s) {1}
mcimadamore@689 1644
mcimadamore@689 1645 compiler.misc.arg.length.mismatch=\
mcimadamore@689 1646 actual and formal argument lists differ in length
jjg@842 1647
jjg@842 1648 # 0: type, 1: type
mcimadamore@689 1649 compiler.misc.no.conforming.assignment.exists=\
mcimadamore@689 1650 actual argument {0} cannot be converted to {1} by method invocation conversion
jjg@842 1651
jjg@842 1652 # 0: type, 1: type
mcimadamore@689 1653 compiler.misc.varargs.argument.mismatch=\
mcimadamore@689 1654 argument type {0} does not conform to vararg element type {1}
jjg@842 1655
duke@1 1656 #####
duke@1 1657
duke@1 1658 ## The first argument ({0}) is a "kindname".
jjg@842 1659 # 0: symbol kind, 1: symbol, 2: symbol
duke@1 1660 compiler.err.abstract.cant.be.accessed.directly=\
duke@1 1661 abstract {0} {1} in {2} cannot be accessed directly
duke@1 1662
duke@1 1663 ## The first argument ({0}) is a "kindname".
jjg@842 1664 # 0: symbol kind, 1: symbol
duke@1 1665 compiler.err.non-static.cant.be.ref=\
duke@1 1666 non-static {0} {1} cannot be referenced from a static context
duke@1 1667
duke@1 1668 ## Both arguments ({0}, {1}) are "kindname"s. {0} is a comma-separated list
duke@1 1669 ## of kindnames (the list should be identical to that provided in source.
duke@1 1670 compiler.err.unexpected.type=\
jjg@842 1671 unexpected type\n\
jjg@842 1672 required: {0}\n\
jjg@842 1673 found: {1}
duke@1 1674
mcimadamore@80 1675 ## The first argument {0} is a "kindname" (e.g. 'constructor', 'field', etc.)
mcimadamore@80 1676 ## The second argument {1} is the non-resolved symbol
mcimadamore@80 1677 ## The third argument {2} is a list of type parameters (non-empty if {1} is a method)
mcimadamore@80 1678 ## The fourth argument {3} is a list of argument types (non-empty if {1} is a method)
jjg@842 1679 # 0: symbol kind, 1: name, 2: unused, 3: unused
duke@1 1680 compiler.err.cant.resolve=\
mcimadamore@80 1681 cannot find symbol\n\
mcimadamore@80 1682 symbol: {0} {1}
duke@1 1683
jjg@842 1684 # 0: symbol kind, 1: name, 2: unused, 3: list of type
mcimadamore@80 1685 compiler.err.cant.resolve.args=\
mcimadamore@80 1686 cannot find symbol\n\
mcimadamore@80 1687 symbol: {0} {1}({3})
mcimadamore@80 1688
jjg@842 1689 # 0: symbol kind, 1: name, 2: list of type, 3: list of type
mcimadamore@80 1690 compiler.err.cant.resolve.args.params=\
mcimadamore@80 1691 cannot find symbol\n\
mcimadamore@80 1692 symbol: {0} <{2}>{1}({3})
mcimadamore@80 1693
mcimadamore@80 1694 ## arguments from {0} to {3} have the same meaning as above
mcimadamore@829 1695 ## The fifth argument {4} is a location subdiagnostic (see below)
jjg@842 1696 # 0: symbol kind, 1: name, 2: unused, 3: unused, 4: message segment
duke@1 1697 compiler.err.cant.resolve.location=\
mcimadamore@80 1698 cannot find symbol\n\
mcimadamore@221 1699 symbol: {0} {1}\n\
mcimadamore@829 1700 location: {4}
mcimadamore@80 1701
jjg@842 1702 # 0: symbol kind, 1: name, 2: unused, 3: list of type, 4: message segment
mcimadamore@80 1703 compiler.err.cant.resolve.location.args=\
mcimadamore@80 1704 cannot find symbol\n\
mcimadamore@221 1705 symbol: {0} {1}({3})\n\
mcimadamore@829 1706 location: {4}
mcimadamore@80 1707
jjg@842 1708 # 0: symbol kind, 1: name, 2: list of type, 3: list, 4: message segment
mcimadamore@80 1709 compiler.err.cant.resolve.location.args.params=\
mcimadamore@80 1710 cannot find symbol\n\
mcimadamore@221 1711 symbol: {0} <{2}>{1}({3})\n\
mcimadamore@829 1712 location: {4}
mcimadamore@829 1713
mcimadamore@829 1714 ##a location subdiagnostic is composed as follows:
mcimadamore@829 1715 ## The first argument {0} is the location "kindname" (e.g. 'constructor', 'field', etc.)
mcimadamore@829 1716 ## The second argument {1} is the location name
mcimadamore@829 1717 ## The third argument {2} is the location type (only when {1} is a variable name)
mcimadamore@829 1718
jjg@1136 1719 # 0: symbol kind, 1: type or symbol, 2: unused
mcimadamore@829 1720 compiler.misc.location=\
mcimadamore@829 1721 {0} {1}
jjg@842 1722
jjg@842 1723 # 0: symbol kind, 1: symbol, 2: type
mcimadamore@829 1724 compiler.misc.location.1=\
mcimadamore@829 1725 {0} {1} of type {2}
duke@1 1726
duke@1 1727 ## The following are all possible string for "kindname".
duke@1 1728 ## They should be called whatever the JLS calls them after it been translated
duke@1 1729 ## to the appropriate language.
duke@1 1730 # compiler.misc.kindname.constructor=\
duke@1 1731 # static member
duke@1 1732 compiler.misc.kindname.annotation=\
duke@1 1733 @interface
jjg@842 1734
duke@1 1735 compiler.misc.kindname.constructor=\
duke@1 1736 constructor
jjg@842 1737
jjg@597 1738 compiler.misc.kindname.enum=\
jjg@597 1739 enum
jjg@842 1740
duke@1 1741 compiler.misc.kindname.interface=\
duke@1 1742 interface
jjg@842 1743
duke@1 1744 compiler.misc.kindname.static=\
duke@1 1745 static
jjg@842 1746
duke@1 1747 compiler.misc.kindname.type.variable=\
duke@1 1748 type variable
jjg@842 1749
duke@1 1750 compiler.misc.kindname.type.variable.bound=\
duke@1 1751 bound of type variable
jjg@842 1752
duke@1 1753 compiler.misc.kindname.variable=\
duke@1 1754 variable
jjg@842 1755
duke@1 1756 compiler.misc.kindname.value=\
duke@1 1757 value
jjg@842 1758
duke@1 1759 compiler.misc.kindname.method=\
duke@1 1760 method
jjg@842 1761
duke@1 1762 compiler.misc.kindname.class=\
duke@1 1763 class
jjg@842 1764
duke@1 1765 compiler.misc.kindname.package=\
duke@1 1766 package
jjg@842 1767
mcimadamore@1085 1768 compiler.misc.kindname.static.init=\
mcimadamore@1085 1769 static initializer
mcimadamore@1085 1770
mcimadamore@1085 1771 compiler.misc.kindname.instance.init=\
mcimadamore@1085 1772 instance initializer
mcimadamore@1085 1773
duke@1 1774 #####
duke@1 1775
mcimadamore@161 1776 compiler.misc.no.args=\
mcimadamore@161 1777 no arguments
mcimadamore@161 1778
jjg@842 1779 # 0: message segment
duke@1 1780 compiler.err.override.static=\
mcimadamore@362 1781 {0}\n\
mcimadamore@362 1782 overriding method is static
jjg@842 1783
jjg@842 1784 # 0: message segment, 1: set of modifier
duke@1 1785 compiler.err.override.meth=\
mcimadamore@362 1786 {0}\n\
mcimadamore@362 1787 overridden method is {1}
duke@1 1788
jjg@842 1789 # 0: message segment, 1: type
duke@1 1790 compiler.err.override.meth.doesnt.throw=\
mcimadamore@362 1791 {0}\n\
mcimadamore@362 1792 overridden method does not throw {1}
duke@1 1793
duke@1 1794 # In the following string {1} is a space separated list of Java Keywords, as
duke@1 1795 # they would have been declared in the source code
jjg@842 1796 # 0: message segment, 1: set of modifier
duke@1 1797 compiler.err.override.weaker.access=\
mcimadamore@362 1798 {0}\n\
mcimadamore@362 1799 attempting to assign weaker access privileges; was {1}
duke@1 1800
jjg@842 1801 # 0: message segment, 1: type, 2: type
mcimadamore@362 1802 compiler.err.override.incompatible.ret=\
mcimadamore@362 1803 {0}\n\
mcimadamore@362 1804 return type {1} is not compatible with {2}
duke@1 1805
jjg@842 1806 # 0: message segment, 1: type, 2: type
mcimadamore@362 1807 compiler.warn.override.unchecked.ret=\
jjg@612 1808 {0}\n\
mcimadamore@362 1809 return type requires unchecked conversion from {1} to {2}
mcimadamore@362 1810
jjg@842 1811 # 0: message segment, 1: type
mcimadamore@362 1812 compiler.warn.override.unchecked.thrown=\
jjg@612 1813 {0}\n\
mcimadamore@362 1814 overridden method does not throw {1}
duke@1 1815
duke@1 1816 ## The following are all possible strings for the first argument ({0}) of the
duke@1 1817 ## above strings.
jjg@842 1818 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1819 compiler.misc.cant.override=\
duke@1 1820 {0} in {1} cannot override {2} in {3}
jjg@842 1821
jjg@842 1822 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1823 compiler.misc.cant.implement=\
duke@1 1824 {0} in {1} cannot implement {2} in {3}
jjg@842 1825
jjg@842 1826 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1827 compiler.misc.clashes.with=\
duke@1 1828 {0} in {1} clashes with {2} in {3}
jjg@842 1829
jjg@842 1830 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1831 compiler.misc.unchecked.override=\
duke@1 1832 {0} in {1} overrides {2} in {3}
jjg@842 1833
jjg@842 1834 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1835 compiler.misc.unchecked.implement=\
duke@1 1836 {0} in {1} implements {2} in {3}
jjg@842 1837
jjg@842 1838 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1839 compiler.misc.unchecked.clash.with=\
duke@1 1840 {0} in {1} overrides {2} in {3}
jjg@842 1841
jjg@842 1842 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1843 compiler.misc.varargs.override=\
duke@1 1844 {0} in {1} overrides {2} in {3}
jjg@842 1845
jjg@842 1846 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1847 compiler.misc.varargs.implement=\
duke@1 1848 {0} in {1} implements {2} in {3}
jjg@842 1849
jjg@842 1850 # 0: symbol, 1: symbol, 2: symbol, 3: symbol
duke@1 1851 compiler.misc.varargs.clash.with=\
duke@1 1852 {0} in {1} overrides {2} in {3}
jjg@842 1853
jjg@1136 1854 # 0: unused
mcimadamore@914 1855 compiler.misc.diamond.and.anon.class=\
mcimadamore@914 1856 cannot use ''<>'' with anonymous inner classes
duke@1 1857
jjg@842 1858 # 0: symbol kind, 1: symbol, 2: symbol, 3: message segment
mcimadamore@689 1859 compiler.misc.inapplicable.method=\
mcimadamore@689 1860 {0} {1}.{2} is not applicable\n\
mcimadamore@689 1861 ({3})
mcimadamore@689 1862
duke@1 1863 ########################################
duke@1 1864 # Diagnostics for language feature changes
duke@1 1865 ########################################
jjg@842 1866 # 0: string
duke@1 1867 compiler.err.unsupported.fp.lit=\
jjg@409 1868 hexadecimal floating point literals are not supported in -source {0}\n\
jjg@842 1869 (use -source 5 or higher to enable hexadecimal floating point literals)
jjg@409 1870
jjg@842 1871 # 0: string
jjg@409 1872 compiler.err.unsupported.binary.lit=\
jjg@409 1873 binary literals are not supported in -source {0}\n\
jjg@842 1874 (use -source 7 or higher to enable binary literals)
jjg@409 1875
jjg@842 1876 # 0: string
jjg@409 1877 compiler.err.unsupported.underscore.lit=\
jjg@409 1878 underscores in literals are not supported in -source {0}\n\
jjg@842 1879 (use -source 7 or higher to enable underscores in literals)
duke@1 1880
jjg@842 1881 # 0: string
mcimadamore@743 1882 compiler.err.try.with.resources.not.supported.in.source=\
mcimadamore@743 1883 try-with-resources is not supported in -source {0}\n\
jjg@842 1884 (use -source 7 or higher to enable try-with-resources)
darcy@609 1885
duke@1 1886 compiler.warn.enum.as.identifier=\
duke@1 1887 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\
jjg@842 1888 (use -source 5 or higher to use ''enum'' as a keyword)
duke@1 1889
duke@1 1890 compiler.warn.assert.as.identifier=\
duke@1 1891 as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier\n\
jjg@842 1892 (use -source 1.4 or higher to use ''assert'' as a keyword)
duke@1 1893
duke@1 1894 compiler.err.enum.as.identifier=\
duke@1 1895 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\
jjg@842 1896 (use -source 1.4 or lower to use ''enum'' as an identifier)
duke@1 1897
duke@1 1898 compiler.err.assert.as.identifier=\
duke@1 1899 as of release 1.4, ''assert'' is a keyword, and may not be used as an identifier\n\
jjg@842 1900 (use -source 1.3 or lower to use ''assert'' as an identifier)
duke@1 1901
jjg@842 1902 # 0: string
duke@1 1903 compiler.err.generics.not.supported.in.source=\
duke@1 1904 generics are not supported in -source {0}\n\
jjg@842 1905 (use -source 5 or higher to enable generics)
duke@1 1906
jjg@842 1907 # 0: string
duke@1 1908 compiler.err.varargs.not.supported.in.source=\
duke@1 1909 variable-arity methods are not supported in -source {0}\n\
jjg@842 1910 (use -source 5 or higher to enable variable-arity methods)
duke@1 1911
jjg@842 1912 # 0: string
duke@1 1913 compiler.err.annotations.not.supported.in.source=\
duke@1 1914 annotations are not supported in -source {0}\n\
jjg@842 1915 (use -source 5 or higher to enable annotations)
duke@1 1916
jjg@722 1917 #308 compiler.err.type.annotations.not.supported.in.source=\
jjg@722 1918 #308 type annotations are not supported in -source {0}\n\
jjg@722 1919 #308 (use -source 7 or higher to enable type annotations)
jjg@308 1920
jjg@842 1921 # 0: string
duke@1 1922 compiler.err.foreach.not.supported.in.source=\
duke@1 1923 for-each loops are not supported in -source {0}\n\
jjg@842 1924 (use -source 5 or higher to enable for-each loops)
duke@1 1925
jjg@842 1926 # 0: string
duke@1 1927 compiler.err.static.import.not.supported.in.source=\
duke@1 1928 static import declarations are not supported in -source {0}\n\
jjg@842 1929 (use -source 5 or higher to enable static import declarations)
duke@1 1930
jjg@842 1931 # 0: string
duke@1 1932 compiler.err.enums.not.supported.in.source=\
duke@1 1933 enums are not supported in -source {0}\n\
jjg@842 1934 (use -source 5 or higher to enable enums)
mcimadamore@288 1935
jjg@842 1936 # 0: string
jjg@597 1937 compiler.err.diamond.not.supported.in.source=\
jjg@597 1938 diamond operator is not supported in -source {0}\n\
jjg@842 1939 (use -source 7 or higher to enable diamond operator)
jjg@597 1940
jjg@842 1941 # 0: string
mcimadamore@550 1942 compiler.err.multicatch.not.supported.in.source=\
mcimadamore@550 1943 multi-catch statement is not supported in -source {0}\n\
jjg@842 1944 (use -source 7 or higher to enable multi-catch statement)
mcimadamore@550 1945
jjg@842 1946 # 0: string
darcy@430 1947 compiler.err.string.switch.not.supported.in.source=\
darcy@430 1948 strings in switch are not supported in -source {0}\n\
jjg@842 1949 (use -source 7 or higher to enable strings in switch)
darcy@430 1950
mcimadamore@1144 1951 # 0: string
mcimadamore@1144 1952 compiler.err.lambda.not.supported.in.source=\
mcimadamore@1144 1953 lambda expressions are not supported in -source {0}\n\
mcimadamore@1144 1954 (use -source 8 or higher to enable lambda expressions)
mcimadamore@1144 1955
mcimadamore@1145 1956 # 0: string
mcimadamore@1145 1957 compiler.err.method.references.not.supported.in.source=\
mcimadamore@1145 1958 method references are not supported in -source {0}\n\
mcimadamore@1145 1959 (use -source 8 or higher to enable method references)
mcimadamore@1145 1960
mcimadamore@288 1961 ########################################
mcimadamore@1114 1962 # Diagnostics for verbose resolution
mcimadamore@1114 1963 # used by Resolve (debug only)
mcimadamore@1114 1964 ########################################
mcimadamore@1114 1965
mcimadamore@1114 1966 # 0: number, 1: symbol, 2: unused
mcimadamore@1114 1967 compiler.misc.applicable.method.found=\
mcimadamore@1114 1968 #{0} applicable method found: {1}
mcimadamore@1114 1969
mcimadamore@1114 1970 # 0: number, 1: symbol, 2: message segment
mcimadamore@1114 1971 compiler.misc.applicable.method.found.1=\
mcimadamore@1114 1972 #{0} applicable method found: {1}\n\
mcimadamore@1114 1973 ({2})
mcimadamore@1114 1974
mcimadamore@1114 1975 # 0: number, 1: symbol, 2: message segment
mcimadamore@1114 1976 compiler.misc.not.applicable.method.found=\
mcimadamore@1114 1977 #{0} not applicable method found: {1}\n\
mcimadamore@1114 1978 ({2})
mcimadamore@1114 1979
mcimadamore@1114 1980 # 0: type
mcimadamore@1114 1981 compiler.misc.full.inst.sig=\
mcimadamore@1114 1982 fully instantiated to: {0}
mcimadamore@1114 1983
mcimadamore@1114 1984 # 0: type
mcimadamore@1114 1985 compiler.misc.partial.inst.sig=\
mcimadamore@1114 1986 partially instantiated to: {0}
mcimadamore@1114 1987
mcimadamore@1114 1988 # 0: name, 1: symbol, 2: number, 3: MethodResolutionPhase, 4: list of type or message segment, 5: list of type or message segment
mcimadamore@1114 1989 compiler.note.verbose.resolve.multi=\
mcimadamore@1114 1990 resolving method {0} in type {1} to candidate {2}\n\
mcimadamore@1114 1991 phase: {3}\n\
mcimadamore@1114 1992 with actuals: {4}\n\
mcimadamore@1114 1993 with type-args: {5}\n\
mcimadamore@1114 1994 candidates:
mcimadamore@1114 1995
mcimadamore@1114 1996 # 0: name, 1: symbol, 2: unused, 3: MethodResolutionPhase, 4: list of type or message segment, 5: list of type or message segment
mcimadamore@1114 1997 compiler.note.verbose.resolve.multi.1=\
mcimadamore@1114 1998 erroneous resolution for method {0} in type {1}\n\
mcimadamore@1114 1999 phase: {3}\n\
mcimadamore@1114 2000 with actuals: {4}\n\
mcimadamore@1114 2001 with type-args: {5}\n\
mcimadamore@1114 2002 candidates:
mcimadamore@1114 2003
mcimadamore@1114 2004 # 0: symbol, 1: type, 2: type
mcimadamore@1114 2005 compiler.note.deferred.method.inst=\
mcimadamore@1114 2006 Deferred instantiation of method {0}\n\
mcimadamore@1114 2007 instantiated signature: {1}\n\
mcimadamore@1114 2008 target-type: {2}
mcimadamore@1114 2009
mcimadamore@1114 2010 ########################################
mcimadamore@288 2011 # Diagnostics for where clause implementation
mcimadamore@288 2012 # used by the RichDiagnosticFormatter.
mcimadamore@288 2013 ########################################
mcimadamore@288 2014
mcimadamore@288 2015 compiler.misc.type.null=\
mcimadamore@288 2016 <null>
mcimadamore@288 2017
mcimadamore@288 2018 # X#n (where n is an int id) is disambiguated tvar name
jjg@842 2019 # 0: name, 1: number
mcimadamore@288 2020 compiler.misc.type.var=\
mcimadamore@288 2021 {0}#{1}
mcimadamore@288 2022
mcimadamore@288 2023 # CAP#n (where n is an int id) is an abbreviation for 'captured type'
jjg@842 2024 # 0: number
mcimadamore@288 2025 compiler.misc.captured.type=\
mcimadamore@288 2026 CAP#{0}
mcimadamore@288 2027
mcimadamore@288 2028 # <INT#n> (where n is an int id) is an abbreviation for 'intersection type'
jjg@842 2029 # 0: number
mcimadamore@288 2030 compiler.misc.intersection.type=\
mcimadamore@288 2031 INT#{0}
mcimadamore@288 2032
mcimadamore@288 2033 # where clause for captured type: contains upper ('extends {1}') and lower
mcimadamore@288 2034 # ('super {2}') bound along with the wildcard that generated this captured type ({3})
jjg@842 2035 # 0: type, 1: type, 2: type, 3: type
mcimadamore@288 2036 compiler.misc.where.captured=\
mcimadamore@288 2037 {0} extends {1} super: {2} from capture of {3}
mcimadamore@288 2038
mcimadamore@288 2039 # compact where clause for captured type: contains upper ('extends {1}') along
mcimadamore@288 2040 # with the wildcard that generated this captured type ({3})
jjg@842 2041 # 0: type, 1: type, 2: unused, 3: type
mcimadamore@288 2042 compiler.misc.where.captured.1=\
mcimadamore@288 2043 {0} extends {1} from capture of {3}
mcimadamore@288 2044
mcimadamore@288 2045 # where clause for type variable: contains upper bound(s) ('extends {1}') along with
mcimadamore@288 2046 # the kindname ({2}) and location ({3}) in which the typevar has been declared
jjg@842 2047 # 0: type, 1: list of type, 2: symbol kind, 3: symbol
mcimadamore@288 2048 compiler.misc.where.typevar=\
mcimadamore@288 2049 {0} extends {1} declared in {2} {3}
mcimadamore@288 2050
mcimadamore@288 2051 # compact where clause for type variable: contains the kindname ({2}) and location ({3})
mcimadamore@288 2052 # in which the typevar has been declared
mcimadamore@288 2053 compiler.misc.where.typevar.1=\
mcimadamore@288 2054 {0} declared in {2} {3}
mcimadamore@288 2055
mcimadamore@288 2056 # where clause for type variable: contains all the upper bound(s) ('extends {1}')
mcimadamore@288 2057 # of this intersection type
jjg@842 2058 # 0: type, 1: list of type
mcimadamore@288 2059 compiler.misc.where.intersection=\
mcimadamore@288 2060 {0} extends {1}
mcimadamore@288 2061
mcimadamore@288 2062 ### Where clause headers ###
mcimadamore@288 2063 compiler.misc.where.description.captured=\
mcimadamore@288 2064 where {0} is a fresh type-variable:
jjg@842 2065
jjg@842 2066 # 0: set of type
mcimadamore@288 2067 compiler.misc.where.description.typevar=\
mcimadamore@288 2068 where {0} is a type-variable:
jjg@842 2069
jjg@842 2070 # 0: set of type
mcimadamore@288 2071 compiler.misc.where.description.intersection=\
mcimadamore@288 2072 where {0} is an intersection type:
jjg@842 2073
jjg@842 2074 # 0: set of type
mcimadamore@288 2075 compiler.misc.where.description.captured.1=\
mcimadamore@288 2076 where {0} are fresh type-variables:
jjg@842 2077
jjg@842 2078 # 0: set of type
mcimadamore@288 2079 compiler.misc.where.description.typevar.1=\
mcimadamore@288 2080 where {0} are type-variables:
jjg@842 2081
mcimadamore@288 2082 compiler.misc.where.description.intersection.1=\
mcimadamore@288 2083 where {0} are intersection types:
mcimadamore@288 2084
mcimadamore@288 2085

mercurial