Support dash in command args when using UE_COMMAND_LINE_USES_ALLOW_LIST

`FGrammarBasedParser::ParseKey` does not support arguments with dashes inside the key.

This is fixed in https://github.com/EpicGames/UnrealEngine/pull/14519

[Attachment Removed]

Steps to Reproduce

  1. Add `UE_COMMAND_LINE_USES_ALLOW_LIST=1`to global definitions in *.Target.cs
  2. Add `UE_OVERRIDE_COMMAND_LINE_ALLOW_LIST=\“-my-arg-with-dashes\”` to global definitions
  3. Compile
  4. Launch the game with the argument from step 2
  5. Observe that the key extracted by ParseKey() in FGrammarBasedParser::ParseCmd() will have `-my`, `-arg`, `-with`, `-dashes` breaking usual argument parsing expectations.

[Attachment Removed]

Hey Mathieu,

Thanks for the pull request.

These go through a separate process, so no need to open an extra EPS here, unless it’s something urgent.

I will link this question on the internal ticket, so if the reviewer of the PR has any additional questions, they will likely reach out here.

I’m actually not sure if the rest of UE correctly handles parameters with dashes, so I could imagine there being some concerns around whether this would break other parts of the Engine.

I’ll leave that to the dev from the team when they look into it, though.

Best,

Sebastian

[Attachment Removed]