title: Why don't python3 inline if statements raise a SyntaxError, when whitespace after the if is omitted?
body: <p>The following statements in Python 3.6 and up to version 3.8 do not raise a SyntaxError, which  Python 2.7 and Python 3.5 do.</p>
  
  <pre><code>&gt;&gt;&gt; ifNone: print(5)
  5
  
  &gt;&gt;&gt; ifTrue: print('a')
  a
  
  &gt;&gt;&gt; ifnotNone: print('foo')
  foo
  </code></pre>
  
  <p>Note as well that no ellipsis is shown before the print statement is executed. Normally inline if statements have the following structure.</p>
  
  <pre><code>&gt;&gt;&gt; if True: print('bar')
  ...
  bar
  
  &gt;&gt;&gt; if False: print(10)
  ...
  &gt;&gt;&gt;
  </code></pre>
  
  <p>What allows this behaviour?</p>