
    `i<
                         d dl mZ d dlmZ d dlmZmZmZ d Z G d de          Z	e
dk    r ej                     dS dS )	    )cuda)TypingError)unittestCUDATestCaseskip_on_cudasimc                     d S N xs    w/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/numba/cuda/tests/cudapy/test_errors.pynoopr      s    D    c                   X    e Zd ZdZd Zd Zd Zd Zd Z e	d          d             Z
d	S )
TestJitErrorsz-
    Test compile-time errors with @jit.
    c                    t          j        t                    }|                     t                    5 }|d          d d d            n# 1 swxY w Y   |                     dt          |j                             |                     t                    5 }|d          d d d            n# 1 swxY w Y   |                     dt          |j                             d S )N))            )      zBgriddim must be a sequence of 1, 2 or 3 integers, got [1, 2, 3, 4]))r   r   )r   r   r   r   zCblockdim must be a sequence of 1, 2 or 3 integers, got [3, 4, 5, 6])r   jitr   assertRaises
ValueErrorassertInstr	exceptionselfkernfuncraisess      r   test_too_many_dimsz TestJitErrors.test_too_many_dims   sQ   8D>>z** 	+f)**	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ )&*++	- 	- 	- z** 	,f*++	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, 	, )&*++	- 	- 	- 	- 	-#   	A		AA	B++B/2B/c                    t          j        t                    }|                     t                    5 }|d          d d d            n# 1 swxY w Y   |                     dt          |j                             |                     t                    5 }|d          d d d            n# 1 swxY w Y   |                     dt          |j                             d S )N)g       @r   z1griddim must be a sequence of integers, got [2.0])r   g      @z2blockdim must be a sequence of integers, got [3.0])r   r   r   r   	TypeErrorr   r   r   r   s      r   test_non_integral_dimsz$TestJitErrors.test_non_integral_dims   sK   8D>>y)) 	VV	 	 	 	 	 	 	 	 	 	 	 	 	 	 	I&*++	- 	- 	- y)) 	VV	 	 	 	 	 	 	 	 	 	 	 	 	 	 	J&*++	- 	- 	- 	- 	-r$   c                     |                      t                    5 } |d           d d d            n# 1 swxY w Y   |                     dt          |j                             d S )Nr   z&launch configuration was not specified)r   r   r   r   r   r   s      r   _test_unconfiguredz TestJitErrors._test_unconfigured+   s    z** 	fHQKKK	 	 	 	 	 	 	 	 	 	 	 	 	 	 	>&*++	- 	- 	- 	- 	-s   377c                 t     t          j        d          t                    }|                     |           d S )Nzvoid(int32)r   r   r   r)   r    r!   s     r   "test_unconfigured_typed_cudakernelz0TestJitErrors.test_unconfigured_typed_cudakernel1   s5    *48M**400)))))r   c                 b    t          j        t                    }|                     |           d S r	   r+   r,   s     r   $test_unconfigured_untyped_cudakernelz2TestJitErrors.test_unconfigured_untyped_cudakernel5   s)    8D>>)))))r   z'TypingError does not occur on simulatorc                 v   t          j        d          d             t           j        fd            }|                     t                    5 } |d                      d d d            n# 1 swxY w Y   t	          |j                  }|                     d|           |                     d|           d S )NT)devicec                      t          |           S r	   )floorr   s    r   dev_funcz1TestJitErrors.test_typing_error.<locals>.dev_func>   s     88Or   c                        d           d S )Ng      ?r
   )r4   s   r   kernel_funcz4TestJitErrors.test_typing_error.<locals>.kernel_funcC   s    HSMMMMMr   )r   r   z*resolving callee type: type(CUDADispatcherz&NameError: name 'floor' is not defined)r   r   r   r   r   r   r   )r    r6   r"   excstrr4   s       @r   test_typing_errorzTestJitErrors.test_typing_error9   s   
 
				 	 
		 
	 	 	 	 
	 {++ 	 vK	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 V%&&BFKKK>GGGGGs   A..A25A2N)__name__
__module____qualname____doc__r#   r'   r)   r-   r/   r   r8   r
   r   r   r   r   
   s         - - -- - -- - -* * ** * * _>??H H @?H H Hr   r   __main__N)numbar   numba.core.errorsr   numba.cuda.testingr   r   r   r   r   r9   mainr
   r   r   <module>rB      s          ) ) ) ) ) ) F F F F F F F F F F	 	 	AH AH AH AH AHL AH AH AHH zHMOOOOO r   