File: cast.c

package info (click to toggle)
icmake 6.30-3
  • links: PTS
  • area: main
  • in suites: etch, etch-m68k
  • size: 2,360 kB
  • ctags: 1,415
  • sloc: ansic: 7,727; makefile: 1,465; sh: 244; asm: 126; cpp: 39
file content (37 lines) | stat: -rw-r--r-- 722 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/*
                                    C A S T . C
*/

#include "iccomp.h"

ESTRUC_ *cast(target, e)
    E_TYPE_
        target;
    ESTRUC_
        *e;
{
    btoi(e);                                /* convert boolean to int */

    switch (target)
    {
        case e_int:                        /* cast to ints */
            icast(e);
        break;

        case e_str:                        /* cast to strings */
            scast(e);
        break;

        case e_list:                       /* cast to lists */
            lcast(e);
        break;

        default:
        /* 
            default is entered in the switch to prevent a long compiler
            warning
        */
break;
    }
    return (e);
}