GH-94739: Mark stacks of exception handling blocks for setting frame.f_lineno in the debugger. (GH-94958)

This commit is contained in:
Mark Shannon 2022-07-18 16:06:42 +01:00 committed by GitHub
parent 631160c262
commit 2f8bff6879
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 164 additions and 43 deletions

View file

@ -390,6 +390,19 @@ read_obj(uint16_t *p)
return (PyObject *)val;
}
/* See Objects/exception_handling_notes.txt for details.
*/
static inline unsigned char *
parse_varint(unsigned char *p, int *result) {
int val = p[0] & 63;
while (p[0] & 64) {
p++;
val = (val << 6) | (p[0] & 63);
}
*result = val;
return p+1;
}
static inline int
write_varint(uint8_t *ptr, unsigned int val)
{