§
    2@Äj«  ã                   óÆ   — d dl Z d dlZd dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
mZmZmZ d dlmZ d dlmZ  G d„ dej        ¦  «        Zedk    r ej        ¦   «          dS dS )	é    N)Újit)ÚNumbaWarningÚ
deprecatedÚNumbaDeprecationWarningÚNumbaPendingDeprecationWarning)Úerrors)Úignore_internal_warningsc                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )ÚTestBuiltinsc                 óš   — d}|                       |j        t          ¦  «         |                      |t	          |j        ¦  «        ¦  «         d S )NzbFall-back from the nopython compilation path to the object mode compilation path has been detected©ÚassertEqualÚcategoryr   ÚassertInÚstrÚmessage©ÚselfÚwÚmsgs      úJC:\Projects\Historical\venv\Lib\site-packages\numba/tests/test_warnings.pyÚ!check_objmode_deprecation_warningz.TestBuiltins.check_objmode_deprecation_warning   sD   € ð9ˆà×Ò˜œÕ%<Ñ=Ô=Ð=Ø�Š�c�3˜qœy™>œ>Ñ*Ô*Ð*Ð*Ð*ó    c                 óš   — d}|                       |j        t          ¦  «         |                      |t	          |j        ¦  «        ¦  «         d S )Nz0The 'nopython' keyword argument was not suppliedr   r   s      r   Ú$check_nopython_kwarg_missing_warningz1TestBuiltins.check_nopython_kwarg_missing_warning   sE   € ð DˆØ×Ò˜œÕ%<Ñ=Ô=Ð=Ø�Š�c�3˜qœy™>œ>Ñ*Ô*Ð*Ð*Ð*r   c                 óŠ  ‡— t          j        dt           j        ¬¦  «        Šˆfd„}t          j        d¬¦  «        5 }t          j        dt          ¦  «         t          ¦   «           t          d¬¦  «        |¦  «        } |¦   «          |  	                    t          |¦  «        d¦  «         d	d	d	¦  «         d	S # 1 swxY w Y   d	S )
z9
        Rerun test_return_type_warning with nrt
        é   )Údtypec                  ó   •— ‰ S ©N© )Úys   €r   Úreturn_external_arrayzMTestBuiltins.test_return_type_warning_with_nrt.<locals>.return_external_array)   s   ø€ ØˆHr   T©ÚrecordÚalways)Únopythonr   N)ÚnpÚonesÚfloat32ÚwarningsÚcatch_warningsÚsimplefilterr   r	   r   r   Úlen)r   r#   r   Úcfuncr"   s       @r   Ú!test_return_type_warning_with_nrtz.TestBuiltins.test_return_type_warning_with_nrt#   s  ø€ õ ŒG�A�RœZÐ(Ñ(Ô(ˆð	ð 	ð 	ð 	ð 	õ Ô$¨DÐ1Ñ1Ô1ð 	(°QÝÔ! (­LÑ9Ô9Ð9Ý$Ñ&Ô&Ð&à&•C Ð&Ñ&Ô&Ð'<Ñ=Ô=ˆEØˆE‰GŒGˆGà×Ò�S ™VœV QÑ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s   ¼A/B8Â8B<Â?B<c                 ó8  — d„ }t          j        d¬¦  «        5 }t          j        dt          ¦  «         t	          ¦   «          t          |d¬¦  «        } |dd¦  «         |                      t          |¦  «        d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nc                 ó   — g }| |z   S r    r!   )Úxr"   Úas      r   Úaddz7TestBuiltins.test_no_warning_with_forceobj.<locals>.add6   s   € ØˆAØ�q‘5ˆLr   Tr$   r&   )Úforceobjé   é   r   )r+   r,   r-   r   r	   r   r   r.   )r   r5   r   r/   s       r   Útest_no_warning_with_forceobjz*TestBuiltins.test_no_warning_with_forceobj5   sä   € ð	ð 	ð 	õ Ô$¨DÐ1Ñ1Ô1ð 	(°QÝÔ! (­LÑ9Ô9Ð9Ý$Ñ&Ô&Ð&å˜ dÐ+Ñ+Ô+ˆEØˆE�!�Q‰KŒKˆKà×Ò�S ™VœV QÑ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s   ™A)BÂBÂBc                 ó4  — t          d¦  «        d„ ¦   «         }t          j        d¬¦  «        5 }t          j        d¦  «         t	          ¦   «           |¦   «          |                      t          |¦  «        d¦  «         |                      |d         j        t          ¦  «         |  	                    dt          |d         j        ¦  «        ¦  «         |  	                    dt          |d         j        ¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	NÚfooc                  ó   — d S r    r!   r!   r   r   Úbarz)TestBuiltins.test_deprecated.<locals>.barD   s   € àˆDr   Tr$   r&   r7   r   r=   )r   r+   r,   r-   r	   r   r.   r   ÚDeprecationWarningr   r   r   )r   r=   r   s      r   Útest_deprecatedzTestBuiltins.test_deprecatedC   s@  € Ý	�EÑ	Ô	ð	ð 	ñ 
Ô	ð	õ Ô$¨DÐ1Ñ1Ô1ð 	4°QÝÔ! (Ñ+Ô+Ð+Ý$Ñ&Ô&Ð&ØˆC‰EŒEˆEà×Ò�S ™VœV QÑ'Ô'Ð'Ø×Ò˜Q˜qœTœ]Õ,>Ñ?Ô?Ð?Ø�MŠM˜%¥ Q q¤T¤\Ñ!2Ô!2Ñ3Ô3Ð3Ø�MŠM˜%¥ Q q¤T¤\Ñ!2Ô!2Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4ð 	4ð 	4s   ®CDÄDÄDc                 ó°  — t          j        t           j        ¦  «        }|                     dd¦  «        5  t	          j        t          j        d¦  «        ¦  «         t	          j        t          j        d¦  «        ¦  «         t          ¦   «          d d d ¦  «         n# 1 swxY w Y   t	          j        d¬¦  «        5 }t	          j        d¦  «         t          ¦   «          | 	                    ¦   «          |  
                    t          |¦  «        d¦  «         |  
                    |d         j        t          ¦  «         |  
                    |d	         j        t          ¦  «         |                      dt          |d         j        ¦  «        ¦  «         |                      dt          |d	         j        ¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nr;   é
   ÚsameTr$   r&   r8   r   r7   )r   ÚWarningsFixerr   r,   r+   Úwarnr   r	   r-   Úflushr   r.   r   r   r   r   )r   Úwfixr   s      r   Útest_warnings_fixerz TestBuiltins.test_warnings_fixerR   s   € õ Ô#¥FÔ$7Ñ8Ô8ˆØ× Ò  ¨Ñ+Ô+ð 	'ð 	'ÝŒM�&Ô-¨fÑ5Ô5Ñ6Ô6Ð6ÝŒM�&Ô8¸Ñ@Ô@ÑAÔAÐAÝ$Ñ&Ô&Ð&ð	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'õ
 Ô$¨DÐ1Ñ1Ô1ð 	5°QÝÔ! (Ñ+Ô+Ð+Ý$Ñ&Ô&Ð&Ø�JŠJ‰LŒLˆLà×Ò�S ™VœV QÑ'Ô'Ð'ð ×Ò˜Q˜qœTœ]Õ,CÑDÔDÐDØ×Ò˜Q˜qœTœ]­LÑ9Ô9Ð9Ø�MŠM˜&¥# a¨¤d¤lÑ"3Ô"3Ñ4Ô4Ð4Ø�MŠM˜&¥# a¨¤d¤lÑ"3Ô"3Ñ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5ð 	5ð 	5s%   µABÂB Â#B Â<DGÇGÇGc                 ó¶  — d}d}d}d|›d|›d|›d�}t          j        t          j        d|g¦  «        }|                     ¦   «         \  }}|                      |j        |¦  «         t          t          j	        ¦  «        }d	|d
<   t          j        t          j        d|g|¬¦  «        }|                     ¦   «         \  }}|                      |j        |¦  «         d S )Né7   éc   z3'parallel=True' was specified but no transformationaÛ  if 1:
            import warnings
            from numba.tests.error_usecases import foo
            import numba
            from numba.tests.support import ignore_internal_warnings
            with warnings.catch_warnings(record=True) as w:
                warnings.simplefilter('always')
                ignore_internal_warnings()
                foo()
            for x in w:
                if x.category == numba.errors.NumbaPerformanceWarning:
                    if "z2" in str(x.message):
                        exit(z)
            exit(z
)
        z-cÚ1Ú"NUMBA_DISABLE_PERFORMANCE_WARNINGS)Úenv)
Ú
subprocessÚPopenÚsysÚ
executableÚcommunicater   Ú
returncodeÚdictÚosÚenviron)	r   Únot_found_ret_codeÚfound_ret_codeÚexpectedÚparallel_codeÚpopenÚoutÚerrrM   s	            r   Ú!test_disable_performance_warningsz.TestBuiltins.test_disable_performance_warningsi   së   € àÐØˆØHˆˆð& ˆxˆx˜˜˜Ð);Ð);Ð);ð=ˆõ" Ô ¥#¤.°$¸Ð!FÑGÔGˆØ×$Ò$Ñ&Ô&‰ˆˆSØ×Ò˜Ô)¨>Ñ:Ô:Ð:õ •2”:ÑÔˆØ47ˆÐ0Ñ1ÝÔ ¥#¤.°$¸Ð!FÈCÐPÑPÔPˆØ×$Ò$Ñ&Ô&‰ˆˆSØ×Ò˜Ô)Ð+=Ñ>Ô>Ð>Ð>Ð>r   c                 ó   — t          j        ¦   «         5  t          j        d¦  «         t          j        dt          ¬¦  «         t          j        dt          ¬¦  «         t          j        t          d¦  «        ¦  «         t          j        t	          d¦  «        ¦  «         t          j        t          d¦  «        ¦  «         t          j        t          d¦  «        ¦  «         |                      t          ¦  «        5  t          j        t          d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NÚerrorÚignore©r   úthis is ignoredúthis is not ignored)
r+   r,   r-   r>   ÚPendingDeprecationWarningrD   r   r   ÚassertRaisesr   ©r   s    r   Ú test_filter_deprecation_warningsz-TestBuiltins.test_filter_deprecation_warningsŽ   sÅ  € õ Ô$Ñ&Ô&ð 		Cð 		CÝÔ! 'Ñ*Ô*Ð*ÝÔ! (Õ5GÐHÑHÔHÐHÝÔ! (Õ5NÐOÑOÔOÐOÝŒMÕ,Ð->Ñ?Ô?Ñ@Ô@Ð@ÝŒMÕ3Ð4EÑFÔFÑGÔGÐGÝŒMÕ1Ð2CÑDÔDÑEÔEÐEÝŒMÕ8Ð9JÑKÔKÑLÔLÐLØ×"Ò"¥<Ñ0Ô0ð Cð CÝ”�lÐ+@ÑAÔAÑBÔBÐBðCð Cð Cñ Cô Cð Cð Cð Cð Cð Cð Cøøøð Cð Cð Cð Cð		Cð 		Cð 		Cñ 		Cô 		Cð 		Cð 		Cð 		Cð 		Cð 		Cð 		Cð 		Cøøøð 		Cð 		Cð 		Cð 		Cð 		Cð 		Cs6   ”C)EÃ="D+ÄEÄ+D/	Ä/EÄ2D/	Ä3EÅEÅ
Ec                 ó¾  — t          j        ¦   «         5  t          j        dt          ¬¦  «         t          j        dt          ¬¦  «         t          j        dt
          ¬¦  «         t          j        dt          ¬¦  «         |                      t          ¦  «        5  t          j        t          d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  t          j        t	          d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¦  «        ¦  «         t          j        t          d¦  «        ¦  «         t          j        dt
          ¬¦  «         t          j        dt          ¬¦  «         |                      t          ¦  «        5  t          j        t          d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  t          j        t          d¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr`   rb   ra   rd   rc   )	r+   r,   r-   r>   re   r   r   rf   rD   rg   s    r   Ú)test_filter_ignore_numba_deprecation_onlyz6TestBuiltins.test_filter_ignore_numba_deprecation_onlyœ   s¢  € õ Ô$Ñ&Ô&ð 	,ð 	,ÝÔ! 'Õ4FÐGÑGÔGÐGÝÔ! 'Õ4MÐNÑNÔNÐNÝÔ! (Õ5LÐMÑMÔMÐMÝÔ! (Ý+IðKñ Kô Kð Kð ×"Ò"Õ#5Ñ6Ô6ð Ið IÝ”Õ0Ð1FÑGÔGÑHÔHÐHðIð Ið Iñ Iô Ið Ið Ið Ið Ið Ið Iøøøð Ið Ið Ið Ià×"Ò"Õ#<Ñ=Ô=ð Pð PÝ”Õ7Ð8MÑNÔNÑOÔOÐOðPð Pð Pñ Pô Pð Pð Pð Pð Pð Pð Pøøøð Pð Pð Pð Põ ŒMÕ1Ð2CÑDÔDÑEÔEÐEÝŒMÕ8Ð9JÑKÔKÑLÔLÐLõ Ô! 'Õ4KÐLÑLÔLÐLÝÔ! 'Ý+IðKñ Kô Kð Kð ×"Ò"Õ#5Ñ6Ô6ð Nð NÝ”Õ5Ð6KÑLÔLÑMÔMÐMðNð Nð Nñ Nô Nð Nð Nð Nð Nð Nð Nøøøð Nð Nð Nð Nà×"Ò"Õ#<Ñ=Ô=ð ,ð ,Ý”Õ<Ø)ñ+ô +ñ ,ô ,ð ,ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð-	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð 	,ð 	,s£   ”BIÂ"C	Â=IÃ	C	ÃIÃC	ÃIÃ."DÄIÄD 	Ä IÄ#D 	Ä$BIÆ9"G'ÇIÇ'G+	Ç+IÇ.G+	Ç/IÈ"H:È.IÈ:H>	È>IÉH>	ÉIÉIÉIN)Ú__name__Ú
__module__Ú__qualname__r   r   r0   r9   r?   rG   r^   rh   rj   r!   r   r   r   r      sŸ   € € € € € ð+ð +ð +ð+ð +ð +ð(ð (ð (ð$(ð (ð (ð4ð 4ð 4ð5ð 5ð 5ð.#?ð #?ð #?ðJCð Cð Cð,ð ,ð ,ð ,ð ,r   r   Ú__main__)rU   rN   rP   r+   Únumpyr(   ÚunittestÚnumbar   Únumba.core.errorsr   r   r   r   Ú
numba.corer   Únumba.tests.supportr	   ÚTestCaser   rk   Úmainr!   r   r   ú<module>rw      s  ðØ 	€	€	€	Ø Ð Ð Ð Ø 
€
€
€
Ø €€€Ø Ð Ð Ð à €€€Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ð Ð Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8ðd,ð d,ð d,ð d,ð d,�8Ô$ñ d,ô d,ð d,ðN ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   