enable trim_trailing_whitespace

This commit is contained in:
zimoch authored and Andrew Johnson committed 2026-02-18 10:34:08 -06:00
1 parent cd36c03da4
commit db693d4930
99 files changed
+515 -513

No files matched your search

+2
View File
@@ -12,5 +12,7 @@ insert_final_newline = true
insert_final_newline = false
# Enforce consistent space indent style in source code
# and remove all trailing spaces
[*.{c,cc,cpp,h,hpp,pl,py,yml}]
indent_style = space
trim_trailing_whitespace = true
+1 -1
View File
@@ -319,7 +319,7 @@ jobs:
- uses: actions/checkout@v4
with:
submodules: true
- name: Run...
run: |
env > env.list
+1 -1
View File
@@ -129,7 +129,7 @@ unsigned cacChannel::getHostName (
return 0u;
}
unsigned cacChannel::getHostMinorProtocol (
unsigned cacChannel::getHostMinorProtocol (
epicsGuard < epicsMutex > &) const throw ()
{
epicsThreadOnce ( & cacChannelIdOnce, cacChannelSetup, 0);
+4 -4
View File
@@ -352,7 +352,7 @@ enum ca_preemptive_callback_select
*
* \sa ca_context_destroy()
*/
LIBCA_API int epicsStdCall
LIBCA_API int epicsStdCall
ca_context_create (enum ca_preemptive_callback_select select);
/** \brief Detach from any CA context currently attached to the calling thread.
@@ -1433,7 +1433,7 @@ LIBCA_API void epicsStdCall ca_signal_with_file_and_lineno
* pFormat R printf dtyle format string (and optional arguments)
*
*/
LIBCA_API void epicsStdCall ca_signal_formated (long ca_status, const char *pfilenm,
LIBCA_API void epicsStdCall ca_signal_formated (long ca_status, const char *pfilenm,
int lineno, const char *pFormat, ...);
/** \brief Return a character string which contains the name of the host
@@ -1457,11 +1457,11 @@ LIBCA_API const char * epicsStdCall ca_host_name (chid channel);
* \param[out] bufLength The size of the pBuf buffer.
* \returns The effective size of the written host name.
*/
LIBCA_API unsigned epicsStdCall ca_get_host_name ( chid pChan,
LIBCA_API unsigned epicsStdCall ca_get_host_name ( chid pChan,
char *pBuf, unsigned bufLength );
/** \brief Return the minor protocol version number used by the host to
* which a channel is currently connected.
* which a channel is currently connected.
*
* \param[in] pChan channel identifier
* \returns The minor protocol version number.
+2 -2
View File
@@ -103,7 +103,7 @@ extern "C" int epicsStdCall addAddrToChannelAccessAddressList
/*
* removeDuplicateAddresses ()
*/
extern "C" void epicsStdCall removeDuplicateAddresses
extern "C" void epicsStdCall removeDuplicateAddresses
( ELLLIST *pDestList, ELLLIST *pSrcList, int silent )
{
ELLNODE *pRawNode;
@@ -163,7 +163,7 @@ static void forcePort ( ELLLIST *pList, unsigned short port )
/*
* configureChannelAccessAddressList ()
*/
extern "C" void epicsStdCall configureChannelAccessAddressList
extern "C" void epicsStdCall configureChannelAccessAddressList
( ELLLIST *pList, SOCKET sock, unsigned short port )
{
ELLLIST tmpList;
+1 -1
View File
@@ -116,7 +116,7 @@ const char * netiiu::pHostName (
return pHostNameNetIIU;
}
unsigned netiiu::getHostMinorProtocol (
unsigned netiiu::getHostMinorProtocol (
epicsGuard < epicsMutex > & ) const throw ()
{
return CA_UKN_MINOR_VERSION;
+1 -1
View File
@@ -43,7 +43,7 @@ public:
unsigned bufLength ) const throw () = 0;
virtual const char * pHostName (
epicsGuard < epicsMutex > & ) const throw () = 0;
virtual unsigned getHostMinorProtocol (
virtual unsigned getHostMinorProtocol (
epicsGuard < epicsMutex > & ) const throw ();
virtual bool ca_v41_ok (
epicsGuard < epicsMutex > & ) const = 0;
+2 -2
View File
@@ -1804,9 +1804,9 @@ const char * tcpiiu::pHostName (
return this->hostNameCacheInstance.pointer ();
}
unsigned tcpiiu::getHostMinorProtocol (
unsigned tcpiiu::getHostMinorProtocol (
epicsGuard < epicsMutex > & guard) const throw ()
{
{
guard.assertIdenticalMutex ( this->mutex );
return this->minorProtocolVersion;
}
+1 -1
View File
@@ -48,7 +48,7 @@ extern "C" void epicsStdCall ca_test_event ( struct event_handler_args args )
* ca_dump_dbr()
* dump the specified dbr type to stdout
*/
extern "C" void epicsStdCall ca_dump_dbr (
extern "C" void epicsStdCall ca_dump_dbr (
chtype type, unsigned count, const void * pbuffer )
{
unsigned i;
+2 -2
View File
@@ -462,7 +462,7 @@ void udpiiu :: M_repeaterTimerNotify :: repeaterRegistrationMessage ( unsigned a
*
* register with the repeater
*/
void epicsStdCall caRepeaterRegistrationMessage (
void epicsStdCall caRepeaterRegistrationMessage (
SOCKET sock, unsigned repeaterPort, unsigned attemptNumber )
{
osiSockAddr saddr;
@@ -1342,7 +1342,7 @@ const char * udpiiu::pHostName (
return netiiu::pHostName ( cacGuard );
}
unsigned udpiiu::getHostMinorProtocol (
unsigned udpiiu::getHostMinorProtocol (
epicsGuard < epicsMutex > & cacGuard ) const throw ()
{
return netiiu::getHostMinorProtocol ( cacGuard );
+1 -1
View File
@@ -239,7 +239,7 @@ private:
unsigned bufLength ) const throw ();
const char * pHostName (
epicsGuard < epicsMutex > & ) const throw ();
unsigned getHostMinorProtocol (
unsigned getHostMinorProtocol (
epicsGuard < epicsMutex > & ) const throw ();
bool ca_v41_ok (
epicsGuard < epicsMutex > & ) const;
+1 -1
View File
@@ -168,7 +168,7 @@ public:
unsigned getHostName (
epicsGuard < epicsMutex > &,
char *pBuf, unsigned bufLength ) const throw ();
unsigned getHostMinorProtocol (
unsigned getHostMinorProtocol (
epicsGuard < epicsMutex > &) const throw ();
bool alive (
epicsGuard < epicsMutex > & ) const;
+1 -1
View File
@@ -310,7 +310,7 @@ typedef struct chFilterIf {
} chFilterIf;
/** \brief Filter plugin data
*
*
* A chFilterPlugin object holds data about a filter plugin.
*/
typedef struct chFilterPlugin {
+1 -1
View File
@@ -1217,7 +1217,7 @@ static long cvt_f_st(const void *f, void *t, const dbAddr *paddr)
{
const epicsFloat32 *from = (const epicsFloat32 *) f;
char *to = (char *) t;
rset *prset = 0;
long status = 0;
long precision = 6;
+1 -1
View File
@@ -145,7 +145,7 @@ static void printFieldsList(DBENTRY *pdbentry, char** papfields, int nfields)
printf(", \"%s\"", (pvalue ? pvalue : ""));
}
printf("\n");
}
}
long dbl(const char *precordTypename, const char *fields)
{
@@ -77,7 +77,7 @@ static const iocshArg * const dbDumpFieldArgs[] =
static const iocshFuncDef dbDumpFieldFuncDef = {"dbDumpField",3,dbDumpFieldArgs,
"Dump information about the fieldName in the recordTypeName.\n"
"Example: dbDumpField pdbbase calcout A\n"
"If last argument(s) are missing, dump information\n"
"If last argument(s) are missing, dump information\n"
"about all fieldName in all recordTypeName in the database.\n"};
static void dbDumpFieldCallFunc(const iocshArgBuf *args)
{
@@ -36,7 +36,7 @@ static void iocBuildCallFunc(const iocshArgBuf *args)
}
/* iocRun */
static const iocshFuncDef iocRunFuncDef = {"iocRun",0,NULL,
static const iocshFuncDef iocRunFuncDef = {"iocRun",0,NULL,
"Bring the IOC out of its initial quiescent state to the running state.\n"
"See more: iocBuild, iocPause\n"};
static void iocRunCallFunc(const iocshArgBuf *args)
@@ -85,7 +85,7 @@ static const iocshArg * const systemArgs[] = {&systemArg0};
static const iocshFuncDef systemFuncDef = {"system",1,systemArgs,
"Send command string to the system command interpreter for execution.\n"
"Not available on all OSs.\n"
"To enable this command, add registrar(iocshSystemCommand) to an application dbd file,\n"
"To enable this command, add registrar(iocshSystemCommand) to an application dbd file,\n"
"or include system.dbd\n"};
static void systemCallFunc(const iocshArgBuf *args)
{
+2 -2
View File
@@ -96,7 +96,7 @@ static long init_record(struct dbCommon *pcommon, int pass)
recGblInitSimm(pcommon, &prec->sscn, &prec->oldsimm, &prec->simm, &prec->siml);
recGblInitConstantLink(&prec->siol, DBF_STRING, &prec->sval);
if( (pdset=(eventdset *)(prec->dset)) && (pdset->common.init_record) )
if( (pdset=(eventdset *)(prec->dset)) && (pdset->common.init_record) )
status=(*pdset->common.init_record)(pcommon);
prec->epvt = eventNameToHandle(prec->val);
@@ -111,7 +111,7 @@ static long process(struct dbCommon *pcommon)
long status=0;
unsigned char pact=prec->pact;
if((pdset!=NULL) && (pdset->common.number >= 5) && pdset->read_event )
if((pdset!=NULL) && (pdset->common.number >= 5) && pdset->read_event )
status=readValue(prec); /* read the new value */
/* check if device support set pact */
if ( !pact && prec->pact ) return(0);
+4 -4
View File
@@ -125,7 +125,7 @@ static long init_record(struct dbCommon *pcommon, int pass)
prec->lalm = prec->val;
prec->pval = prec->val;
prec->outpvt = EXEC_OUTPUT;
return 0;
}
@@ -450,14 +450,14 @@ static long conditional_write(longoutRecord *prec)
long status = 0;
int doDevSupWrite = 0;
switch (prec->oopt)
switch (prec->oopt)
{
case longoutOOPT_On_Change:
/* Forces a write op if a change in the OUT field is detected OR is first process */
if (prec->outpvt == EXEC_OUTPUT) {
doDevSupWrite = 1;
} else {
/* Only write if value is different from the previous one */
/* Only write if value is different from the previous one */
doDevSupWrite = (prec->val != prec->pval);
}
break;
@@ -479,7 +479,7 @@ static long conditional_write(longoutRecord *prec)
break;
case longoutOOPT_Transition_To_Non_zero:
doDevSupWrite = ((prec->val != 0)&&(prec->pval == 0));
doDevSupWrite = ((prec->val != 0)&&(prec->pval == 0));
break;
default:
+13 -13
View File
@@ -65,14 +65,14 @@ static void test_operator_display(void){
testdbPutFieldOk("test_ai_rec.HOPR", DBF_SHORT, hopr);
testdbPutFieldOk("test_ai_rec.LOPR", DBF_SHORT, lopr);
testdbPutFieldOk("test_ai_rec.PREC", DBF_SHORT, prec);
/* verify operator display parameters read back */
testdbGetFieldEqual("test_ai_rec.NAME", DBF_STRING, "test_ai_rec");
testdbGetFieldEqual("test_ai_rec.EGU", DBF_STRING, egu);
testdbGetFieldEqual("test_ai_rec.EGU", DBF_STRING, egu);
testdbGetFieldEqual("test_ai_rec.DESC", DBF_STRING, desc);
testdbGetFieldEqual("test_ai_rec.HOPR", DBF_SHORT, hopr);
testdbGetFieldEqual("test_ai_rec.LOPR", DBF_SHORT, lopr);
testdbGetFieldEqual("test_ai_rec.PREC", DBF_SHORT, prec);
testdbGetFieldEqual("test_ai_rec.PREC", DBF_SHORT, prec);
// number of tests = 7
}
@@ -96,7 +96,7 @@ static void test_no_linr_unit_conversion(void){
testdbPutFieldOk("test_ai_rec.ASLO", DBF_SHORT, aslo);
testdbPutFieldOk("test_ai_rec.AOFF", DBF_SHORT, aoff);
testdbPutFieldOk("test_ai_rec.LINR", DBF_LONG, menuConvertNO_CONVERSION);
/* verify conversion */
testdbPutFieldOk("test_ai_link_rec.VAL", DBF_SHORT, rval);
testdbGetFieldEqual("test_ai_rec.VAL", DBF_SHORT, val);
@@ -128,7 +128,7 @@ static void test_slope_linr_unit_conversion(void){
testdbPutFieldOk("test_ai_rec.ESLO", DBF_LONG, eslo);
testdbPutFieldOk("test_ai_rec.EOFF", DBF_LONG, eoff);
testdbPutFieldOk("test_ai_rec.LINR", DBF_LONG, menuConvertSLOPE);
/* verify conversion */
testdbPutFieldOk("test_ai_link_rec.VAL", DBF_LONG, rval);
testdbGetFieldEqual("test_ai_rec.VAL", DBF_LONG, val);
@@ -166,7 +166,7 @@ static void test_linear_linr_unit_conversion(void){
testdbPutFieldOk("test_ai_rec.EGUL", DBF_LONG, egul);
testdbPutFieldOk("test_ai_rec.EGUF", DBF_LONG, eguf);
testdbPutFieldOk("test_ai_rec.LINR", DBF_LONG, menuConvertLINEAR);
/* verify conversion */
testdbPutFieldOk("test_ai_link_rec.VAL", DBF_LONG, rval);
testdbGetFieldEqual("test_ai_rec.VAL", DBF_LONG, val);
@@ -249,7 +249,7 @@ static void test_smoothing_filter(void){
/* set well known starting point (without smmothing) */
testdbPutFieldOk("test_ai_link_rec.VAL", DBF_SHORT, rval1);
testdbGetFieldEqual("test_ai_rec.VAL", DBF_SHORT, val1);
/* set SMOO */
testdbPutFieldOk("test_ai_rec.SMOO", DBF_DOUBLE, smoo);
@@ -365,7 +365,7 @@ static void test_aftc(void){
/* test AFTC using a monitor and time stamps */
testdbPutFieldOk("test_ai_rec3.AFTC", DBF_DOUBLE, aftc);
testdbPutFieldOk("test_ai_rec3.SCAN", DBF_SHORT, menuScan_1_second);
/* set HIHI alarm VAL */
testdbPutFieldOk("test_ai_link_rec3.VAL", DBF_DOUBLE, 7550.0);
@@ -397,11 +397,11 @@ static void test_aftc(void){
/* Verify that alarm status is now MINOR */
testdbGetFieldEqual("test_ai_rec3.SEVR", DBF_SHORT, menuAlarmSevrMINOR);
/* Verify that time is at least equal to configured aftc */
diffTime = epicsTimeDiffInSeconds(&endTime, &startTime);
testOk(diffTime >= aftc, "ATFC time %lf", diffTime);
// number of tests = 18
}
@@ -416,12 +416,12 @@ MAIN(aiTest) {
testPlan(6+6+11+10+12+14+18+15+6+29+18);
testdbPrepare();
testdbPrepare();
testdbReadDatabase("recTestIoc.dbd", NULL, NULL);
recTestIoc_registerRecordDeviceDriver(pdbbase);
testdbReadDatabase("aiTest.db", NULL, NULL);
eltc(0);
testIocInitOk();
eltc(1);
@@ -436,7 +436,7 @@ MAIN(aiTest) {
test_smoothing_filter();
test_udf();
test_alarm();
test_aftc();
test_aftc();
testIocShutdownOk();
testdbCleanup();
+8 -8
View File
@@ -51,16 +51,16 @@ static void test_operator_display(void){
testdbPutFieldOk("test_bi_rec.DESC", DBF_STRING, "DESC_TEST");
/* verify operator display parameters */
testdbGetFieldEqual("test_bi_rec.ZNAM", DBF_STRING, "ZNAM_TEST");
testdbGetFieldEqual("test_bi_rec.ONAM", DBF_STRING, "ONAM_TEST");
testdbGetFieldEqual("test_bi_rec.ZNAM", DBF_STRING, "ZNAM_TEST");
testdbGetFieldEqual("test_bi_rec.ONAM", DBF_STRING, "ONAM_TEST");
testdbGetFieldEqual("test_bi_rec.NAME", DBF_STRING, "test_bi_rec");
testdbGetFieldEqual("test_bi_rec.DESC", DBF_STRING, "DESC_TEST");
/* verify conversion */
testdbPutFieldOk("test_bi_link_rec.VAL", DBF_SHORT, TRUE);
testdbGetFieldEqual("test_bi_rec.VAL", DBF_STRING, "ONAM_TEST");
testdbGetFieldEqual("test_bi_rec.VAL", DBF_STRING, "ONAM_TEST");
testdbPutFieldOk("test_bi_link_rec.VAL", DBF_SHORT, FALSE);
testdbGetFieldEqual("test_bi_rec.VAL", DBF_STRING, "ZNAM_TEST");
testdbGetFieldEqual("test_bi_rec.VAL", DBF_STRING, "ZNAM_TEST");
// number of tests = 11
}
@@ -78,7 +78,7 @@ static void test_alarm(void){
testdbPutFieldOk("test_bi_rec.ZSV", DBF_SHORT, menuAlarmSevrNO_ALARM);
testdbPutFieldOk("test_bi_rec.OSV", DBF_SHORT, menuAlarmSevrMINOR);
testdbPutFieldOk("test_bi_rec.COSV", DBF_SHORT, menuAlarmSevrINVALID);
/* verify alarm status is NO_ALARM*/
testdbGetFieldEqual("test_bi_rec.SEVR", DBF_SHORT, menuAlarmSevrNO_ALARM);
@@ -92,7 +92,7 @@ static void test_alarm(void){
/* verify LAML */
testdbGetFieldEqual("test_bi_rec.LALM", DBF_SHORT, TRUE);
// number of tests = 13
}
@@ -100,12 +100,12 @@ MAIN(biTest) {
testPlan(6+6+11+13);
testdbPrepare();
testdbPrepare();
testdbReadDatabase("recTestIoc.dbd", NULL, NULL);
recTestIoc_registerRecordDeviceDriver(pdbbase);
testdbReadDatabase("biTest.db", NULL, NULL);
eltc(0);
testIocInitOk();
eltc(1);
+7 -7
View File
@@ -76,16 +76,16 @@ static void test_operator_display(void){
testdbPutFieldOk("test_bo_rec.DESC", DBF_STRING, "DESC_TEST");
/* verify operator display parameters */
testdbGetFieldEqual("test_bo_rec.ZNAM", DBF_STRING, "ZNAM_TEST");
testdbGetFieldEqual("test_bo_rec.ONAM", DBF_STRING, "ONAM_TEST");
testdbGetFieldEqual("test_bo_rec.ZNAM", DBF_STRING, "ZNAM_TEST");
testdbGetFieldEqual("test_bo_rec.ONAM", DBF_STRING, "ONAM_TEST");
testdbGetFieldEqual("test_bo_rec.NAME", DBF_STRING, "test_bo_rec");
testdbGetFieldEqual("test_bo_rec.DESC", DBF_STRING, "DESC_TEST");
/* verify conversion */
testdbPutFieldOk("test_bo_rec.VAL", DBF_SHORT, TRUE);
testdbGetFieldEqual("test_bo_rec.VAL", DBF_STRING, "ONAM_TEST");
testdbGetFieldEqual("test_bo_rec.VAL", DBF_STRING, "ONAM_TEST");
testdbPutFieldOk("test_bo_rec.VAL", DBF_SHORT, FALSE);
testdbGetFieldEqual("test_bo_rec.VAL", DBF_STRING, "ZNAM_TEST");
testdbGetFieldEqual("test_bo_rec.VAL", DBF_STRING, "ZNAM_TEST");
// number of tests = 11
}
@@ -104,7 +104,7 @@ static void test_alarm(void){
testdbPutFieldOk("test_bo_rec.COSV", DBF_SHORT, menuAlarmSevrINVALID);
testdbPutFieldOk("test_bo_rec.IVOA", DBF_SHORT, menuIvoaSet_output_to_IVOV);
testdbPutFieldOk("test_bo_rec.IVOV", DBF_SHORT, FALSE);
/* Verify alarm status is NO_ALARM*/
testdbGetFieldEqual("test_bo_rec.SEVR", DBF_SHORT, menuAlarmSevrNO_ALARM);
@@ -136,12 +136,12 @@ MAIN(boTest) {
testPlan(4+7+11+22);
testdbPrepare();
testdbPrepare();
testdbReadDatabase("recTestIoc.dbd", NULL, NULL);
recTestIoc_registerRecordDeviceDriver(pdbbase);
testdbReadDatabase("boTest.db", NULL, NULL);
eltc(0);
testIocInitOk();
eltc(1);
+1 -1
View File
@@ -653,7 +653,7 @@ void
testAIAveragePartial(void) {
double buf = 0.;
double data[5] = {1., 2., 3., 4., 5.};
/*
/*
* Note that the fifth dbPut essentially resets the circular buffer, so the
* average is once again the average of the _first_ entry alone.
*/
@@ -6,7 +6,7 @@
\*************************************************************************/
/* Compile and link test for epicsExport.h
*
*
* Test if macros eppicsExportAddr, epicsExportRegistrar and epicsRegisterFunction
* expand to valid C and C++ code, in the latter case regardless if
* wrapped with extern "C" {} or not.
@@ -6,7 +6,7 @@
\*************************************************************************/
/* Compile and link test for epicsExport.h
*
*
*/
#include <epicsUnitTest.h>
+4 -4
View File
@@ -146,7 +146,7 @@ static void test_oopt_when_transition_nonzero(void){
/* write a transition to non-zero */
testdbPutFieldOk("longout_rec.VAL", DBF_LONG, 18);
/* Test if the counter_a was processed */
testdbGetFieldEqual("counter_a", DBF_DOUBLE, 1.0);
@@ -156,7 +156,7 @@ static void test_oopt_when_transition_nonzero(void){
static void test_changing_out_field(void){
/* change OOPT to On Change */
testdbPutFieldOk("longout_rec.OOPT", DBF_ENUM, longoutOOPT_On_Change);
/* write an initial value */
testdbPutFieldOk("longout_rec.VAL", DBF_LONG, 16);
@@ -225,7 +225,7 @@ static void test_changing_out_field(void){
/* reset rec processing counters */
testdbPutFieldOk("counter_a.VAL", DBF_DOUBLE, 0.0);
/* test if record with OOPT == On Change will
/* test if record with OOPT == On Change will
write to output at its first process */
testdbPutFieldOk("longout_rec2.VAL", DBF_LONG, 16);
@@ -250,7 +250,7 @@ MAIN(longoutTest) {
recTestIoc_registerRecordDeviceDriver(pdbbase);
testdbReadDatabase("longoutTest.db", NULL, NULL);
eltc(0);
testIocInitOk();
eltc(1);
+7 -7
View File
@@ -196,20 +196,20 @@ static void test_F_format(void){
/* set value on inp0 */
testdbPutFieldOk("test_printf_inp0_rec.VAL", DBF_DOUBLE, 6729982.999);
/* verify that string is formatted as expected */
// visual studio less than 2015 does not support %F
// mingw/gcc also fails, suspect this may be gcc version
// related and checking __GNUC__ could resolve but
// related and checking __GNUC__ could resolve but
// initial attempts didn't work so excluding mingw entirely for now
#ifdef _WIN32
#if (defined(_MSC_VER) && _MSC_VER < 1900) || defined(_MINGW)
testTodoBegin("Fails on windows with old visual studio versions and mingw");
#endif
#endif
testdbGetFieldEqual("test_printf_rec.VAL", DBF_STRING, result_string);
#ifdef _WIN32
#if (defined(_MSC_VER) && _MSC_VER < 1900) || defined(_MINGW)
testTodoEnd();
@@ -422,7 +422,7 @@ static void test_l_flag(void){
/* set value on inp0 */
testdbPutFieldOk("test_printf_inp0_rec.VAL", DBF_LONG, 0x70a1c0c1);
/* verify that string is formatted as expected */
testdbGetFieldEqual("test_printf_rec.VAL", DBF_STRING, result_string);
// number of tests = 3
@@ -532,12 +532,12 @@ MAIN(printfTest) {
testPlan(3+3+3+3+3+3+3+3+4+3+3+3+3+3+3+3+3+3+3+3+3+3+3+3+6+6+12);
testdbPrepare();
testdbPrepare();
testdbReadDatabase("recTestIoc.dbd", NULL, NULL);
recTestIoc_registerRecordDeviceDriver(pdbbase);
testdbReadDatabase("printfTest.db", NULL, NULL);
eltc(0);
testIocInitOk();
eltc(1);
+1 -1
View File
@@ -49,7 +49,7 @@ MAIN(subproctest)
* the testdbPutField call above goes through, so we get a partial
* result of the PROC field being left as 1. */
testdbGetFieldEqual("InvalidINPARec.PROC", DBF_LONG, 1);
testIocShutdownOk();
testdbCleanup();
+6 -6
View File
@@ -305,17 +305,17 @@ LIBCOM_API int epicsStdCall bucketFree (BUCKET *prb)
/*
* bucketAddItem()
*/
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
bucketAddItemUnsignedId(BUCKET *prb, const unsigned *pId, const void *pApp)
{
return bucketAddItem(prb, &BSET[bidtUnsigned], pId, pApp);
}
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
bucketAddItemPointerId(BUCKET *prb, void * const *pId, const void *pApp)
{
return bucketAddItem(prb, &BSET[bidtPointer], pId, pApp);
}
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
bucketAddItemStringId(BUCKET *prb, const char *pId, const void *pApp)
{
return bucketAddItem(prb, &BSET[bidtString], pId, pApp);
@@ -412,17 +412,17 @@ LIBCOM_API void * epicsStdCall bucketLookupAndRemoveItemStringId (BUCKET *prb, c
/*
* bucketRemoveItem()
*/
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
bucketRemoveItemUnsignedId (BUCKET *prb, const unsigned *pId)
{
return bucketLookupAndRemoveItem(prb, &BSET[bidtUnsigned], pId)?S_bucket_success:S_bucket_uknId;
}
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
bucketRemoveItemPointerId (BUCKET *prb, void * const *pId)
{
return bucketLookupAndRemoveItem(prb, &BSET[bidtPointer], pId)?S_bucket_success:S_bucket_uknId;
}
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
bucketRemoveItemStringId (BUCKET *prb, const char *pId)
{
return bucketLookupAndRemoveItem(prb, &BSET[bidtString], pId)?S_bucket_success:S_bucket_uknId;
+1 -1
View File
@@ -17,7 +17,7 @@
* Provides routines for converting various numeric types into an ascii string.
* They off a combination of speed and convenience not available with sprintf().
*
* All functions return the number of characters in the output
* All functions return the number of characters in the output
*/
#ifndef INCcvtFasth
+1 -1
View File
@@ -394,7 +394,7 @@ epicsPrtEnvParams(void)
/*
* envGetInetPortConfigParam ()
*/
LIBCOM_API unsigned short epicsStdCall envGetInetPortConfigParam
LIBCOM_API unsigned short epicsStdCall envGetInetPortConfigParam
(const ENV_PARAM *pEnv, unsigned short defaultPort)
{
long longStatus;
+1 -1
View File
@@ -241,7 +241,7 @@ LIBCOM_API void errlogFlush(void);
* ::errVerbose determines if the filename and line number are shown.
*/
LIBCOM_API void errPrintf(
long status, const char *pFileName, int lineno,
long status, const char *pFileName, int lineno,
EPICS_PRINTF_FMT(const char *pformat), ...
) EPICS_PRINTF_STYLE(4,5);
+2 -2
View File
@@ -101,7 +101,7 @@ template class resTable<timerForOldFdmgr, chronIntId>;
# pragma warning ( pop )
#endif
LIBCOM_API fdRegForOldFdmgr::fdRegForOldFdmgr
LIBCOM_API fdRegForOldFdmgr::fdRegForOldFdmgr
(const SOCKET fdIn, const fdRegType typeIn,
const bool onceOnlyIn, fdManager &managerIn,
pCallBackFDMgr pFuncIn, void *pParamIn) :
@@ -322,7 +322,7 @@ extern "C" LIBCOM_API int epicsStdCall fdmgr_clear_fd (fdctx *pfdctx, SOCKET fd)
/*
* deprecated interface
*/
extern "C" LIBCOM_API int epicsStdCall fdmgr_add_fd (
extern "C" LIBCOM_API int epicsStdCall fdmgr_add_fd (
fdctx *pfdctx, SOCKET fd, void (*pfunc)(void *pParam), void *param)
{
return fdmgr_add_callback (pfdctx, fd, fdi_read, pfunc, param);
+1 -1
View File
@@ -54,7 +54,7 @@ typedef struct {
epicsMutexId lock;
}FREELISTPVT;
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
freeListInitPvt(void **ppvt,int size,int nmalloc)
{
FREELISTPVT *pfl;
+5 -5
View File
@@ -776,7 +776,7 @@ const iocshVarDef * epicsStdCall iocshFindVariable(const char *name)
/*
* Free storage created by iocshRegister/iocshRegisterVariable
*/
void epicsStdCall iocshFree(void)
void epicsStdCall iocshFree(void)
{
struct iocshCommand *pc;
struct iocshVariable *pv;
@@ -799,8 +799,8 @@ void epicsStdCall iocshFree(void)
/*
* Parse argument input based on the arg type specified.
* It is worth noting that depending on type this argument may
* be defaulted if a value is not specified. For example, a
* It is worth noting that depending on type this argument may
* be defaulted if a value is not specified. For example, a
* double/int with no value will default to 0 which may allow
* you to add optional arguments to the end of your argument list.
*/
@@ -948,7 +948,7 @@ static void helpCallFunc(const iocshArgBuf *args)
if (epicsStrGlobMatch(piocshFuncDef->name, argv[iarg]) != 0) {
if (! firstFunction) {
fprintf(epicsGetStdout(),
fprintf(epicsGetStdout(),
ANSI_UNDERLINE(" ")
"\n");
}
@@ -970,7 +970,7 @@ static void helpCallFunc(const iocshArgBuf *args)
if(piocshFuncDef->usage) {
fprintf(epicsGetStdout(), "\n%s", piocshFuncDef->usage);
}
firstFunction = false;
}
+69 -69
View File
@@ -68,28 +68,28 @@ extern "C" {
* ```
*/
typedef enum {
/** The argument is converted to an integer value. */
/** The argument is converted to an integer value. */
iocshArgInt,
/** The argument is converted to a double-precision floating point value. */
/** The argument is converted to a double-precision floating point value. */
iocshArgDouble,
/** The argument is left as a string.
*
* The memory used to hold the string is "owned" by iocsh
* and will be reused once the handler function returns.
*/
/** The argument is left as a string.
*
* The memory used to hold the string is "owned" by iocsh
* and will be reused once the handler function returns.
*/
iocshArgString,
/** The argument must be pdbbase. */
/** The argument must be pdbbase. */
iocshArgPdbbase,
/** An arbitrary number of arguments is expected.
*
* Subsequent iocshArg structures will be ignored.
*/
/** An arbitrary number of arguments is expected.
*
* Subsequent iocshArg structures will be ignored.
*/
iocshArgArgv,
/** A copy of the argument will be made and a pointer to the copy will be passed to the handler.
*
* The called function should eventually release this copy
* by using the pointer as an argument to free().
*/
/** A copy of the argument will be made and a pointer to the copy will be passed to the handler.
*
* The called function should eventually release this copy
* by using the pointer as an argument to free().
*/
iocshArgPersistentString,
/**
* Equivalent to iocshArgString with a hint for tab completion that the
@@ -118,41 +118,41 @@ typedef enum {
* ```
*/
typedef union iocshArgBuf {
/** The value as an integer.
*
* Corresponds to the @ref iocshArgInt type.
*/
/** The value as an integer.
*
* Corresponds to the @ref iocshArgInt type.
*/
int ival;
/** The value as a double-precision floating point.
*
* Corresponds to the @ref iocshArgDouble type.
*/
/** The value as a double-precision floating point.
*
* Corresponds to the @ref iocshArgDouble type.
*/
double dval;
/** The value as a string.
*
* Corresponds to the @ref iocshArgString and related types.
*/
/** The value as a string.
*
* Corresponds to the @ref iocshArgString and related types.
*/
char *sval;
/** The value as an untyped pointer.
*
* Can be used with the @ref iocshArgPdbbase type.
*/
/** The value as an untyped pointer.
*
* Can be used with the @ref iocshArgPdbbase type.
*/
void *vval;
/** The variadic arguments, for the @ref iocshArgArgv type. */
/** The variadic arguments, for the @ref iocshArgArgv type. */
struct {
/** Number of arguments passed to the IOC shell command.
*
* Provides the number of elements of the `av` array.
*/
/** Number of arguments passed to the IOC shell command.
*
* Provides the number of elements of the `av` array.
*/
int ac;
/** The arguments, as an array of strings. */
/** The arguments, as an array of strings. */
char **av;
}aval;
}iocshArgBuf;
/**
* @struct iocshVarDef
*
*
* This struct is used with the function iocshRegisterVariable. Each
* instance includes a name, a data type (see iocshArgType), and a
* pointer to the value.
@@ -187,9 +187,9 @@ typedef struct iocshVarDef {
* ```
*/
typedef struct iocshArg {
/** Used by the `help` command to print a synopsis for the command. */
/** Used by the `help` command to print a synopsis for the command. */
const char *name;
/** Data type of the argument. */
/** Data type of the argument. */
iocshArgType type;
}iocshArg;
@@ -211,19 +211,19 @@ typedef struct iocshArg {
* ```
*/
typedef struct iocshFuncDef {
/** Name of the command or function. */
/** Name of the command or function. */
const char *name;
/** Number of entries in the array of pointers to argument descriptions.
*
* If 0, `arg` can be `NULL`.
*/
/** Number of entries in the array of pointers to argument descriptions.
*
* If 0, `arg` can be `NULL`.
*/
int nargs;
/** Array of pointers to structs of type iocshArg.
*
* Can be `NULL` if `nargs` is 0.
*/
/** Array of pointers to structs of type iocshArg.
*
* Can be `NULL` if `nargs` is 0.
*/
const iocshArg * const *arg;
/** Text displayed when using running `help <command>`. */
/** Text displayed when using running `help <command>`. */
const char* usage;
}iocshFuncDef;
#define IOCSHFUNCDEF_HAS_USAGE
@@ -248,7 +248,7 @@ typedef void (*iocshCallFunc)(const iocshArgBuf *argBuf);
/**
* @struct
*
*
* This struct is used as a return value for the function iocshFindCommand.
*/
typedef struct iocshCmdDef {
@@ -268,10 +268,10 @@ LIBCOM_API void epicsStdCall iocshRegister(
const iocshFuncDef *piocshFuncDef, iocshCallFunc func);
/**
* @brief
*
* @param piocshVarDef
* @return void
* @brief
*
* @param piocshVarDef
* @return void
*/
LIBCOM_API void epicsStdCall iocshRegisterVariable (
const iocshVarDef *piocshVarDef);
@@ -280,8 +280,8 @@ LIBCOM_API void epicsStdCall iocshRegisterVariable (
* @brief Returns a struct of type iocshCmdDef whose element values are determined
* by the name parameter. This function calls the function registryFind, defined in
* Registry.h
*
* @param name
*
* @param name
* @return const iocshCmdDef*
*/
LIBCOM_API const iocshCmdDef * epicsStdCall iocshFindCommand(
@@ -291,8 +291,8 @@ LIBCOM_API const iocshCmdDef * epicsStdCall iocshFindCommand(
* @brief Returns a struct of type iocshVarDef whose element values are determined
* by the name parameter. This function calls the function registryFind, defined in
* Registry.h
*
* @param name
*
* @param name
* @return const iocshVarDef*
*/
LIBCOM_API const iocshVarDef * epicsStdCall iocshFindVariable(
@@ -302,8 +302,8 @@ LIBCOM_API const iocshVarDef * epicsStdCall iocshFindVariable(
/* This should only be called when iocsh is no longer needed*/
/**
* @brief Frees all memory allocated to registered commands and variables.
*
* @return void
*
* @return void
*/
LIBCOM_API void epicsStdCall iocshFree(void);
@@ -345,7 +345,7 @@ LIBCOM_API int epicsStdCall iocshCmd(const char *cmd);
* If `NULL`, commands are read from the standard input.
* @param[in] macros
* `NULL` or a comma separated list of macro definitions.
* eg. `"VAR1=x,VAR2=y"`
* eg. `"VAR1=x,VAR2=y"`
*
* @retval 0 on success
* @retval non-zero on error
@@ -377,7 +377,7 @@ LIBCOM_API int epicsStdCall iocshLoad(const char *pathname, const char* macros);
*/
LIBCOM_API int epicsStdCall iocshRun(const char *cmd, const char* macros);
/**
/**
* @brief Signal error from an IOC shell function.
*
* @param err 0 - success (no op), !=0 - error
@@ -389,11 +389,11 @@ LIBCOM_API int iocshSetError(int err);
/* Makes macros that shadow environment variables work correctly with epicsEnvSet */
/**
* @brief Unsets macro values.
*
* This function sets the values of all macros passed to either iocshLoad or
*
* This function sets the values of all macros passed to either iocshLoad or
* iocshRun to NULL.
*
* @param name
*
* @param name
* @return void
*/
LIBCOM_API void epicsStdCall iocshEnvClear(const char *name);
+13 -13
View File
@@ -19,7 +19,7 @@
*
* \brief Client on the IOC that forwards log messages to the log server
*
* Together with the program iocLogServer, a log client provides generic
* Together with the program iocLogServer, a log client provides generic
* support for logging text messages from an IOC or other program to the log
* server host machine.
*/
@@ -40,26 +40,26 @@ extern "C" {
typedef void *logClientId;
/** \brief Creates a new log client
*
* Starts a background thread to connect to server and returns immediately.
* If a connection cannot be established, an error message is
* printed on the console, but the log client will keep trying to connect in
* the background. This thread will also periodically (every 5 seconds) flush
* pending messages out to the server.
*
* Starts a background thread to connect to server and returns immediately.
* If a connection cannot be established, an error message is
* printed on the console, but the log client will keep trying to connect in
* the background. This thread will also periodically (every 5 seconds) flush
* pending messages out to the server.
*
* \param server_addr log server IP address
* \param server_port log server port
*
* \return log client handle.
* \return log client handle.
*/
LIBCOM_API logClientId epicsStdCall logClientCreate (
struct in_addr server_addr, unsigned short server_port);
/** \brief Log message
*
* Logs message to log server. Messages are not immediately sent to the log
* server. Instead they are sent periodically (every 5 seconds), when the cache
* overflows, or when logClientFlush() is called. If messages can't sent, an error
* Logs message to log server. Messages are not immediately sent to the log
* server. Instead they are sent periodically (every 5 seconds), when the cache
* overflows, or when logClientFlush() is called. If messages can't sent, an error
* message will be printed to stderr
*
* \param id log client handle
@@ -78,7 +78,7 @@ LIBCOM_API void epicsStdCall logClientSend (logClientId id, const char *message)
LIBCOM_API void epicsStdCall logClientShow (logClientId id, unsigned level);
/** \brief Flushes all outstanding messages
*
*
* Immediately sends all outstanding messages to the server
*
* \param id log client handle
@@ -95,7 +95,7 @@ LIBCOM_API void epicsStdCall logClientFlush (logClientId id);
LIBCOM_API void epicsStdCall iocLogPrefix(const char* prefix);
/** \brief DEPRECATED
* \deprecated deprecated interface; retained for backward compatibility
* \deprecated deprecated interface; retained for backward compatibility
*/
/* note: implementations are in iocLog.c, not logClient.c */
LIBCOM_API logClientId epicsStdCall logClientInit (void);
+1 -1
View File
@@ -72,7 +72,7 @@ static int initIPAddr ( struct in_addr ipAddr, unsigned port,
* "pAddrString" does not contain an address of the form
* "n.n.n.n:p or host:p"
*/
LIBCOM_API int epicsStdCall
LIBCOM_API int epicsStdCall
aToIPAddr( const char *pAddrString, unsigned short defaultPort,
struct sockaddr_in *pIP )
{
+44 -44
View File
@@ -13,17 +13,17 @@
#ifndef INC_epicsStdlib_H
#define INC_epicsStdlib_H
/**
/**
* \file epicsStdlib.h
* \brief Functions to convert strings to primitive types
*
* These routines convert a string into an integer of the indicated type and
* number base, or into a floating point type. The units pointer argument may
* be NULL, but if not it will be left pointing to the first non-whitespace
* character following the numeric string, or to the terminating zero byte.
*
* These routines convert a string into an integer of the indicated type and
* number base, or into a floating point type. The units pointer argument may
* be NULL, but if not it will be left pointing to the first non-whitespace
* character following the numeric string, or to the terminating zero byte.
*
* The return value from these routines is a status code, zero meaning OK.
* For the macro functions beginning with `epicsScan` the return code is 0
* For the macro functions beginning with `epicsScan` the return code is 0
* or 1 (0=failure or 1=success, similar to the sscanf() function).
*/
@@ -59,31 +59,31 @@ extern "C" {
* \param units Pointer to a char * (this will be set with the units string)
* \return Status code (0=OK, see macro definitions for possible errors)
*/
LIBCOM_API int
LIBCOM_API int
epicsParseLong(const char *str, long *to, int base, char **units);
/**
/**
* \brief Convert a string to a unsigned long type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseULong(const char *str, unsigned long *to, int base, char **units);
/**
/**
* \brief Convert a string to a long long type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseLLong(const char *str, long long *to, int base, char **units);
/**
/**
* \brief Convert a string to a unsigned long long type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseULLong(const char *str, unsigned long long *to, int base, char **units);
/**
/**
* \brief Convert a string to a double type
*
* \param str Pointer to a constant character array
@@ -94,65 +94,65 @@ LIBCOM_API int
LIBCOM_API int
epicsParseDouble(const char *str, double *to, char **units);
/**
/**
* \brief Convert a string to a float type
* \copydetails epicsParseDouble
*/
LIBCOM_API int
epicsParseFloat(const char *str, float *to, char **units);
/**
/**
* \brief Convert a string to an epicsInt8 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseInt8(const char *str, epicsInt8 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsUInt8 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseUInt8(const char *str, epicsUInt8 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsInt16 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseInt16(const char *str, epicsInt16 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsUInt16 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseUInt16(const char *str, epicsUInt16 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsInt32 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseInt32(const char *str, epicsInt32 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsUInt32 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseUInt32(const char *str, epicsUInt32 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsInt64 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseInt64(const char *str, epicsInt64 *to, int base, char **units);
/**
/**
* \brief Convert a string to an epicsUInt64 type
* \copydetails epicsParseLong
* \copydetails epicsParseLong
*/
LIBCOM_API int
epicsParseUInt64(const char *str, epicsUInt64 *to, int base, char **units);
@@ -166,38 +166,38 @@ LIBCOM_API int
* This is analogous to the return value from sscanf()
*/
/**
* Macro utilizing ::epicsParseLong to convert
/**
* Macro utilizing ::epicsParseLong to convert
* \return 0=failure, 1=success
*/
#define epicsScanLong(str, to, base) (!epicsParseLong(str, to, base, NULL))
/**
* Macro utilizing ::epicsParseULong to convert
/**
* Macro utilizing ::epicsParseULong to convert
* \return 0=failure, 1=success
*/
#define epicsScanULong(str, to, base) (!epicsParseULong(str, to, base, NULL))
/**
* Macro utilizing ::epicsParseLLong to convert
/**
* Macro utilizing ::epicsParseLLong to convert
* \return 0=failure, 1=success
*/
#define epicsScanLLong(str, to, base) (!epicsParseLLong(str, to, base, NULL))
/**
* Macro utilizing ::epicsParseULLong to convert
/**
* Macro utilizing ::epicsParseULLong to convert
* \return 0=failure, 1=success
*/
#define epicsScanULLong(str, to, base) (!epicsParseULLong(str, to, base, NULL))
/**
* Macro utilizing ::epicsParseFloat to convert
/**
* Macro utilizing ::epicsParseFloat to convert
* \return 0=failure, 1=success
*/
#define epicsScanFloat(str, to) (!epicsParseFloat(str, to, NULL))
/**
* Macro utilizing ::epicsParseDouble to convert
/**
* Macro utilizing ::epicsParseDouble to convert
* \return 0=failure, 1=success
*/
#define epicsScanDouble(str, to) (!epicsParseDouble(str, to, NULL))
+27 -27
View File
@@ -31,26 +31,26 @@ extern "C" {
#endif
/** \brief Converts C-style escape sequences to their binary form
*
* Copies characters from string to an output buffer and converts C-style escape sequences to
* their binary form. Since the output string can never be longer than the source, it is legal for
*
* Copies characters from string to an output buffer and converts C-style escape sequences to
* their binary form. Since the output string can never be longer than the source, it is legal for
* \p inbuf and \p outbuf to point to the same buffer and \p outsize and \p inlen
* be equal, thus performing the character translation in-place.
*
* \param outbuf buffer to copy string to. The resulting string will be zero-terminated as long as
* \p outsize is non-zero.
* \param outsize length of output buffer not including the null-terminator.
*
* \param outbuf buffer to copy string to. The resulting string will be zero-terminated as long as
* \p outsize is non-zero.
* \param outsize length of output buffer not including the null-terminator.
* \param inbuf buffer to copy from. Null byte terminates the string.
* \param inlen maximum number of characters to copy from input buffer.
*
* \return number of characters that were written into output buffer, not counting the null terminator.
* \return number of characters that were written into output buffer, not counting the null terminator.
**/
LIBCOM_API int epicsStrnRawFromEscaped(char *outbuf, size_t outsize,
const char *inbuf, size_t inlen);
/** \brief Converts non-printable characters into C-style escape sequences
*
* Copies characters from the string into a output buffer converting non-printable characters into C-style
* Copies characters from the string into a output buffer converting non-printable characters into C-style
* escape sequences. In-place translations are not allowed since the escaped results will usually be larger
* than the input string.
*
@@ -59,14 +59,14 @@ LIBCOM_API int epicsStrnRawFromEscaped(char *outbuf, size_t outsize,
* All other non-printable characters appear in form `\xHH` where HH are two hex digits.
* Non-printable characters are determined by the C runtime library’s isprint() function.
*
* \param outbuf buffer to copy string to. The resulting string will be zero-terminated as long as
* @p outsize is non-zero.
* \param outbuf buffer to copy string to. The resulting string will be zero-terminated as long as
* @p outsize is non-zero.
* \param outsize length of output buffer not including the null-terminator.
* \param inbuf buffer to copy from. Null byte will not terminates the string.
* \param inlen Number of characters to copy from input buffer.
*
* \return number of characters that would have been stored in the output buffer if it were large enough,
* or a negative value if \p outbuf == \p inbuf.
* \return number of characters that would have been stored in the output buffer if it were large enough,
* or a negative value if \p outbuf == \p inbuf.
*
*/
LIBCOM_API int epicsStrnEscapedFromRaw(char *outbuf, size_t outsize,
@@ -74,16 +74,16 @@ LIBCOM_API int epicsStrnEscapedFromRaw(char *outbuf, size_t outsize,
/** \brief Scans string and returns size of output buffer needed to escape that string
*
* Scans up to \p len characters of the string that may contain non-printable characters, and returns
* the size of the output buffer that would be needed to escape that string.
* This routine is faster than calling epicsStrnEscapedFromRaw() with a zero length output buffer; both
* Scans up to \p len characters of the string that may contain non-printable characters, and returns
* the size of the output buffer that would be needed to escape that string.
* This routine is faster than calling epicsStrnEscapedFromRaw() with a zero length output buffer; both
* should return the same result.
*
*\param buf string to scan
*\param len length of input string
*
*\return size of the output buffer that would be needed for converting to escape characters, not
* including the null terminator.
*\return size of the output buffer that would be needed for converting to escape characters, not
* including the null terminator.
*/
LIBCOM_API size_t epicsStrnEscapedFromRawSize(const char *buf, size_t len);
@@ -113,7 +113,7 @@ LIBCOM_API char * epicsStrnDup(const char *s, size_t len);
/** \brief Prints escaped version of string
*
* Prints the contents of its input buffer to given file descriptor, substituting escape sequences
* Prints the contents of its input buffer to given file descriptor, substituting escape sequences
* for non-printable characters.
*
* \param fp File descriptor to print to
@@ -121,12 +121,12 @@ LIBCOM_API char * epicsStrnDup(const char *s, size_t len);
* \param n Length of string
*/
LIBCOM_API int epicsStrPrintEscaped(FILE *fp, const char *s, size_t n);
#define epicsStrSnPrintEscaped epicsStrnEscapedFromRaw
/** \brief Calculates length of string
*
* Implements strnlen from the C standard library.
* Implements strnlen from the C standard library.
*/
LIBCOM_API size_t epicsStrnLen(const char *s, size_t maxlen);
@@ -154,14 +154,14 @@ LIBCOM_API int epicsStrGlobMatch(const char *str, const char *pattern);
LIBCOM_API int epicsStrnGlobMatch(const char *str, size_t len, const char *pattern);
/** \brief Extract tokens from string
*
*
* Implements strtok_r from the C standard library
*/
LIBCOM_API char * epicsStrtok_r(char *s, const char *delim, char **lasts);
/** \brief Calculates a hash of a null-terminated string
*
* Calculates a hash of a null-terminated string. Initial seed may be provided which
* Calculates a hash of a null-terminated string. Initial seed may be provided which
* permits multiple strings to be combined into a single hash result.
*
*\param str null-terminated string
@@ -169,12 +169,12 @@ LIBCOM_API char * epicsStrtok_r(char *s, const char *delim, char **lasts);
* set to 0.
*
*\return Hash value for string
*/
*/
LIBCOM_API unsigned int epicsStrHash(const char *str, unsigned int seed);
/** \brief Calculates a hash of a memory buffer
*
* Calculates a hash of a memory buffer that may contain null values. Initial seed may be provided which
* Calculates a hash of a memory buffer that may contain null values. Initial seed may be provided which
* permits multiple buffers to be combined into a single hash result.
*
*\param str buffer
@@ -183,7 +183,7 @@ LIBCOM_API unsigned int epicsStrHash(const char *str, unsigned int seed);
* set to 0.
*
*\return Hash value for buffer
*/
*/
LIBCOM_API unsigned int epicsMemHash(const char *str, size_t length,
unsigned int seed);
/** \brief Compare two strings and return a number in the range [0.0, 1.0] or -1.0 on error.
@@ -198,7 +198,7 @@ LIBCOM_API unsigned int epicsMemHash(const char *str, size_t length,
LIBCOM_API double epicsStrSimilarity(const char *A, const char *B);
/** \brief DEPRECATED
* \deprecated dbTranslateEscape is deprecated, use epicsStrnRawFromEscaped() instead
* \deprecated dbTranslateEscape is deprecated, use epicsStrnRawFromEscaped() instead
*/
LIBCOM_API int dbTranslateEscape(char *s, const char *ct);
+2 -2
View File
@@ -11,7 +11,7 @@
/**
* \file epicsTypes.h
* \author: Jeff Hill
*
*
* \brief The core data types used by epics
*/
@@ -37,7 +37,7 @@ typedef enum {
/**
* \name epicsTypes
* Architecture Independent Data Types
*
*
* These are sufficient for all our current archs
* @{
*/
+23 -23
View File
@@ -13,19 +13,19 @@
*
* \brief OS independent interface to perform atomic operations
*
* This is an operating system and compiler independent interface to an operating system and or compiler
* This is an operating system and compiler independent interface to an operating system and or compiler
* dependent implementation of several atomic primitives.
*
* These primitives can be safely used in a multithreaded programs on symmetric multiprocessing (SMP)
* systems. Where possible the primitives are implemented with compiler intrinsic wrappers for architecture
* These primitives can be safely used in a multithreaded programs on symmetric multiprocessing (SMP)
* systems. Where possible the primitives are implemented with compiler intrinsic wrappers for architecture
* specific instructions. Otherwise they are implemented with OS specific functions and otherwise, when lacking
* a sufficently capable OS specific interface, then in some rare situations a mutual exclusion primitive is
* a sufficently capable OS specific interface, then in some rare situations a mutual exclusion primitive is
* used for synchronization.
*
* In operating systems environments which allow C code to run at interrupt level the implementation must
* In operating systems environments which allow C code to run at interrupt level the implementation must
* use interrupt level invocable CPU instruction primitives.
*
* All C++ functions are implemented in the namespace atomics which is nested inside of namespace epics.
* All C++ functions are implemented in the namespace atomics which is nested inside of namespace epics.
*/
/*
* Author Jeffrey O. Hill
@@ -48,15 +48,15 @@ extern "C" {
/** Argument type for atomic operations on pointers*/
typedef void * EpicsAtomicPtrT;
/** \brief load target into cache
/** \brief load target into cache
*
* load target into cache
* load target into cache
**/
EPICS_ATOMIC_INLINE void epicsAtomicReadMemoryBarrier (void);
/** \brief push cache version of target into target
/** \brief push cache version of target into target
*
* push cache version of target into target
* push cache version of target into target
*/
EPICS_ATOMIC_INLINE void epicsAtomicWriteMemoryBarrier (void);
@@ -121,7 +121,7 @@ EPICS_ATOMIC_INLINE int epicsAtomicDecrIntT ( int * pTarget );
*
* \param pTarget pointer to target
* \param delta value to add to target
*
*
* \return New value of target
*/
EPICS_ATOMIC_INLINE size_t epicsAtomicAddSizeT ( size_t * pTarget, size_t delta );
@@ -135,7 +135,7 @@ EPICS_ATOMIC_INLINE size_t epicsAtomicAddSizeT ( size_t * pTarget, size_t delta
*
* \param pTarget pointer to target
* \param delta value to subtract from target
*
*
* \return New value of target
*/
EPICS_ATOMIC_INLINE size_t epicsAtomicSubSizeT ( size_t * pTarget, size_t delta );
@@ -149,7 +149,7 @@ EPICS_ATOMIC_INLINE size_t epicsAtomicSubSizeT ( size_t * pTarget, size_t delta
*
* \param pTarget pointer to target
* \param delta value to add to target
*
*
* \return New value of target
*/
EPICS_ATOMIC_INLINE int epicsAtomicAddIntT ( int * pTarget, int delta );
@@ -181,32 +181,32 @@ EPICS_ATOMIC_INLINE void epicsAtomicSetIntT ( int * pTarget, int newValue );
*/
EPICS_ATOMIC_INLINE void epicsAtomicSetPtrT ( EpicsAtomicPtrT * pTarget, EpicsAtomicPtrT newValue );
/** \brief atomically load and return size_t value
/** \brief atomically load and return size_t value
*
* fetch target into cache, return new value of target
*
* \param pTarget pointer to target
*
*
* \return value of target
*/
EPICS_ATOMIC_INLINE size_t epicsAtomicGetSizeT ( const size_t * pTarget );
/** \brief atomically load and return int value
/** \brief atomically load and return int value
*
* fetch target into cache, return new value of target
*
* \param pTarget pointer to target
*
*
* \return value of target
*/
EPICS_ATOMIC_INLINE int epicsAtomicGetIntT ( const int * pTarget );
/** \brief atomically load and return pointer value
/** \brief atomically load and return pointer value
*
* fetch target into cache, return new value of target
*
* \param pTarget pointer to target
*
*
* \return value of target
*/
EPICS_ATOMIC_INLINE EpicsAtomicPtrT epicsAtomicGetPtrT ( const EpicsAtomicPtrT * pTarget );
@@ -286,7 +286,7 @@ namespace atomic {
/** \brief C++ API for atomic size_t increment
*
* C++ API for atomic size_t increment.
* C++ API for atomic size_t increment.
*
* \param v variable to increment
*
@@ -469,7 +469,7 @@ EPICS_ATOMIC_INLINE EpicsAtomicPtrT get ( const EpicsAtomicPtrT & v )
/** \brief C++ API for atomic size_t compare-and-swap
*
* C++ API for atomic size_t compare-and-swap. Atomic operation that compares \p v with \p oldVal
* C++ API for atomic size_t compare-and-swap. Atomic operation that compares \p v with \p oldVal
* and if \p v == \v oldVal, sets \p v to \v newVal
*
* \param v variable to compare and swap
@@ -486,7 +486,7 @@ EPICS_ATOMIC_INLINE size_t compareAndSwap ( size_t & v,
/** \brief C++ API for atomic int compare-and-swap
*
* C++ API for atomic size_t compare-and-swap. Atomic operation that compares \p v with \p oldVal
* C++ API for atomic size_t compare-and-swap. Atomic operation that compares \p v with \p oldVal
* and if \p v == \v oldVal, sets \p v to \v newVal
*
* \param v variable to compare and swap
@@ -502,7 +502,7 @@ EPICS_ATOMIC_INLINE int compareAndSwap ( int & v, int oldVal, int newVal )
/** \brief C++ API for atomic pointer compare-and-swap
*
* C++ API for atomic size_t compare-and-swap. Atomic operation that compares \p v with \p oldVal
* C++ API for atomic size_t compare-and-swap. Atomic operation that compares \p v with \p oldVal
* and if \p v == \v oldVal, sets \p v to \v newVal
*
* \param v variable to compare and swap
+9 -9
View File
@@ -12,7 +12,7 @@
*
* \brief OS independent interface for creating spin locks
*
* OS independent interface for creating spin locks. Implemented using the
* OS independent interface for creating spin locks. Implemented using the
* OS-specific spinlock interface if available. Otherwise uses epicsMutexLock.
*/
#ifndef epicsSpinh
@@ -32,20 +32,20 @@ typedef struct epicsSpin *epicsSpinId;
*
* Creates a spin lock
*
* \return Handle to spinlock or NULL if failed
* \return Handle to spinlock or NULL if failed
* to create the lock
*/
LIBCOM_API epicsSpinId epicsSpinCreate(void);
/** \brief Creates a spin lock
*
* Creates a spin lock. Calls cantProceed() if unable
* Creates a spin lock. Calls cantProceed() if unable
* to create lock
*/
LIBCOM_API epicsSpinId epicsSpinMustCreate(void);
/** \brief Destroys spin lock
*
*
* Destroys the spin lock
*
* \param lockId identifies the spinlock
@@ -53,20 +53,20 @@ LIBCOM_API epicsSpinId epicsSpinMustCreate(void);
LIBCOM_API void epicsSpinDestroy(epicsSpinId lockId);
/** \brief Acquires the spin lock
*
* Acquires the lock. Blocks if lock is unavailable
*
* Acquires the lock. Blocks if lock is unavailable
*
* \param lockId identifies the spinlock
*/
LIBCOM_API void epicsSpinLock(epicsSpinId lockId);
/** \brief Tries to acquire the spin lock
/** \brief Tries to acquire the spin lock
*
* Tries to acquire the lock. If failed, return immediately
* with non-zero error code.
*
* \param lockId identifies the spinlock
*
*
* \return 0 if lock was acquired. 1 if failed because acquired by another thread.
* Otherwise returns non-zero OS specific return code if failed for any other reason
*/
@@ -75,7 +75,7 @@ LIBCOM_API int epicsSpinTryLock(epicsSpinId lockId);
/** \brief Releases spin lock
*
* Releases spin lock
*
*
* \param lockId identifies the spinlock
*/
LIBCOM_API void epicsSpinUnlock(epicsSpinId lockId);
+3 -3
View File
@@ -44,13 +44,13 @@ LIBCOM_API void epicsStackTrace(void);
/** Bit mask to check if stack trace is able to lookup local symbols */
#define EPICS_STACKTRACE_LCL_SYMBOLS (1<<3)
/** \brief Get supported stacktrace features
/** \brief Get supported stacktrace features
*
* Returns an ORed bitset of supported features. Use the EPICS_STACKTRACE_ masks to
* Returns an ORed bitset of supported features. Use the EPICS_STACKTRACE_ masks to
* check if a feature is supported.
*
* \return 0 if getting the stack trace is unsupported. Otherwise
* returns an ORed bitset of supported features.
* returns an ORed bitset of supported features.
*/
LIBCOM_API int epicsStackTraceGetFeatures(void);
@@ -1,6 +1,6 @@
#ifdef RTEMS_LEGACY_STACK
#include "os/RTEMS-score/devLibVMEOSD.c"
#else
#pragma message "\n VME Support requires the RTEMS Legacy stack\n"
#pragma message "\n VME Support requires the RTEMS Legacy stack\n"
#include "os/default/devLibVMEOSD.c"
#endif
@@ -62,12 +62,12 @@ LIBCOM_API void epicsStdCall epicsMessageQueueDestroy(
{
int rv;
rv = mq_close(id->id);
if( rv ) {
if( rv ) {
fprintf(stderr, "epicsMessageQueueDestroy mq_close failed: %s\n",
strerror(rv));
}
rv = mq_unlink(id->name);
if( rv ) {
if( rv ) {
fprintf(stderr,"epicsMessageQueueDestroy mq_unlink %s failed: %s\n",
id->name, strerror(rv));
}
@@ -5,7 +5,7 @@
* Operator of Los Alamos National Laboratory.
* EPICS BASE Versions 3.13.7
* and higher are distributed subject to a Software License Agreement found
* in file LICENSE that is included with this distribution.
* in file LICENSE that is included with this distribution.
\*************************************************************************/
/*
* Author W. Eric Norum
@@ -5,7 +5,7 @@
* Operator of Los Alamos National Laboratory.
* EPICS BASE Versions 3.13.7
* and higher are distributed subject to a Software License Agreement found
* in file LICENSE that is included with this distribution.
* in file LICENSE that is included with this distribution.
\*************************************************************************/
#include <rtems.h>
#include <rtems/malloc.h>
@@ -39,7 +39,7 @@ int select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, str
#ifndef IPPORT_USERRESERVED
#define IPPORT_USERRESERVED 5000
#endif
#endif
typedef int SOCKET;
#define INVALID_SOCKET (-1)
@@ -104,7 +104,7 @@ int epicsThreadGetOssPriorityValue(unsigned int osiPriority)
/*
* epicsThreadLowestPriorityLevelAbove ()
*/
LIBCOM_API epicsThreadBooleanStatus epicsThreadLowestPriorityLevelAbove
LIBCOM_API epicsThreadBooleanStatus epicsThreadLowestPriorityLevelAbove
(unsigned int priority, unsigned *pPriorityJustAbove)
{
unsigned newPriority = priority + 1;
@@ -120,7 +120,7 @@ LIBCOM_API epicsThreadBooleanStatus epicsThreadLowestPriorityLevelAbove
/*
* epicsThreadHighestPriorityLevelBelow ()
*/
LIBCOM_API epicsThreadBooleanStatus epicsThreadHighestPriorityLevelBelow
LIBCOM_API epicsThreadBooleanStatus epicsThreadHighestPriorityLevelBelow
(unsigned int priority, unsigned *pPriorityJustBelow)
{
unsigned newPriority = priority - 1;
+6 -6
View File
@@ -55,7 +55,7 @@ LIBCOM_API epicsEventId epicsEventCreate (
/*
* epicsEventDestroy ()
*/
LIBCOM_API void epicsEventDestroy ( epicsEventId pSem )
LIBCOM_API void epicsEventDestroy ( epicsEventId pSem )
{
CloseHandle ( pSem->handle );
free ( pSem );
@@ -64,7 +64,7 @@ LIBCOM_API void epicsEventDestroy ( epicsEventId pSem )
/*
* epicsEventTrigger ()
*/
LIBCOM_API epicsEventStatus epicsEventTrigger ( epicsEventId pSem )
LIBCOM_API epicsEventStatus epicsEventTrigger ( epicsEventId pSem )
{
BOOL status;
status = SetEvent ( pSem->handle );
@@ -74,7 +74,7 @@ LIBCOM_API epicsEventStatus epicsEventTrigger ( epicsEventId pSem )
/*
* epicsEventWait ()
*/
LIBCOM_API epicsEventStatus epicsEventWait ( epicsEventId pSem )
LIBCOM_API epicsEventStatus epicsEventWait ( epicsEventId pSem )
{
DWORD status;
status = WaitForSingleObject (pSem->handle, INFINITE);
@@ -106,7 +106,7 @@ LIBCOM_API epicsEventStatus epicsEventWaitWithTimeout (
}
else if ( timeout >= INFINITE / mSecPerSec ) {
/* we need to apply a maximum wait time to stop an overflow. We choose (INFINITE - 1) milliseconds,
to be compatible with previous WaitForSingleObject() implementation */
to be compatible with previous WaitForSingleObject() implementation */
nIvals = (LONGLONG)(INFINITE - 1) * (ivalPerSec / mSecPerSec);
tmo.QuadPart = -nIvals; /* negative value means a relative time offset for timer */
}
@@ -143,7 +143,7 @@ LIBCOM_API epicsEventStatus epicsEventWaitWithTimeout (
/*
* epicsEventTryWait ()
*/
LIBCOM_API epicsEventStatus epicsEventTryWait ( epicsEventId pSem )
LIBCOM_API epicsEventStatus epicsEventTryWait ( epicsEventId pSem )
{
DWORD status;
@@ -162,6 +162,6 @@ LIBCOM_API epicsEventStatus epicsEventTryWait ( epicsEventId pSem )
/*
* epicsEventShow ()
*/
LIBCOM_API void epicsEventShow ( epicsEventId id, unsigned level )
LIBCOM_API void epicsEventShow ( epicsEventId id, unsigned level )
{
}
+1 -1
View File
@@ -47,7 +47,7 @@ LIBCOM_API osiGetUserNameReturn epicsStdCall osiGetUserName (char *pBuf, unsigne
return osiGetUserNameSuccess;
}
LIBCOM_API osiSpawnDetachedProcessReturn epicsStdCall osiSpawnDetachedProcess
LIBCOM_API osiSpawnDetachedProcessReturn epicsStdCall osiSpawnDetachedProcess
( const char *pProcessName, const char *pBaseExecutableName )
{
BOOL silent = pProcessName && pProcessName[0]=='!';
+3 -3
View File
@@ -113,7 +113,7 @@ LIBCOM_API void epicsStdCall osiSockRelease()
}
}
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
int domain, int type, int protocol )
{
return socket ( domain, type, protocol );
@@ -140,7 +140,7 @@ LIBCOM_API void epicsStdCall epicsSocketDestroy ( SOCKET s )
/*
* ipAddrToHostName
*/
LIBCOM_API unsigned epicsStdCall ipAddrToHostName
LIBCOM_API unsigned epicsStdCall ipAddrToHostName
(const struct in_addr *pAddr, char *pBuf, unsigned bufSize)
{
struct hostent *ent;
@@ -161,7 +161,7 @@ LIBCOM_API unsigned epicsStdCall ipAddrToHostName
/*
* hostToIPAddr ()
*/
LIBCOM_API int epicsStdCall hostToIPAddr
LIBCOM_API int epicsStdCall hostToIPAddr
(const char *pHostName, struct in_addr *pIPA)
{
struct hostent *phe;
+14 -14
View File
@@ -39,7 +39,7 @@
/* Windows Vista and higher supports fibre functions, but the
* prototypes only appear in the windows SDK 8 and above.
* VS2010 supplies sdk 7, but can be upgraded to later SDK
* VS2010 supplies sdk 7, but can be upgraded to later SDK
* To accommodate this we supply prototypes on, for XP
* fall back to Tls*() which will build and run
@@ -407,7 +407,7 @@ static unsigned epicsThreadGetOsiPriorityValue ( int osdPriority )
/*
* epicsThreadLowestPriorityLevelAbove ()
*/
LIBCOM_API epicsThreadBooleanStatus epicsStdCall epicsThreadLowestPriorityLevelAbove
LIBCOM_API epicsThreadBooleanStatus epicsStdCall epicsThreadLowestPriorityLevelAbove
( unsigned int priority, unsigned * pPriorityJustAbove )
{
const DWORD priorityClass = GetPriorityClass ( GetCurrentProcess () );
@@ -437,7 +437,7 @@ LIBCOM_API epicsThreadBooleanStatus epicsStdCall epicsThreadLowestPriorityLevelA
/*
* epicsThreadHighestPriorityLevelBelow ()
*/
LIBCOM_API epicsThreadBooleanStatus epicsStdCall epicsThreadHighestPriorityLevelBelow
LIBCOM_API epicsThreadBooleanStatus epicsStdCall epicsThreadHighestPriorityLevelBelow
( unsigned int priority, unsigned * pPriorityJustBelow )
{
const DWORD priorityClass = GetPriorityClass ( GetCurrentProcess () );
@@ -467,7 +467,7 @@ LIBCOM_API epicsThreadBooleanStatus epicsStdCall epicsThreadHighestPriorityLevel
/*
* epicsThreadGetStackSize ()
*/
LIBCOM_API unsigned int epicsStdCall
LIBCOM_API unsigned int epicsStdCall
epicsThreadGetStackSize ( epicsThreadStackSizeClass stackSizeClass )
{
#define STACK_SIZE(f) (f * 0x10000 * sizeof(void *))
@@ -778,7 +778,7 @@ LIBCOM_API void epicsStdCall epicsThreadResume ( epicsThreadId id )
/*
* epicsThreadGetPriority ()
*/
LIBCOM_API unsigned epicsStdCall epicsThreadGetPriority (epicsThreadId id)
LIBCOM_API unsigned epicsStdCall epicsThreadGetPriority (epicsThreadId id)
{
win32ThreadParam * pParm = ( win32ThreadParam * ) id;
return pParm->epicsPriority;
@@ -787,8 +787,8 @@ LIBCOM_API unsigned epicsStdCall epicsThreadGetPriority (epicsThreadId id)
/*
* epicsThreadGetPrioritySelf ()
*/
LIBCOM_API unsigned epicsStdCall epicsThreadGetPrioritySelf ()
{
LIBCOM_API unsigned epicsStdCall epicsThreadGetPrioritySelf ()
{
win32ThreadParam * pParm = getMyWin32ThreadParam ( NULL );
if ( pParm ) {
@@ -805,7 +805,7 @@ LIBCOM_API unsigned epicsStdCall epicsThreadGetPrioritySelf ()
/*
* epicsThreadSetPriority ()
*/
LIBCOM_API void epicsStdCall epicsThreadSetPriority ( epicsThreadId id, unsigned priority )
LIBCOM_API void epicsStdCall epicsThreadSetPriority ( epicsThreadId id, unsigned priority )
{
win32ThreadParam * pParm = ( win32ThreadParam * ) id;
BOOL stat = SetThreadPriority ( pParm->handle, epicsThreadGetOsdPriorityValue (priority) );
@@ -815,7 +815,7 @@ LIBCOM_API void epicsStdCall epicsThreadSetPriority ( epicsThreadId id, unsigned
/*
* epicsThreadIsEqual ()
*/
LIBCOM_API int epicsStdCall epicsThreadIsEqual ( epicsThreadId id1, epicsThreadId id2 )
LIBCOM_API int epicsStdCall epicsThreadIsEqual ( epicsThreadId id1, epicsThreadId id2 )
{
win32ThreadParam * pParm1 = ( win32ThreadParam * ) id1;
win32ThreadParam * pParm2 = ( win32ThreadParam * ) id2;
@@ -825,7 +825,7 @@ LIBCOM_API int epicsStdCall epicsThreadIsEqual ( epicsThreadId id1, epicsThreadI
/*
* epicsThreadIsSuspended ()
*/
LIBCOM_API int epicsStdCall epicsThreadIsSuspended ( epicsThreadId id )
LIBCOM_API int epicsStdCall epicsThreadIsSuspended ( epicsThreadId id )
{
win32ThreadParam *pParm = ( win32ThreadParam * ) id;
DWORD exitCode;
@@ -874,9 +874,9 @@ LIBCOM_API void epicsStdCall epicsThreadSleep ( double seconds )
if ( seconds <= 0.0 ) {
tmo.QuadPart = 0u;
}
else if ( seconds >= INFINITE / mSecPerSec ) {
else if ( seconds >= INFINITE / mSecPerSec ) {
/* we need to apply a maximum wait time to stop an overflow. We choose (INFINITE - 1) milliseconds,
to be compatible with previous WaitForSingleObject() implementation */
to be compatible with previous WaitForSingleObject() implementation */
nIvals = (LONGLONG)(INFINITE - 1) * (ivalPerSec / mSecPerSec);
tmo.QuadPart = -nIvals; /* negative value means a relative time offset for timer */
}
@@ -935,7 +935,7 @@ double epicsStdCall epicsThreadSleepQuantum ()
/*
* epicsThreadGetIdSelf ()
*/
LIBCOM_API epicsThreadId epicsStdCall epicsThreadGetIdSelf (void)
LIBCOM_API epicsThreadId epicsStdCall epicsThreadGetIdSelf (void)
{
win32ThreadParam * pParm = getMyWin32ThreadParam ( NULL );
assert ( pParm ); /* Don't return a NULL thread id */
@@ -988,7 +988,7 @@ LIBCOM_API const char * epicsStdCall epicsThreadGetNameSelf (void)
/*
* epicsThreadGetName ()
*/
LIBCOM_API void epicsStdCall epicsThreadGetName (
LIBCOM_API void epicsStdCall epicsThreadGetName (
epicsThreadId id, char * pName, size_t size )
{
win32ThreadParam * pParm = ( win32ThreadParam * ) id;
@@ -60,7 +60,7 @@ static void setThreadNameVS( DWORD dwThreadID, LPCSTR szThreadName )
#if _MSC_VER >= 1300 && defined ( _DEBUG )
// This was copied directly from an MSDN example
// It sets the thread name by throwing a special exception that is caught by Visual Sudio
// It requires the debugger to be already attached to the process
// It requires the debugger to be already attached to the process
// when the exception is thrown for the name to be registered
static const DWORD MS_VC_EXCEPTION = 0x406D1388;
#pragma pack(push,8)
@@ -16,7 +16,7 @@ extern "C" {
/*
* epicsStrtod() for systems with broken strtod() routine
*/
LIBCOM_API double epicsStrtod(const char *str, char **endp);
LIBCOM_API double epicsStrtod(const char *str, char **endp);
#ifdef __cplusplus
}
@@ -19,7 +19,7 @@
#include "osiSock.h"
#include "errlog.h"
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsSocketEnableAddressReuseDuringTimeWaitState ( SOCKET s )
{
#ifdef _WIN32
+1 -1
View File
@@ -59,7 +59,7 @@ LIBCOM_API osiGetUserNameReturn epicsStdCall osiGetUserName (char *pBuf, unsigne
}
}
LIBCOM_API osiSpawnDetachedProcessReturn epicsStdCall osiSpawnDetachedProcess
LIBCOM_API osiSpawnDetachedProcessReturn epicsStdCall osiSpawnDetachedProcess
(const char *pProcessName, const char *pBaseExecutableName)
{
int status;
@@ -53,5 +53,5 @@ LIBCOM_API void epicsStdCall epicsSignalInstallSigPipeIgnore (void)
/* Disabled */
LIBCOM_API void epicsStdCall epicsSignalInstallSigAlarmIgnore ( void ) {}
LIBCOM_API void epicsStdCall epicsSignalRaiseSigAlarm
LIBCOM_API void epicsStdCall epicsSignalRaiseSigAlarm
( struct epicsThreadOSD * /* threadId */ ) {}
+3 -3
View File
@@ -87,7 +87,7 @@ void osiSockRelease()
* the socket will be closed if the user uses exec()
* as is the case with third party tools such as TCL/TK
*/
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
int domain, int type, int protocol )
{
static unsigned char warnAttached;
@@ -177,7 +177,7 @@ LIBCOM_API void epicsStdCall epicsSocketDestroy ( SOCKET s )
* On many systems, gethostbyaddr must be protected by a
* mutex since the routine is not thread-safe.
*/
LIBCOM_API unsigned epicsStdCall ipAddrToHostName
LIBCOM_API unsigned epicsStdCall ipAddrToHostName
(const struct in_addr *pAddr, char *pBuf, unsigned bufSize)
{
struct hostent *ent;
@@ -203,7 +203,7 @@ LIBCOM_API unsigned epicsStdCall ipAddrToHostName
* On many systems, gethostbyname must be protected by a
* mutex since the routine is not thread-safe.
*/
LIBCOM_API int epicsStdCall hostToIPAddr
LIBCOM_API int epicsStdCall hostToIPAddr
(const char *pHostName, struct in_addr *pIPA)
{
struct hostent *phe;
+1 -1
View File
@@ -31,7 +31,7 @@
#endif
#if USE_MEMLOCK
#include <sys/mman.h>
#include <sys/mman.h>
#endif
/* epicsStdio uses epicsThreadOnce(), require explicit use to avoid unexpected recursion */
@@ -16,7 +16,7 @@ extern "C" {
/*
* epicsStrtod() for systems with broken strtod() routine
*/
LIBCOM_API double epicsStrtod(const char *str, char **endp);
LIBCOM_API double epicsStrtod(const char *str, char **endp);
#ifdef __cplusplus
}
+2 -2
View File
@@ -34,7 +34,7 @@ void osiSockRelease()
{
}
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
int domain, int type, int protocol )
{
SOCKET sock = socket ( domain, type, protocol );
@@ -70,7 +70,7 @@ LIBCOM_API void epicsStdCall epicsSocketDestroy ( SOCKET s )
/*
* ipAddrToHostName
*/
LIBCOM_API unsigned epicsStdCall ipAddrToHostName
LIBCOM_API unsigned epicsStdCall ipAddrToHostName
(const struct in_addr *pAddr, char *pBuf, unsigned bufSize)
{
int status;
+4 -4
View File
@@ -38,11 +38,11 @@ typedef enum osiGetUserNameReturn {
* and copy the name into the provided buffer
*
* \param pBuf buffer where user name is copied into
* \param bufSize size of input buffer.
* \param bufSize size of input buffer.
*
* \return return failed if unable to get user name or user name is too large
* to fit in buffer. Otherwise return success
*/
*/
LIBCOM_API osiGetUserNameReturn epicsStdCall osiGetUserName (char *pBuf, unsigned bufSize);
/** Return code for osiSpawnDetachedProcess() */
@@ -55,13 +55,13 @@ typedef enum osiSpawnDetachedProcessReturn {
/** \brief Spawn detached process
*
* Spawn detached process with named executable.
*
*
* \param pProcessName process name to be displayed. Not used in all OSs
* \param pBaseExecutableName path to executable
*
* \return return code indicating success or failure
*/
LIBCOM_API osiSpawnDetachedProcessReturn epicsStdCall osiSpawnDetachedProcess
LIBCOM_API osiSpawnDetachedProcessReturn epicsStdCall osiSpawnDetachedProcess
(const char *pProcessName, const char *pBaseExecutableName);
#ifdef __cplusplus
+5 -5
View File
@@ -31,7 +31,7 @@
* sockAddrAreIdentical()
* (returns true if addresses are identical)
*/
int epicsStdCall sockAddrAreIdentical
int epicsStdCall sockAddrAreIdentical
( const osiSockAddr *plhs, const osiSockAddr *prhs )
{
int match;
@@ -58,7 +58,7 @@ int epicsStdCall sockAddrAreIdentical
* sockAddrToA()
* (convert socket address to ASCII host name)
*/
unsigned epicsStdCall sockAddrToA (
unsigned epicsStdCall sockAddrToA (
const struct sockaddr * paddr, char * pBuf, unsigned bufSize )
{
if ( bufSize < 1 ) {
@@ -89,7 +89,7 @@ unsigned epicsStdCall sockAddrToA (
* ipAddrToA()
* (convert IP address to ASCII host name)
*/
unsigned epicsStdCall ipAddrToA (
unsigned epicsStdCall ipAddrToA (
const struct sockaddr_in * paddr, char * pBuf, unsigned bufSize )
{
unsigned len = ipAddrToHostName (
@@ -115,7 +115,7 @@ unsigned epicsStdCall ipAddrToA (
/*
* sockAddrToDottedIP ()
*/
unsigned epicsStdCall sockAddrToDottedIP (
unsigned epicsStdCall sockAddrToDottedIP (
const struct sockaddr * paddr, char * pBuf, unsigned bufSize )
{
if ( paddr->sa_family != AF_INET ) {
@@ -141,7 +141,7 @@ unsigned epicsStdCall sockAddrToDottedIP (
/*
* ipAddrToDottedIP ()
*/
unsigned epicsStdCall ipAddrToDottedIP (
unsigned epicsStdCall ipAddrToDottedIP (
const struct sockaddr_in *paddr, char *pBuf, unsigned bufSize )
{
static const char * pErrStr = "<IPA>";
+9 -9
View File
@@ -44,7 +44,7 @@ struct in_addr;
* \param protocol Typically unused and set to 0.
* \return A file descriptor referring to the socket, or -1 on error.
*/
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
LIBCOM_API SOCKET epicsStdCall epicsSocketCreate (
int domain, int type, int protocol );
/*!
@@ -70,7 +70,7 @@ LIBCOM_API SOCKET epicsStdCall epicsSocketAccept (
*
* Close and free resources held by a SOCKET object.
*/
LIBCOM_API void epicsStdCall epicsSocketDestroy (
LIBCOM_API void epicsStdCall epicsSocketDestroy (
SOCKET );
/*!
* \brief Allows a socket to bind ignoring other sockets in TIME_WAIT state.
@@ -88,7 +88,7 @@ LIBCOM_API void epicsStdCall epicsSocketDestroy (
*
* \param s The socket to ignore other TIME_WAIT sockets when binding
*/
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsSocketEnableAddressReuseDuringTimeWaitState ( SOCKET s );
/*!
* \brief Allows multiple sockets to use the same family, local address, and local
@@ -106,7 +106,7 @@ LIBCOM_API void epicsStdCall
*
* \param s The socket to put in "Fanout" mode (aka REUSEPORT mode)
*/
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsSocketEnableAddressUseForDatagramFanout ( SOCKET s );
/*!
@@ -138,7 +138,7 @@ enum epicsSocketSystemCallInterruptMechanismQueryInfo {
* \return enum representing whether to call close() or shutdown(RW) to
* interrupt blocking socket syscalls.
*/
LIBCOM_API enum epicsSocketSystemCallInterruptMechanismQueryInfo
LIBCOM_API enum epicsSocketSystemCallInterruptMechanismQueryInfo
epicsSocketSystemCallInterruptMechanismQuery ();
#ifdef EPICS_PRIVATE_API
@@ -206,7 +206,7 @@ LIBCOM_API unsigned epicsStdCall ipAddrToA (
* null termination, but always writes at least a null terminator in the string
* (if bufSize >= 1)
*/
LIBCOM_API unsigned epicsStdCall sockAddrToDottedIP (
LIBCOM_API unsigned epicsStdCall sockAddrToDottedIP (
const struct sockaddr * paddr, char * pBuf, unsigned bufSize );
/*!
@@ -222,7 +222,7 @@ LIBCOM_API unsigned epicsStdCall sockAddrToDottedIP (
* null termination, but always writes at least a null terminator in the string
* (if bufSize >= 1)
*/
LIBCOM_API unsigned epicsStdCall ipAddrToDottedIP (
LIBCOM_API unsigned epicsStdCall ipAddrToDottedIP (
const struct sockaddr_in * paddr, char * pBuf, unsigned bufSize );
/*!
@@ -266,7 +266,7 @@ LIBCOM_API int epicsStdCall aToIPAddr
* \param[out] pIPA Pointer to the in_addr structure where the hostname information will be stored
* \return 0 on success, negative on error.
*/
LIBCOM_API int epicsStdCall hostToIPAddr
LIBCOM_API int epicsStdCall hostToIPAddr
(const char *pHostName, struct in_addr *pIPA);
/*!
* \brief attach to BSD socket library
@@ -342,7 +342,7 @@ typedef struct osiSockAddrNode {
*
* \return true if addresses are identical, false otherwise.
*/
LIBCOM_API int epicsStdCall sockAddrAreIdentical
LIBCOM_API int epicsStdCall sockAddrAreIdentical
( const osiSockAddr * plhs, const osiSockAddr * prhs );
/*!
+6 -6
View File
@@ -109,7 +109,7 @@ void epicsTimerQueuePassiveForC::destroy ()
delete this;
}
LIBCOM_API epicsTimerNotify::expireStatus::expireStatus ( restart_t restart ) :
LIBCOM_API epicsTimerNotify::expireStatus::expireStatus ( restart_t restart ) :
delay ( - DBL_MAX )
{
if ( restart != noRestart ) {
@@ -118,7 +118,7 @@ LIBCOM_API epicsTimerNotify::expireStatus::expireStatus ( restart_t restart ) :
}
}
LIBCOM_API epicsTimerNotify::expireStatus::expireStatus
LIBCOM_API epicsTimerNotify::expireStatus::expireStatus
( restart_t restartIn, const double & expireDelaySec ) :
delay ( expireDelaySec )
{
@@ -163,13 +163,13 @@ extern "C" epicsTimerQueuePassiveId epicsStdCall
}
}
extern "C" void epicsStdCall
extern "C" void epicsStdCall
epicsTimerQueuePassiveDestroy ( epicsTimerQueuePassiveId pQueue )
{
pQueue->destroy ();
}
extern "C" double epicsStdCall
extern "C" double epicsStdCall
epicsTimerQueuePassiveProcess ( epicsTimerQueuePassiveId pQueue )
{
try {
@@ -191,7 +191,7 @@ extern "C" epicsTimerId epicsStdCall epicsTimerQueuePassiveCreateTimer (
}
}
extern "C" LIBCOM_API void epicsStdCall epicsTimerQueuePassiveDestroyTimer (
extern "C" LIBCOM_API void epicsStdCall epicsTimerQueuePassiveDestroyTimer (
epicsTimerQueuePassiveId /* pQueue */, epicsTimerId pTmr )
{
pTmr->destroy ();
@@ -240,7 +240,7 @@ extern "C" void epicsStdCall epicsTimerQueueShow (
pQueue->show ( level );
}
extern "C" void epicsStdCall epicsTimerQueueDestroyTimer (
extern "C" void epicsStdCall epicsTimerQueueDestroyTimer (
epicsTimerQueueId /* pQueue */, epicsTimerId pTmr )
{
pTmr->destroy ();
+14 -14
View File
@@ -137,14 +137,14 @@ typedef void ( *epicsTimerCallback ) ( void *pPrivate );
typedef struct epicsTimerQueueActiveForC * epicsTimerQueueId;
LIBCOM_API epicsTimerQueueId epicsStdCall
epicsTimerQueueAllocate ( int okToShare, unsigned int threadPriority );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerQueueRelease ( epicsTimerQueueId );
LIBCOM_API epicsTimerId epicsStdCall
LIBCOM_API epicsTimerId epicsStdCall
epicsTimerQueueCreateTimer ( epicsTimerQueueId queueid,
epicsTimerCallback callback, void *arg );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerQueueDestroyTimer ( epicsTimerQueueId queueid, epicsTimerId id );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerQueueShow ( epicsTimerQueueId id, unsigned int level );
/* passive timer queue */
@@ -154,28 +154,28 @@ typedef double ( * epicsTimerQueueNotifyQuantum ) ( void * pPrivate );
LIBCOM_API epicsTimerQueuePassiveId epicsStdCall
epicsTimerQueuePassiveCreate ( epicsTimerQueueNotifyReschedule,
epicsTimerQueueNotifyQuantum, void *pPrivate );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerQueuePassiveDestroy ( epicsTimerQueuePassiveId );
LIBCOM_API epicsTimerId epicsStdCall
LIBCOM_API epicsTimerId epicsStdCall
epicsTimerQueuePassiveCreateTimer (
epicsTimerQueuePassiveId queueid, epicsTimerCallback pCallback, void *pArg );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerQueuePassiveDestroyTimer ( epicsTimerQueuePassiveId queueid, epicsTimerId id );
LIBCOM_API double epicsStdCall
LIBCOM_API double epicsStdCall
epicsTimerQueuePassiveProcess ( epicsTimerQueuePassiveId );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerQueuePassiveShow ( epicsTimerQueuePassiveId id, unsigned int level );
/* timer */
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerStartTime ( epicsTimerId id, const epicsTimeStamp *pTime );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerStartDelay ( epicsTimerId id, double delaySeconds );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerCancel ( epicsTimerId id );
LIBCOM_API double epicsStdCall
LIBCOM_API double epicsStdCall
epicsTimerGetExpireDelay ( epicsTimerId id );
LIBCOM_API void epicsStdCall
LIBCOM_API void epicsStdCall
epicsTimerShow ( epicsTimerId id, unsigned int level );
#ifdef __cplusplus
+1 -1
View File
@@ -132,7 +132,7 @@ void timer::privateStart ( epicsTimerNotify & notify, const epicsTime & expire )
debugPrintf ( ("Start of \"%s\" with delay %f at %p preempting %u\n",
typeid ( this->pNotify ).name (),
expire - epicsTime::getCurrent (),
expire - epicsTime::getCurrent (),
this, preemptCount ) );
}
+1 -1
View File
@@ -57,7 +57,7 @@ MAIN(readlineTest)
if (!c || c == '#') {
continue;
}
do {
// expected strings are always single line strings
if (! fgets(line_expect, 499, fp_expect)) {
+3 -3
View File
@@ -89,9 +89,9 @@ namespace boost
#endif
namespace boost
{
namespace assertion
{
{
namespace assertion
{
namespace detail
{
inline void assertion_failed_msg(char const * expr, char const * msg, char const * function,
+3 -3
View File
@@ -1,8 +1,8 @@
// Boost config.hpp configuration header file ------------------------------//
// (C) Copyright John Maddock 2002.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright John Maddock 2002.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/config for most recent version.
@@ -400,7 +400,7 @@ BOOST_LIB_VERSION: The Boost version, in the form x_y, for Boost version x.y.
#if defined(BOOST_LIB_NAME)
# undef BOOST_LIB_NAME
#endif
// Don't undef this one: it can be set by the user and should be the
// Don't undef this one: it can be set by the user and should be the
// same for all libraries:
//#if defined(BOOST_LIB_TOOLSET)
//# undef BOOST_LIB_TOOLSET
@@ -1,12 +1,12 @@
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Darin Adler 2001 - 2002.
// (C) Copyright Jens Maurer 2001 - 2002.
// (C) Copyright Beman Dawes 2001 - 2003.
// (C) Copyright Douglas Gregor 2002.
// (C) Copyright David Abrahams 2002 - 2003.
// (C) Copyright Synge Todo 2003.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Darin Adler 2001 - 2002.
// (C) Copyright Jens Maurer 2001 - 2002.
// (C) Copyright Beman Dawes 2001 - 2003.
// (C) Copyright Douglas Gregor 2002.
// (C) Copyright David Abrahams 2002 - 2003.
// (C) Copyright Synge Todo 2003.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org for most recent version.
@@ -97,7 +97,7 @@
//
#if !defined(__MINGW32__) && !defined(linux) && !defined(__linux) && !defined(__linux__)
# define BOOST_HAS_THREADS
#endif
#endif
//
// gcc has "long long"
@@ -116,7 +116,7 @@
//
#if __GNUC__ >= 4
# if (defined(_WIN32) || defined(__WIN32__) || defined(WIN32)) && !defined(__CYGWIN__)
// All Win32 development environments, including 64-bit Windows and MinGW, define
// All Win32 development environments, including 64-bit Windows and MinGW, define
// _WIN32 or one of its variant spellings. Note that Cygwin is a POSIX environment,
// so does not define _WIN32 or its variants.
# define BOOST_HAS_DECLSPEC
@@ -128,7 +128,7 @@
# endif
# define BOOST_SYMBOL_VISIBLE __attribute__((visibility("default")))
#else
// config/platform/win32.hpp will define BOOST_SYMBOL_EXPORT, etc., unless already defined
// config/platform/win32.hpp will define BOOST_SYMBOL_EXPORT, etc., unless already defined
# define BOOST_SYMBOL_EXPORT
#endif
@@ -169,7 +169,7 @@
# define BOOST_NO_CXX11_RVALUE_REFERENCES
# define BOOST_NO_CXX11_STATIC_ASSERT
// Variadic templates compiler:
// Variadic templates compiler:
// http://www.generic-programming.org/~dgregor/cpp/variadic-templates.html
# if defined(__VARIADIC_TEMPLATES) || (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4) && defined(__GXX_EXPERIMENTAL_CXX0X__))
# define BOOST_HAS_VARIADIC_TMPL
@@ -1,6 +1,6 @@
// (C) Copyright Dustin Spicuzza 2009.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright Dustin Spicuzza 2009.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org for most recent version.
@@ -28,4 +28,4 @@
// boilerplate code:
#include <boost/config/posix_features.hpp>
@@ -1,6 +1,6 @@
// (C) Copyright John Maddock 2001 - 2003.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright John Maddock 2001 - 2003.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -1,6 +1,6 @@
// Boost compiler configuration selection header file
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Martin Wille 2003.
// (C) Copyright Guillaume Melquiond 2003.
//
@@ -11,7 +11,7 @@
// See http://www.boost.org/ for most recent version.
// locate which compiler we are using and define
// BOOST_COMPILER_CONFIG as needed:
// BOOST_COMPILER_CONFIG as needed:
#if defined(__GCCXML__)
// GCC-XML emulates other compilers, it has to appear first here!
@@ -1,9 +1,9 @@
// Boost compiler configuration selection header file
// (C) Copyright John Maddock 2001 - 2002.
// (C) Copyright Jens Maurer 2001.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright John Maddock 2001 - 2002.
// (C) Copyright Jens Maurer 2001.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org for most recent version.
@@ -65,17 +65,17 @@
// vxWorks:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/vxworks.hpp"
#elif defined(__SYMBIAN32__)
// Symbian:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/symbian.hpp"
#elif defined(__SYMBIAN32__)
// Symbian:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/symbian.hpp"
#elif defined(_CRAYC)
// Cray:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/cray.hpp"
# define BOOST_PLATFORM_CONFIG "boost/config/platform/cray.hpp"
#elif defined(__VMS)
#elif defined(__VMS)
// VMS:
# define BOOST_PLATFORM_CONFIG "boost/config/platform/vms.hpp"
# define BOOST_PLATFORM_CONFIG "boost/config/platform/vms.hpp"
#else
# if defined(unix) \
@@ -1,9 +1,9 @@
// Boost compiler configuration selection header file
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Jens Maurer 2001 - 2002.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright John Maddock 2001 - 2003.
// (C) Copyright Jens Maurer 2001 - 2002.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
@@ -12,7 +12,7 @@
// locate which std lib we are using and define BOOST_STDLIB_CONFIG as needed:
// First include <cstddef> to determine if some version of STLport is in use as the std lib
// (do not rely on this header being included since users can short-circuit this header
// (do not rely on this header being included since users can short-circuit this header
// if they know whose std lib they are using.)
#ifdef __cplusplus
# include <cstddef>
@@ -28,11 +28,11 @@
#else
// If our std lib was not some version of STLport, then include <utility> as it is about
// If our std lib was not some version of STLport, then include <utility> as it is about
// the smallest of the std lib headers that includes real C++ stuff. (Some std libs do not
// include their C++-related macros in <cstddef> so this additional include makes sure
// we get those definitions)
// (again do not rely on this header being included since users can short-circuit this
// (again do not rely on this header being included since users can short-circuit this
// header if they know whose std lib they are using.)
#include <boost/config/no_tr1/utility.hpp>
@@ -56,7 +56,7 @@
# ifndef _CPPLIB_VER
// Updated Dinkum library defines this, and provides
// its own min and max definitions, as does MTA version.
# ifndef __MTA__
# ifndef __MTA__
# define BOOST_NO_STD_MIN_MAX
# endif
# define BOOST_NO_MS_INT64_NUMERIC_LIMITS
@@ -64,7 +64,7 @@
#endif
//
// std extension namespace is stdext for vc7.1 and later,
// std extension namespace is stdext for vc7.1 and later,
// the same applies to other compilers that sit on top
// of vc7.1 (Intel and Comeau):
//
@@ -87,9 +87,9 @@
#endif
#include <typeinfo>
#if ( (!_HAS_EXCEPTIONS && !defined(__ghs__)) || (!_HAS_NAMESPACE && defined(__ghs__)) )
# define BOOST_NO_STD_TYPEINFO
#endif
#if ( (!_HAS_EXCEPTIONS && !defined(__ghs__)) || (!_HAS_NAMESPACE && defined(__ghs__)) )
# define BOOST_NO_STD_TYPEINFO
#endif
// C++0x headers implemented in 520 (as shipped by Microsoft)
//
@@ -4,7 +4,7 @@
// Copyright (c) 2001-2003 John Maddock
// Copyright (c) 2001 Darin Adler
// Copyright (c) 2001 Peter Dimov
// Copyright (c) 2002 Bill Kempf
// Copyright (c) 2002 Bill Kempf
// Copyright (c) 2002 Jens Maurer
// Copyright (c) 2002-2003 David Abrahams
// Copyright (c) 2003 Gennaro Prota
@@ -146,7 +146,7 @@
# endif
//
// Without partial specialization, partial
// Without partial specialization, partial
// specialization with default args won't work either:
//
# if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \
@@ -632,7 +632,7 @@ namespace std{ using ::type_info; }
// Set some default values GPU support
//
# ifndef BOOST_GPU_ENABLED
# define BOOST_GPU_ENABLED
# define BOOST_GPU_ENABLED
# endif
// BOOST_FORCEINLINE ---------------------------------------------//
@@ -695,7 +695,7 @@ namespace std{ using ::type_info; }
# define BOOST_NO_0X_HDR_FUTURE
#endif
// Use BOOST_NO_CXX11_HDR_INITIALIZER_LIST
// Use BOOST_NO_CXX11_HDR_INITIALIZER_LIST
// instead of BOOST_NO_0X_HDR_INITIALIZER_LIST or BOOST_NO_INITIALIZER_LISTS
#ifdef BOOST_NO_CXX11_HDR_INITIALIZER_LIST
# ifndef BOOST_NO_0X_HDR_INITIALIZER_LIST
@@ -884,7 +884,7 @@ namespace std{ using ::type_info; }
//
// constexpr workarounds
//
//
#if defined(BOOST_NO_CXX11_CONSTEXPR)
#define BOOST_CONSTEXPR
#define BOOST_CONSTEXPR_OR_CONST const
+43 -43
View File
@@ -1,8 +1,8 @@
// boost/config/user.hpp ---------------------------------------------------//
// (C) Copyright John Maddock 2001.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// (C) Copyright John Maddock 2001.
// Use, modification and distribution are subject to the
// Boost Software License, Version 1.0. (See accompanying file
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
// Do not check in modified versions of this file,
@@ -65,60 +65,60 @@
// even when available:
// #define BOOST_DISABLE_WIN32
// BOOST_DISABLE_ABI_HEADERS: Stops boost headers from including any
// prefix/suffix headers that normally control things like struct
// packing and alignment.
// BOOST_DISABLE_ABI_HEADERS: Stops boost headers from including any
// prefix/suffix headers that normally control things like struct
// packing and alignment.
// #define BOOST_DISABLE_ABI_HEADERS
// BOOST_ABI_PREFIX: A prefix header to include in place of whatever
// boost.config would normally select, any replacement should set up
// struct packing and alignment options as required.
// boost.config would normally select, any replacement should set up
// struct packing and alignment options as required.
// #define BOOST_ABI_PREFIX my-header-name
// BOOST_ABI_SUFFIX: A suffix header to include in place of whatever
// boost.config would normally select, any replacement should undo
// the effects of the prefix header.
// BOOST_ABI_SUFFIX: A suffix header to include in place of whatever
// boost.config would normally select, any replacement should undo
// the effects of the prefix header.
// #define BOOST_ABI_SUFFIX my-header-name
// BOOST_ALL_DYN_LINK: Forces all libraries that have separate source,
// to be linked as dll's rather than static libraries on Microsoft Windows
// (this macro is used to turn on __declspec(dllimport) modifiers, so that
// the compiler knows which symbols to look for in a dll rather than in a
// static library). Note that there may be some libraries that can only
// be statically linked (Boost.Test for example) and others which may only
// be dynamically linked (Boost.Threads for example), in these cases this
// BOOST_ALL_DYN_LINK: Forces all libraries that have separate source,
// to be linked as dll's rather than static libraries on Microsoft Windows
// (this macro is used to turn on __declspec(dllimport) modifiers, so that
// the compiler knows which symbols to look for in a dll rather than in a
// static library). Note that there may be some libraries that can only
// be statically linked (Boost.Test for example) and others which may only
// be dynamically linked (Boost.Threads for example), in these cases this
// macro has no effect.
// #define BOOST_ALL_DYN_LINK
// BOOST_WHATEVER_DYN_LINK: Forces library "whatever" to be linked as a dll
// rather than a static library on Microsoft Windows: replace the WHATEVER
// part of the macro name with the name of the library that you want to
// dynamically link to, for example use BOOST_DATE_TIME_DYN_LINK or
// BOOST_REGEX_DYN_LINK etc (this macro is used to turn on __declspec(dllimport)
// modifiers, so that the compiler knows which symbols to look for in a dll
// rather than in a static library).
// Note that there may be some libraries that can only be statically linked
// (Boost.Test for example) and others which may only be dynamically linked
// BOOST_WHATEVER_DYN_LINK: Forces library "whatever" to be linked as a dll
// rather than a static library on Microsoft Windows: replace the WHATEVER
// part of the macro name with the name of the library that you want to
// dynamically link to, for example use BOOST_DATE_TIME_DYN_LINK or
// BOOST_REGEX_DYN_LINK etc (this macro is used to turn on __declspec(dllimport)
// modifiers, so that the compiler knows which symbols to look for in a dll
// rather than in a static library).
// Note that there may be some libraries that can only be statically linked
// (Boost.Test for example) and others which may only be dynamically linked
// (Boost.Threads for example), in these cases this macro is unsupported.
// #define BOOST_WHATEVER_DYN_LINK
// BOOST_ALL_NO_LIB: Tells the config system not to automatically select
// which libraries to link against.
// Normally if a compiler supports #pragma lib, then the correct library
// build variant will be automatically selected and linked against,
// simply by the act of including one of that library's headers.
// BOOST_ALL_NO_LIB: Tells the config system not to automatically select
// which libraries to link against.
// Normally if a compiler supports #pragma lib, then the correct library
// build variant will be automatically selected and linked against,
// simply by the act of including one of that library's headers.
// This macro turns that feature off.
// #define BOOST_ALL_NO_LIB
// BOOST_WHATEVER_NO_LIB: Tells the config system not to automatically
// select which library to link against for library "whatever",
// replace WHATEVER in the macro name with the name of the library;
// for example BOOST_DATE_TIME_NO_LIB or BOOST_REGEX_NO_LIB.
// Normally if a compiler supports #pragma lib, then the correct library
// build variant will be automatically selected and linked against, simply
// by the act of including one of that library's headers. This macro turns
// BOOST_WHATEVER_NO_LIB: Tells the config system not to automatically
// select which library to link against for library "whatever",
// replace WHATEVER in the macro name with the name of the library;
// for example BOOST_DATE_TIME_NO_LIB or BOOST_REGEX_NO_LIB.
// Normally if a compiler supports #pragma lib, then the correct library
// build variant will be automatically selected and linked against, simply
// by the act of including one of that library's headers. This macro turns
// that feature off.
// #define BOOST_WHATEVER_NO_LIB
@@ -75,8 +75,8 @@ template<class T> struct sp_typeid_
};
#if defined(__SUNPRO_CC)
// see #4199, the Sun Studio compiler gets confused about static initialization
// constructor arguments. But an assignment works just fine.
// see #4199, the Sun Studio compiler gets confused about static initialization
// constructor arguments. But an assignment works just fine.
template<class T> sp_typeinfo sp_typeid_< T >::ti_ = sp_typeid_< T >::name();
#else
template<class T> sp_typeinfo sp_typeid_< T >::ti_(sp_typeid_< T >::name());
@@ -20,8 +20,8 @@
//
// (BOOST_MSVC) != 0 && (BOOST_MSVC) < 1300
//
// When used for workarounds that apply to the latest known version
// and all earlier versions of a compiler, the following convention
// When used for workarounds that apply to the latest known version
// and all earlier versions of a compiler, the following convention
// should be observed:
//
// #if BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1301))
@@ -262,6 +262,6 @@
# define BOOST_WORKAROUND(symbol, test) 0
# endif
# endif
#endif // WORKAROUND_DWA2002126_HPP
@@ -31,7 +31,7 @@
#include <boost/detail/workaround.hpp>
// In order to avoid circular dependencies with Boost.TR1
// we make sure that our include of <memory> doesn't try to
// pull in the TR1 headers: that's why we use this header
// pull in the TR1 headers: that's why we use this header
// rather than including <memory> directly:
#include <boost/config/no_tr1/memory.hpp> // std::auto_ptr
#include <functional> // std::less
@@ -66,7 +66,7 @@ template< class D > struct sp_inplace_tag
#if !defined( BOOST_NO_CXX11_SMART_PTR )
template< class T > class sp_reference_wrapper
{
{
public:
explicit sp_reference_wrapper( T & t): t_( boost::addressof( t ) )
@@ -337,7 +337,7 @@ public:
r.release();
}
#endif
#endif
#if !defined( BOOST_NO_CXX11_SMART_PTR )
@@ -58,7 +58,7 @@
#undef BOOST_SP_HAS_SYNC
#endif
#if defined(__PATHSCALE__) && ((__PATHCC__ == 4) && (__PATHCC_MINOR__ < 9))
#if defined(__PATHSCALE__) && ((__PATHCC__ == 4) && (__PATHCC_MINOR__ < 9))
#undef BOOST_SP_HAS_SYNC
#endif
@@ -41,11 +41,11 @@ public:
static spinlock & spinlock_for( void const * pv )
{
#if defined(__VMS) && __INITIAL_POINTER_SIZE == 64
#if defined(__VMS) && __INITIAL_POINTER_SIZE == 64
std::size_t i = reinterpret_cast< unsigned long long >( pv ) % 41;
#else
#else
std::size_t i = reinterpret_cast< std::size_t >( pv ) % 41;
#endif
#endif
return pool_[ i ];
}
@@ -74,14 +74,14 @@ public:
template< int I > spinlock spinlock_pool< I >::pool_[ 41 ] =
{
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
BOOST_DETAIL_SPINLOCK_INIT
};
@@ -22,7 +22,7 @@
// In order to avoid circular dependencies with Boost.TR1
// we make sure that our include of <memory> doesn't try to
// pull in the TR1 headers: that's why we use this header
// pull in the TR1 headers: that's why we use this header
// rather than including <memory> directly:
#include <boost/config/no_tr1/memory.hpp> // std::auto_ptr
@@ -247,7 +247,7 @@ template< class T, class R > struct sp_enable_if_auto_ptr
template< class T, class R > struct sp_enable_if_auto_ptr< std::auto_ptr< T >, R >
{
typedef R type;
};
};
#endif
@@ -639,21 +639,21 @@ public:
{
this_type( r, p ).swap( *this );
}
// never throws (but has a BOOST_ASSERT in it, so not marked with BOOST_NOEXCEPT)
typename boost::detail::sp_dereference< T >::type operator* () const
{
BOOST_ASSERT( px != 0 );
return *px;
}
// never throws (but has a BOOST_ASSERT in it, so not marked with BOOST_NOEXCEPT)
typename boost::detail::sp_member_access< T >::type operator-> () const
typename boost::detail::sp_member_access< T >::type operator-> () const
{
BOOST_ASSERT( px != 0 );
return px;
}
// never throws (but has a BOOST_ASSERT in it, so not marked with BOOST_NOEXCEPT)
typename boost::detail::sp_array_access< T >::type operator[] ( std::ptrdiff_t i ) const
{
@@ -9,8 +9,8 @@
#include <cstddef>
#if (defined(__GNUC__) && !(defined(linux) || defined(__linux) || defined(__linux__))) \
|| (!defined(_AIX) && defined(__IBMCPP__) && (__IBMCPP__ >= 800))
// Disable use of #include_next on Linux as typically we are installed in a
|| (!defined(_AIX) && defined(__IBMCPP__) && (__IBMCPP__ >= 800))
// Disable use of #include_next on Linux as typically we are installed in a
// directory that is searched *after* the std lib include path.
#if !defined(BOOST_HAS_INCLUDE_NEXT)
# define BOOST_HAS_INCLUDE_NEXT
@@ -1,5 +1,5 @@
// (C) Copyright John Maddock 2005.
// (C) Copyright John Maddock 2005.
// Use, modification and distribution are subject to the Boost Software License,
// Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt).
@@ -69,10 +69,10 @@ struct is_signed_select_helper<false>
template <class T>
struct is_signed_imp
{
typedef is_signed_select_helper<
typedef is_signed_select_helper<
::boost::type_traits::ice_or<
::boost::is_integral<T>::value,
::boost::is_enum<T>::value>::value
::boost::is_enum<T>::value>::value
> selector;
typedef typename selector::template rebind<T> binder;
typedef typename binder::type type;
+4 -4
View File
@@ -97,7 +97,7 @@ foreach $ext ( @ARGV ) {
next;
}
print "Creating template structure "
. "for $extname (of type $exttypename)\n" if $Debug;
. "for $extname (of type $exttypename)\n" if $Debug;
find(\&FCopyTree, "$top/$exttypename/");
if ($note) {
print "\nNOTE: You must add the line \"DIRS += $extname\" to src/Makefile.\n\n";
@@ -146,7 +146,7 @@ sub get_commandline_opts { #no args
}
close IN;
}
if("$top" eq "") {
if("$top" eq "") {
if ($eTOP) { # third choice is $ENV{EPICS_MBE_TEMPL_TOP}
$top = UnixPath($eTOP);
} else { # use templates from EPICS base
@@ -163,7 +163,7 @@ sub get_commandline_opts { #no args
# Extension template type
if ($opt_t) { # first choice is -t type
$exttype = $opt_t;
$exttype = $opt_t;
} elsif ($eEXTTYPE) { # second choice is $ENV{EPICS_DEFAULT_EXT_TYPE}
$exttype = $eEXTTYPE;
} elsif (-r "$top/defaultExt") {# third choice is (a link) in the $top dir
@@ -276,7 +276,7 @@ EPICS_MBE_DEF_EXT_TYPE Ext type you want to use as default
EPICS_MBE_TEMPLATE_TOP Template top directory
EPICS_MBE_BASE Location of EPICS base
Example: Create example extension
Example: Create example extension
<base>/bin/<arch>/makeBaseExt.pl -t example example
+1 -1
View File
@@ -6,7 +6,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS Base is distributed subject to a Software License Agreement found
# in the file LICENSE that is included with this distribution.
# in the file LICENSE that is included with this distribution.
#*************************************************************************
# Find and delete cvs .#* and editor backup *~
+1 -1
View File
@@ -6,7 +6,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS Base is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
# in file LICENSE that is included with this distribution.
#*************************************************************************
# Converts text file in DOS CR/LF format to unix ISO format
+1 -1
View File
@@ -6,7 +6,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS BASE is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# InstallEpics.pl
+1 -1
View File
@@ -6,7 +6,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS Base is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
# in file LICENSE that is included with this distribution.
#*************************************************************************
#
# makeMakefile.pl
+5 -5
View File
@@ -7,7 +7,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS BASE is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
# in file LICENSE that is included with this distribution.
#*************************************************************************
#-----------------------------------------------------------------------
# mkmf.pl: Perl script to create #include file dependencies
@@ -72,9 +72,9 @@ print "\n ALL DONE \n\n" if $debug;
#----------------------------------------
sub printList{
my $depFile = shift;
my $objFile = shift;
my $file;
my $depFile = shift;
my $objFile = shift;
my $file;
unlink($depFile) or die "Can't delete $depFile: $!\n" if -f $depFile;
@@ -103,7 +103,7 @@ sub scanFile {
foreach $line ( <FILE> ) {
$incfile = findNextIncName($line,$file=~/\.substitutions$/);
next if !$incfile;
next if $output{$incfile};
next if $output{$incfile};
push @includes,$incfile;
$output{$incfile} = 1;
}
+1 -1
View File
@@ -6,7 +6,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS BASE is distributed subject to a Software License Agreement found
# in the file LICENSE that is included with this distribution.
# in the file LICENSE that is included with this distribution.
#*************************************************************************
use strict;
+1 -1
View File
@@ -6,7 +6,7 @@
# Operator of Los Alamos National Laboratory.
# SPDX-License-Identifier: EPICS
# EPICS Base is distributed subject to a Software License Agreement found
# in file LICENSE that is included with this distribution.
# in file LICENSE that is included with this distribution.
#*************************************************************************
# Called from within the object directory
+4 -4
View File
@@ -57,7 +57,7 @@ will display it (neither has an effect when --puretap is specified).
Pod::Usage
TAP::Parser
Time::HiRes
XML::Generator
XML::Generator
=head1 BUGS
@@ -194,7 +194,7 @@ exit;
sub _get_junit_xml {
my ( $xmlgen, $properties, $test_results ) = @_;
my $xml = "<?xml version='1.0' encoding='UTF-8' ?>\n" .
my $xml = "<?xml version='1.0' encoding='UTF-8' ?>\n" .
$xmlgen->testsuites({
name => $suite_name,
}, @$test_results);
@@ -439,13 +439,13 @@ sub _parse_tests {
push @{$ctx->{test_cases}}, $xmlgen->testcase($test_case);
}
}
$ctx->{sysout} .= $s."\n";
}
if (scalar(@{$ctx->{test_cases}}) == 0 &&
scalar(@{$ctx->{testsuites}}) == 0)
{
{
# no tests found! create a <testsuite> block containing *something* at least
$ctx->{case_tests}++;
my $test_case = {