tree 91fa427a131edc9cd16c9bef896a64083442218e
parent 0009a1783490a8ff69251a0ec7df1891a427cfb0
author Jan Svoboda <jan_svoboda@apple.com> 1746109890 -0700
committer GitHub <noreply@github.com> 1746109890 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJoE4XCCRC1aQ7uu5UhlAAA6ZwQAIPMcutCuyBrKtHCFQr+9EsT
 hJUT5Oexo8IW/nJy2tlZ3VzBI9jxuCGxONJY1824nk+AWvNOegpfMOVetVSWCCDj
 GWvgZTxOCy8v+bFjm4j1AwIImDc9ytvs3I1lj6w6kcf5ItXE37QQR1vyNg984zN2
 Ml7oJ/ztnF4My1WTHlcCu0Cvh4zXwPUDDJRcW7tJ2gODfSrPZu+6/NeM8EjS2+Zv
 PNeBhO7oZkwWM63JSinCe4rurHKYePumbf1IgGJrj5wOFEwfnkW0WEiJhNR4vB36
 NI1R2vWW0k3cu3epbnrSV+N8pOsCkg7Ikctmfm4vMyqyO2hGmlpFvDEoq5Zf/tf+
 J1pCcb8ZdO2j0uHSJn48qN3FgPiMF4GXo442ze5b2onOzuubOiGHw0xEbL1zRVCT
 w+t5QnpIpB0r6aU+XMP0V3PrnkwooGPjjr+i3iDXGtMtOgg+mpRwyJRxTl8amUR2
 lON/YoMZrnMaarOg3zyp36t5woF4bhlBQ2iPfKlXp0Po5f7ApNJQEr51Njvuho4n
 9a8xnlRVDQGc3pUjHAruT3JY578dKBugEFUs8mJOCbvNp9yBI8BXXGdUgfjMtKWt
 Vg4OAkVrQMwJo0qEv6IxGtTZUxw2JOmY1ae9HyC0fWQfGSLlOpt1EqVRXKcOV/zz
 NLJyzk3Ox1p9snWrrkeV
 =RtOi
 -----END PGP SIGNATURE-----
 

[clang][frontend] Require invocation to construct `CompilerInstance` (#137668)

This PR makes it so that `CompilerInvocation` needs to be provided to
`CompilerInstance` on construction. There are a couple of benefits in my
view:
* Making it impossible to mis-use some `CompilerInstance` APIs. For
example there are cases, where `createDiagnostics()` was called before
`setInvocation()`, causing the `DiagnosticEngine` to use the
default-constructed `DiagnosticOptions` instead of the intended ones.
* This shrinks `CompilerInstance`'s state space.
* This makes it possible to access **the** invocation in
`CompilerInstance`'s constructor (to be used in a follow-up).