[[Property:title|Syntax level variant settings by version]]
[[Property:weight|-11]]
[[Property:uuid|aa52a183-c616-4590-5e7e-f9b9e2a71f14]]
The Eiffel Software compiler provides a set of options, available in [[General Target Options|Project Settings]], which allows users to [[Setting the syntax variant|select a variant of the Eiffel programming language syntax]] that best suits their needs. The meanings of these options, and in fact the options themselves, are subject to change from one version to the next. Below you will find a table that defines the meaning of the syntax level variants for each version. 

The options are distinguished by how the compiler handles the processing of certain words found in Eiffel text which may be:
# Associated with language constructs, or 
# Allowed as identifiers, or
# In the case of some options as either keywords or identifiers depending upon the context in which the words are found.


{| border="1" style="border-collapse: collapse; border-style: solid;"
|+ '''Legend'''
| style="color: navy;" | '''keyword'''
| Accepted as a keyword
|-
| style="color: blue;" | '''keyword'''
| Accepted as a keyword with a warning
|-
| style="color: maroon;" | '''keyword'''
| Accepted as a keyword or if grammar permits as an identifier with a warning
|-
| style="color: gray;" | name
| Accepted as an identifier with a warning
|-
| style="color: black;" | name
| Accepted as an identifier
|}



{| border="1" style="width: 100%; border-collapse: collapse; border-style: solid;"
|+ '''Constructs affected by the ''syntax'' project setting'''
|-
! rowspan="2" style="text-align: center; valign: center;" | Release
! colspan="4" style="text-align: center;" | Setting value*
|-
! Obsolete 
! Transitional 
! Standard 
! Provisional
|-
! rowspan="9" style="valign: center; text-align: center;" | [[Release notes for EiffelStudio 7.0 | 7.0]] and [[EiffelStudio release notes | more recent]]

| style="color: gray;" | across
| style="color: maroon;" | '''across'''
| style="color: navy;" | '''across'''
| style="color: navy;" | '''across'''
|-
| style="color: maroon;" | '''assign'''
| style="color: maroon;" | '''assign'''
| style="color: navy;" | '''assign'''
| style="color: navy;" | '''assign'''
|-
| style="color: gray;" | attached
| style="color: maroon;" | '''attached'''
| style="color: navy;" | '''attached'''
| style="color: navy;" | '''attached'''
|-
| style="color: gray;" | attribute
| style="color: maroon;" | '''attribute'''
| style="color: navy;" | '''attribute'''
| style="color: navy;" | '''attribute'''
|-
| style="color: gray;" | detachable
| style="color: maroon;" | '''detachable'''
| style="color: navy;" | '''detachable'''
| style="color: navy;" | '''detachable'''
|-
| style="color: navy;" | '''indexing'''
| style="color: blue;" | '''indexing'''
| style="color: black;" | indexing
| style="color: black;" | indexing
|-
| style="color: navy;" | '''is'''
| style="color: blue;" | '''is'''
| style="color: black;" | is
| style="color: black;" | is
|-
| style="color: gray;" | note
| style="color: navy;" | '''note'''
| style="color: navy;" | '''note'''
| style="color: navy;" | '''note'''
|-
| style="color: gray;" | some
| style="color: maroon;" | '''some'''
| style="color: navy;" | '''some'''
| style="color: navy;" | '''some'''
|- style="border-top: 4px solid gray;"
! rowspan="9" style="valign: center; text-align: center;" | [[Release notes for EiffelStudio 6.8 | 6.8]], [[Release notes for EiffelStudio 6.7 | 6.7]], [[Release notes for EiffelStudio 6.6 | 6.6]]
| style="color: gray;" | across
| style="color: gray;" | across
| style="color: gray;" | across
| style="color: maroon;" | '''across'''
|-
| style="color: maroon;" | '''assign'''
| style="color: maroon;" | '''assign'''
| style="color: navy;" | '''assign'''
| style="color: maroon;" | '''assign'''
|-
| style="color: gray;" | attached
| style="color: maroon;" | '''attached'''
| style="color: navy;" | '''attached'''
| style="color: maroon;" | '''attached'''
|-
| style="color: gray;" | attribute
| style="color: maroon;" | '''attribute'''
| style="color: navy;" | '''attribute'''
| style="color: maroon;" | '''attribute'''
|-
| style="color: gray;" | detachable
| style="color: maroon;" | '''detachable'''
| style="color: navy;" | '''detachable'''
| style="color: maroon;" | '''detachable'''
|-
| style="color: navy;" | '''indexing'''
| style="color: blue;" | '''indexing'''
| style="color: black;" | indexing
| style="color: black;" | indexing
|-
| style="color: navy;" | '''is'''
| style="color: blue;" | '''is'''
| style="color: black;" | is
| style="color: black;" | is
|-
| style="color: gray;" | note
| style="color: navy;" | '''note'''
| style="color: navy;" | '''note'''
| style="color: navy;" | '''note'''
|-
| style="color: gray;" | some
| style="color: gray;" | some
| style="color: gray;" | some
| style="color: maroon;" | '''some'''
|}


<nowiki>*</nowiki> A general explanation of what each variant setting means can be found in the section on [[Setting the syntax variant|setting the syntax variant.]]


