#
# Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

## standard options

javac.opt.g=\
    Generate all debugging info
javac.opt.g.none=\
    Generate no debugging info
javac.opt.g.lines.vars.source=\
    Generate only some debugging info
javac.opt.nowarn=\
    Generate no warnings
javac.opt.verbose=\
    Output messages about what the compiler is doing
javac.opt.deprecation=\
    Output source locations where deprecated APIs are used
javac.opt.classpath=\
    Specify where to find user class files and annotation processors
javac.opt.modulepath=\
    Specify where to find application modules
javac.opt.sourcepath=\
    Specify where to find input source files
javac.opt.m=\
    Compile only the specified module, check timestamps
javac.opt.modulesourcepath=\
    Specify where to find input source files for multiple modules
javac.opt.bootclasspath=\
    Override location of bootstrap class files
javac.opt.system=\
    Override location of system modules
javac.opt.upgrademodulepath=\
    Override location of upgradeable modules
javac.opt.endorseddirs=\
    Override location of endorsed standards path
javac.opt.extdirs=\
    Override location of installed extensions
javac.opt.processorpath=\
    Specify where to find annotation processors
javac.opt.processormodulepath=\
    Specify a module path where to find annotation processors
javac.opt.processor=\
    Names of the annotation processors to run; bypasses default discovery process
javac.opt.parameters=\
    Generate metadata for reflection on method parameters
javac.opt.proc.none.only=\
    Control whether annotation processing and/or compilation is done.
javac.opt.d=\
    Specify where to place generated class files
javac.opt.sourceDest=\
    Specify where to place generated source files
javac.opt.headerDest=\
    Specify where to place generated native header files
javac.opt.J=\
    Pass <flag> directly to the runtime system
javac.opt.encoding=\
    Specify character encoding used by source files
javac.opt.profile=\
    Check that API used is available in the specified profile
javac.opt.target=\
    Generate class files for specific VM version
javac.opt.release=\
    Compile for a specific VM version. Supported targets: {0}
javac.opt.source=\
    Provide source compatibility with specified release
javac.opt.Werror=\
    Terminate compilation if warnings occur
javac.opt.A=\
    Options to pass to annotation processors
javac.opt.implicit=\
    Specify whether or not to generate class files for implicitly referenced files
javac.opt.pkginfo=\
    Specify handling of package-info files
javac.opt.multi-release=\
    Specify which release to use in multi-release jars
javac.opt.arg.class=\
    <class>
javac.opt.arg.class.list=\
    <class1>[,<class2>,<class3>...]
javac.opt.arg.flag=\
    <flag>
javac.opt.arg.key.equals.value=\
    key[=value]
javac.opt.arg.path=\
    <path>
javac.opt.arg.mspath=\
    <module-source-path>
javac.opt.arg.m=\
    <module-name>
javac.opt.arg.jdk=\
    <jdk>|none
javac.opt.arg.dirs=\
    <dirs>
javac.opt.arg.directory=\
    <directory>
javac.opt.arg.encoding=\
    <encoding>
javac.opt.arg.profile=\
    <profile>
javac.opt.arg.release=\
    <release>
javac.opt.arg.release=\
    <release>
javac.opt.arg.number=\
    <number>
javac.opt.plugin=\
    Name and optional arguments for a plug-in to be run
javac.opt.arg.plugin=\
    "name args"
javac.opt.arg.multi-release=\
    <release>

## extended options

javac.opt.maxerrs=\
    Set the maximum number of errors to print
javac.opt.maxwarns=\
    Set the maximum number of warnings to print
javac.opt.nogj=\
    Don't accept generics in the language
javac.opt.moreinfo=\
    Print extended information for type variables
javac.opt.printsearch=\
    Print information where classfiles are searched
javac.opt.prompt=\
    Stop after each error
javac.opt.s=\
    Emit java sources instead of classfiles
javac.opt.version=\
    Version information
javac.opt.arg.pathname=\
    <pathname>
javac.opt.arg.file=\
    <filename>
javac.opt.Xbootclasspath.p=\
    Prepend to the bootstrap class path
javac.opt.Xbootclasspath.a=\
    Append to the bootstrap class path
javac.opt.Xlint=\
    Enable recommended warnings
javac.opt.Xlint.all=\
    Enable all warnings
javac.opt.Xlint.none=\
    Disable all warnings
#L10N: do not localize: -Xlint
javac.opt.arg.Xlint=\
    <key>(,<key>)*
javac.opt.Xlint.custom=\
    Warnings to enable or disable, separated by comma.\n\
    Precede a key by '-' to disable the specified warning.\n\
    Supported keys are:
javac.opt.Xlint.desc.auxiliaryclass=\
    Warn about an auxiliary class that is hidden in a source file, and is used from other files.

javac.opt.Xlint.desc.cast=\
    Warn about use of unnecessary casts.

javac.opt.Xlint.desc.classfile=\
    Warn about issues related to classfile contents.

javac.opt.Xlint.desc.deprecation=\
    Warn about use of deprecated items.

javac.opt.Xlint.desc.dep-ann=\
    Warn about items marked as deprecated in JavaDoc but not using the @Deprecated annotation.

javac.opt.Xlint.desc.divzero=\
    Warn about division by constant integer 0.

javac.opt.Xlint.desc.empty=\
    Warn about empty statement after if.

javac.opt.Xlint.desc.exports=\
    Warn about issues regarding module exports.

javac.opt.Xlint.desc.fallthrough=\
    Warn about falling through from one case of a switch statement to the next.

javac.opt.Xlint.desc.finally=\
    Warn about finally clauses that do not terminate normally.

javac.opt.Xlint.desc.options=\
    Warn about issues relating to use of command line options.

javac.opt.Xlint.desc.overloads=\
    Warn about issues regarding method overloads.

javac.opt.Xlint.desc.overrides=\
    Warn about issues regarding method overrides.

javac.opt.Xlint.desc.path=\
    Warn about invalid path elements on the command line.

javac.opt.Xlint.desc.processing=\
    Warn about issues regarding annotation processing.

javac.opt.Xlint.desc.rawtypes=\
    Warn about use of raw types.

javac.opt.Xlint.desc.removal=\
    Warn about use of API that has been marked for removal.

javac.opt.Xlint.desc.serial=\
    Warn about Serializable classes that do not provide a serial version ID. \n\
\                             Also warn about access to non-public members from a serializable element.

javac.opt.Xlint.desc.static=\
    Warn about accessing a static member using an instance.

javac.opt.Xlint.desc.try=\
    Warn about issues relating to use of try blocks (i.e. try-with-resources).

javac.opt.Xlint.desc.unchecked=\
    Warn about unchecked operations.

javac.opt.Xlint.desc.varargs=\
    Warn about potentially unsafe vararg methods

javac.opt.Xdoclint=\
    Enable recommended checks for problems in javadoc comments
# L10N: do not localize: all none
javac.opt.Xdoclint.subopts = \
    (all|none|[-]<group>)[/<access>]

# L10N: do not localize: accessibility html missing reference syntax
# L10N: do not localize: public protected package private
javac.opt.Xdoclint.custom=\
    Enable or disable specific checks for problems in javadoc comments,\n\
    where <group> is one of accessibility, html, missing, reference, or syntax,\n\
    and <access> is one of public, protected, package, or private.

javac.opt.Xdoclint.package.args = \
    [-]<packages>(,[-]<package>)*

javac.opt.Xdoclint.package.desc=\
    Enable or disable checks in specific packages. Each <package> is either the\n\
    qualified name of a package or a package name prefix followed by '.*', which\n\
    expands to all sub-packages of the given package. Each <package> can be prefixed\n\
    with '-' to disable checks for the specified package or packages.

javac.opt.Xstdout=\
    Redirect standard output
javac.opt.X=\
    Print a synopsis of nonstandard options
javac.opt.help=\
    Print a synopsis of standard options
javac.opt.print=\
    Print out a textual representation of specified types
javac.opt.printRounds=\
    Print information about rounds of annotation processing
javac.opt.printProcessorInfo=\
    Print information about which annotations a processor is asked to process
javac.opt.userpathsfirst=\
    Search classpath and sourcepath for classes before the bootclasspath instead of after
javac.opt.prefer=\
    Specify which file to read when both a source file and class file are found for an implicitly compiled class
javac.opt.AT=\
    Read options and filenames from file
javac.opt.diags=\
    Select a diagnostic mode
javac.opt.addExports=\
    Specify a package to be considered as exported from its defining module\n\
    to additional modules, or to all unnamed modules if <other-module> is ALL-UNNAMED.
javac.opt.arg.addExports=\
    <module>/<package>=<other-module>(,<other-module>)*
javac.opt.addReads=\
    Specify additional modules to be considered as required by a given module.\n\
    <other-module> may be ALL-UNNAMED to require the unnamed module.
javac.opt.arg.addReads=\
    <module>=<other-module>(,<other-module>)*
javac.opt.patch=\
    Override or augment a module with classes and resources\n\
    in JAR files or directories
javac.opt.arg.patch=\
    <module>=<file>(:<file>)*
javac.opt.module=\
    Specify a module to which the classes being compiled belong.
javac.opt.arg.module=\
    <module>
javac.opt.addmods=\
    Root modules to resolve in addition to the initial modules, or all modules\n\
    on the module path if <module> is ALL-MODULE-PATH.
javac.opt.arg.addmods=\
    <module>(,<module>)*
javac.opt.limitmods=\
    Limit the universe of observable modules
javac.opt.arg.limitmods=\
    <module>(,<module>)*
javac.opt.inherit_runtime_environment=\
    Inherit module system configuration options from the runtime environment.

## errors

javac.err.empty.A.argument=\
    -A requires an argument; use ''-Akey'' or ''-Akey=value''
javac.err.invalid.arg=\
    invalid argument: {0}
javac.err.invalid.A.key=\
     key in annotation processor option ''{0}'' is not a dot-separated sequence of identifiers
javac.err.invalid.flag=\
    invalid flag: {0}
javac.err.profile.bootclasspath.conflict=\
    profile and bootclasspath options cannot be used together
javac.err.invalid.profile=\
    invalid profile: {0}
javac.err.invalid.target=\
    invalid target release: {0}
javac.err.option.not.allowed.with.target=\
    option {0} not allowed with target {1}
javac.err.option.too.many=\
    option {0} can only be specified once
javac.err.no.source.files=\
    no source files
javac.err.no.source.files.classes=\
    no source files or class names
javac.err.req.arg=\
    {0} requires an argument
javac.err.invalid.source=\
    invalid source release: {0}
javac.err.error.writing.file=\
    error writing {0}; {1}
javac.err.sourcepath.modulesourcepath.conflict=\
    cannot specify both --source-path and --module-source-path
javac.warn.source.target.conflict=\
    source release {0} requires target release {1}
javac.warn.target.default.source.conflict=\
    target release {0} conflicts with default source release {1}
javac.warn.profile.target.conflict=\
    profile {0} is not valid for target release {1}
javac.err.file.not.found=\
    file not found: {0}
javac.err.file.not.directory=\
    not a directory: {0}
javac.err.file.not.file=\
    not a file: {0}
javac.err.cannot.access.runtime.env=\
    cannot access runtime environment
javac.err.bad.value.for.option=\
    bad value for {0} option: ''{1}''
javac.err.no.value.for.option=\
    no value for {0} option

## messages

javac.msg.usage.header=\
Usage: {0} <options> <source files>\n\
where possible options include:

javac.msg.usage=\
    Usage: {0} <options> <source files>\n\
    use --help for a list of possible options

javac.msg.usage.nonstandard.footer=\
These options are non-standard and subject to change without notice.

javac.msg.bug=\
An exception has occurred in the compiler ({0}). \
Please file a bug against the Java compiler via the Java bug reporting page (http://bugreport.java.com) \
after checking the Bug Database (http://bugs.java.com) for duplicates. \
Include your program and the following diagnostic in your report. Thank you.

javac.msg.io=\
\n\nAn input/output error occurred.\n\
Consult the following stack trace for details.\n

javac.msg.proc.annotation.uncaught.exception=\
\n\nAn annotation processor threw an uncaught exception.\n\
Consult the following stack trace for details.\n

javac.msg.plugin.uncaught.exception=\
\n\nA plugin threw an uncaught exception.\n\
Consult the following stack trace for details.\n

javac.msg.resource=\
\n\nThe system is out of resources.\n\
Consult the following stack trace for details.\n

javac.version={0} {1}
javac.fullVersion={0} full version "{1}"

javac.err.release.bootclasspath.conflict=\
    option {0} cannot be used together with --release

javac.err.unsupported.release.version=\
    release version {0} not supported

javac.err.release.not.standard.file.manager=\
    --release option specified, but the provided JavaFileManager is not a StandardJavaFileManager.
