lib/iec_std_lib_generated.h
author mario
Wed, 14 Nov 2007 08:54:25 +0100
changeset 85 a6e651ba55c2
parent 50 7cf30e1af797
child 107 ff5c92df0c78
permissions -rw-r--r--
Fixing handling of enumeration values;
Adding syntax check in formal and non-formal FB invocations
Cleaning up some rules.
49
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
     1
/*
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
     2
 * (c) 2003 Mario de Sousa
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
     3
 *
50
7cf30e1af797 Changing file header
lbessard
parents: 49
diff changeset
     4
 * Offered to the public under the terms of the GNU Lesser General Public
7cf30e1af797 Changing file header
lbessard
parents: 49
diff changeset
     5
 * License as published by the Free Software Foundation; either version 2
7cf30e1af797 Changing file header
lbessard
parents: 49
diff changeset
     6
 * of the License, or (at your option) any later version.
49
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
     7
 *
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
     8
 * This program is distributed in the hope that it will be useful, but
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
     9
 * WITHOUT ANY WARRANTY; without even the implied warranty of
50
7cf30e1af797 Changing file header
lbessard
parents: 49
diff changeset
    10
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser
7cf30e1af797 Changing file header
lbessard
parents: 49
diff changeset
    11
 * General Public License for more details.
49
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    12
 *
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    13
 * This code is made available on the understanding that it will not be
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    14
 * used in safety-critical situations without a full and competent review.
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    15
 */
40
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    16
49
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    17
/*
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    18
 * An IEC 61131-3 IL and ST compiler.
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    19
 *
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    20
 * Based on the
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    21
 * FINAL DRAFT - IEC 61131-3, 2nd Ed. (2001-12-10)
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    22
 *
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    23
 */
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    24
 
c96d1a4c23f8 Changing file headers
lbessard
parents: 40
diff changeset
    25
 
40
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    26
/****
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    27
 * IEC 61131-3 standard function lib
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    28
 * generated code, do not edit by hand
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    29
 */
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    30
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    31
/* Macro that expand to subtypes */
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    32
#define ANY(DO) ANY_DERIVED(DO) ANY_ELEMENTARY(DO)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    33
#define ANY_DERIVED(DO)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    34
#define ANY_ELEMENTARY(DO) ANY_MAGNITUDE(DO) ANY_BIT(DO) ANY_STRING(DO) ANY_DATE(DO)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    35
#define ANY_MAGNITUDE(DO) ANY_NUM(DO) DO(TIME)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    36
#define ANY_BIT(DO) ANY_NBIT(DO) DO(BOOL)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    37
#define ANY_NBIT(DO) DO(BYTE) DO(WORD) DO(DWORD) DO(LWORD)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    38
#define ANY_STRING(DO) DO(STRING)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    39
#define ANY_DATE(DO) DO(DATE) DO(TOD) DO(DT)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    40
#define ANY_NUM(DO) ANY_REAL(DO) ANY_INT(DO)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    41
#define ANY_REAL(DO) DO(REAL) DO(LREAL)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    42
#define ANY_INT(DO) ANY_SINT(DO) ANY_UINT(DO)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    43
#define ANY_SINT(DO) DO(SINT) DO(INT) DO(DINT) DO(LINT)
873a5b60a7ea Fixed -I library include path behavior + removed old lib implementation + added generated lib func names to stage 1_2 + added Makefile.Linux
etisserant
parents:
diff changeset
    44
#define ANY_UINT(DO) DO(USINT) DO(UINT) DO(UDINT) DO(ULINT)