tree 6338f87513bf0cad2ef6fc7ee148e9afe592f8ba
parent 61acfb07e8333e29bbf435cdb188723b5a93ddd8
author Nathan Ridge <zeratul976@hotmail.com> 1739489532 -0500
committer GitHub <noreply@github.com> 1739489532 -0500
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJnroD8CRC1aQ7uu5UhlAAAaS4QAHRiDdYeZl611jS79kztg3Nb
 ufNNbgmAm8uYBcAdbGf6kjnfrLOEIJS47UVsM1D1dlKOct+83OwKgaXoYUr+IWa3
 10O5wOrViUayW6PExFhp6AmJkhhvw/RriUE7b/qiKGTn3pKc9QFCjRbPYI2vmX+i
 puG9aiyMF/dYe1UZ8xCxdK6vj5yHcnR6NBS9h9AyfYL5mwaGTB5a8Kf4pzsffBLt
 6kzswzyGWofTi3iielNuPF8kOHifck4lpfCzBj5oAXu0qu3f3f1y/92+0UQKlOPd
 KGsfwckttt9PjqIBLurSgglmdPZSoQj9qFS81VciVeC7SHAwRD9qF7cknbLVLLv+
 7rUz1UpUT5gU3auAobO+Nr/r4KkeyriQWEU5lShqsMspHpsGysKR5kW+q5+V54t+
 DVD4WODRZnst6NW1hIamwDKS1rFFqznAxdsFkMfqrDop5FZrI9mQeBKTj7C91V6K
 P0Pi98E/GhtwelHbIrMe0W1dZ8JJQuk4zncCtmj8Opmb0xGfn9CpIfcu8lu6KHDm
 x+mDfsfnybiROOBO7vDObf0uAKiFYwisUJr6CtM+poY35G60Z8gM4qMdbSDz+XpY
 JHs/dBrUyZNm+Jjf941/RrOVf7qtggyg/h1I2hN/Mf6R6hVSphbN2a+HLxm7I1VZ
 Ee7terGqS5AbM38Cm5p2
 =edOg
 -----END PGP SIGNATURE-----
 

[clang][AST] Handle dependent representation of call to function with explicit object parameter in CallExpr::getBeginLoc() (#126868)

This fixes a crash where CallExpr::getBeginLoc() tries to access the
first argument of a CallExpr representing a call to a function with
an explicit object parameter, assuming that a first argument exists
because it's the object argument.

This is the case for non-dependent calls, but for dependent calls
the object argument is part of the callee (the semantic analysis
that separates it out has not been performed yet) and so there may
not be a first argument.

Fixes https://github.com/llvm/llvm-project/issues/126720