###############################################################################
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
#     IBM Corporation - initial API and implementation
#     John Kaplan, johnkaplantech@gmail.com - 108071 [code templates] template for body of newly created class
#     Cameron Bateman/Oracle - adapted for use in JSF validation tooling
###############################################################################

ProblemSeveritiesPreferencePage_title=Problem Severities

ProblemSeveritiesConfigurationBlock_error=Error
ProblemSeveritiesConfigurationBlock_warning=Warning
ProblemSeveritiesConfigurationBlock_ignore=Ignore

ProblemSeveritiesConfigurationBlock_section_id_resolution=&Identifier Resolution
ProblemSeveritiesConfigurationBlock_section_general=&General Problems
ProblemSeveritiesConfigurationBlock_section_type_coercion_problems=&Type Coercion Problems
ProblemSeveritiesConfigurationBlock_section_constant_folding_and_unused_code=&Constant folding and unused code
ProblemSeveritiesConfigurationBlock_section_programming_errors=&Possible programming errors
ProblemSeveritiesConfigurationBlock_section_type_comparison=Type &Assignment Problems

ProblemSeveritiesConfigurationBlock_needsbuild_title=Error/Warning Settings Changed
ProblemSeveritiesConfigurationBlock_needsfullbuild_message=The Error/Warning settings have changed. You will need to rebuild or revalidate for these changes to take effect.
ProblemSeveritiesConfigurationBlock_needsprojectbuild_message=The Error/Warning settings have changed. A rebuild of the project is required for changes to take effect. Build the project now?
ProblemSeveritiesConfigurationBlock_buildwarning_dont_show_again=Don't show this dialog again

ProblemSeveritiesConfigurationBlock_common_description=Select the severity level for the following problems

ProblemSeveritiesConfigurationBlock_pb_general_syntax_error=General Syntax Error
ProblemSeveritiesConfigurationBlock_pb_empty_el_expression=Empty EL expression
ProblemSeveritiesConfigurationBlock_pb_missing_closing_expr_bracket=Missing closing bracket on expression
ProblemSeveritiesConfigurationBlock_pb_cannot_apply_operator_to_method_binding=Applying operator to method binding
ProblemSeveritiesConfigurationBlock_pb_dotted_property_key_should_use_array=Dotted property names should use array ([]) syntax

ProblemSeveritiesConfigurationBlock_pb_variable_not_found=Variable not found
ProblemSeveritiesConfigurationBlock_pb_member_not_found=Member not found
ProblemSeveritiesConfigurationBlock_pb_member_is_intermediate=Member is intermediate

ProblemSeveritiesConfigurationBlock_pb_binary_op_numeric_coercion_error=Binary operation number coercion problems
ProblemSeveritiesConfigurationBlock_pb_binary_op_boolean_coercion_error=Binary operation boolean coercion problems
ProblemSeveritiesConfigurationBlock_pb_binary_op_no_coercion_available=Binary operation no available coercions
ProblemSeveritiesConfigurationBlock_pb_binary_op_literal_to_number_coercion_error=Binary coercion of literal to number
ProblemSeveritiesConfigurationBlock_pb_unary_op_numeric_coercion_error=Unary operation number coercion problems
ProblemSeveritiesConfigurationBlock_pb_unary_op_boolean_coercion_error=Unary operation boolean coercion problems
ProblemSeveritiesConfigurationBlock_pb_unary_op_string_coercion_not_guaranteed=Unary operation string coercion not guaranteed

ProblemSeveritiesConfigurationBlock_pb_both_binary_operands_null=Both operands null
ProblemSeveritiesConfigurationBlock_pb_binary_expression_always_evaluates_same=Binary expression always evaluates to same value
ProblemSeveritiesConfigurationBlock_pb_equality_with_null_always_same=Equality comparison with null always evaluates to same value
ProblemSeveritiesConfigurationBlock_pb_unary_expression_always_evaluates_same=Unary expression always evaluates to same value
ProblemSeveritiesConfigurationBlock_pb_empty_expression_always_false=Empty operator always resolves to false on type
ProblemSeveritiesConfigurationBlock_pb_enumeration_comparision_always_same=Enumeration comparison always evaluates to same value
ProblemSeveritiesConfigurationBlock_pb_minus_on_null_always_zero=Minus applied to null always evaluates to zero
ProblemSeveritiesConfigurationBlock_pb_first_argument_short_circuits_expression=First argument short-circuits expression
ProblemSeveritiesConfigurationBlock_pb_second_argument_always_evaluates_same=Second argument always evaluates the same
ProblemSeveritiesConfigurationBlock_pb_apply_dot_operator_with_null=Applying the dot ('.') operator with null always returns null

ProblemSeveritiesConfigurationBlock_pb_possible_division_by_zero=Possible division by zero
ProblemSeveritiesConfigurationBlock_pb_possible_array_index_out_of_bounds=Possible array index out of bounds
ProblemSeveritiesConfigurationBlock_pb_incompatible_enumeration_comparison=Incompatible enumeration comparison

ProblemSeveritiesConfigurationBlock_pb_method_expression_expected=Method expression expected
ProblemSeveritiesConfigurationBlock_pb_incompatible_type_assignment=Value expression type incompatibility
ProblemSeveritiesConfigurationBlock_pb_value_expression_expected= Value expression expected
ProblemSeveritiesConfigurationBlock_pb_incompatible_method_types=Method expression signature incompatibility
ProblemSeveritiesConfigurationBlock_pb_property_not_readable=Property expected to be readable but has no getter
ProblemSeveritiesConfigurationBlock_pb_property_not_writable=Property expected to be writable but has no setter
ValidationMessageFactory_DefaultElSeverityDisplayName=EL Preference Severities
ValidationMessageFactory_DefaultTypeComparatorDisplayName=Type Comparison Preference Severities
