+
    UBi                    F   ^ RI Ht ^ RIt^RIHtHt ^RIHt ^RI	H
t
 ^RIHt ^RIHtHtHtHt ^RIHtHt ^R	IHt ]P.                  '       d   ^R
IHt ^RIHt ^RIHt ^RIHt ^RIH t   ! R R]]
4      t! ! R R]]]!4      t" ! R R]]]!4      t# ! R R]]#4      t$R# )    )annotationsN)	OptionKeyUserStdOption)ALL_STDS)Compiler)AppleCPPStdsMixin)GnuCompiler
GnuCPPStdsgnu_common_warning_argsgnu_objc_warning_args)ClangCompilerClangCPPStds)CLikeCompiler)Environment)DynamicLinker)MachineChoice)BuildTarget)MutableKeyedOptionDictTypec                     a  ] tR t^tRtRR R lltR V 3R lltR V 3R llt]R R	 l4       t	R
 R lt
R V 3R lltRtV ;t# )ObjCPPCompilerobjcppc               4    V ^8  d   QhRRRRRRRRRR	R
RRR/# )   ccacheT.List[str]exelistversionstrfor_machiner   envr   linkerT.Optional['DynamicLinker']full_versionT.Optional[str] )formats   "@/usr/lib/python3.14/site-packages/mesonbuild/compilers/objcpp.py__annotate__ObjCPPCompiler.__annotate__   sC     % %{ %[ %3 %]j %!%4%  /%    c                	f    \         P                  ! WW#WEWvR 7       \        P                  ! V 4       R# ))r#   r!   N)r   __init__r   )selfr   r   r   r   r    r!   r#   s   &&&&&&&&r'   r,   ObjCPPCompiler.__init__   s*     	$+'3	Dt$r*   c                    V ^8  d   QhRRRR/# )r   basenamer   returnr   r%   )r&   s   "r'   r(   r)   %   s     6 6S 6Y 6r*   c                	^   < VR 8X  d   \        RV P                  R7      # \        SV `  V4      # )stdcpp_stdmachine)r   r   superform_compileropt_key)r-   r0   	__class__s   &&r'   r8   #ObjCPPCompiler.form_compileropt_key%   s.    uY0@0@AAw+H55r*   c                    V ^8  d   QhRRRR/# )r   keyr   r1   r   r%   )r&   s   "r'   r(   r)   *   s     - -I -# -r*   c                	H   < VP                   R 8X  d   R# \        SV `	  V4      # )r3   r4   )namer7   make_option_name)r-   r<   r9   s   &&r'   r?   ObjCPPCompiler.make_option_name*   s"    88uw',,r*   c                   V ^8  d   QhRR/# )r   r1   r   r%   )r&   s   "r'   r(   r)   0   s      # r*   c                 	    R # )zObjective-C++r%   r%   r*   r'   get_display_language#ObjCPPCompiler.get_display_language/   s    r*   c                    V ^8  d   QhRRRR/# )r   work_dirr   r1   Noner%   )r&   s   "r'   r(   r)   3   s     O OS OT Or*   c                	,    R pV P                  VRV4      # )z<#import<stdio.h>
class MyClass;int main(void) { return 0; }
zsanitycheckobjcpp.mm)_sanity_check_impl)r-   rF   codes   && r'   sanity_checkObjCPPCompiler.sanity_check3   s    O&&x1GNNr*   c                   V ^8  d   QhRR/# )r   r1   r   r%   )r&   s   "r'   r(   r)   7   s      7 r*   c                	   < \         SV `  4       pV P                  R 4      pVP                  V\	        R\
        4      /4       V# )r3   cpp)r7   get_optionsr8   updater   r   )r-   optsr<   r9   s   &  r'   rP   ObjCPPCompiler.get_options7   sD    w"$''.uh/
 	 r*   r%   )NN)__name__
__module____qualname____firstlineno__languager,   r8   r?   staticmethodrC   rK   rP   __static_attributes____classcell__)r9   s   @r'   r   r      sE    H%6 6
- -
  O r*   r   c                  6    ] tR t^@tRR R lltRR R lltRtR# )	GnuObjCPPCompilerNc               8    V ^8  d   QhRRRRRRRRRR	R
RRRRR/# r   r   r   r   r   r   r   r   r    r   defineszT.Optional[T.Dict[str, str]]r!   r"   r#   r$   r%   )r&   s   "r'   r(   GnuObjCPPCompiler.__annotate__A   sW     [ [{ [[ [3 []j [![6[ 5[  /	[r*   c	                	,   \         P                  WW#VWWVR 7       \        P                  ! W4       RR.p	R. RV	RV	R.,           RV	RR.,           R	V	RR.,           V P                  \        4      ,           V P                  \
        4      ,           /V n        R
# )r!   r#   -Wall-Winvalid-pch012-Wextra3
-Wpedantic
everythingN)r   r,   r	   supported_warn_argsr   r   	warn_args
r-   r   r   r   r   r    r`   r!   r#   default_warn_argss
   &&&&&&&&& r'   r,   GnuObjCPPCompiler.__init__A   s    
 	g # 	  	OT+$o6r00I;>0I|3LL&):i=V)V)-)A)ABY)Z*[)-)A)ABW)X*Y	[r*   c               $    V ^8  d   QhRRRRRR/# r   targetr   
subprojectr$   r1   r   r%   )r&   s   "r'   r(   ra   R   s"     
 
+ 
? 
^i 
r*   c                	`   . p\        R W P                  R7      pV'       d'   V P                  P                  P	                  W4      pM/V P                  P                  P
                  P                  V4      p\        V\        4      '       g   Q hVR8w  d   VP                  RV,           4       V# )r4   )ru   r6   none-std=)
r   r   environmentcoredataget_option_for_targetoptstoreget_value_for
isinstancer   appendr-   rt   ru   argsr<   r3   s   &&&   r'   get_option_std_args%GnuObjCPPCompiler.get_option_std_argsR   s    	jBRBRS""++AA&NC""++44BB3GC#s####&=KK#&r*   rn   NNNNrT   rU   rV   rW   r,   r   rZ   r%   r*   r'   r]   r]   @   s    ["
 
r*   r]   c                  6    ] tR t^^tRR R lltRR R lltRtR# )	ClangObjCPPCompilerNc               8    V ^8  d   QhRRRRRRRRRR	R
RRRRR/# r_   r%   )r&   s   "r'   r(    ClangObjCPPCompiler.__annotate__`   sM     : :{ :[ :3 :]j :!:6: 5:  /	:r*   c	                	    \         P                  WW#VWWVR 7       \        P                  ! W4       RR.p	R. RV	RV	R.,           RV	RR.,           R	R
./V n        R# )rc   rd   re   rf   rg   rh   ri   rj   rk   rl   z-WeverythingN)r   r,   r   rn   ro   s
   &&&&&&&&& r'   r,   ClangObjCPPCompiler.__init__`   su    
 	g # 	  	Ot-$o6r00I;>0I|3LL&(8	:r*   c               $    V ^8  d   QhRRRRRR/# rs   r%   )r&   s   "r'   r(   r   o   s"      + ? ^i r*   c                	    . p\        R V P                  R7      pV P                  WAV4      p\        V\        4      '       g   Q hVR8w  d   VP                  RV,           4       V# )r4   r5   rw   rx   )r   r   get_compileropt_valuer~   r   r   r   s   &&&   r'   r   'ClangObjCPPCompiler.get_option_std_argso   sZ    	4+;+;<((jA#s####&=KK#&r*   r   r   r   r   r%   r*   r'   r   r   ^   s    : r*   r   c                      ] tR t^ytRtRtR# )AppleClangObjCPPCompilerz?Handle the differences between Apple's clang and vanilla clang.r%   N)rT   rU   rV   rW   __doc__rZ   r%   r*   r'   r   r   y   s    Ir*   r   )%
__future__r   typingToptionsr   r   rO   r   	compilersr   mixins.appler   
mixins.gnur	   r
   r   r   mixins.clangr   r   mixins.cliker   TYPE_CHECKINGry   r   linkers.linkersr   mesonlibr   buildr   r   r   r]   r   r   r%   r*   r'   <module>r      s~    #  .   + _ _ 5 '???)/(#4$]H $N
K <,~ 6J02E Jr*   