summaryrefslogtreecommitdiff
path: root/modules/overloading/macros/%i_h_i.sci
blob: 087e7cca79fafc1b4028fabb8180ae8ede821b0f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
// Copyright (C) INRIA
//
// This file must be used under the terms of the CeCILL.
// This source file is licensed as described in the file COPYING, which
// you should have received as part of this distribution.  The terms
// are also available at
// http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt

function i1=%i_h_i(i1,i2)
    t1=inttype(i1); t2=inttype(i2);
    //logical promotions
    if t1<10 & t2<10 then t=max(t1,t2); end
    if t1>10 & t2>10 then t=max(t1,t2); end
    //more arbitrary promotions
    if t1<10 & t2>10 then t=max(t1+10,t2); end
    if t1>10 & t2<10 then t=max(t1,t2+10); end
    i1=iconvert(i1,t) & iconvert(i2,t)
endfunction