or.hh

Go to the documentation of this file.
00001 /*
00002    The lestes compiler suite
00003    Copyright (C) 2002, 2003, 2004, 2005 Miroslav Tichy
00004    Copyright (C) 2002, 2003, 2004, 2005 Petr Zika
00005    Copyright (C) 2002, 2003, 2004, 2005 Vojtech Hala
00006    Copyright (C) 2002, 2003, 2004, 2005 Jiri Kosina
00007    Copyright (C) 2002, 2003, 2004, 2005 Pavel Sanda
00008    Copyright (C) 2002, 2003, 2004, 2005 Jan Zouhar
00009    Copyright (C) 2002, 2003, 2004, 2005 Rudolf Thomas
00010 
00011    This program is free software; you can redistribute it and/or modify
00012    it under the terms of the GNU General Public License as published by
00013    the Free Software Foundation; version 2 of the License.
00014 
00015    This program is distributed in the hope that it will be useful,
00016    but WITHOUT ANY WARRANTY; without even the implied warranty of
00017    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018    GNU General Public License for more details.
00019 
00020    See the full text of the GNU General Public License version 2, and
00021    the limitations in the file doc/LICENSE.
00022 
00023    By accepting the license the licensee waives any and all claims
00024    against the copyright holder(s) related in whole or in part to the
00025    work, its use, and/or the inability to use it.
00026  
00027  */
00028 #ifndef lestes__lang__cplus__sem___or_hh___included
00029 #define lestes__lang__cplus__sem___or_hh___included
00030 
00031 /*! \file
00032   Header file for purposes of overload resolution
00033   \author jikos
00034 */
00035 package(lestes);
00036 package(lang);
00037 package(cplus);
00038 package(sem);
00039 
00040 typedef ::lestes::std::list< srp< or_or_functional > > exprlist;
00041 typedef ::lestes::std::set< srp< ss_function_declaration > > func_decl_set;
00042 
00043 ptr< or_or_functional > overload_resolution (ptr< exprlist > exprs, ptr< ss_operator > func_name);
00044 ptr< or_or_functional > overload_resolution (ptr< exprlist > exprs, ptr< func_decl_set > candidates);
00045 
00046 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_vq_ref_vq_ref()
00047 {
00048         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create(); 
00049         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create(); 
00050         ptr< ss_type > return_type; 
00051         ptr< ss_decl_name > _op = op::create(source_location::zero());
00052         
00053         types->push_back(type1::instance());
00054         return_type = ss_pseudoreference::instance(type1::instance());
00055         the_instance->construct_builtin_op(_op, types, return_type);
00056 }
00057 
00058 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_nonref_vq_ref_int()
00059 {
00060         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00061         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00062         ptr< ss_type > return_type;
00063         ptr< ss_decl_name > _op = op::create(source_location::zero());
00064 
00065         types->push_back(type1::instance());
00066         types->push_back(ss_type_sint::instance());
00067         return_type = type1::instance();
00068         the_instance->construct_builtin_op(_op, types, return_type);
00069 }
00070 
00071 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_vq_ptr_ref_vq_ptr_ref()
00072 {
00073         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00074         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00075         ptr< ss_type > return_type;
00076         ptr< ss_decl_name > _op = op::create(source_location::zero());
00077 
00078         types->push_back(ss_pointer::instance(type1::instance()));
00079         return_type = ss_pseudoreference::instance(ss_pointer::instance(type1::instance()));
00080         the_instance->construct_builtin_op(_op, types, return_type);
00081 }
00082 
00083 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_vq_ptr_nonref_vq_ptr_ref_int()
00084 {
00085         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00086         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00087         ptr< ss_type > return_type;
00088         ptr< ss_decl_name > _op = op::create(source_location::zero());
00089 
00090         types->push_back(ss_pointer::instance(type1::instance()));
00091         types->push_back(ss_type_sint::instance());
00092         return_type = ss_pointer::instance(type1::instance());
00093         the_instance->construct_builtin_op(_op, types, return_type);
00094 }
00095 
00096 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_ref_ptr()
00097 {
00098         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00099         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00100         ptr< ss_type > return_type;
00101         ptr< ss_decl_name > _op = op::create(source_location::zero());
00102 
00103         types->push_back(ss_pointer::instance(type1::instance()));
00104         return_type = ss_pseudoreference::instance(type1::instance());
00105         the_instance->construct_builtin_op(_op, types, return_type);
00106 }
00107 
00108 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_ref_ptr_const()
00109 {
00110         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00111         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00112         ptr< ss_type > return_type;
00113         ptr< ss_decl_name > _op = op::create(source_location::zero());
00114 
00115         types->push_back(ss_pointer::instance(ss_const::instance(type1::instance())));
00116         return_type = ss_pseudoreference::instance(type1::instance());
00117         the_instance->construct_builtin_op(_op, types, return_type);
00118 }
00119 
00120 template<typename op> void or_builtin_operator_declaration_creator::add_ptr_ptr()
00121 {
00122         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00123         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00124         ptr< ss_type > return_type;
00125         ptr< ss_decl_name > _op = op::create(source_location::zero());
00126 
00127         types->push_back(ss_pointer::instance(ss_void::instance()));
00128         return_type = ss_pointer::instance(ss_void::instance());
00129         the_instance->construct_builtin_op(_op, types, return_type);
00130 }
00131 
00132 template<typename op, typename type1, typename type2> void or_builtin_operator_declaration_creator::add_nonref_nonref()
00133 {
00134         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create(); 
00135         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create(); 
00136         ptr< ss_type > return_type; 
00137         ptr< ss_decl_name > _op = op::create(source_location::zero());
00138 
00139         types->push_back(type2::instance());
00140         return_type = type1::instance();
00141         the_instance->construct_builtin_op(_op, types, return_type);
00142 }
00143 
00144 template<typename op, typename type1, typename type2, typename type3> void or_builtin_operator_declaration_creator::add_nonref_nonref_nonref()
00145 {
00146         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00147         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00148         ptr< ss_type > return_type;
00149         ptr< ss_decl_name > _op = op::create(source_location::zero());
00150 
00151         types->push_back(type2::instance());
00152         types->push_back(type3::instance());
00153         return_type = type1::instance();
00154         the_instance->construct_builtin_op(_op, types, return_type);
00155 }
00156 
00157 template<typename op, typename type1, typename type2> void or_builtin_operator_declaration_creator::add_vq_ref_vq_ref_nonref()
00158 {
00159         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00160         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00161         ptr< ss_type > return_type;
00162         ptr< ss_decl_name > _op = op::create(source_location::zero());
00163 
00164         types->push_back(ss_pseudoreference::instance(type1::instance()));
00165         types->push_back(type2::instance());
00166         return_type = ss_pseudoreference::instance(type1::instance());
00167         the_instance->construct_builtin_op(_op, types, return_type);
00168 }
00169 
00170 template<typename op, typename type1, typename type2> void or_builtin_operator_declaration_creator::add_vq_ref_vq_ref_nonref_REF()
00171 {
00172 /*      ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00173         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00174         ptr< ss_type > return_type;
00175         ptr< ss_decl_name > _op = op::create(source_location::zero());
00176 
00177         types->push_back(ss_pseudoreference::instance(type1::instance()));
00178         types->push_back(type2::instance());
00179         return_type = ss_pseudoreference::instance(type1::instance());
00180         the_instance->construct_builtin_op(_op, types, return_type);
00181 */
00182         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > c_r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00183         ptr< ::lestes::std::list< srp< ss_type > > > c_types = ::lestes::std::list< srp< ss_type > >::create();
00184         ptr< ss_type > c_return_type;
00185         ptr< ss_decl_name > c__op = op::create(source_location::zero());
00186 
00187         c_types->push_back(ss_reference::instance(type1::instance()));
00188         c_types->push_back(type2::instance());
00189         c_return_type = ss_pseudoreference::instance(type1::instance());
00190         the_instance->construct_builtin_op(c__op, c_types, c_return_type);
00191 }
00192 
00193 template<typename op, typename type1, typename type2, typename type3, typename type4> void or_builtin_operator_declaration_creator::add_nonref_nonref_nonref_nonref()
00194 {
00195         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create(); 
00196         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00197         ptr< ss_type > return_type;
00198         ptr< ss_decl_name > _op = op::create(source_location::zero());
00199 
00200         types->push_back(type2::instance());
00201         types->push_back(type3::instance());
00202         types->push_back(type4::instance());
00203         return_type = type1::instance();
00204         the_instance->construct_builtin_op(_op, types, return_type);
00205 }
00206 
00207 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_ptr_ptr_int()
00208 {
00209         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00210         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00211         ptr< ss_type > return_type;
00212         ptr< ss_decl_name > _op = op::create(source_location::zero());
00213 
00214         types->push_back(ss_pointer::instance(type1::instance()));
00215         types->push_back(ss_type_sint::instance());
00216         return_type = ss_pointer::instance(type1::instance());
00217         the_instance->construct_builtin_op(_op, types, return_type);
00218 }
00219 
00220 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_ptr_int_ptr()
00221 {
00222         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00223         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00224         ptr< ss_type > return_type;
00225         ptr< ss_decl_name > _op = op::create(source_location::zero());
00226 
00227         types->push_back(ss_type_sint::instance());
00228         types->push_back(ss_pointer::instance(type1::instance()));
00229         return_type = ss_pointer::instance(type1::instance());
00230         the_instance->construct_builtin_op(_op, types, return_type);
00231 }
00232 
00233 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_int_ptr_ptr()
00234 {
00235         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00236         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00237         ptr< ss_type > return_type;
00238         ptr< ss_decl_name > _op = op::create(source_location::zero());
00239 
00240         types->push_back(ss_pointer::instance(type1::instance()));
00241         types->push_back(ss_pointer::instance(type1::instance()));
00242         return_type = ss_type_sint::instance();
00243         the_instance->construct_builtin_op(_op, types, return_type);
00244 }
00245 
00246 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_bool_ptr_ptr()
00247 {
00248         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00249         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00250         ptr< ss_type > return_type;
00251         ptr< ss_decl_name > _op = op::create(source_location::zero());
00252 
00253         types->push_back(ss_pointer::instance(type1::instance()));
00254         types->push_back(ss_pointer::instance(type1::instance()));
00255         return_type = ss_bool::instance();
00256         the_instance->construct_builtin_op(_op, types, return_type);
00257 }
00258 
00259 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_vq_ptr_ref_vq_ptr_ref_ptr()
00260 {
00261         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00262         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00263         ptr< ss_type > return_type;
00264         ptr< ss_decl_name > _op = op::create(source_location::zero());
00265 
00266         types->push_back(ss_pointer::instance(type1::instance()));
00267         types->push_back(ss_pointer::instance(type1::instance()));
00268         return_type = ss_pseudoreference::instance(ss_pointer::instance(type1::instance()));
00269         the_instance->construct_builtin_op(_op, types, return_type);
00270 }
00271 
00272 template<typename op, typename type1> void or_builtin_operator_declaration_creator::add_vq_ptr_ref_vq_ptr_ref_int()
00273 {
00274         ptr< ::lestes::std::set< srp< ss_builtin_operator_declaration > > > r = ::lestes::std::set< srp< ss_builtin_operator_declaration > >::create();
00275         ptr< ::lestes::std::list< srp< ss_type > > > types = ::lestes::std::list< srp< ss_type > >::create();
00276         ptr< ss_type > return_type;
00277         ptr< ss_decl_name > _op = op::create(source_location::zero());
00278 
00279         types->push_back(ss_pointer::instance(type1::instance()));
00280         types->push_back(ss_type_sint::instance());
00281         return_type = ss_pseudoreference::instance(ss_pointer::instance(type1::instance()));
00282         the_instance->construct_builtin_op(_op, types, return_type);
00283 }
00284 
00285 /*! 
00286  * The following macros are usied when filling the builtin-op decl seq with builtin operator
00287  * declarations, to make it easier.
00288  */
00289 
00290 /* TODO All the following macros having 'VQ' in their name should be adjusted to use const/volatile */
00291 
00292 /*! Return type is type1&, 1st argument type is type1& (both the same types) */
00293 #define ADD_VQ_REF_VQ_REF(op, type1) the_instance->add_vq_ref_vq_ref<op, type1>();
00294 
00295 /*! Return type is type1, 1st argument type is type1&, 2nd argument is int */
00296 #define ADD_NONREF_VQ_REF_INT(op, type1) the_instance->add_nonref_vq_ref_int<op, type1>();
00297         
00298 /*! Return type is pointer, 1st argument is pointer. This is FIXME, shoudl be split for pointer to object and pointer to arithmetic
00299  * void is used so far, until something better is written. This is quite a important FIXME for one day.
00300  */
00301 #define ADD_VQ_PTR_REF_VQ_PTR_REF(op, type1) the_instance->add_vq_ptr_ref_vq_ptr_ref<op, type1>();
00302 
00303 /*! Return type is pointer, 1st argument is pointer, 2nd argument is int. This is FIXME, shoudl be split for pointer to object and pointer to arithmetic
00304  * void is used so far, until something better is written. This is quite a important FIXME for one day.
00305  */
00306 #define ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(op, type1) the_instance->add_vq_ptr_nonref_vq_ptr_ref_int<op, type1>();
00307         
00308 /*! Return type is reference, parameter type is pointer. FIXME - void used so far */
00309 #define ADD_REF_PTR(op, type1) the_instance->add_ref_ptr<op, type1>();
00310 
00311 /*! Return type is reference, parameter type is pointer to const . FIXME - void used so far */
00312 #define ADD_REF_PTR_CONST(op, type1) the_instance->add_ref_ptr_const<op, type1>();
00313 
00314 /*! Return type is pointer, parameter type is pointer. FIXME - void used so far */
00315 #define ADD_PTR_PTR(op) the_instance->add_ptr_ptr<op>();
00316 
00317 /*! Return type is type1, argument is type2 */
00318 #define ADD_NONREF_NONREF(op, type1, type2) the_instance->add_nonref_nonref<op, type1, type2>();
00319 /* TODO [13.6/11] to be done */
00320         
00321 /*! Return type is non-ref and is conversion from , 1st and 2nd arguments are also non-ref */
00322 #define ADD_NONREF_NONREF_NONREF(op, type1, type2, type3) the_instance->add_nonref_nonref_nonref<op, type1, type2, type3>();
00323 
00324 /*! Return type is ref, 1st argument is ref and 2nd arguments is non-ref and ret and 1st are the same*/
00325 #define ADD_VQ_REF_VQ_REF_NONREF(op, type1, type2) the_instance->add_vq_ref_vq_ref_nonref<op, type1, type2>();
00326 #define ADD_VQ_REF_VQ_REF_NONREF_REF(op, type1, type2) the_instance->add_vq_ref_vq_ref_nonref_REF<op, type1, type2>();
00327 /* TODO [13.6/19 - 21] to be done*/
00328         
00329 /*! Return type is non-ref, 1st and 2nd arguments are also non-ref */
00330 #define ADD_NONREF_NONREF_NONREF_NONREF(op, type1, type2, type3, type4) the_instance->add_nonref_nonref_nonref_nonref<op, type1, type2, type3, type4>();
00331 
00332 /*! Return type is pointer to type1, 1st arg is pointer, 2nd arg is int */
00333 #define ADD_PTR_PTR_INT(op, type1) the_instance->add_ptr_ptr_int<op, type1>();
00334 
00335 /*! Return type is ptr to type1, 1st arg is int, 2nd arg is pointer to type1 */
00336 #define ADD_PTR_INT_PTR(op, type1) the_instance->add_ptr_int_ptr<op, type1>();
00337 
00338 /*! Return type is ptrdiff_t , 1st arg and 2nd arg is pointer to type1 */
00339 #define ADD_INT_PTR_PTR(op, type1) the_instance->add_int_ptr_ptr<op, type1>();
00340 
00341 /*! Return type is ptrdiff_t , 1st arg and 2nd arg is pointer to type1 */
00342 #define ADD_BOOL_PTR_PTR(op, type1) the_instance->add_bool_ptr_ptr<op, type1>();
00343 
00344 /*! Rerturn type is pseudoreference for pointer to type1, 1st arg same as return type, 2nd argument is pointer to type1*/
00345 #define ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(op, type1) the_instance->add_vq_ptr_ref_vq_ptr_ref_ptr<op, type1>();
00346 
00347 /*! Return type is pseudoref for ptr to type1, 1st argument is same as return type, 2nd argument is int */
00348 #define ADD_VQ_PTR_REF_VQ_PTR_REF_INT(op, type1) the_instance->add_vq_ptr_ref_vq_ptr_ref_int<op, type1>();
00349 
00350 /* and this is the initialization sequence */
00351 
00352 #define BUILTIN_DECL_SEQ_INIT() { \
00353 \
00354                 /* [13.6/3] \
00355                  * For every pair (T, VQ), where T is arithmetic type and VQ is either volatile or empty, there exists \
00356                  * candidate operator functions of the form\
00357 \
00358                         VQ T& operator++(VQ T&);\
00359                         T     operator++(VQ T&, int);\
00360                 */\
00361                 \
00362                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_schar);\
00363                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_sshort);\
00364                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_sint);\
00365                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_slong);\
00366                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_uchar);\
00367                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_pchar);\
00368                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_ushort);\
00369                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_uint);\
00370                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_ulong);\
00371                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_bool);\
00372                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_float);\
00373                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_double);\
00374                 ADD_VQ_REF_VQ_REF(ss_operator_inc, ss_type_ldouble);\
00375 \
00376                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_schar);\
00377                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_sshort);\
00378                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_sint);\
00379                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_slong);\
00380                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_uchar);\
00381                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_pchar);\
00382                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_ushort);\
00383                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_uint);\
00384                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_ulong);\
00385                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_bool);\
00386                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_float);\
00387                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_double);\
00388                 ADD_NONREF_VQ_REF_INT(ss_operator_inc, ss_type_ldouble);\
00389 \
00390                 /* [13.6/4] \
00391                  * For every pair (T, VQ), where T is arithmetic type OTHER THAN BOOL (wtf?) and VQ is either volatile or empty, there exists \
00392                  * candidate operator functions of the form\
00393 \
00394                         VQ T& operator--(VQ T&);\
00395                         T     operator--(VQ T&, int);\
00396                 */\
00397                 \
00398                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_schar);\
00399                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_sshort);\
00400                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_sint);\
00401                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_slong);\
00402                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_uchar);\
00403                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_pchar);\
00404                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_ushort);\
00405                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_uint);\
00406                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_ulong);\
00407                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_float);\
00408                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_double);\
00409                 ADD_VQ_REF_VQ_REF(ss_operator_dec, ss_type_ldouble);\
00410         \
00411                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_schar);\
00412                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_sshort);\
00413                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_sint);\
00414                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_slong);\
00415                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_uchar);\
00416                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_pchar);\
00417                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_ushort);\
00418                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_uint);\
00419                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_ulong);\
00420                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_float);\
00421                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_double);\
00422                 ADD_NONREF_VQ_REF_INT(ss_operator_dec, ss_type_ldouble);\
00423 \
00424                 /* [13.6/5]. See fixme in or.hh \
00425                  *\
00426                  * For every pair (T, VQ) where T is cv-qualified or cv-unqualified object type and VQ is either volatile or\
00427                  * empty, there exist candidate operator functions of the form \
00428                  \
00429                         T*VQ& operator++(T*VQ&);\
00430                         T*VQ& operator--(T*VQ&);\
00431                         T* operator++(T*VQ&, int);\
00432                         T* operator--(T*VQ&, int);\
00433                  \
00434                  */\
00435 \
00436 \
00437                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_bool);\
00438                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_schar);\
00439                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_sshort);\
00440                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_sint);\
00441                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_slong);\
00442                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_uchar);\
00443                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_pchar);\
00444                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_ushort);\
00445                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_uint);\
00446                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_ulong);\
00447                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_float);\
00448                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_double);\
00449                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_inc, ss_type_ldouble);\
00450         \
00451                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_bool);\
00452                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_schar);\
00453                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_sshort);\
00454                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_sint);\
00455                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_slong);\
00456                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_uchar);\
00457                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_pchar);\
00458                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_ushort);\
00459                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_uint);\
00460                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_ulong);\
00461                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_float);\
00462                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_double);\
00463                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_inc, ss_type_ldouble);\
00464 \
00465                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_schar);\
00466                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_sshort);\
00467                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_sint);\
00468                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_slong);\
00469                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_uchar);\
00470                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_pchar);\
00471                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_ushort);\
00472                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_uint);\
00473                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_ulong);\
00474                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_float);\
00475                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_double);\
00476                 ADD_VQ_PTR_REF_VQ_PTR_REF(ss_operator_dec, ss_type_ldouble);\
00477         \
00478                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_schar);\
00479                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_sshort);\
00480                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_sint);\
00481                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_slong);\
00482                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_uchar);\
00483                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_pchar);\
00484                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_ushort);\
00485                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_uint);\
00486                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_ulong);\
00487                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_float);\
00488                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_double);\
00489                 ADD_VQ_PTR_NONREF_VQ_PTR_REF_INT(ss_operator_dec, ss_type_ldouble);\
00490                 \
00491                 /* [13.6/6] and [13.6/7]. Pointer dereference.
00492                  *      T& operator*(T*); 
00493                  */\
00494 \
00495                 ADD_REF_PTR(ss_operator_mul, ss_type_schar);\
00496                 ADD_REF_PTR(ss_operator_mul, ss_type_sshort);\
00497                 ADD_REF_PTR(ss_operator_mul, ss_type_sint);\
00498                 ADD_REF_PTR(ss_operator_mul, ss_type_slong);\
00499                 ADD_REF_PTR(ss_operator_mul, ss_type_uchar);\
00500                 ADD_REF_PTR(ss_operator_mul, ss_type_pchar);\
00501                 ADD_REF_PTR(ss_operator_mul, ss_type_ushort);\
00502                 ADD_REF_PTR(ss_operator_mul, ss_type_uint);\
00503                 ADD_REF_PTR(ss_operator_mul, ss_type_ulong);\
00504                 ADD_REF_PTR(ss_operator_mul, ss_type_float);\
00505                 ADD_REF_PTR(ss_operator_mul, ss_type_double);\
00506                 ADD_REF_PTR(ss_operator_mul, ss_type_ldouble);\
00507                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_schar);\
00508                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_sshort);\
00509                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_sint);\
00510                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_slong);\
00511                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_uchar);\
00512                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_pchar);\
00513                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_ushort);\
00514                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_uint);\
00515                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_ulong);\
00516                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_float);\
00517                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_double);\
00518                 ADD_REF_PTR_CONST(ss_operator_mul, ss_type_ldouble);\
00519                 \
00520                 /* [13.6/8] is added to the candidates list later for the current type */\
00521 \
00522                 /* [13.6/9] \
00523                  * For every promoted arithmetic type T (int, long, float, double), there exists candidate operator functions of the form \
00524 \
00525                         T operator+(T);\
00526                         T operator-(T);\
00527                 */\
00528 \
00529                 ADD_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_sint);\
00530                 ADD_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_uint);\
00531                 ADD_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong);\
00532                 ADD_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong);\
00533                 ADD_NONREF_NONREF(ss_operator_add, ss_type_float, ss_type_float);\
00534                 ADD_NONREF_NONREF(ss_operator_add, ss_type_double, ss_type_double);\
00535                 ADD_NONREF_NONREF(ss_operator_add, ss_type_ldouble, ss_type_ldouble);\
00536 \
00537                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_sint);\
00538                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_uint);\
00539                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong);\
00540                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong);\
00541                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_float, ss_type_float);\
00542                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_double, ss_type_double);\
00543                 ADD_NONREF_NONREF(ss_operator_sub, ss_type_ldouble, ss_type_ldouble);\
00544 \
00545                 /* [13.6/10] \
00546                  * For every promoted integral type T (int, long), there exists candidate operator functions of the form \
00547 \
00548                         T operator~(T);\
00549                 */\
00550                 \
00551                 ADD_NONREF_NONREF(ss_operator_bnot, ss_type_sint, ss_type_sint);\
00552                 ADD_NONREF_NONREF(ss_operator_bnot, ss_type_uint, ss_type_uint);\
00553                 ADD_NONREF_NONREF(ss_operator_bnot, ss_type_slong, ss_type_slong);\
00554                 ADD_NONREF_NONREF(ss_operator_bnot, ss_type_ulong, ss_type_ulong);\
00555 \
00556                 /* [13.6/11] \
00557                    is TODO\
00558                  */\
00559 \
00560                 /* [13.6/12]\
00561                  * For every pair of promoted arithmetic types L and R there exist candidate operator functions of the form\
00562 \
00563                         LR operator*(L,R);               \
00564                         LR operator/(L,R);               \
00565                         LR operator+(L,R);               \
00566                         LR operator-(L,R);               \
00567 \
00568                         bool operator<(L,R);\
00569                         bool operator>(L,R);\
00570                         bool operator<=(L,R);\
00571                         bool operator>=(L,R);\
00572                         bool operator==(L,R);\
00573                         bool operator!=(L,R);\
00574                         \
00575                 */\
00576 \
00577                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_sint, ss_type_sint);\
00578                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_sint, ss_type_uint);\
00579                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_sint, ss_type_slong);\
00580                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_sint, ss_type_ulong);\
00581                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_sint, ss_type_float);\
00582                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_sint, ss_type_double);\
00583                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_sint, ss_type_ldouble);\
00584                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_uint, ss_type_sint);\
00585                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_uint, ss_type_uint);\
00586                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_uint, ss_type_slong);\
00587                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_uint, ss_type_ulong);\
00588                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_uint, ss_type_float);\
00589                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_uint, ss_type_double);\
00590                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_uint, ss_type_ldouble);\
00591                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_sint);\
00592                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_uint);\
00593                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_slong);\
00594                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_ulong);\
00595                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_float);\
00596                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_double);\
00597                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_slong, ss_type_ldouble);\
00598                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_sint);\
00599                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_uint);\
00600                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_slong);\
00601                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
00602                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_float);\
00603                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_double);\
00604                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ulong, ss_type_ldouble);\
00605                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_float, ss_type_sint);\
00606                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_float, ss_type_uint);\
00607                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_float, ss_type_slong);\
00608                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_float, ss_type_ulong);\
00609                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_float, ss_type_float, ss_type_float);\
00610                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_double, ss_type_float, ss_type_double);\
00611                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ldouble, ss_type_float, ss_type_ldouble);\
00612                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_double, ss_type_sint);\
00613                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_double, ss_type_uint);\
00614                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_double, ss_type_slong);\
00615                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_double, ss_type_ulong);\
00616                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_double, ss_type_double, ss_type_float);\
00617                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_double, ss_type_double, ss_type_double);\
00618                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ldouble, ss_type_double, ss_type_ldouble);\
00619                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_sint, ss_type_ldouble, ss_type_sint);\
00620                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_uint, ss_type_ldouble, ss_type_uint);\
00621                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_slong, ss_type_ldouble, ss_type_slong);\
00622                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ulong, ss_type_ldouble, ss_type_ulong);\
00623                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ldouble, ss_type_ldouble, ss_type_float);\
00624                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ldouble, ss_type_ldouble, ss_type_double);\
00625                 ADD_NONREF_NONREF_NONREF(ss_operator_add, ss_type_ldouble, ss_type_ldouble, ss_type_ldouble);\
00626 \
00627                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_sint, ss_type_sint);\
00628                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_sint, ss_type_uint);\
00629                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_sint, ss_type_slong);\
00630                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_sint, ss_type_ulong);\
00631                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_sint, ss_type_float);\
00632                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_sint, ss_type_double);\
00633                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_sint, ss_type_ldouble);\
00634                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_uint, ss_type_sint);\
00635                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_uint, ss_type_uint);\
00636                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_uint, ss_type_slong);\
00637                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_uint, ss_type_ulong);\
00638                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_uint, ss_type_float);\
00639                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_uint, ss_type_double);\
00640                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_uint, ss_type_ldouble);\
00641                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_sint);\
00642                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_uint);\
00643                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_slong);\
00644                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_ulong);\
00645                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_float);\
00646                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_double);\
00647                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_slong, ss_type_ldouble);\
00648                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_sint);\
00649                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_uint);\
00650                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_slong);\
00651                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
00652                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_float);\
00653                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_double);\
00654                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ulong, ss_type_ldouble);\
00655                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_float, ss_type_sint);\
00656                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_float, ss_type_uint);\
00657                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_float, ss_type_slong);\
00658                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_float, ss_type_ulong);\
00659                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_float, ss_type_float, ss_type_float);\
00660                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_double, ss_type_float, ss_type_double);\
00661                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ldouble, ss_type_float, ss_type_ldouble);\
00662                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_double, ss_type_sint);\
00663                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_double, ss_type_uint);\
00664                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_double, ss_type_slong);\
00665                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_double, ss_type_ulong);\
00666                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_double, ss_type_double, ss_type_float);\
00667                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_double, ss_type_double, ss_type_double);\
00668                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ldouble, ss_type_double, ss_type_ldouble);\
00669                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_sint, ss_type_ldouble, ss_type_sint);\
00670                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_uint, ss_type_ldouble, ss_type_uint);\
00671                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_slong, ss_type_ldouble, ss_type_slong);\
00672                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ulong, ss_type_ldouble, ss_type_ulong);\
00673                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ldouble, ss_type_ldouble, ss_type_float);\
00674                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ldouble, ss_type_ldouble, ss_type_double);\
00675                 ADD_NONREF_NONREF_NONREF(ss_operator_sub, ss_type_ldouble, ss_type_ldouble, ss_type_ldouble);\
00676 \
00677                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_sint, ss_type_sint);\
00678                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_sint, ss_type_uint);\
00679                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_sint, ss_type_slong);\
00680                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_sint, ss_type_ulong);\
00681                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_sint, ss_type_float);\
00682                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_sint, ss_type_double);\
00683                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_sint, ss_type_ldouble);\
00684                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_uint, ss_type_sint);\
00685                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_uint, ss_type_uint);\
00686                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_uint, ss_type_slong);\
00687                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_uint, ss_type_ulong);\
00688                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_uint, ss_type_float);\
00689                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_uint, ss_type_double);\
00690                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_uint, ss_type_ldouble);\
00691                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_sint);\
00692                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_uint);\
00693                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_slong);\
00694                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_ulong);\
00695                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_float);\
00696                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_double);\
00697                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_slong, ss_type_ldouble);\
00698                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_sint);\
00699                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_uint);\
00700                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_slong);\
00701                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
00702                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_float);\
00703                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_double);\
00704                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ulong, ss_type_ldouble);\
00705                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_float, ss_type_sint);\
00706                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_float, ss_type_uint);\
00707                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_float, ss_type_slong);\
00708                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_float, ss_type_ulong);\
00709                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_float, ss_type_float, ss_type_float);\
00710                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_double, ss_type_float, ss_type_double);\
00711                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ldouble, ss_type_float, ss_type_ldouble);\
00712                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_double, ss_type_sint);\
00713                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_double, ss_type_uint);\
00714                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_double, ss_type_slong);\
00715                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_double, ss_type_ulong);\
00716                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_double, ss_type_double, ss_type_float);\
00717                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_double, ss_type_double, ss_type_double);\
00718                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ldouble, ss_type_double, ss_type_ldouble);\
00719                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_sint, ss_type_ldouble, ss_type_sint);\
00720                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_uint, ss_type_ldouble, ss_type_uint);\
00721                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_slong, ss_type_ldouble, ss_type_slong);\
00722                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ulong, ss_type_ldouble, ss_type_ulong);\
00723                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ldouble, ss_type_ldouble, ss_type_float);\
00724                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ldouble, ss_type_ldouble, ss_type_double);\
00725                 ADD_NONREF_NONREF_NONREF(ss_operator_mul, ss_type_ldouble, ss_type_ldouble, ss_type_ldouble);\
00726 \
00727                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_sint, ss_type_sint);\
00728                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_sint, ss_type_uint);\
00729                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_sint, ss_type_slong);\
00730                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_sint, ss_type_ulong);\
00731                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_sint, ss_type_float);\
00732                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_sint, ss_type_double);\
00733                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_sint, ss_type_ldouble);\
00734                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_uint, ss_type_sint);\
00735                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_uint, ss_type_uint);\
00736                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_uint, ss_type_slong);\
00737                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_uint, ss_type_ulong);\
00738                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_uint, ss_type_float);\
00739                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_uint, ss_type_double);\
00740                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_uint, ss_type_ldouble);\
00741                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_sint);\
00742                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_uint);\
00743                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_slong);\
00744                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_ulong);\
00745                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_float);\
00746                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_double);\
00747                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_slong, ss_type_ldouble);\
00748                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_sint);\
00749                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_uint);\
00750                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_slong);\
00751                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
00752                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_float);\
00753                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_double);\
00754                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ulong, ss_type_ldouble);\
00755                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_float, ss_type_sint);\
00756                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_float, ss_type_uint);\
00757                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_float, ss_type_slong);\
00758                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_float, ss_type_ulong);\
00759                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_float, ss_type_float, ss_type_float);\
00760                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_double, ss_type_float, ss_type_double);\
00761                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ldouble, ss_type_float, ss_type_ldouble);\
00762                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_double, ss_type_sint);\
00763                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_double, ss_type_uint);\
00764                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_double, ss_type_slong);\
00765                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_double, ss_type_ulong);\
00766                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_double, ss_type_double, ss_type_float);\
00767                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_double, ss_type_double, ss_type_double);\
00768                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ldouble, ss_type_double, ss_type_ldouble);\
00769                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_sint, ss_type_ldouble, ss_type_sint);\
00770                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_uint, ss_type_ldouble, ss_type_uint);\
00771                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_slong, ss_type_ldouble, ss_type_slong);\
00772                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ulong, ss_type_ldouble, ss_type_ulong);\
00773                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ldouble, ss_type_ldouble, ss_type_float);\
00774                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ldouble, ss_type_ldouble, ss_type_double);\
00775                 ADD_NONREF_NONREF_NONREF(ss_operator_div, ss_type_ldouble, ss_type_ldouble, ss_type_ldouble);\
00776 \
00777                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_sint);\
00778                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_uint);\
00779                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_slong);\
00780                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_ulong);\
00781                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_float);\
00782                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_double);\
00783                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_sint, ss_type_ldouble);\
00784                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_sint);\
00785                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_uint);\
00786                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_slong);\
00787                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_ulong);\
00788                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_float);\
00789                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_double);\
00790                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_uint, ss_type_ldouble);\
00791                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_sint);\
00792                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_uint);\
00793                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_slong);\
00794                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_ulong);\
00795                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_float);\
00796                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_double);\
00797                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_slong, ss_type_ldouble);\
00798                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_sint);\
00799                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_uint);\
00800                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_slong);\
00801                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_ulong);\
00802                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_float);\
00803                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_double);\
00804                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ulong, ss_type_ldouble);\
00805                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_sint);\
00806                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_uint);\
00807                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_slong);\
00808                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_ulong);\
00809                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_float);\
00810                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_double);\
00811                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_float, ss_type_ldouble);\
00812                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_sint);\
00813                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_uint);\
00814                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_slong);\
00815                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_ulong);\
00816                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_float);\
00817                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_double);\
00818                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_double, ss_type_ldouble);\
00819                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_sint);\
00820                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_uint);\
00821                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_slong);\
00822                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_ulong);\
00823                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_float);\
00824                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_double);\
00825                 ADD_NONREF_NONREF_NONREF(ss_operator_sbe, ss_bool, ss_type_ldouble, ss_type_ldouble);\
00826                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_sint);\
00827                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_uint);\
00828                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_slong);\
00829                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_ulong);\
00830                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_float);\
00831                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_double);\
00832                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_sint, ss_type_ldouble);\
00833                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_sint);\
00834                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_uint);\
00835                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_slong);\
00836                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_ulong);\
00837                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_float);\
00838                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_double);\
00839                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_uint, ss_type_ldouble);\
00840                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_sint);\
00841                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_uint);\
00842                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_slong);\
00843                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_ulong);\
00844                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_float);\
00845                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_double);\
00846                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_slong, ss_type_ldouble);\
00847                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_sint);\
00848                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_uint);\
00849                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_slong);\
00850                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_ulong);\
00851                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_float);\
00852                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_double);\
00853                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ulong, ss_type_ldouble);\
00854                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_sint);\
00855                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_uint);\
00856                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_slong);\
00857                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_ulong);\
00858                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_float);\
00859                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_double);\
00860                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_float, ss_type_ldouble);\
00861                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_sint);\
00862                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_uint);\
00863                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_slong);\
00864                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_ulong);\
00865                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_float);\
00866                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_double);\
00867                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_double, ss_type_ldouble);\
00868                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_sint);\
00869                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_uint);\
00870                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_slong);\
00871                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_ulong);\
00872                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_float);\
00873                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_double);\
00874                 ADD_NONREF_NONREF_NONREF(ss_operator_sbne, ss_bool, ss_type_ldouble, ss_type_ldouble);\
00875                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_sint);\
00876                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_uint);\
00877                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_slong);\
00878                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_ulong);\
00879                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_float);\
00880                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_double);\
00881                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_sint, ss_type_ldouble);\
00882                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_sint);\
00883                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_uint);\
00884                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_slong);\
00885                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_ulong);\
00886                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_float);\
00887                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_double);\
00888                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_uint, ss_type_ldouble);\
00889                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_sint);\
00890                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_uint);\
00891                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_slong);\
00892                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_ulong);\
00893                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_float);\
00894                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_double);\
00895                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_slong, ss_type_ldouble);\
00896                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_sint);\
00897                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_uint);\
00898                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_slong);\
00899                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_ulong);\
00900                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_float);\
00901                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_double);\
00902                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ulong, ss_type_ldouble);\
00903                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_sint);\
00904                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_uint);\
00905                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_slong);\
00906                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_ulong);\
00907                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_float);\
00908                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_double);\
00909                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_float, ss_type_ldouble);\
00910                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_sint);\
00911                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_uint);\
00912                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_slong);\
00913                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_ulong);\
00914                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_float);\
00915                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_double);\
00916                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_double, ss_type_ldouble);\
00917                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_sint);\
00918                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_uint);\
00919                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_slong);\
00920                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_ulong);\
00921                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_float);\
00922                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_double);\
00923                 ADD_NONREF_NONREF_NONREF(ss_operator_sbng, ss_bool, ss_type_ldouble, ss_type_ldouble);\
00924                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_sint);\
00925                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_uint);\
00926                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_slong);\
00927                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_ulong);\
00928                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_float);\
00929                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_double);\
00930                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_sint, ss_type_ldouble);\
00931                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_sint);\
00932                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_uint);\
00933                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_slong);\
00934                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_ulong);\
00935                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_float);\
00936                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_double);\
00937                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_uint, ss_type_ldouble);\
00938                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_sint);\
00939                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_uint);\
00940                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_slong);\
00941                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_ulong);\
00942                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_float);\
00943                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_double);\
00944                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_slong, ss_type_ldouble);\
00945                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_sint);\
00946                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_uint);\
00947                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_slong);\
00948                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_ulong);\
00949                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_float);\
00950                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_double);\
00951                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ulong, ss_type_ldouble);\
00952                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_sint);\
00953                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_uint);\
00954                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_slong);\
00955                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_ulong);\
00956                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_float);\
00957                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_double);\
00958                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_float, ss_type_ldouble);\
00959                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_sint);\
00960                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_uint);\
00961                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_slong);\
00962                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_ulong);\
00963                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_float);\
00964                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_double);\
00965                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_double, ss_type_ldouble);\
00966                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_sint);\
00967                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_uint);\
00968                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_slong);\
00969                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_ulong);\
00970                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_float);\
00971                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_double);\
00972                 ADD_NONREF_NONREF_NONREF(ss_operator_sbnl, ss_bool, ss_type_ldouble, ss_type_ldouble);\
00973                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_sint);\
00974                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_uint);\
00975                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_slong);\
00976                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_ulong);\
00977                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_float);\
00978                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_double);\
00979                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_sint, ss_type_ldouble);\
00980                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_sint);\
00981                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_uint);\
00982                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_slong);\
00983                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_ulong);\
00984                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_float);\
00985                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_double);\
00986                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_uint, ss_type_ldouble);\
00987                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_sint);\
00988                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_uint);\
00989                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_slong);\
00990                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_ulong);\
00991                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_float);\
00992                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_double);\
00993                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_slong, ss_type_ldouble);\
00994                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_sint);\
00995                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_uint);\
00996                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_slong);\
00997                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_ulong);\
00998                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_float);\
00999                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_double);\
01000                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ulong, ss_type_ldouble);\
01001                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_sint);\
01002                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_uint);\
01003                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_slong);\
01004                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_ulong);\
01005                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_float);\
01006                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_double);\
01007                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_float, ss_type_ldouble);\
01008                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_sint);\
01009                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_uint);\
01010                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_slong);\
01011                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_ulong);\
01012                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_float);\
01013                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_double);\
01014                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_double, ss_type_ldouble);\
01015                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_sint);\
01016                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_uint);\
01017                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_slong);\
01018                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_ulong);\
01019                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_float);\
01020                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_double);\
01021                 ADD_NONREF_NONREF_NONREF(ss_operator_sbg, ss_bool, ss_type_ldouble, ss_type_ldouble);\
01022                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_sint);\
01023                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_uint);\
01024                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_slong);\
01025                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_ulong);\
01026                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_float);\
01027                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_double);\
01028                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_sint, ss_type_ldouble);\
01029                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_sint);\
01030                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_uint);\
01031                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_slong);\
01032                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_ulong);\
01033                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_float);\
01034                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_double);\
01035                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_uint, ss_type_ldouble);\
01036                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_sint);\
01037                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_uint);\
01038                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_slong);\
01039                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_ulong);\
01040                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_float);\
01041                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_double);\
01042                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_slong, ss_type_ldouble);\
01043                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_sint);\
01044                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_uint);\
01045                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_slong);\
01046                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_ulong);\
01047                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_float);\
01048                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_double);\
01049                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ulong, ss_type_ldouble);\
01050                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_sint);\
01051                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_uint);\
01052                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_slong);\
01053                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_ulong);\
01054                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_float);\
01055                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_double);\
01056                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_float, ss_type_ldouble);\
01057                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_sint);\
01058                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_uint);\
01059                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_slong);\
01060                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_ulong);\
01061                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_float);\
01062                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_double);\
01063                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_double, ss_type_ldouble);\
01064                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_sint);\
01065                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_uint);\
01066                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_slong);\
01067                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_ulong);\
01068                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_float);\
01069                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_double);\
01070                 ADD_NONREF_NONREF_NONREF(ss_operator_sbl, ss_bool, ss_type_ldouble, ss_type_ldouble);\
01071                 /* [13.6/13]
01072                  * TODO add[]
01073                  *
01074                  *      T* operator+(T*, ptrdiff_t);
01075                  *      T* operator-(T*, ptrdiff_t);
01076                  *      T* operator-(T*, ptrdiff_t);
01077                  */\
01078                 ADD_PTR_PTR_INT(ss_operator_add, ss_bool);\
01079                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_schar);\
01080                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_sshort);\
01081                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_sint);\
01082                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_slong);\
01083                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_uchar);\
01084                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_pchar);\
01085                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_ushort);\
01086                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_uint);\
01087                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_ulong);\
01088                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_float);\
01089                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_double);\
01090                 ADD_PTR_PTR_INT(ss_operator_add, ss_type_ldouble);\
01091 \
01092                 ADD_PTR_PTR_INT(ss_operator_sub, ss_bool);\
01093                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_schar);\
01094                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_sshort);\
01095                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_sint);\
01096                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_slong);\
01097                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_uchar);\
01098                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_pchar);\
01099                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_ushort);\
01100                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_uint);\
01101                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_ulong);\
01102                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_float);\
01103                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_double);\
01104                 ADD_PTR_PTR_INT(ss_operator_sub, ss_type_ldouble);\
01105 \
01106                 ADD_PTR_INT_PTR(ss_operator_add, ss_bool);\
01107                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_schar);\
01108                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_sshort);\
01109                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_sint);\
01110                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_slong);\
01111                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_uchar);\
01112                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_pchar);\
01113                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_ushort);\
01114                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_uint);\
01115                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_ulong);\
01116                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_float);\
01117                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_double);\
01118                 ADD_PTR_INT_PTR(ss_operator_add, ss_type_ldouble);\
01119 \
01120 \
01121                 /* [13.6/14]
01122                  *
01123                  *      ptrdiff_t operator-(T*, T*);
01124                  */\
01125                 ADD_INT_PTR_PTR(ss_operator_sub, ss_bool);\
01126                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_schar);\
01127                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_sshort);\
01128                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_sint);\
01129                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_slong);\
01130                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_uchar);\
01131                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_pchar);\
01132                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_ushort);\
01133                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_uint);\
01134                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_ulong);\
01135                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_float);\
01136                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_double);\
01137                 ADD_INT_PTR_PTR(ss_operator_sub, ss_type_ldouble);\
01138 \
01139                 /* [13.6/15]
01140                  *
01141                  * TODO this is not only for T* but also for enumeration
01142                  *
01143                  *      bool operator<(T*,T*);\
01144                  *      bool operator>(T*,T*);\
01145                  *      bool operator<=(T*,T*);\
01146                  *      bool operator>=(T*,T*);\
01147                  *      bool operator==(T*,T*);\
01148                  *      bool operator!=(T*,T*);\
01149                  *
01150                  */\
01151 \
01152                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_bool);\
01153                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_uchar);\
01154                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_schar);\
01155                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_sshort);\
01156                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_ushort);\
01157                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_sint);\
01158                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_uint);\
01159                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_slong);\
01160                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_ulong);\
01161                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_float);\
01162                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_double);\
01163                 ADD_BOOL_PTR_PTR(ss_operator_sbe, ss_type_ldouble);\
01164                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_bool);\
01165                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_uchar);\
01166                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_schar);\
01167                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_sshort);\
01168                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_ushort);\
01169                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_sint);\
01170                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_uint);\
01171                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_slong);\
01172                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_ulong);\
01173                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_float);\
01174                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_double);\
01175                 ADD_BOOL_PTR_PTR(ss_operator_sbne, ss_type_ldouble);\
01176                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_bool);\
01177                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_uchar);\
01178                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_schar);\
01179                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_sshort);\
01180                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_ushort);\
01181                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_sint);\
01182                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_uint);\
01183                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_slong);\
01184                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_ulong);\
01185                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_float);\
01186                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_double);\
01187                 ADD_BOOL_PTR_PTR(ss_operator_sbng, ss_type_ldouble);\
01188                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_bool);\
01189                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_uchar);\
01190                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_schar);\
01191                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_sshort);\
01192                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_ushort);\
01193                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_sint);\
01194                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_uint);\
01195                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_slong);\
01196                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_ulong);\
01197                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_float);\
01198                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_double);\
01199                 ADD_BOOL_PTR_PTR(ss_operator_sbnl, ss_type_ldouble);\
01200                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_bool);\
01201                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_uchar);\
01202                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_schar);\
01203                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_sshort);\
01204                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_ushort);\
01205                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_sint);\
01206                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_uint);\
01207                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_slong);\
01208                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_ulong);\
01209                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_float);\
01210                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_double);\
01211                 ADD_BOOL_PTR_PTR(ss_operator_sbg, ss_type_ldouble);\
01212                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_bool);\
01213                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_uchar);\
01214                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_schar);\
01215                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_sshort);\
01216                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_ushort);\
01217                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_sint);\
01218                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_uint);\
01219                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_slong);\
01220                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_ulong);\
01221                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_float);\
01222                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_double);\
01223                 ADD_BOOL_PTR_PTR(ss_operator_sbl, ss_type_ldouble);\
01224 \
01225                 /* TODO FIXME [13.6/16] */ \
01226                 /* [13.6/17]  \
01227                  * For every pair of promoted integral types L and R, there exists candidate operator \
01228                  * functions of the form: \
01229 
01230                         LR operator&(L, R);\
01231                         LR operator%(L, R);\
01232                         LR operator^(L, R);\
01233                         LR operator|(L, R);\
01234                         L operator<<(L, R);\
01235                         L operator>>(L, R);\
01236                 */\
01237 \
01238                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_sint, ss_type_sint, ss_type_sint);\
01239                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_uint, ss_type_sint, ss_type_uint);\
01240                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_slong, ss_type_sint, ss_type_slong);\
01241                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_sint, ss_type_ulong);\
01242                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_uint, ss_type_uint, ss_type_sint);\
01243                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_uint, ss_type_uint, ss_type_uint);\
01244                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_slong, ss_type_uint, ss_type_slong);\
01245                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_uint, ss_type_ulong);\
01246                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_slong, ss_type_slong, ss_type_sint);\
01247                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_slong, ss_type_slong, ss_type_uint);\
01248                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_slong, ss_type_slong, ss_type_slong);\
01249                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_slong, ss_type_ulong);\
01250                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_ulong, ss_type_sint);\
01251                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_ulong, ss_type_uint);\
01252                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_ulong, ss_type_slong);\
01253                 ADD_NONREF_NONREF_NONREF(ss_operator_mod, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
01254                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_sint, ss_type_sint, ss_type_sint);\
01255                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_uint, ss_type_sint, ss_type_uint);\
01256                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_slong, ss_type_sint, ss_type_slong);\
01257                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_sint, ss_type_ulong);\
01258                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_uint, ss_type_uint, ss_type_sint);\
01259                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_uint, ss_type_uint, ss_type_uint);\
01260                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_slong, ss_type_uint, ss_type_slong);\
01261                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_uint, ss_type_ulong);\
01262                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_slong, ss_type_slong, ss_type_sint);\
01263                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_slong, ss_type_slong, ss_type_uint);\
01264                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_slong, ss_type_slong, ss_type_slong);\
01265                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_slong, ss_type_ulong);\
01266                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_ulong, ss_type_sint);\
01267                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_ulong, ss_type_uint);\
01268                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_ulong, ss_type_slong);\
01269                 ADD_NONREF_NONREF_NONREF(ss_operator_band, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
01270                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_sint, ss_type_sint, ss_type_sint);\
01271                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_uint, ss_type_sint, ss_type_uint);\
01272                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_slong, ss_type_sint, ss_type_slong);\
01273                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_sint, ss_type_ulong);\
01274                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_uint, ss_type_uint, ss_type_sint);\
01275                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_uint, ss_type_uint, ss_type_uint);\
01276                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_slong, ss_type_uint, ss_type_slong);\
01277                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_uint, ss_type_ulong);\
01278                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_slong, ss_type_slong, ss_type_sint);\
01279                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_slong, ss_type_slong, ss_type_uint);\
01280                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_slong, ss_type_slong, ss_type_slong);\
01281                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_slong, ss_type_ulong);\
01282                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_ulong, ss_type_sint);\
01283                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_ulong, ss_type_uint);\
01284                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_ulong, ss_type_slong);\
01285                 ADD_NONREF_NONREF_NONREF(ss_operator_bxor, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
01286                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_sint, ss_type_sint, ss_type_sint);\
01287                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_uint, ss_type_sint, ss_type_uint);\
01288                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_slong, ss_type_sint, ss_type_slong);\
01289                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_sint, ss_type_ulong);\
01290                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_uint, ss_type_uint, ss_type_sint);\
01291                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_uint, ss_type_uint, ss_type_uint);\
01292                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_slong, ss_type_uint, ss_type_slong);\
01293                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_uint, ss_type_ulong);\
01294                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_slong, ss_type_slong, ss_type_sint);\
01295                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_slong, ss_type_slong, ss_type_uint);\
01296                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_slong, ss_type_slong, ss_type_slong);\
01297                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_slong, ss_type_ulong);\
01298                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_ulong, ss_type_sint);\
01299                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_ulong, ss_type_uint);\
01300                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_ulong, ss_type_slong);\
01301                 ADD_NONREF_NONREF_NONREF(ss_operator_bor, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
01302                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_sint, ss_type_sint, ss_type_sint);\
01303                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_uint, ss_type_sint, ss_type_uint);\
01304                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_slong, ss_type_sint, ss_type_slong);\
01305                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_sint, ss_type_ulong);\
01306                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_uint, ss_type_uint, ss_type_sint);\
01307                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_uint, ss_type_uint, ss_type_uint);\
01308                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_slong, ss_type_uint, ss_type_slong);\
01309                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_uint, ss_type_ulong);\
01310                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_slong, ss_type_slong, ss_type_sint);\
01311                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_slong, ss_type_slong, ss_type_uint);\
01312                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_slong, ss_type_slong, ss_type_slong);\
01313                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_slong, ss_type_ulong);\
01314                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_ulong, ss_type_sint);\
01315                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_ulong, ss_type_uint);\
01316                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_ulong, ss_type_slong);\
01317                 ADD_NONREF_NONREF_NONREF(ss_operator_shl, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
01318                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_sint, ss_type_sint, ss_type_sint);\
01319                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_uint, ss_type_sint, ss_type_uint);\
01320                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_slong, ss_type_sint, ss_type_slong);\
01321                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_sint, ss_type_ulong);\
01322                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_uint, ss_type_uint, ss_type_sint);\
01323                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_uint, ss_type_uint, ss_type_uint);\
01324                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_slong, ss_type_uint, ss_type_slong);\
01325                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_uint, ss_type_ulong);\
01326                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_slong, ss_type_slong, ss_type_sint);\
01327                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_slong, ss_type_slong, ss_type_uint);\
01328                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_slong, ss_type_slong, ss_type_slong);\
01329                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_slong, ss_type_ulong);\
01330                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_ulong, ss_type_sint);\
01331                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_ulong, ss_type_uint);\
01332                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_ulong, ss_type_slong);\
01333                 ADD_NONREF_NONREF_NONREF(ss_operator_shr, ss_type_ulong, ss_type_ulong, ss_type_ulong);\
01334                 \
01335                 /* [13.6/18] \
01336                  * For every triple (L, VQ, R), where L is arithmetic type, VQ is either volatile or empty \
01337                  * and R is promoted arithmetic type, there exists candidate operator functions of the form \
01338                  \
01339                         VQ L& operator=(VQ L&, R);\
01340                         VQ L& operator*=(VQ L&, R);\
01341                         VQ L& operator/=(VQ L&, R);\
01342                         VQ L& operator+=(VQ L&, R);\
01343                         VQ L& operator-=(VQ L&, R);\
01344                 */\
01345 \
01346                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_sint);\
01347                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_uint);\
01348                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_slong);\
01349                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_ulong);\
01350                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_float);\
01351                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_double);\
01352                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_bool, ss_type_ldouble);\
01353                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_sint);\
01354                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_uint);\
01355                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_slong);\
01356                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_ulong);\
01357                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_float);\
01358                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_double);\
01359                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_schar, ss_type_ldouble);\
01360                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_sint);\
01361                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_uint);\
01362                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_slong);\
01363                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_ulong);\
01364                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_float);\
01365                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_double);\
01366                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uchar, ss_type_ldouble);\
01367                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_sint);\
01368                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_uint);\
01369                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_slong);\
01370                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_ulong);\
01371                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_float);\
01372                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_double);\
01373                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_pchar, ss_type_ldouble);\
01374                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_sint);\
01375                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_uint);\
01376                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_slong);\
01377                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_ulong);\
01378                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_float);\
01379                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_double);\
01380                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sshort, ss_type_ldouble);\
01381                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_sint);\
01382                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_uint);\
01383                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_slong);\
01384                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_ulong);\
01385                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_float);\
01386                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_double);\
01387                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ushort, ss_type_ldouble);\
01388                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_sint);\
01389                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_uint);\
01390                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_slong);\
01391                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_ulong);\
01392                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_float);\
01393                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_double);\
01394                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_sint, ss_type_ldouble);\
01395                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_sint);\
01396                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_uint);\
01397                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_slong);\
01398                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_ulong);\
01399                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_float);\
01400                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_double);\
01401                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_uint, ss_type_ldouble);\
01402                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_sint);\
01403                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_uint);\
01404                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_slong);\
01405                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_ulong);\
01406                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_float);\
01407                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_double);\
01408                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_slong, ss_type_ldouble);\
01409                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_sint);\
01410                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_uint);\
01411                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_slong);\
01412                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_ulong);\
01413                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_float);\
01414                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_double);\
01415                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ulong, ss_type_ldouble);\
01416                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_sint);\
01417                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_uint);\
01418                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_slong);\
01419                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_ulong);\
01420                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_float);\
01421                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_double);\
01422                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_float, ss_type_ldouble);\
01423                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_sint);\
01424                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_uint);\
01425                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_slong);\
01426                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_ulong);\
01427                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_float);\
01428                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_double);\
01429                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_double, ss_type_ldouble);\
01430                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_sint);\
01431                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_uint);\
01432                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_slong);\
01433                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_ulong);\
01434                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_float);\
01435                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_double);\
01436                 ADD_VQ_REF_VQ_REF_NONREF_REF(ss_operator_assign, ss_type_ldouble, ss_type_ldouble);\
01437                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_sint);\
01438                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_uint);\
01439                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_slong);\
01440                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_ulong);\
01441                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_float);\
01442                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_double);\
01443                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_bool, ss_type_ldouble);\
01444                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_sint);\
01445                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_uint);\
01446                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_slong);\
01447                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_ulong);\
01448                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_float);\
01449                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_double);\
01450                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_schar, ss_type_ldouble);\
01451                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_sint);\
01452                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_uint);\
01453                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_slong);\
01454                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_ulong);\
01455                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_float);\
01456                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_double);\
01457                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uchar, ss_type_ldouble);\
01458                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_sint);\
01459                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_uint);\
01460                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_slong);\
01461                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_ulong);\
01462                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_float);\
01463                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_double);\
01464                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_pchar, ss_type_ldouble);\
01465                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_sint);\
01466                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_uint);\
01467                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_slong);\
01468                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_ulong);\
01469                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_float);\
01470                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_double);\
01471                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sshort, ss_type_ldouble);\
01472                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_sint);\
01473                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_uint);\
01474                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_slong);\
01475                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_ulong);\
01476                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_float);\
01477                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_double);\
01478                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ushort, ss_type_ldouble);\
01479                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_sint);\
01480                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_uint);\
01481                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_slong);\
01482                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_ulong);\
01483                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_float);\
01484                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_double);\
01485                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_sint, ss_type_ldouble);\
01486                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_sint);\
01487                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_uint);\
01488                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_slong);\
01489                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_ulong);\
01490                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_float);\
01491                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_double);\
01492                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_uint, ss_type_ldouble);\
01493                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_sint);\
01494                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_uint);\
01495                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_slong);\
01496                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_ulong);\
01497                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_float);\
01498                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_double);\
01499                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_slong, ss_type_ldouble);\
01500                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_sint);\
01501                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_uint);\
01502                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_slong);\
01503                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_ulong);\
01504                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_float);\
01505                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_double);\
01506                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ulong, ss_type_ldouble);\
01507                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_sint);\
01508                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_uint);\
01509                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_slong);\
01510                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_ulong);\
01511                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_float);\
01512                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_double);\
01513                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_float, ss_type_ldouble);\
01514                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_sint);\
01515                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_uint);\
01516                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_slong);\
01517                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_ulong);\
01518                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_float);\
01519                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_double);\
01520                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_double, ss_type_ldouble);\
01521                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_sint);\
01522                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_uint);\
01523                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_slong);\
01524                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_ulong);\
01525                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_float);\
01526                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_double);\
01527                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mul, ss_type_ldouble, ss_type_ldouble);\
01528                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_sint);\
01529                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_uint);\
01530                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_slong);\
01531                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_ulong);\
01532                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_float);\
01533                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_double);\
01534                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_bool, ss_type_ldouble);\
01535                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_sint);\
01536                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_uint);\
01537                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_slong);\
01538                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_ulong);\
01539                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_float);\
01540                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_double);\
01541                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_schar, ss_type_ldouble);\
01542                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_sint);\
01543                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_uint);\
01544                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_slong);\
01545                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_ulong);\
01546                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_float);\
01547                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_double);\
01548                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uchar, ss_type_ldouble);\
01549                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_sint);\
01550                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_uint);\
01551                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_slong);\
01552                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_ulong);\
01553                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_float);\
01554                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_double);\
01555                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_pchar, ss_type_ldouble);\
01556                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_sint);\
01557                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_uint);\
01558                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_slong);\
01559                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_ulong);\
01560                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_float);\
01561                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_double);\
01562                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sshort, ss_type_ldouble);\
01563                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_sint);\
01564                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_uint);\
01565                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_slong);\
01566                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_ulong);\
01567                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_float);\
01568                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_double);\
01569                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ushort, ss_type_ldouble);\
01570                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_sint);\
01571                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_uint);\
01572                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_slong);\
01573                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_ulong);\
01574                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_float);\
01575                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_double);\
01576                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_sint, ss_type_ldouble);\
01577                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_sint);\
01578                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_uint);\
01579                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_slong);\
01580                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_ulong);\
01581                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_float);\
01582                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_double);\
01583                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_uint, ss_type_ldouble);\
01584                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_sint);\
01585                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_uint);\
01586                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_slong);\
01587                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_ulong);\
01588                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_float);\
01589                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_double);\
01590                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_slong, ss_type_ldouble);\
01591                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_sint);\
01592                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_uint);\
01593                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_slong);\
01594                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_ulong);\
01595                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_float);\
01596                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_double);\
01597                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ulong, ss_type_ldouble);\
01598                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_sint);\
01599                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_uint);\
01600                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_slong);\
01601                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_ulong);\
01602                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_float);\
01603                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_double);\
01604                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_float, ss_type_ldouble);\
01605                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_sint);\
01606                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_uint);\
01607                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_slong);\
01608                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_ulong);\
01609                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_float);\
01610                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_double);\
01611                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_double, ss_type_ldouble);\
01612                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_sint);\
01613                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_uint);\
01614                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_slong);\
01615                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_ulong);\
01616                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_float);\
01617                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_double);\
01618                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_div, ss_type_ldouble, ss_type_ldouble);\
01619                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_sint);\
01620                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_uint);\
01621                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_slong);\
01622                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_ulong);\
01623                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_float);\
01624                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_double);\
01625                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_bool, ss_type_ldouble);\
01626                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_sint);\
01627                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_uint);\
01628                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_slong);\
01629                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_ulong);\
01630                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_float);\
01631                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_double);\
01632                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_schar, ss_type_ldouble);\
01633                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_sint);\
01634                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_uint);\
01635                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_slong);\
01636                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_ulong);\
01637                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_float);\
01638                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_double);\
01639                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uchar, ss_type_ldouble);\
01640                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_sint);\
01641                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_uint);\
01642                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_slong);\
01643                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_ulong);\
01644                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_float);\
01645                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_double);\
01646                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_pchar, ss_type_ldouble);\
01647                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_sint);\
01648                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_uint);\
01649                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_slong);\
01650                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_ulong);\
01651                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_float);\
01652                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_double);\
01653                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sshort, ss_type_ldouble);\
01654                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_sint);\
01655                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_uint);\
01656                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_slong);\
01657                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_ulong);\
01658                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_float);\
01659                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_double);\
01660                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ushort, ss_type_ldouble);\
01661                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_sint);\
01662                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_uint);\
01663                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_slong);\
01664                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_ulong);\
01665                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_float);\
01666                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_double);\
01667                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_sint, ss_type_ldouble);\
01668                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_sint);\
01669                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_uint);\
01670                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_slong);\
01671                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_ulong);\
01672                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_float);\
01673                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_double);\
01674                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_uint, ss_type_ldouble);\
01675                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_sint);\
01676                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_uint);\
01677                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_slong);\
01678                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_ulong);\
01679                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_float);\
01680                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_double);\
01681                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_slong, ss_type_ldouble);\
01682                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_sint);\
01683                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_uint);\
01684                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_slong);\
01685                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_ulong);\
01686                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_float);\
01687                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_double);\
01688                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ulong, ss_type_ldouble);\
01689                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_sint);\
01690                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_uint);\
01691                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_slong);\
01692                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_ulong);\
01693                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_float);\
01694                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_double);\
01695                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_float, ss_type_ldouble);\
01696                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_sint);\
01697                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_uint);\
01698                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_slong);\
01699                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_ulong);\
01700                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_float);\
01701                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_double);\
01702                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_double, ss_type_ldouble);\
01703                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_sint);\
01704                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_uint);\
01705                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_slong);\
01706                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_ulong);\
01707                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_float);\
01708                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_double);\
01709                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_add, ss_type_ldouble, ss_type_ldouble);\
01710                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_sint);\
01711                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_uint);\
01712                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_slong);\
01713                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_ulong);\
01714                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_float);\
01715                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_double);\
01716                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_bool, ss_type_ldouble);\
01717                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_sint);\
01718                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_uint);\
01719                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_slong);\
01720                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_ulong);\
01721                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_float);\
01722                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_double);\
01723                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_schar, ss_type_ldouble);\
01724                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_sint);\
01725                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_uint);\
01726                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_slong);\
01727                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_ulong);\
01728                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_float);\
01729                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_double);\
01730                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uchar, ss_type_ldouble);\
01731                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_sint);\
01732                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_uint);\
01733                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_slong);\
01734                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_ulong);\
01735                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_float);\
01736                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_double);\
01737                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_pchar, ss_type_ldouble);\
01738                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_sint);\
01739                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_uint);\
01740                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_slong);\
01741                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_ulong);\
01742                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_float);\
01743                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_double);\
01744                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sshort, ss_type_ldouble);\
01745                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_sint);\
01746                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_uint);\
01747                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_slong);\
01748                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_ulong);\
01749                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_float);\
01750                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_double);\
01751                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ushort, ss_type_ldouble);\
01752                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_sint);\
01753                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_uint);\
01754                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_slong);\
01755                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_ulong);\
01756                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_float);\
01757                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_double);\
01758                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_sint, ss_type_ldouble);\
01759                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_sint);\
01760                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_uint);\
01761                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_slong);\
01762                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_ulong);\
01763                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_float);\
01764                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_double);\
01765                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_uint, ss_type_ldouble);\
01766                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_sint);\
01767                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_uint);\
01768                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_slong);\
01769                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_ulong);\
01770                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_float);\
01771                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_double);\
01772                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_slong, ss_type_ldouble);\
01773                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_sint);\
01774                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_uint);\
01775                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_slong);\
01776                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_ulong);\
01777                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_float);\
01778                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_double);\
01779                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ulong, ss_type_ldouble);\
01780                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_sint);\
01781                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_uint);\
01782                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_slong);\
01783                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_ulong);\
01784                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_float);\
01785                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_double);\
01786                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_float, ss_type_ldouble);\
01787                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_sint);\
01788                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_uint);\
01789                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_slong);\
01790                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_ulong);\
01791                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_float);\
01792                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_double);\
01793                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_double, ss_type_ldouble);\
01794                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_sint);\
01795                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_uint);\
01796                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_slong);\
01797                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_ulong);\
01798                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_float);\
01799                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_double);\
01800                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_sub, ss_type_ldouble, ss_type_ldouble);\
01801 \
01802                 /* [13.6/19] to be handled separately (for every type)
01803                  *
01804                  * For every type (TODO - just now only for builtin)
01805                  *
01806                  *      T*VQ& operator=(T*VQ&, T*);
01807                  */\
01808 \
01809                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_bool);\
01810                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_sshort);\
01811                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_ushort);\
01812                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_schar);\
01813                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_uchar);\
01814                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_pchar);\
01815                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_sint);\
01816                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_uint);\
01817                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_slong);\
01818                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_ulong);\
01819                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_float);\
01820                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_double);\
01821                 ADD_VQ_PTR_REF_VQ_PTR_REF_PTR(ss_operator_assign, ss_type_ldouble);\
01822 \
01823                 /* [13.6/20]
01824                  *
01825                  *      T*VQ& operator+=(T*VQ&, ptrdiff_t);
01826                  *      T*VQ& operator-=(T*VQ&, ptrdiff_t);
01827                  */\
01828 \
01829                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_bool);\
01830                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_sshort);\
01831                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_ushort);\
01832                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_schar);\
01833                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_uchar);\
01834                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_pchar);\
01835                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_sint);\
01836                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_uint);\
01837                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_slong);\
01838                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_ulong);\
01839                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_float);\
01840                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_double);\
01841                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_add, ss_type_ldouble);\
01842 \
01843                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_bool);\
01844                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_sshort);\
01845                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_ushort);\
01846                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_schar);\
01847                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_uchar);\
01848                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_pchar);\
01849                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_sint);\
01850                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_uint);\
01851                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_slong);\
01852                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_ulong);\
01853                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_float);\
01854                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_double);\
01855                 ADD_VQ_PTR_REF_VQ_PTR_REF_INT(ss_operator_assign_sub, ss_type_ldouble);\
01856                 /* [13.6/21] to be done later */\
01857                 /* [13.6/22] \
01858                  * For every triple (L, VQ, R), where L is integral type, VQ is either volatile or empty \
01859                  * and R is promoted integral type, there exists candidate operator functions of the form \
01860                  \
01861                         VQ L& operator%=(VQ L&, R);\
01862                         VQ L& operator<<=(VQ L&, R);\
01863                         VQ L& operator>>=(VQ L&, R);\
01864                         VQ L& operator&=(VQ L&, R);\
01865                         VQ L& operator^=(VQ L&, R);\
01866                         VQ L& operator|=(VQ L&, R);\
01867                 */\
01868 \
01869                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_bool, ss_type_sint);\
01870                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_bool, ss_type_uint);\
01871                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_bool, ss_type_slong);\
01872                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_bool, ss_type_ulong);\
01873                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_schar, ss_type_sint);\
01874                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_schar, ss_type_uint);\
01875                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_schar, ss_type_slong);\
01876                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_schar, ss_type_ulong);\
01877                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uchar, ss_type_sint);\
01878                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uchar, ss_type_uint);\
01879                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uchar, ss_type_slong);\
01880                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uchar, ss_type_ulong);\
01881                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_pchar, ss_type_sint);\
01882                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_pchar, ss_type_uint);\
01883                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_pchar, ss_type_slong);\
01884                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_pchar, ss_type_ulong);\
01885                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sshort, ss_type_sint);\
01886                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sshort, ss_type_uint);\
01887                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sshort, ss_type_slong);\
01888                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sshort, ss_type_ulong);\
01889                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ushort, ss_type_sint);\
01890                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ushort, ss_type_uint);\
01891                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ushort, ss_type_slong);\
01892                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ushort, ss_type_ulong);\
01893                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sint, ss_type_sint);\
01894                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sint, ss_type_uint);\
01895                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sint, ss_type_slong);\
01896                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_sint, ss_type_ulong);\
01897                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uint, ss_type_sint);\
01898                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uint, ss_type_uint);\
01899                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uint, ss_type_slong);\
01900                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_uint, ss_type_ulong);\
01901                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_slong, ss_type_sint);\
01902                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_slong, ss_type_uint);\
01903                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_slong, ss_type_slong);\
01904                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_slong, ss_type_ulong);\
01905                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ulong, ss_type_sint);\
01906                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ulong, ss_type_uint);\
01907                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ulong, ss_type_slong);\
01908                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_mod, ss_type_ulong, ss_type_ulong);\
01909                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_bool, ss_type_sint);\
01910                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_bool, ss_type_uint);\
01911                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_bool, ss_type_slong);\
01912                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_bool, ss_type_ulong);\
01913                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_schar, ss_type_sint);\
01914                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_schar, ss_type_uint);\
01915                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_schar, ss_type_slong);\
01916                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_schar, ss_type_ulong);\
01917                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uchar, ss_type_sint);\
01918                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uchar, ss_type_uint);\
01919                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uchar, ss_type_slong);\
01920                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uchar, ss_type_ulong);\
01921                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_pchar, ss_type_sint);\
01922                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_pchar, ss_type_uint);\
01923                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_pchar, ss_type_slong);\
01924                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_pchar, ss_type_ulong);\
01925                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sshort, ss_type_sint);\
01926                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sshort, ss_type_uint);\
01927                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sshort, ss_type_slong);\
01928                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sshort, ss_type_ulong);\
01929                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ushort, ss_type_sint);\
01930                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ushort, ss_type_uint);\
01931                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ushort, ss_type_slong);\
01932                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ushort, ss_type_ulong);\
01933                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sint, ss_type_sint);\
01934                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sint, ss_type_uint);\
01935                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sint, ss_type_slong);\
01936                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_sint, ss_type_ulong);\
01937                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uint, ss_type_sint);\
01938                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uint, ss_type_uint);\
01939                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uint, ss_type_slong);\
01940                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_uint, ss_type_ulong);\
01941                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_slong, ss_type_sint);\
01942                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_slong, ss_type_uint);\
01943                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_slong, ss_type_slong);\
01944                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_slong, ss_type_ulong);\
01945                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ulong, ss_type_sint);\
01946                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ulong, ss_type_uint);\
01947                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ulong, ss_type_slong);\
01948                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shl, ss_type_ulong, ss_type_ulong);\
01949                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_bool, ss_type_sint);\
01950                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_bool, ss_type_uint);\
01951                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_bool, ss_type_slong);\
01952                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_bool, ss_type_ulong);\
01953                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_schar, ss_type_sint);\
01954                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_schar, ss_type_uint);\
01955                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_schar, ss_type_slong);\
01956                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_schar, ss_type_ulong);\
01957                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uchar, ss_type_sint);\
01958                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uchar, ss_type_uint);\
01959                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uchar, ss_type_slong);\
01960                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uchar, ss_type_ulong);\
01961                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_pchar, ss_type_sint);\
01962                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_pchar, ss_type_uint);\
01963                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_pchar, ss_type_slong);\
01964                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_pchar, ss_type_ulong);\
01965                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sshort, ss_type_sint);\
01966                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sshort, ss_type_uint);\
01967                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sshort, ss_type_slong);\
01968                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sshort, ss_type_ulong);\
01969                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ushort, ss_type_sint);\
01970                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ushort, ss_type_uint);\
01971                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ushort, ss_type_slong);\
01972                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ushort, ss_type_ulong);\
01973                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sint, ss_type_sint);\
01974                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sint, ss_type_uint);\
01975                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sint, ss_type_slong);\
01976                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_sint, ss_type_ulong);\
01977                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uint, ss_type_sint);\
01978                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uint, ss_type_uint);\
01979                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uint, ss_type_slong);\
01980                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_uint, ss_type_ulong);\
01981                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_slong, ss_type_sint);\
01982                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_slong, ss_type_uint);\
01983                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_slong, ss_type_slong);\
01984                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_slong, ss_type_ulong);\
01985                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ulong, ss_type_sint);\
01986                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ulong, ss_type_uint);\
01987                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ulong, ss_type_slong);\
01988                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_shr, ss_type_ulong, ss_type_ulong);\
01989                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_bool, ss_type_sint);\
01990                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_bool, ss_type_uint);\
01991                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_bool, ss_type_slong);\
01992                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_bool, ss_type_ulong);\
01993                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_schar, ss_type_sint);\
01994                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_schar, ss_type_uint);\
01995                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_schar, ss_type_slong);\
01996                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_schar, ss_type_ulong);\
01997                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uchar, ss_type_sint);\
01998                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uchar, ss_type_uint);\
01999                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uchar, ss_type_slong);\
02000                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uchar, ss_type_ulong);\
02001                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_pchar, ss_type_sint);\
02002                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_pchar, ss_type_uint);\
02003                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_pchar, ss_type_slong);\
02004                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_pchar, ss_type_ulong);\
02005                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sshort, ss_type_sint);\
02006                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sshort, ss_type_uint);\
02007                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sshort, ss_type_slong);\
02008                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sshort, ss_type_ulong);\
02009                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ushort, ss_type_sint);\
02010                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ushort, ss_type_uint);\
02011                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ushort, ss_type_slong);\
02012                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ushort, ss_type_ulong);\
02013                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sint, ss_type_sint);\
02014                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sint, ss_type_uint);\
02015                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sint, ss_type_slong);\
02016                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_sint, ss_type_ulong);\
02017                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uint, ss_type_sint);\
02018                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uint, ss_type_uint);\
02019                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uint, ss_type_slong);\
02020                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_uint, ss_type_ulong);\
02021                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_slong, ss_type_sint);\
02022                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_slong, ss_type_uint);\
02023                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_slong, ss_type_slong);\
02024                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_slong, ss_type_ulong);\
02025                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ulong, ss_type_sint);\
02026                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ulong, ss_type_uint);\
02027                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ulong, ss_type_slong);\
02028                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_band, ss_type_ulong, ss_type_ulong);\
02029                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_bool, ss_type_sint);\
02030                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_bool, ss_type_uint);\
02031                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_bool, ss_type_slong);\
02032                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_bool, ss_type_ulong);\
02033                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_schar, ss_type_sint);\
02034                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_schar, ss_type_uint);\
02035                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_schar, ss_type_slong);\
02036                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_schar, ss_type_ulong);\
02037                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uchar, ss_type_sint);\
02038                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uchar, ss_type_uint);\
02039                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uchar, ss_type_slong);\
02040                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uchar, ss_type_ulong);\
02041                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_pchar, ss_type_sint);\
02042                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_pchar, ss_type_uint);\
02043                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_pchar, ss_type_slong);\
02044                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_pchar, ss_type_ulong);\
02045                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sshort, ss_type_sint);\
02046                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sshort, ss_type_uint);\
02047                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sshort, ss_type_slong);\
02048                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sshort, ss_type_ulong);\
02049                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ushort, ss_type_sint);\
02050                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ushort, ss_type_uint);\
02051                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ushort, ss_type_slong);\
02052                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ushort, ss_type_ulong);\
02053                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sint, ss_type_sint);\
02054                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sint, ss_type_uint);\
02055                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sint, ss_type_slong);\
02056                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_sint, ss_type_ulong);\
02057                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uint, ss_type_sint);\
02058                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uint, ss_type_uint);\
02059                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uint, ss_type_slong);\
02060                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_uint, ss_type_ulong);\
02061                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_slong, ss_type_sint);\
02062                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_slong, ss_type_uint);\
02063                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_slong, ss_type_slong);\
02064                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_slong, ss_type_ulong);\
02065                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ulong, ss_type_sint);\
02066                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ulong, ss_type_uint);\
02067                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ulong, ss_type_slong);\
02068                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bxor, ss_type_ulong, ss_type_ulong);\
02069                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_bool, ss_type_sint);\
02070                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_bool, ss_type_uint);\
02071                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_bool, ss_type_slong);\
02072                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_bool, ss_type_ulong);\
02073                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_schar, ss_type_sint);\
02074                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_schar, ss_type_uint);\
02075                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_schar, ss_type_slong);\
02076                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_schar, ss_type_ulong);\
02077                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uchar, ss_type_sint);\
02078                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uchar, ss_type_uint);\
02079                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uchar, ss_type_slong);\
02080                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uchar, ss_type_ulong);\
02081                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_pchar, ss_type_sint);\
02082                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_pchar, ss_type_uint);\
02083                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_pchar, ss_type_slong);\
02084                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_pchar, ss_type_ulong);\
02085                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sshort, ss_type_sint);\
02086                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sshort, ss_type_uint);\
02087                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sshort, ss_type_slong);\
02088                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sshort, ss_type_ulong);\
02089                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ushort, ss_type_sint);\
02090                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ushort, ss_type_uint);\
02091                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ushort, ss_type_slong);\
02092                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ushort, ss_type_ulong);\
02093                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sint, ss_type_sint);\
02094                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sint, ss_type_uint);\
02095                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sint, ss_type_slong);\
02096                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_sint, ss_type_ulong);\
02097                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uint, ss_type_sint);\
02098                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uint, ss_type_uint);\
02099                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uint, ss_type_slong);\
02100                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_uint, ss_type_ulong);\
02101                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_slong, ss_type_sint);\
02102                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_slong, ss_type_uint);\
02103                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_slong, ss_type_slong);\
02104                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_slong, ss_type_ulong);\
02105                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ulong, ss_type_sint);\
02106                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ulong, ss_type_uint);\
02107                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ulong, ss_type_slong);\
02108                 ADD_VQ_REF_VQ_REF_NONREF(ss_operator_assign_bor, ss_type_ulong, ss_type_ulong);\
02109                 /* [13.6/23] \
02110                  * There are also \
02111                         bool operator!(bool);\
02112                         bool operator&&(bool, bool);\
02113                         bool operator||(bool, bool);\
02114                 */\
02115                 ADD_NONREF_NONREF(ss_operator_lnot, ss_bool, ss_bool);\
02116                 ADD_NONREF_NONREF_NONREF(ss_operator_land, ss_bool, ss_bool, ss_bool);\
02117                 ADD_NONREF_NONREF_NONREF(ss_operator_lor, ss_bool, ss_bool, ss_bool);\
02118 \
02119 }
02120                         
02121 end_package(sem);
02122 end_package(cplus);
02123 end_package(lang);
02124 end_package(lestes);
02125 
02126 #endif
02127 /* vim: set ft=lestes : */
02128 

Generated on Mon Feb 12 18:27:07 2007 for lestes by doxygen 1.5.1-20070107