diff --git a/src/as/asCa.c b/src/as/asCa.c index d61499a6f..859f03456 100644 --- a/src/as/asCa.c +++ b/src/as/asCa.c @@ -110,7 +110,7 @@ LOCAL void eventCallback(struct event_handler_args arg) ASGINP *pasginp = (ASGINP *)arg.usr; ASG *pasg; CAPVT *pcapvt; - READONLY struct dbr_sts_double *pdata; + const struct dbr_sts_double *pdata; if(caStatus!=ECA_NORMAL) { if(chid) { diff --git a/src/ca/cadef.h b/src/ca/cadef.h index 0258daae6..7095512e3 100644 --- a/src/ca/cadef.h +++ b/src/ca/cadef.h @@ -97,7 +97,7 @@ typedef struct event_handler_args { chanId chid; /* channel id */ long type; /* the type of the item returned */ long count; /* the element count of the item returned */ - READONLY void *dbr; /* a pointer to the item returned */ + const void *dbr; /* a pointer to the item returned */ int status; /* ECA_XXX status of the requested op from the server */ } evargs; typedef void caEventCallBackFunc (struct event_handler_args); @@ -116,8 +116,8 @@ struct exception_handler_args { void *addr; /* user's address to write results of CA_OP_GET */ long stat; /* channel access ECA_XXXX status code */ long op; /* CA_OP_GET, CA_OP_PUT, ..., CA_OP_OTHER */ - READONLY char *ctx; /* a character string containing context info */ - READONLY char *pFile; /* source file name (may be NULL) */ + const char *ctx; /* a character string containing context info */ + const char *pFile; /* source file name (may be NULL) */ unsigned lineNo; /* source file line number (may be zero) */ }; @@ -289,7 +289,7 @@ epicsShareFunc int epicsShareAPI ca_clear_channel * pValue R new channel value string copied from this location */ #define ca_bput(chan, pValue) \ -ca_array_put(DBR_STRING, 1u, chan, (READONLY dbr_string_t *) (pValue)) +ca_array_put(DBR_STRING, 1u, chan, (const dbr_string_t *) (pValue)) /* * ca_rput() @@ -300,7 +300,7 @@ ca_array_put(DBR_STRING, 1u, chan, (READONLY dbr_string_t *) (pValue)) * pValue R new channel value copied from this location */ #define ca_rput(chan,pValue) \ -ca_array_put(DBR_FLOAT, 1u, chan, (READONLY dbr_float_t *) pValue) +ca_array_put(DBR_FLOAT, 1u, chan, (const dbr_float_t *) pValue) /* * ca_put() @@ -814,7 +814,7 @@ epicsShareFunc int epicsShareAPI ca_v42_ok (chid chan); * * returns the CA version string */ -epicsShareFunc READONLY char * epicsShareAPI ca_version (void); +epicsShareFunc const char * epicsShareAPI ca_version (void); /* * ca_replace_printf_handler () diff --git a/src/ca/caerr.h b/src/ca/caerr.h index 6a2480505..53930962d 100644 --- a/src/ca/caerr.h +++ b/src/ca/caerr.h @@ -149,9 +149,9 @@ extern "C" { #endif -epicsShareFunc READONLY char * epicsShareAPI ca_message(long ca_status); +epicsShareFunc const char * epicsShareAPI ca_message(long ca_status); -epicsShareExtern READONLY char * ca_message_text []; +epicsShareExtern const char * ca_message_text []; #ifdef __cplusplus } diff --git a/src/ca/db_access.h b/src/ca/db_access.h index 85379009f..e88a929d0 100644 --- a/src/ca/db_access.h +++ b/src/ca/db_access.h @@ -128,12 +128,12 @@ typedef epicsOldString dbr_class_name_t; * of type DBR types. In some cases we select the a * larger type to avoid loss of information */ -epicsShareExtern READONLY int epicsTypeToDBR_XXXX [lastEpicsType+1]; +epicsShareExtern const int epicsTypeToDBR_XXXX [lastEpicsType+1]; /* * The DBR_XXXX types are indicies into this array */ -epicsShareExtern READONLY epicsType DBR_XXXXToEpicsType [LAST_BUFFER_TYPE+1]; +epicsShareExtern const epicsType DBR_XXXXToEpicsType [LAST_BUFFER_TYPE+1]; /* values returned for each field type * DBR_STRING returns a NULL terminated string @@ -529,10 +529,10 @@ struct dbr_ctrl_double{ ((unsigned)((COUNT)<=0?dbr_size[TYPE]:dbr_size[TYPE]+((COUNT)-1)*dbr_value_size[TYPE])) /* size for each type - array indexed by the DBR_ type code */ -epicsShareExtern READONLY unsigned short dbr_size[LAST_BUFFER_TYPE+1]; +epicsShareExtern const unsigned short dbr_size[LAST_BUFFER_TYPE+1]; /* size for each type's value - array indexed by the DBR_ type code */ -epicsShareExtern READONLY unsigned short dbr_value_size[LAST_BUFFER_TYPE+1]; +epicsShareExtern const unsigned short dbr_value_size[LAST_BUFFER_TYPE+1]; /* class for each type's value */ enum dbr_value_class { @@ -541,7 +541,7 @@ enum dbr_value_class { dbr_class_string, dbr_class_max}; -epicsShareExtern READONLY enum dbr_value_class dbr_value_class[LAST_BUFFER_TYPE+1]; +epicsShareExtern const enum dbr_value_class dbr_value_class[LAST_BUFFER_TYPE+1]; /* * ptr to value given a pointer to the structure and the DBR type @@ -555,7 +555,7 @@ epicsShareExtern READONLY enum dbr_value_class dbr_value_class[LAST_BUFFER_TYPE+ #define dbr_value_ptr_from_structure(PDBR, STRUCTURE)\ ((void *)(((char *)PDBR)+BYTE_OS(STRUCTURE, value))) -epicsShareExtern READONLY unsigned short dbr_value_offset[LAST_BUFFER_TYPE+1]; +epicsShareExtern const unsigned short dbr_value_offset[LAST_BUFFER_TYPE+1]; /* union for each fetch buffers */ @@ -724,13 +724,13 @@ union db_access_val{ (type) + 4*(dbf_text_dim-2) : -1 ) -epicsShareExtern READONLY char *dbf_text[LAST_TYPE+3]; -epicsShareExtern READONLY short dbf_text_dim; -epicsShareExtern READONLY char *dbf_text_invalid; +epicsShareExtern const char *dbf_text[LAST_TYPE+3]; +epicsShareExtern const short dbf_text_dim; +epicsShareExtern const char *dbf_text_invalid; -epicsShareExtern READONLY char *dbr_text[LAST_BUFFER_TYPE+1]; -epicsShareExtern READONLY short dbr_text_dim; -epicsShareExtern READONLY char *dbr_text_invalid; +epicsShareExtern const char *dbr_text[LAST_BUFFER_TYPE+1]; +epicsShareExtern const short dbr_text_dim; +epicsShareExtern const char *dbr_text_invalid; #endif /*db_accessHFORdb_accessC*/ #ifdef __cplusplus diff --git a/src/libCom/bucketLib/bucketLib.c b/src/libCom/bucketLib/bucketLib.c index 9f5421abc..4021c43fb 100644 --- a/src/libCom/bucketLib/bucketLib.c +++ b/src/libCom/bucketLib/bucketLib.c @@ -486,15 +486,15 @@ LOCAL void *bucketLookupAndRemoveItem (BUCKET *prb, bucketSET *pBSET, const void return pApp; } -epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, READONLY unsigned *pId) +epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId) { return bucketLookupAndRemoveItem(prb, &BSET[bidtUnsigned], pId); } -epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * READONLY *pId) +epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * const *pId) { return bucketLookupAndRemoveItem(prb, &BSET[bidtPointer], pId); } -epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, READONLY char *pId) +epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, const char *pId) { return bucketLookupAndRemoveItem(prb, &BSET[bidtString], pId); } diff --git a/src/libCom/bucketLib/bucketLib.h b/src/libCom/bucketLib/bucketLib.h index f9e390812..0c1a4495a 100644 --- a/src/libCom/bucketLib/bucketLib.h +++ b/src/libCom/bucketLib/bucketLib.h @@ -36,8 +36,8 @@ typedef enum {bidtUnsigned, bidtPointer, bidtString} buckTypeOfId; typedef struct item{ struct item *pItem; - READONLY void *pId; - READONLY void *pApp; + const void *pId; + const void *pApp; buckTypeOfId type; }ITEM; @@ -58,23 +58,23 @@ epicsShareFunc int epicsShareAPI bucketShow (BUCKET *pb); * the item is deleted from the bucket !! */ epicsShareFunc int epicsShareAPI bucketAddItemUnsignedId (BUCKET *prb, - READONLY unsigned *pId, READONLY void *pApp); + const unsigned *pId, const void *pApp); epicsShareFunc int epicsShareAPI bucketAddItemPointerId (BUCKET *prb, - void * READONLY *pId, READONLY void *pApp); + void * const *pId, const void *pApp); epicsShareFunc int epicsShareAPI bucketAddItemStringId (BUCKET *prb, - READONLY char *pId, READONLY void *pApp); + const char *pId, const void *pApp); -epicsShareFunc int epicsShareAPI bucketRemoveItemUnsignedId (BUCKET *prb, READONLY unsigned *pId); -epicsShareFunc int epicsShareAPI bucketRemoveItemPointerId (BUCKET *prb, void * READONLY *pId); -epicsShareFunc int epicsShareAPI bucketRemoveItemStringId (BUCKET *prb, READONLY char *pId); +epicsShareFunc int epicsShareAPI bucketRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId); +epicsShareFunc int epicsShareAPI bucketRemoveItemPointerId (BUCKET *prb, void * const *pId); +epicsShareFunc int epicsShareAPI bucketRemoveItemStringId (BUCKET *prb, const char *pId); -epicsShareFunc void * epicsShareAPI bucketLookupItemUnsignedId (BUCKET *prb, READONLY unsigned *pId); -epicsShareFunc void * epicsShareAPI bucketLookupItemPointerId (BUCKET *prb, void * READONLY *pId); -epicsShareFunc void * epicsShareAPI bucketLookupItemStringId (BUCKET *prb, READONLY char *pId); +epicsShareFunc void * epicsShareAPI bucketLookupItemUnsignedId (BUCKET *prb, const unsigned *pId); +epicsShareFunc void * epicsShareAPI bucketLookupItemPointerId (BUCKET *prb, void * const *pId); +epicsShareFunc void * epicsShareAPI bucketLookupItemStringId (BUCKET *prb, const char *pId); -epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, READONLY unsigned *pId); -epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * READONLY *pId); -epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, READONLY char *pId); +epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId); +epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemPointerId (BUCKET *prb, void * const *pId); +epicsShareFunc void * epicsShareAPI bucketLookupAndRemoveItemStringId (BUCKET *prb, const char *pId); /* diff --git a/src/libCom/env/bldEnvData.pl b/src/libCom/env/bldEnvData.pl index bcdc31d13..d8a44ad3f 100644 --- a/src/libCom/env/bldEnvData.pl +++ b/src/libCom/env/bldEnvData.pl @@ -42,7 +42,7 @@ $tool=~ s'.*/''; # open SRC, "<$env_defs" or die "Cannot open $env_defs"; while () { - if (m/epicsShareExtern\s+READONLY\s+ENV_PARAM\s+([A-Za-z_]\w*)\s*;/) { + if (m/epicsShareExtern\s+const\s+ENV_PARAM\s+([A-Za-z_]\w*)\s*;/) { $need_var{$1} = 1; } } @@ -100,14 +100,14 @@ foreach $var (@vars) { print "Warning: No default value found for $var\n" unless exists $value{$var}; - print OUT "epicsShareDef READONLY ENV_PARAM $var =\n", + print OUT "epicsShareDef const ENV_PARAM $var =\n", "\t{\"$var\", \"$default\"};\n"; } # Now create an array pointing to all parameters print OUT "\n", - "epicsShareDef READONLY ENV_PARAM* env_param_list[] = {\n"; + "epicsShareDef const ENV_PARAM* env_param_list[] = {\n"; # Contents are the addresses of each parameter foreach $var (@vars) { diff --git a/src/libCom/env/envDefs.h b/src/libCom/env/envDefs.h index 1ab2792c1..ed39d6159 100644 --- a/src/libCom/env/envDefs.h +++ b/src/libCom/env/envDefs.h @@ -3,35 +3,27 @@ * National Laboratory. * Copyright (c) 2002 The Regents of the University of California, as * Operator of Los Alamos National Laboratory. -* EPICS BASE Versions 3.13.7 -* and higher are distributed subject to a Software License Agreement found +* EPICS BASE is distributed subject to a Software License Agreement found * in file LICENSE that is included with this distribution. \*************************************************************************/ -/* $Id$ +/* $Id$ * Author: Roger A. Cole * Date: 07-20-91 * - * make options - * -DNDEBUG don't compile assert() checking - * -DDEBUG compile various debug code, including checks on - * malloc'd memory */ -/*+/mod*********************************************************************** +/**************************************************************************** * TITLE envDefs.h - definitions for environment get/set routines * * DESCRIPTION * This file defines the environment parameters for EPICS. These -* ENV_PARAM's are initialized by $epics/share/bin/envSetupParams for +* ENV_PARAM's are created in envData.c by bldEnvData for * use by EPICS programs running under UNIX and VxWorks. * * User programs can define their own environment parameters for their * own use--the only caveat is that such parameters aren't automatically * setup by EPICS. * -* SEE ALSO -* $epics/share/bin/envSetupParams, envSubr.c -* -*-***************************************************************************/ +*****************************************************************************/ #ifndef envDefsH #define envDefsH @@ -48,40 +40,36 @@ typedef struct envParam { } ENV_PARAM; /* - * bldEnvData looks for "epicsShareExtern READONLY ENV_PARAM" + * bldEnvData looks for "epicsShareExtern const ENV_PARAM" */ -epicsShareExtern READONLY ENV_PARAM EPICS_CA_ADDR_LIST; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_CONN_TMO; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_AUTO_ADDR_LIST; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_REPEATER_PORT; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_SERVER_PORT; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_MAX_ARRAY_BYTES; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_MAX_SEARCH_PERIOD; -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_INTF_ADDR_LIST; -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_IGNORE_ADDR_LIST; -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_AUTO_BEACON_ADDR_LIST; -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_BEACON_ADDR_LIST; -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_SERVER_PORT; -epicsShareExtern READONLY ENV_PARAM EPICS_CA_BEACON_PERIOD; /* deprecated */ -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_BEACON_PERIOD; -epicsShareExtern READONLY ENV_PARAM EPICS_CAS_BEACON_PORT; -epicsShareExtern READONLY ENV_PARAM EPICS_TIMEZONE; -epicsShareExtern READONLY ENV_PARAM EPICS_TS_NTP_INET; -epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_PORT; -epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_INET; -epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_FILE_LIMIT; -epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_FILE_NAME; -epicsShareExtern READONLY ENV_PARAM EPICS_IOC_LOG_FILE_COMMAND; -epicsShareExtern READONLY ENV_PARAM EPICS_CMD_PROTO_PORT; -epicsShareExtern READONLY ENV_PARAM EPICS_AR_PORT; -epicsShareExtern READONLY ENV_PARAM IOCSH_PS1; -epicsShareExtern READONLY ENV_PARAM IOCSH_HISTSIZE; +epicsShareExtern const ENV_PARAM EPICS_CA_ADDR_LIST; +epicsShareExtern const ENV_PARAM EPICS_CA_CONN_TMO; +epicsShareExtern const ENV_PARAM EPICS_CA_AUTO_ADDR_LIST; +epicsShareExtern const ENV_PARAM EPICS_CA_REPEATER_PORT; +epicsShareExtern const ENV_PARAM EPICS_CA_SERVER_PORT; +epicsShareExtern const ENV_PARAM EPICS_CA_MAX_ARRAY_BYTES; +epicsShareExtern const ENV_PARAM EPICS_CA_MAX_SEARCH_PERIOD; +epicsShareExtern const ENV_PARAM EPICS_CAS_INTF_ADDR_LIST; +epicsShareExtern const ENV_PARAM EPICS_CAS_IGNORE_ADDR_LIST; +epicsShareExtern const ENV_PARAM EPICS_CAS_AUTO_BEACON_ADDR_LIST; +epicsShareExtern const ENV_PARAM EPICS_CAS_BEACON_ADDR_LIST; +epicsShareExtern const ENV_PARAM EPICS_CAS_SERVER_PORT; +epicsShareExtern const ENV_PARAM EPICS_CA_BEACON_PERIOD; /* deprecated */ +epicsShareExtern const ENV_PARAM EPICS_CAS_BEACON_PERIOD; +epicsShareExtern const ENV_PARAM EPICS_CAS_BEACON_PORT; +epicsShareExtern const ENV_PARAM EPICS_TIMEZONE; +epicsShareExtern const ENV_PARAM EPICS_TS_NTP_INET; +epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_PORT; +epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_INET; +epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_FILE_LIMIT; +epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_FILE_NAME; +epicsShareExtern const ENV_PARAM EPICS_IOC_LOG_FILE_COMMAND; +epicsShareExtern const ENV_PARAM EPICS_CMD_PROTO_PORT; +epicsShareExtern const ENV_PARAM EPICS_AR_PORT; +epicsShareExtern const ENV_PARAM IOCSH_PS1; +epicsShareExtern const ENV_PARAM IOCSH_HISTSIZE; -/* - * bldEnvData looks for "epicsShareExtern ENV_PARAM" so - * this always needs to be divided into two lines - */ -epicsShareExtern READONLY ENV_PARAM *env_param_list[]; +epicsShareExtern const ENV_PARAM *env_param_list[]; struct in_addr; diff --git a/src/libCom/misc/epicsTypes.h b/src/libCom/misc/epicsTypes.h index c5aecd067..8509a96ee 100644 --- a/src/libCom/misc/epicsTypes.h +++ b/src/libCom/misc/epicsTypes.h @@ -131,7 +131,7 @@ typedef enum { * of type name strings. */ #ifdef epicsTypesGLOBAL -epicsShareDef READONLY char *epicsTypeNames [lastEpicsType+1] = { +epicsShareDef const char *epicsTypeNames [lastEpicsType+1] = { "epicsInt8", "epicsUInt8", "epicsInt16", @@ -145,7 +145,7 @@ epicsShareDef READONLY char *epicsTypeNames [lastEpicsType+1] = { "epicsOldString", }; #else /* epicsTypesGLOBAL */ -epicsShareExtern READONLY char *epicsTypeNames [lastEpicsType+1]; +epicsShareExtern const char *epicsTypeNames [lastEpicsType+1]; #endif /* epicsTypesGLOBAL */ /* @@ -153,7 +153,7 @@ epicsShareExtern READONLY char *epicsTypeNames [lastEpicsType+1]; * of type code name strings. */ #ifdef epicsTypesGLOBAL -epicsShareDef READONLY char *epicsTypeCodeNames [lastEpicsType+1] = { +epicsShareDef const char *epicsTypeCodeNames [lastEpicsType+1] = { "epicsInt8T", "epicsUInt8T", "epicsInt16T", @@ -167,11 +167,11 @@ epicsShareDef READONLY char *epicsTypeCodeNames [lastEpicsType+1] = { "epicsOldStringT", }; #else /* epicsTypesGLOBAL */ -epicsShareExtern READONLY char *epicsTypeCodeNames [lastEpicsType+1]; +epicsShareExtern const char *epicsTypeCodeNames [lastEpicsType+1]; #endif /* epicsTypesGLOBAL */ #ifdef epicsTypesGLOBAL -epicsShareDef READONLY unsigned epicsTypeSizes [lastEpicsType+1] = { +epicsShareDef const unsigned epicsTypeSizes [lastEpicsType+1] = { sizeof (epicsInt8), sizeof (epicsUInt8), sizeof (epicsInt16), @@ -185,7 +185,7 @@ epicsShareDef READONLY unsigned epicsTypeSizes [lastEpicsType+1] = { sizeof (epicsOldString), }; #else /* epicsTypesGLOBAL */ -epicsShareExtern READONLY unsigned epicsTypeSizes [lastEpicsType+1]; +epicsShareExtern const unsigned epicsTypeSizes [lastEpicsType+1]; #endif /* epicsTypesGLOBAL */ /* @@ -200,7 +200,7 @@ typedef enum { epicsStringC, epicsOldStringC} epicsTypeClass; #ifdef epicsTypesGLOBAL -epicsShareDef READONLY epicsTypeClass epicsTypeClasses [lastEpicsType+1] = { +epicsShareDef const epicsTypeClass epicsTypeClasses [lastEpicsType+1] = { epicsIntC, epicsUIntC, epicsIntC, @@ -214,12 +214,12 @@ epicsShareDef READONLY epicsTypeClass epicsTypeClasses [lastEpicsType+1] = { epicsOldStringC }; #else /* epicsTypesGLOBAL */ -epicsShareExtern READONLY epicsTypeClass epicsTypeClasses [lastEpicsType+1]; +epicsShareExtern const epicsTypeClass epicsTypeClasses [lastEpicsType+1]; #endif /* epicsTypesGLOBAL */ #ifdef epicsTypesGLOBAL -epicsShareDef READONLY char *epicsTypeAnyFieldName [lastEpicsType+1] = { +epicsShareDef const char *epicsTypeAnyFieldName [lastEpicsType+1] = { "int8", "uInt8", "int16", @@ -233,7 +233,7 @@ epicsShareDef READONLY char *epicsTypeAnyFieldName [lastEpicsType+1] = { "", /* Old Style Strings will not be in epicsAny type */ }; #else /* epicsTypesGLOBAL */ -epicsShareExtern READONLY char *epicsTypeAnyFieldName [lastEpicsType+1]; +epicsShareExtern const char *epicsTypeAnyFieldName [lastEpicsType+1]; #endif /* epicsTypesGLOBAL */ #endif /* INCepicsTypesh */