mirror of
				https://github.com/python/cpython.git
				synced 2025-10-29 20:51:26 +00:00 
			
		
		
		
	bpo-47227: Suppress expression chaining for more RE parsing errors (GH-32333)
This commit is contained in:
		
							parent
							
								
									b09184bf05
								
							
						
					
					
						commit
						50872dbadc
					
				
					 2 changed files with 6 additions and 5 deletions
				
			
		|  | @ -335,7 +335,7 @@ def _class_escape(source, escape): | |||
|                 c = ord(unicodedata.lookup(charname)) | ||||
|             except KeyError: | ||||
|                 raise source.error("undefined character name %r" % charname, | ||||
|                                    len(charname) + len(r'\N{}')) | ||||
|                                    len(charname) + len(r'\N{}')) from None | ||||
|             return LITERAL, c | ||||
|         elif c in OCTDIGITS: | ||||
|             # octal escape (up to three digits) | ||||
|  | @ -395,7 +395,7 @@ def _escape(source, escape, state): | |||
|                 c = ord(unicodedata.lookup(charname)) | ||||
|             except KeyError: | ||||
|                 raise source.error("undefined character name %r" % charname, | ||||
|                                    len(charname) + len(r'\N{}')) | ||||
|                                    len(charname) + len(r'\N{}')) from None | ||||
|             return LITERAL, c | ||||
|         elif c == "0": | ||||
|             # octal escape | ||||
|  | @ -1014,7 +1014,7 @@ def addgroup(index, pos): | |||
|                     try: | ||||
|                         index = groupindex[name] | ||||
|                     except KeyError: | ||||
|                         raise IndexError("unknown group name %r" % name) | ||||
|                         raise IndexError("unknown group name %r" % name) from None | ||||
|                 else: | ||||
|                     try: | ||||
|                         index = int(name) | ||||
|  | @ -1053,7 +1053,7 @@ def addgroup(index, pos): | |||
|                     this = chr(ESCAPES[this][1]) | ||||
|                 except KeyError: | ||||
|                     if c in ASCIILETTERS: | ||||
|                         raise s.error('bad escape %s' % this, len(this)) | ||||
|                         raise s.error('bad escape %s' % this, len(this)) from None | ||||
|                 lappend(this) | ||||
|         else: | ||||
|             lappend(this) | ||||
|  | @ -1074,5 +1074,5 @@ def expand_template(template, match): | |||
|         for index, group in groups: | ||||
|             literals[index] = g(group) or empty | ||||
|     except IndexError: | ||||
|         raise error("invalid group reference %d" % index) | ||||
|         raise error("invalid group reference %d" % index) from None | ||||
|     return empty.join(literals) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Serhiy Storchaka
						Serhiy Storchaka