
    8\hk                         d dl Z d dlZd dlmZ ddlmZmZ d Z ej         ej	                    d           ej
        d           G d d	e                                  ZdS )
    N)support   )setup_moduleDebuggerTestsc                  "    t                       d S )N)r        F/opt/python-3.11.14/usr/lib/python3.11/test/test_gdb/test_cfunction.pysetUpModuler      s    NNNNNr	   z&Python was compiled with optimizationscpuc                   >    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	S )
CFunctionTestsc                 n    |                      ||ddgd          }|                     d| |           d S )Nbtzpy-btT)
breakpointcmds_after_breakpointignore_stderrz<built-in method )get_stack_traceassertIn)self	func_namecmd
gdb_outputs       r
   checkzCFunctionTests.check   sS    )) #'/  * 
 

 	5)55zBBBBBr	   c                 \   	 t           j        rt                       dD ]}|                     | d|           5  | d| d| d}t	          j        d| d          }t           j        rt          d| d	           |                     ||           d d d            n# 1 swxY w Y   d S )
N)	_testcapiz_testcapi.MethClassz_testcapi.MethClass()z_testcapi.MethStatic().()z]
                    import _testcapi
                    def foo():
                        zh
                    def bar():
                        foo()
                    bar()
                z  test call: T)flush)r   verboseprintsubTesttextwrapdedentr   )r   r   argsobjcallr   s         r
   check_pycfunctionz CFunctionTests.check_pycfunction%   s/   K? 	GGG
 	+ 	+C 22y2233 + +33	33D333o ' ' ' '   ? >0$00====

9c***+ + + + + + + + + + + + + + +	+ 	+s   AB  B$	'B$	c                 2    |                      dd           d S )Nmeth_noargs r)   r   s    r
   test_pycfunction_noargsz&CFunctionTests.test_pycfunction_noargsE   s    }b11111r	   c                 2    |                      dd           d S )Nmeth_oz[]r-   r.   s    r
   test_pycfunction_oz!CFunctionTests.test_pycfunction_oH   s    x.....r	   c                 2    |                      dd           d S )Nmeth_varargsr,   r-   r.   s    r
   test_pycfunction_varargsz'CFunctionTests.test_pycfunction_varargsK   s    ~r22222r	   c                 2    |                      dd           d S )Nmeth_varargs_keywordsr,   r-   r.   s    r
   !test_pycfunction_varargs_keywordsz0CFunctionTests.test_pycfunction_varargs_keywordsN   s    6;;;;;r	   c                 2    |                      dd           d S )Nmeth_fastcallr,   r-   r.   s    r
   test_pycfunction_fastcallz(CFunctionTests.test_pycfunction_fastcallQ   s    33333r	   c                 2    |                      dd           d S )Nmeth_fastcall_keywordsr,   r-   r.   s    r
   "test_pycfunction_fastcall_keywordsz1CFunctionTests.test_pycfunction_fastcall_keywordsT   s    7<<<<<r	   N)__name__
__module____qualname__r   r)   r/   r2   r5   r8   r;   r>   r   r	   r
   r   r      s        
C 
C 
C*+ + +@2 2 2/ / /3 3 3< < <4 4 4= = = = =r	   r   )r$   unittesttestr   utilr   r   r   skipIfpython_is_optimizedrequires_resourcer   r   r	   r
   <module>rH      s            - - - - - - - -   ,,..9; ;5!!F= F= F= F= F=] F= F= "!; ;F= F= F=r	   