+
    VBi                     ~    R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt]P                  ! ]
4      tRR ltR tR# )a  
The Cython debugger

The current directory should contain a directory named 'cython_debug', or a
path to the cython project directory should be given (the parent directory of
cython_debug).

Additional gdb args can be provided only if a path to the project directory is
given.
Nc                 N   V'       gz   \         P                  P                  V R R4      p\        P                  ! V4      pV'       g;   \        P
                  ! R\         P                  P                  V 4      ,          4       \        P                  ! 4       w  rg\         P                  ! VR4      p VP                  V4       VP                  \        P                  ! R\        \        4      ,           R,           4      4       V'       d   MV'       gf   \         P                  P                  V R R4      p	\        V	4      p
 V
P!                  4       pV
P#                  4        VP                  RV,          4       VP                  RP                  R	 X 4       4      4       V'       g4   VP                  \        P                  ! R
X,           R,           4      4       VP                  R4       VP#                  4        V#   T
P#                  4        i ; i  TP#                  4        i ; i)cython_debugzcython_debug_info_*z1No cython debug files were found in %s. Aborting.wa              # This is a gdb command file
            # See https://sourceware.org/gdb/onlinedocs/gdb/Command-Files.html

            set breakpoint pending on
            set print pretty on

            python
            try:
                # Activate virtualenv, if we were launched from one
                import os
                import sys
                virtualenv = os.getenv('VIRTUAL_ENV')
                if virtualenv:
                    scripts_dir = 'Scripts' if sys.platform == "win32" else 'bin'
                    path_to_activate_this_py = os.path.join(virtualenv, scripts_dir, 'activate_this.py')
                    print("gdb command file: Activating virtualenv: %s; path_to_activate_this_py: %s" % (
                        virtualenv, path_to_activate_this_py))
                    with open(path_to_activate_this_py) as f:
                        exec(f.read(), dict(__file__=path_to_activate_this_py))
                from Cython.Debugger import libcython, libpython
            except Exception as ex:
                from traceback import print_exc
                print("There was an error in Python code originating from the file " + z)
                print("It used the Python interpreter " + str(sys.executable))
                print_exc()
                exit(1)
            end
            interpreterzfile %s

c              3   4   "   T F  pR V,          x  K  	  R# 5i)zcy import %s
N ).0fns   & :/usr/lib/python3.14/site-packages/Cython/Debugger/Cygdb.py	<genexpr>$make_command_file.<locals>.<genexpr>X   s     Jk.33ks   a%                      python
                    import sys
                    # Check if the Python executable provides a symbol table.
                    if not hasattr(gdb.selected_inferior().progspace, "symbol_file"):
                        sys.stderr.write(
                            "z was not compiled with debug symbols (or it was "
                            "stripped). Some functionality may not work (properly).\n")
                    end
                zsource .cygdbinit
)ospathjoinglobsysexitabspathtempfilemkstempfdopenwritetextwrapdedentrepr__file__openreadclose)path_to_debug_infoprefix_code	no_importskip_interpreterpatterndebug_filesfdtempfilenamefr   interpreter_filer   s   &&&&        r   make_command_filer*      s   '',,1-46 ii(HHH#%77??3E#FH I  '')B
		"cA@		 ![. ^bbj]k/!l.o/!  	<  # ww||$6V#': -"2"7"7"9K$**,k12GGDIIJkJJK# )! $/)/2	) 	 	 GG)*		+ %**,& 	
	s3   1A!H ,H  G= AH 'AH =HH H$c            	        \         P                  ! RRR7      p V P                  RRRR7       V P                  RR	R
RR7       V P                  RRRRR7       V P                  RRRR^ RR7       V P                  RRRRRR7       V P                  4       pVP                  pVP
                  pVR
J pVP                  ft   V'       dl   \        P                  P                  V^ ,          4      '       d@   ^ R
I	pVP
                  R,          pVP
                  ^ ,          pVP                  RV R24       \        P                  pVP                  ^8X  d   \        P                  pVP                  ^8  d   \        P                  p\        P                   ! VR7       VP"                  p\$        P'                  R V4       \)        VVVR!7      p\$        P+                  R"VP,                  W4       \/        V4      ;_uu_ 4       p	\$        P'                  R#WP0                  ! 4       4       \$        P+                  R$VP,                  4       \2        P4                  ! VP,                  R%V.V,           4      p
\$        P+                  R&VP,                  V
P6                  4         \$        P'                  R'V
P6                  4       V
P9                  4       p\$        P'                  R(V
P6                  V4        \$        P'                  R)T	P<                  ! 4       4       R
R
R
4       \$        P'                  R*T4       \        P>                  ! T4       \$        P'                  R+T4       R
#   \:         d     K  i ; i  + '       g   i     Lf; i),z
Start the Cython debugger. This tells gdb to import the Cython and Python
extensions (libcython.py and libpython.py) and it enables gdb's pending
breakpoints.
cygdbzCython debugger)progdescriptiongdb_argv*z/Arguments to forward to gdb; specified after --)nargshelpz--build-dir	build_dirNz(Directory containing cython_build/ files)destdefaultr2   z--gdb-executablegdbz$gdb executable to use [default: gdb]z	--verbosez-v	verbositycountz8Verbose mode. Multiple -v options increase the verbosity)r4   actionr5   r2   z--skip-interpreterr#   F
store_truez]Do not automatically point GDB to the same interpreter used to generate debugging information)r4   r5   r9   r2   :   NNzPUsing deprecated positional parameter to find build directory. Use "--build-dir z" argument instead.)levelzoptions = %r)r"   r#   z3Launching %s with command file: %s and gdb_argv: %sz%Command file (%s) contains: """
%s"""zSpawning %s...z-commandzSpawned %s (pid %d)z#Waiting for gdb (pid %d) to exit...z3Wait for gdb (pid %d) to exit is done. Returned: %rz%Closing temp command file with fd: %szRemoving temp command file: %szRemoved temp command file: %s) argparseArgumentParseradd_argument
parse_argsr3   r/   r   r   isdirwarningswarnloggingWARNr7   INFODEBUGbasicConfigr#   loggerdebugr*   infor6   r   r   
subprocessPopenpidwaitKeyboardInterruptfilenoremove)parseroptionsr    r/   r"   rB   logging_levelr#   r'   r   prets               r   mainrX   m   s    $$%F 
#N  P
KG  I
*E3  5 T!G  I ,-u\D  E
 !G **H"d*I X"''--2L2L##B'$--a0hi{h|  }P  Q  	RLLMAAm,//
LL)$%7/86FHL KKE\-	l		x=|]]_]$gkk2gkk:|DxOP)7;;>BAEEJffhRTUTYTY[^_ <hoo>OP 
 LL1<@IIl
LL0,? %  
	s2   >BM0AM,&M0M-)M0,M--M00N 	) FF)__doc__r   r   r   r   r   rL   r=   rD   	getLogger__name__rI   r*   rX   r       r   <module>r^      sB   	 
 
      			8	$PfD@r]   