# 1. posting dates can be set with a tag. Also the year can be
# inferred from the transaction. If there are multiple tags, the first
# is used. Date separators /-. are allowed.
hledger -f- register
<<<
2000/1/2
   a  0   ; date: 3/4,  date: 4-5, date:6.7
>>> /^2000-03-04/
>>>=0

# 2. If the date: or date2: tags do not have a valid simple date
# value, there should be a corresponding error at the right position
hledger -f- register
<<<
comment
Journal comment to prevent this being parsed as a timedot file
end comment

2000/1/1
   a  0   ; date: 3.31

2000/1/2
   b  0
       ; date: 3.32

>>>2 /10:16/
>>>=1

# 3. Ledger's bracketed date syntax is also supported: `[DATE]`,
# `[DATE=DATE2]` or `[=DATE2]`. This is equivalent to using `date:` or
# `date2:` tags.
hledger -f- register --date2
<<<
2000/1/2
   a  0   ; [=3-4]
>>> /^2000-03-04/
>>>=0

# 4. Date parsing and error reporting activates for square brackets
# containing only `0123456789/-.=` characters.
hledger -f- register
<<<
comment
Journal comment to prevent this being parsed as a timedot file
end comment

2000/1/2
   a  0   ; [3/4 ] space, causes this to be ignored

2000/1/2
   b  0   ; [1/1=1/2/3/4] bad second date, should error

>>>2 /-:9:21/
>>>=1
