+
    X°³jC  ã                   óð  € ^ RI 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	^RI
Ht ]P                  P                   ! R R]P                  4      4       t]P                  P                   ! R R]4      4       t]P                  P                   ! R R]P                  4      4       t]P                  P                   ! R	 R
]P                  4      4       t]P                  P                   ! R R]P                  4      4       t]P                  P                  ]P                  P)                  ]P*                  ! 4       P-                  4       R8H  RRR7       ! R R]P                  4      4       4       tR# )é    N)Úutilc                   ól  a € ] tR t^t o ]P
                  ! RRRR4      .t]P                  P                  RRR.4      R 4       t
R	 tR
 t]P                  P                  ]P                  R8H  RR7      R 4       t]P                  P                  ]P                  R8H  RR7      R 4       tR tR tRtV tR# )ÚTestF77CallbackÚtestsÚsrcÚcallbackzfoo.fÚnameÚtÚt2c                ó(   € V P                  V4       R # ©N)Úcheck_function)Úselfr	   s   &&Ú_/home/luca/screen-checking/.venv/lib/python3.14/site-packages/numpy/f2py/tests/test_callback.pyÚtest_allÚTestF77Callback.test_all   s   € à×Ñ˜DÖ!ó    c                ó€   € \         P                  ! R 4      pV P                  P                  P                  V8X  g   Q hR# )aË          a = t(fun,[fun_extra_args])

        Wrapper for ``t``.

        Parameters
        ----------
        fun : call-back function

        Other Parameters
        ----------------
        fun_extra_args : input tuple, optional
            Default: ()

        Returns
        -------
        a : int

        Notes
        -----
        Call-back functions::

            def fun(): return a
            Return objects:
                a : int
        N)ÚtextwrapÚdedentÚmoduler
   Ú__doc__)r   Úexpecteds   & r   Útest_docstringÚTestF77Callback.test_docstring   s3   € Ü—?’?ð $ó ˆð4 �{‰{�}‰}×$Ñ$¨Ô0Ð0Ò0r   c                óþ  € \        V P                  V4      pV! R  4      pV^8X  g   Q hV! R RR7      pV^8X  g   Q hV! R RR7      pV^8X  g   Q hV! R R	R7      pV^8X  g   Q hV! \        P                  \        P                  3R7      pV^´8X  g   Q hV! \        P                  \        P                  3R7      pV^´8X  g   Q hV! V P                  P
                  RR7      pV^8X  g   Q hV! V P                  P                  4      pV^8X  g   Q hV! V P                  P                  P                  4      pV^8X  g   Q h ! R R4      pV! 4       pV! V4      pV^8X  g   Q hV! VP                  4      pV^	8X  g   Q hR# )
c                  ó   € ^# )é   © r   r   r   Ú<lambda>Ú0TestF77Callback.check_function.<locals>.<lambda>7   s   € ‘ar   c                 ó   € ^# ©é   r   ©Úas   &r   r    r!   9   ó   € ™r   )Úfun_extra_argsc                 ó   € V # r   r   r%   s   &r   r    r!   ;   r'   r   c                 ó   € ^V ,           # r#   r   r%   s   &r   r    r!   =   s   € ˜˜Ažr   c                   ó,   a € ] tR t^Kt o R tR tRtV tR# )Ú)TestF77Callback.check_function.<locals>.Ac                ó   € ^# ©é   r   ©r   s   &r   Ú__call__Ú2TestF77Callback.check_function.<locals>.A.__call__L   ó   € Ùr   c                ó   € ^	# )é	   r   r0   s   &r   ÚmthÚ-TestF77Callback.check_function.<locals>.A.mthO   r3   r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r1   r6   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   ÚAr,   K   s   ø‡ € ò÷ð r   r@   N)é   r.   )	Úgetattrr   ÚmathÚdegreesÚpiÚfuncÚfunc0Ú	_cpointerr6   )r   r	   r
   Úrr@   r&   s   &&    r   r   ÚTestF77Callback.check_function5   sQ  € Ü�D—K‘K Ó&ˆÙ‰i‹LˆØ�AŒvˆˆvÙ‰k¨%Ô0ˆØ�AŒvˆˆvÙ‰k¨%Ô0ˆØ�AŒvˆˆvÙ‰o¨eÔ4ˆØ�BŒwˆˆwÙŒd�l‰l¬D¯G©G¨;Ô7ˆØ�CŒxˆˆxÙŒd�l‰l¬D¯G©G¨;Ô7ˆØ�CŒxˆˆxáˆd�k‰k×Ñ¨uÔ5ˆØ�BŒwˆˆwÙˆd�k‰k×ÑÓ ˆØ�BŒwˆˆwÙˆd�k‰k×Ñ×)Ñ)Ó*ˆØ�BŒwˆˆw÷	ñ 	ñ ‹CˆÙˆa‹DˆØ�AŒvˆˆvÙˆa�e‰e‹HˆØ�AŒvˆŠvr   Úwin32z)Fails with MinGW64 Gfortran (Issue #9673))Úreasonc                óZ   € R  pV P                   P                  pV! V4      pV^ 8X  g   Q hR# )c                 ó   € V R 8X  d   ^ # ^# )rI   r   )Úcodes   &r   r   Ú6TestF77Callback.test_string_callback.<locals>.callback[   s   € Ø�sŒ{Ùár   N)r   Ústring_callback)r   r   ÚfrI   s   &   r   Útest_string_callbackÚ$TestF77Callback.test_string_callbackX   s,   € ò	ð �K‰K×'Ñ'ˆÙˆh‹KˆØ�AŒvˆŠvr   c                ó  € \         P                  ! RR4      p\         P                  ! RR4      p\         P                  ! R.R4      pR pV P                  P                  pWV3 F  pV! WFVP
                  4      pV^ 8X  d   K  Q h	  R# )é   ÚS8ÚcÚ c                 ó–   € V P                   V38w  d   ^# V P                  R8w  d   ^# \        P                  ! V R8H  4      '       g   ^# ^ # )rV   rW   r   )ÚshapeÚdtypeÚnpÚall)ÚcuÚlencus   &&r   r   Ú<TestF77Callback.test_string_callback_array.<locals>.callbackm   s;   € Ø�x‰x˜E˜8Ô#ÙØ�x‰x˜4ÔÙÜ—6’6˜" ™)×$Ò$ÙÙr   N©rV   )rV   é   )r]   ÚzerosÚarrayr   Ústring_callback_arrayÚsize)r   Úcu1Úcu2Úcu3r   rR   r_   Úress   &       r   Útest_string_callback_arrayÚ*TestF77Callback.test_string_callback_arraye   su   € ô �hŠh�u˜dÓ#ˆÜ�hŠh�v˜sÓ#ˆÜ�hŠh˜�t˜TÓ"ˆò	ð �K‰K×-Ñ-ˆØ˜S“/ˆBÙ�H "§'¡'Ó*ˆCØ˜!–8ˆO�8ó "r   c           
     óZ  a aa€ . oV 3R  loVVV 3R lpR UUu. uF-  p\        ^4       F  p\        P                  ! W3R7      NK  	  K/  	  pppV F  pVP                  4        K  	  V F  pVP	                  4        K  	  RP	                  S4      oS'       d   \        S4      hR# u uppi )c                  ó~   <€ \         P                  ! R 4       SP                  P                  R 4      p V ^{8X  g   Q h^*# )gü©ñÒMbP?c                  ó   € ^{# ©é{   r   r   r   r   r    Ú?TestF77Callback.test_threadsafety.<locals>.cb.<locals>.<lambda>†   s   € ¡cr   )ÚtimeÚsleepr   r
   )rI   r   s    €r   ÚcbÚ-TestF77Callback.test_threadsafety.<locals>.cb€   s3   ø€ ô �JŠJ�tÔð —‘—‘™kÓ*ˆAØ˜”8ˆO�8ár   c                 ó  <€  \        ^24       F8  pSP                  P                  S4      pV^*8X  g   Q hSP                  V 4       K:  	  R#   \         d)    SP                  \        P                  ! 4       4        R# i ; i)é2   N)Úranger   r
   r   Ú	ExceptionÚappendÚ	tracebackÚ
format_exc)r	   ÚjrI   rv   Úerrorsr   s   &  €€€r   ÚrunnerÚ1TestF77Callback.test_threadsafety.<locals>.runner‹   sg   ø€ ð6Ü˜rž�AØŸ™Ÿ™ bÓ)�AØ œ7�N˜7Ø×'Ñ'¨Ö-ó #øô ô 6Ø—‘œi×2Ò2Ó4×5ð6ús   ƒAA Á/A?Á>A?)ÚtargetÚargsz

N)r
   r   )rz   Ú	threadingÚThreadÚstartÚjoinÚAssertionError)r   r�   ÚargÚnÚthreadsr
   rv   r€   s   f     @@r   Útest_threadsafetyÚ!TestF77Callback.test_threadsafety{   s¥   ú€ ð ˆõ		÷	6ñ #ô
á"�¬E°"®I qô ×Ò F°×9Ù,5ñ :Ù"ð 	ñ 
ó
 ˆAØ�G‰GŽIñ ó ˆAØ�F‰FŽHñ ð —‘˜VÓ$ˆßÜ  Ó(Ð(ñ ùó
s   ™3B'c                ó¸  €  V P                   P                  ^4        V P                   P                  ^4       R V P                   n        V P                   P                  ^4      pV^8X  g   Q hR V P                   n        V P                   P                  ^4      pV^8X  g   Q hV P                   = V P                   P                  ^4       RR lV P                   n        V P                   P                  ^4      pV^8X  g   Q hV P                   P                  ^4      pV^8X  g   Q hR#   \         d.   p\        T4      P	                  R4      '       g   Q h Rp?ELARp?ii ; i  \         d.   p\        T4      P	                  R4      '       g   Q h Rp?EL`Rp?ii ; i  \         d.   p\        T4      P	                  R4      '       g   Q h Rp?ELRp?ii ; i)é   zCallback global_f not definedNz!cb: Callback global_f not definedc                 ó   € V ^,           # rb   r   ©Úxs   &r   r    Ú6TestF77Callback.test_hidden_callback.<locals>.<lambda>®   ó   € ¨¨Q®r   c                 ó   € V ^,           # )r�   r   r’   s   &r   r    r”   ²   r•   r   c                 ó   € V ^,           # )é   r   r’   s   &r   r    r”   ¼   s   € ¨1¨q®5r   )r   )r   Úhidden_callbackr{   ÚstrÚ
startswithÚhidden_callback2Úglobal_f)r   ÚmsgrI   s   &  r   Útest_hidden_callbackÚ$TestF77Callback.test_hidden_callback£   sˆ  € ð	HØ�K‰K×'Ñ'¨Ô*ð	LØ�K‰K×(Ñ(¨Ô+ñ  /ˆ�‰ÔØ�K‰K×'Ñ'¨Ó*ˆØ�AŒvˆˆvá.ˆ�‰ÔØ�K‰K×'Ñ'¨Ó*ˆØ�AŒvˆˆvà�K‰KÐ ð	HØ�K‰K×'Ñ'¨Ô*ó  1ˆ�‰ÔØ�K‰K×'Ñ'¨Ó*ˆØ�AŒvˆˆvð �K‰K×(Ñ(¨Ó+ˆØ�AŒvˆŠvøô9 ô 	HÜ�s“8×&Ñ&Ð'F×GÒGÐGÖGûð	Hûô
 ô 	LÜ�s“8×&Ñ&Ð'J×KÒKÐKÖKûð	Lûô ô 	HÜ�s“8×&Ñ&Ð'F×GÒGÐGÖGûð	HúsF   ‚D+ žE& Â2F! Ä+E#Ä6"EÅE#Å&FÅ1"FÆFÆ!GÆ,"GÇGr   N)r8   r9   r:   r;   r   ÚgetpathÚsourcesÚpytestÚmarkÚparametrizer   r   r   ÚskipifÚsysÚplatformrS   rl   r�   rŸ   r<   r=   r>   s   @r   r   r      sÎ   ø‡ € à�|Š|˜G U¨J¸Ó@ÐA€Gà‡[�[×Ñ˜V c¨4 [Ó1ñ"ó 2ð"ò1ò:!ðF ‡[�[×Ñ˜Ÿ™¨Ñ/ØJð ó Lñ	óLð	ð ‡[�[×Ñ˜Ÿ™¨Ñ/ØJð ó LñóLðò(&)÷Pð r   r   c                   ó    € ] tR t^ÅtRtR.tRtR# )ÚTestF77CallbackPythonTLSzO
Callback tests using Python thread-local storage instead of
compiler-provided
z-DF2PY_USE_PYTHON_TLSr   N)r8   r9   r:   r;   r   Úoptionsr<   r   r   r   rª   rª   Å   s   † ñð
 'Ð'„Gr   rª   c                   óR   a € ] tR t^Ït o ]P
                  ! RRRR4      .tR tRtV t	R# )ÚTestF90Callbackr   r   r   zgh17797.f90c                ó¤   € R  p\         P                  ! . RO\         P                  R7      pV P                  P	                  W4      pV^�8X  g   Q hR# )c                 ó   € V ^{,           # rq   r   r’   s   &r   ÚincrÚ*TestF90Callback.test_gh17797.<locals>.incrÔ   s   € Ø�s•7ˆNr   )r\   N)rV   r�   r˜   )r]   re   Úint64r   Úgh17797)r   r°   ÚyrI   s   &   r   Útest_gh17797ÚTestF90Callback.test_gh17797Ó   s?   € ò	ô �HŠH’Y¤b§h¡hÔ/ˆØ�K‰K×Ñ Ó(ˆØ�OÔ#Ð#Ò#r   r   N)
r8   r9   r:   r;   r   r¡   r¢   rµ   r<   r=   r>   s   @r   r­   r­   Ï   s&   ø‡ € à�|Š|˜G U¨J¸ÓFÐG€G÷$ð $r   r­   c                   óV   a € ] tR t^Üt o Rt]P                  ! RRRR4      .tR tRt	V t
R# )	ÚTestGH18335zÔThe reproduction of the reported issue requires specific input that
extensions may break the issue conditions, so the reproducer is
implemented as a separate test class. Do not extend this test with
other tests!
r   r   r   zgh18335.f90c                óT   € R  pV P                   P                  V4      pV^|8X  g   Q hR# )c                 ó0   € V ^ ;;,          ^,          uu&   R# )r   Nr   r’   s   &r   ÚfooÚ%TestGH18335.test_gh18335.<locals>.fooæ   s   € Øˆa�D�A�I�Dr   N)r   Úgh18335)r   r»   rI   s   &  r   Útest_gh18335ÚTestGH18335.test_gh18335å   s)   € ò	ð �K‰K×Ñ Ó$ˆØ�GŒ|ÐŠ|r   r   N)r8   r9   r:   r;   r   r   r¡   r¢   r¾   r<   r=   r>   s   @r   r¸   r¸   Ü   s-   ø‡ € ñð
 �|Š|˜G U¨J¸ÓFÐG€G÷ð r   r¸   c                   ó~   a € ] tR t^ít o ]P
                  ! RRRR4      ]P
                  ! RRRR4      .tRtR tRt	V t
R	# )
ÚTestGH25211r   r   r   z	gh25211.fzgh25211.pyfÚ	callback2c                óT   € R  pV P                   P                  V4      pV^n8X  g   Q hR# )c                 ó   € W ,          # r   r   r’   s   &r   ÚbarÚ%TestGH25211.test_gh25211.<locals>.barô   s	   € Ø•5ˆLr   N)r   r»   )r   rÅ   rk   s   &  r   Útest_gh25211ÚTestGH25211.test_gh25211ó   s'   € ò	ð �k‰k�o‰o˜cÓ"ˆØ�cŒzÐŠzr   r   N)r8   r9   r:   r;   r   r¡   r¢   Úmodule_namerÇ   r<   r=   r>   s   @r   rÁ   rÁ   í   s@   ø‡ € à�|Š|˜G U¨J¸ÓDØ�|Š|˜G U¨J¸ÓFðH€Gà€K÷ð r   rÁ   ÚdarwinFz*Callback aborts cause CI failures on macOS)Ú	conditionÚrunrL   c                   óX   a € ] tR t^ût o ]P
                  ! RRRR4      .tR.tR tRt	V t
R# )	ÚTestCBFortranCallstatementr   r   r   zgh26681.f90z--lowerc                ó0  € \         P                  ! \        R R7      ;_uu_ 4       pV P                  P                  P
                  V P                  n        V P                  P                  P                  R 4       RRR4       R#   + '       g   i     R# ; i)Úhelpme)ÚmatchN)r£   ÚraisesÚ
ValueErrorr   ÚutilsÚmy_abortÚ
mypy_abortÚdo_something)r   Úexcs   & r   Útest_callstatement_fortranÚ5TestCBFortranCallstatement.test_callstatement_fortran  sX   € Ü�]Š]œ:¨X×6Õ6¸#Ø%)§[¡[×%6Ñ%6×%?Ñ%?ˆD�K‰KÔ"Ø�K‰K×Ñ×*Ñ*¨8Ô4÷ 7×6×6Ò6ús   ¥ABÂB	r   N)r8   r9   r:   r;   r   r¡   r¢   r«   rÙ   r<   r=   r>   s   @r   rÎ   rÎ   û   s/   ø‡ € ð
 �|Š|˜G U¨J¸ÓFÐG€GØˆk€G÷5ð 5r   rÎ   )rC   r¨   r§   r   r…   rt   r}   r£   Únumpyr]   rY   r   r¤   ÚslowÚF2PyTestr   rª   r­   r¸   rÁ   ÚxfailÚsystemÚlowerrÎ   r   r   r   Ú<module>rá      sT  ðÛ Û Û 
Û Û Û Û ã ã å ð ‡�×Ñôq�d—m‘mó qó ðqðh ‡�×Ñô(˜ó (ó ð(ð ‡�×Ñô	$�d—m‘mó 	$ó ð	$ð ‡�×Ñô�$—-‘-ó ó ðð  ‡�×Ñô
�$—-‘-ó 
ó ð
ð ‡�×ÑØ‡�×Ñ˜hŸošoÓ/×5Ñ5Ó7¸8ÑCØØFð ó Hô5 §¡ó 5óHó ò5r   