Syntax highlighting oddity with argument labels that are also keywords

In Xcode 10.1, I observe an unexpected syntax coloring result.

When a function has an argument label which is also a keyword, and that function is called on the same line as the opening bracket of an if statement, the argument label is colored like a keyword:

if true { foo(in: 0..<1) }    // "in" is pink like a keyword

if true {
  foo(in: 0..<1)              // "in" is black like an argument label

It also occurs with switch, for, and while statements, but not guard, defer, nor else.

Is this a bug in Swift or Xcode?