diff options
author | tradke <tradke@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2001-05-19 00:22:18 +0000 |
---|---|---|
committer | tradke <tradke@17b73243-c579-4c4c-a9d2-2d5706c11dac> | 2001-05-19 00:22:18 +0000 |
commit | c9f46203a720e9d9937ac30bd1943aa2adce0991 (patch) | |
tree | b0fd0251099f74c0b3c5f9e66f64808f76da48b6 /src/util/Misc.c | |
parent | 4480eff52e8be552301c364615d61e761b7b8302 (diff) |
Fixed compiler warnings.
git-svn-id: http://svn.cactuscode.org/flesh/trunk@2193 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/util/Misc.c')
-rw-r--r-- | src/util/Misc.c | 687 |
1 files changed, 342 insertions, 345 deletions
diff --git a/src/util/Misc.c b/src/util/Misc.c index b97c397f..b00cc070 100644 --- a/src/util/Misc.c +++ b/src/util/Misc.c @@ -2,9 +2,9 @@ @file Misc.c @date Wed Jan 20 10:06:35 1999 @author Tom Goodale - @desc + @desc Miscellaneuous routines. - @enddesc + @enddesc @version $Header$ @@*/ @@ -45,19 +45,22 @@ CCTK_FILEVERSION(util_Misc_c) ********************* Local Routine Prototypes ********************* ********************************************************************/ -int CCTK_RegexMatch(const char *string, - const char *pattern, +int CCTK_RegexMatch(const char *string, + const char *pattern, const int nmatch, - regmatch_t *pmatch); + regmatch_t *pmatch); +int CCTK_SetStringInRegexList(char **data, const char *value, + int n_elements, ...); +void CCTK_PrintString(const char *data); int CCTK_FCALL CCTK_FNAME(CCTK_Equals) (const char **arg1,ONE_FORTSTRING_ARG); void CCTK_FCALL CCTK_FNAME(CCTK_PrintString) - (char **arg1); + (const char **arg1); void CCTK_FCALL CCTK_FNAME(CCTK_FortranString) - (CCTK_INT *nchar,char **cstring,ONE_FORTSTRING_ARG); + (CCTK_INT *nchar,const char **cstring,ONE_FORTSTRING_ARG); /******************************************************************** ********************* Other Routine Prototypes ********************* @@ -75,29 +78,29 @@ void CCTK_FCALL CCTK_FNAME(CCTK_FortranString) @routine CCTK_Equals @date Wed Jan 20 10:25:30 1999 @author Tom Goodale - @desc + @desc Does a case independent comparison of strings. Returns true if they are equal. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var string1 @vdesc First string in comparison @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var string2 @vdesc Second string in comparison @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -118,14 +121,14 @@ int CCTK_Equals(const char *string1, const char *string2) if (!string1 && string2) { CCTK_VWarn(0,__LINE__,__FILE__,"Cactus", - "CCTK_Equals: First string null (2nd is %s)",string2); + "CCTK_Equals: First string null (2nd is %s)",string2); } else if (string1 && !string2) - { + { CCTK_VWarn(0,__LINE__,__FILE__,"Cactus", "CCTK_Equals: Second string null (1st is %s)",string1); - } + } else { CCTK_Warn(0,__LINE__,__FILE__,"Cactus", @@ -148,7 +151,7 @@ int CCTK_FCALL CCTK_FNAME(CCTK_Equals) int retval; ONE_FORTSTRING_CREATE(arg2) retval = CCTK_Equals(*arg1,arg2); - free(arg2); + free(arg2); return(retval); } @@ -156,29 +159,29 @@ int CCTK_FCALL CCTK_FNAME(CCTK_Equals) /*@@ @routine Util_NullTerminateString @author Paul Walker - @desc - Null terminates a fortran string. Need to free the + @desc + Null terminates a fortran string. Need to free the string it returns @enddesc - @calls - @calledby - @history - - @endhistory + @calls + @calledby + @history + + @endhistory @var instring @vdesc String to null terminate @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var len @vdesc Length of string to be null terminated @vtype unsigned int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype char * @returndesc @@ -186,7 +189,7 @@ int CCTK_FCALL CCTK_FNAME(CCTK_Equals) @endreturndesc @@*/ -char *Util_NullTerminateString(const char *instring, unsigned int len) +char *Util_NullTerminateString(const char *instring, unsigned int len) { char *outstring; unsigned int i; @@ -214,7 +217,7 @@ char *Util_NullTerminateString(const char *instring, unsigned int len) if (outstring) { - for (i=0;i<position;i++) + for (i=0;i<position;i++) { outstring[i] = instring[i]; } @@ -228,35 +231,35 @@ char *Util_NullTerminateString(const char *instring, unsigned int len) @routine Util_InList @date Wed Jan 20 10:31:25 1999 @author Tom Goodale - @desc - Determines if a string is in a list of other strings. - @enddesc - @calls - @calledby - @history - - @endhistory + @desc + Determines if a string is in a list of other strings. + @enddesc + @calls + @calledby + @history + + @endhistory @var string1 @vdesc The string to search for @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc List of strings to search. @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -276,9 +279,9 @@ int Util_InList(const char *string1, int n_elements, ...) /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(CCTK_Equals(string1, element)) @@ -287,41 +290,41 @@ int Util_InList(const char *string1, int n_elements, ...) break; } } - + va_end(ap); return retval; } - + /*@@ @routine Util_IntInRange @date Wed Jan 20 10:32:36 1999 @author Tom Goodale - @desc + @desc This routine will determine if an integer is in the range specified in the range string. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var inval @vdesc The value to check @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var range @vdesc The range to look in @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -332,14 +335,13 @@ int Util_InList(const char *string1, int n_elements, ...) int Util_IntInRange(int inval, const char *range) { int retval; - int matched; regmatch_t pmatch[6]; int start_closed, end_closed; int start, end, step; retval = 0; - /* Valid ranges are of the form start:end:step + /* Valid ranges are of the form start:end:step * possibly preceeded by a [ or ( and ended by a ) or ] to indicate * closure. The end and step are optional. A * can also be used * to indicate any value. @@ -353,9 +355,9 @@ int Util_IntInRange(int inval, const char *range) * 5 - ) or ] */ - if((matched = CCTK_RegexMatch(range, - "(\\[|\\()?([^]):]*):?([^]):]*)?:?([^]):]*)?(\\]|\\))?", - 6, pmatch)) != 0) + if(CCTK_RegexMatch(range, + "(\\[|\\()?([^]):]*):?([^]):]*)?:?([^]):]*)?(\\]|\\))?", + 6, pmatch) != 0) { /* First work out if the range is closed at the lower end. */ if(pmatch[1].rm_so != -1) @@ -363,7 +365,7 @@ int Util_IntInRange(int inval, const char *range) switch(range[pmatch[1].rm_so]) { case '(' : start_closed = 0; break; - case '[' : + case '[' : default : start_closed = 1; } } @@ -373,7 +375,7 @@ int Util_IntInRange(int inval, const char *range) } /* Next find the start of the range */ - if(pmatch[2].rm_so != -1 && + if(pmatch[2].rm_so != -1 && (pmatch[2].rm_eo-pmatch[2].rm_so > 0) && range[pmatch[2].rm_so] != '*') { @@ -386,7 +388,7 @@ int Util_IntInRange(int inval, const char *range) } /* Next find the end of the range */ - if(pmatch[3].rm_so != -1 && + if(pmatch[3].rm_so != -1 && (pmatch[3].rm_eo-pmatch[3].rm_so > 0) && range[pmatch[3].rm_so] != '*') { @@ -397,7 +399,7 @@ int Util_IntInRange(int inval, const char *range) /* No end range given, so use the largest integer available. */ end = INT_MAX; } - + /* Next find the step of the range */ if(pmatch[4].rm_so != -1 && (pmatch[4].rm_eo-pmatch[4].rm_so > 0)) { @@ -408,14 +410,14 @@ int Util_IntInRange(int inval, const char *range) /* No step given, so default to 1. */ step = 1; } - + /* Finally work out if the range is closed at the upper end. */ if(pmatch[5].rm_so != -1) { switch(range[pmatch[5].rm_so]) { case ')' : end_closed = 0; break; - case ']' : + case ']' : default : end_closed = 1; } } @@ -423,20 +425,20 @@ int Util_IntInRange(int inval, const char *range) { end_closed = 1; } - - if(inval >= start + !start_closed && + + if(inval >= start + !start_closed && inval <= end - !end_closed && ! ((inval-start) % step)) { retval = 1; } - } + } else { CCTK_Warn(1, __LINE__, __FILE__, "Flesh", "Invalid range"); } - + return retval; } @@ -444,29 +446,29 @@ int Util_IntInRange(int inval, const char *range) @routine Util_DoubleInRange @date Wed Jan 20 10:32:36 1999 @author Tom Goodale - @desc + @desc This routine will determine if a double is in the range specified in the range string. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var inval @vdesc The value to check @vtype double @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var range @vdesc The range to look in @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -477,17 +479,16 @@ int Util_IntInRange(int inval, const char *range) int Util_DoubleInRange(double inval, const char *range) { int retval; - int matched; regmatch_t pmatch[6]; - int start_closed, end_closed; double start, end; #if 0 + int start_closed, end_closed; double step; #endif retval = 0; - /* Valid ranges are of the form start:end:step + /* Valid ranges are of the form start:end:step * possibly preceeded by a [ or ( and ended by a ) or ] to indicate * closure. The end and step are optional. A * can also be used * to indicate any value. @@ -501,17 +502,18 @@ int Util_DoubleInRange(double inval, const char *range) * 5 - ) or ] */ - if((matched = CCTK_RegexMatch(range, - "(\\[|\\()?([^]):]*):?([^]):]*)?:?([^]):]*)?(\\]|\\))?", - 6, pmatch)) != 0) + if(CCTK_RegexMatch(range, + "(\\[|\\()?([^]):]*):?([^]):]*)?:?([^]):]*)?(\\]|\\))?", + 6, pmatch) != 0) { +#if 0 /* First work out if the range is closed at the lower end. */ if(pmatch[1].rm_so != -1) { switch(range[pmatch[1].rm_so]) { case '(' : start_closed = 0; break; - case '[' : + case '[' : default : start_closed = 1; } } @@ -519,9 +521,10 @@ int Util_DoubleInRange(double inval, const char *range) { start_closed = 1; } +#endif /* Next find the start of the range */ - if(pmatch[2].rm_so != -1 && + if(pmatch[2].rm_so != -1 && (pmatch[2].rm_eo-pmatch[2].rm_so > 0) && range[pmatch[2].rm_so] != '*') { @@ -534,7 +537,7 @@ int Util_DoubleInRange(double inval, const char *range) } /* Next find the end of the range */ - if(pmatch[3].rm_so != -1 && + if(pmatch[3].rm_so != -1 && (pmatch[3].rm_eo-pmatch[3].rm_so > 0) && range[pmatch[3].rm_so] != '*') { @@ -546,7 +549,7 @@ int Util_DoubleInRange(double inval, const char *range) end = FLT_MAX; } -#if 0 +#if 0 /* Next find the step of the range */ if(pmatch[4].rm_so != -1 && (pmatch[4].rm_eo-pmatch[4].rm_so > 0)) { @@ -557,15 +560,14 @@ int Util_DoubleInRange(double inval, const char *range) /* No step given, so default to 1. */ step = 1; } -#endif - + /* Finally work out if the range is closed at the upper end. */ if(pmatch[5].rm_so != -1) { switch(range[pmatch[5].rm_so]) { case ')' : end_closed = 0; break; - case ']' : + case ']' : default : end_closed = 1; } } @@ -573,20 +575,21 @@ int Util_DoubleInRange(double inval, const char *range) { end_closed = 1; } - - if(inval >= start /*+ !start_closed */&& +#endif + + if(inval >= start /*+ !start_closed */&& inval <= end /* - !end_closed */ /* && ! ((inval-start) % step)*/) { retval = 1; } - } + } else { CCTK_Warn(1, __LINE__, __FILE__, "Flesh", "Invalid range"); } - + return retval; } @@ -595,36 +598,36 @@ int Util_DoubleInRange(double inval, const char *range) @routine Util_IntInRangeList @date Wed Jan 20 10:36:31 1999 @author Tom Goodale - @desc + @desc Determines if an integer is in a given list of ranges. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var inval @vdesc The value to check @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc The list of ranges to look in @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -644,9 +647,9 @@ int Util_IntInRangeList(int inval, int n_elements, ...) /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(Util_IntInRange(inval, element)) @@ -655,7 +658,7 @@ int Util_IntInRangeList(int inval, int n_elements, ...) break; } } - + va_end(ap); return retval; @@ -667,36 +670,36 @@ int Util_IntInRangeList(int inval, int n_elements, ...) @routine Util_DoubleInRangeList @date Wed Jan 20 10:36:31 1999 @author Tom Goodale - @desc + @desc Determines if a double is in a given list of ranges. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var inval @vdesc The value to check @vtype double @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc The list of ranges to look in @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -716,9 +719,9 @@ int Util_DoubleInRangeList(double inval, int n_elements, ...) /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(Util_DoubleInRange(inval, element)) @@ -727,7 +730,7 @@ int Util_DoubleInRangeList(double inval, int n_elements, ...) break; } } - + va_end(ap); return retval; @@ -739,44 +742,44 @@ int Util_DoubleInRangeList(double inval, int n_elements, ...) @routine CCTK_SetDoubleInRangeList @date Thu Jan 21 09:41:21 1999 @author Tom Goodale - @desc + @desc Sets the value of a double if the desired value is in one of the specified ranges. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc Pointer to the value to set @vtype CCTK_REAL * @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var value @vdesc The value to check @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc The list of ranges to look in @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -784,7 +787,7 @@ int Util_DoubleInRangeList(double inval, int n_elements, ...) 0 - not in range in list @endreturndesc @@*/ -int CCTK_SetDoubleInRangeList(CCTK_REAL *data, const char *value, +int CCTK_SetDoubleInRangeList(CCTK_REAL *data, const char *value, int n_elements, ...) { int retval; @@ -803,25 +806,25 @@ int CCTK_SetDoubleInRangeList(CCTK_REAL *data, const char *value, * Allow various formats. */ strncpy(temp, value, 1000); - - for (p=0;p<strlen(temp);p++) + + for (p=0;p<strlen(temp);p++) { - if (temp[p] == 'E' || - temp[p] == 'd' || - temp[p] == 'D') + if (temp[p] == 'E' || + temp[p] == 'd' || + temp[p] == 'D') { temp[p] = 'e'; break; } } - + inval = atof(temp); /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(Util_DoubleInRange(inval, element)) @@ -831,7 +834,7 @@ int CCTK_SetDoubleInRangeList(CCTK_REAL *data, const char *value, break; } } - + va_end(ap); return retval; @@ -841,44 +844,44 @@ int CCTK_SetDoubleInRangeList(CCTK_REAL *data, const char *value, @routine CCTK_SetIntInRangeList @date Thu Jan 21 10:27:26 1999 @author Tom Goodale - @desc + @desc Sets the value of an integer if the desired value is in one of - the specified ranges. - @enddesc - @calls - @calledby - @history - - @endhistory + the specified ranges. + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc Pointer to the value to set @vtype CCTK_INT * @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var value @vdesc The value to check @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc The list of ranges to look in @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -886,7 +889,7 @@ int CCTK_SetDoubleInRangeList(CCTK_REAL *data, const char *value, 0 - not in range in list @endreturndesc @@*/ -int CCTK_SetIntInRangeList(CCTK_INT *data, const char *value, +int CCTK_SetIntInRangeList(CCTK_INT *data, const char *value, int n_elements, ...) { int retval; @@ -900,14 +903,14 @@ int CCTK_SetIntInRangeList(CCTK_INT *data, const char *value, retval = 1; /* Convert the value string to an int.*/ - + inval = atoi(value); /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(Util_IntInRange(inval, element)) @@ -917,7 +920,7 @@ int CCTK_SetIntInRangeList(CCTK_INT *data, const char *value, break; } } - + va_end(ap); return retval; @@ -927,44 +930,44 @@ int CCTK_SetIntInRangeList(CCTK_INT *data, const char *value, @routine CCTK_SetKeywordInRangeList @date Thu Jan 21 10:28:00 1999 @author Tom Goodale - @desc + @desc Sets the value of a keyword if the desired value is in one of the specified ranges. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc Pointer to the value to set @vtype char ** @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var value @vdesc The value to check @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc The list of ranges to look in @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -972,7 +975,7 @@ int CCTK_SetIntInRangeList(CCTK_INT *data, const char *value, 0 - not in range in list @endreturndesc @@*/ -int CCTK_SetKeywordInRangeList(char **data, const char *value, +int CCTK_SetKeywordInRangeList(char **data, const char *value, int n_elements, ...) { int retval; @@ -985,9 +988,9 @@ int CCTK_SetKeywordInRangeList(char **data, const char *value, /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(CCTK_Equals(value, element)) @@ -1006,7 +1009,7 @@ int CCTK_SetKeywordInRangeList(char **data, const char *value, break; } } - + va_end(ap); return retval; @@ -1017,44 +1020,44 @@ int CCTK_SetKeywordInRangeList(char **data, const char *value, @routine CCTK_SetStringInRegexList @date Fri Apr 16 08:37:02 1999 @author Tom Goodale - @desc + @desc Sets the value of a string if it matches any of the given regular expressions. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc Pointer to the value to set @vtype char ** @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var value @vdesc The value to check @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var n_elements @vdesc The number of elements in the list @vtype int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ... @vdesc The list of ranges to look in @vtype multiple const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -1062,7 +1065,7 @@ int CCTK_SetKeywordInRangeList(char **data, const char *value, 0 - not in range in list @endreturndesc @@*/ -int CCTK_SetStringInRegexList(char **data, const char *value, +int CCTK_SetStringInRegexList(char **data, const char *value, int n_elements, ...) { int retval; @@ -1075,9 +1078,9 @@ int CCTK_SetStringInRegexList(char **data, const char *value, /* Walk through the element list. */ va_start(ap, n_elements); - + for(arg = 0; arg < n_elements; arg++) - { + { element = va_arg(ap, char *); if(CCTK_RegexMatch(value, element, 0, NULL)) @@ -1086,7 +1089,7 @@ int CCTK_SetStringInRegexList(char **data, const char *value, break; } } - + va_end(ap); return retval; @@ -1096,28 +1099,28 @@ int CCTK_SetStringInRegexList(char **data, const char *value, @routine CCTK_SetString @date Thu Jan 21 10:28:27 1999 @author Tom Goodale - @desc + @desc Sets the value of a string - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc Pointer to the value to set @vtype char ** @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var value @vdesc The value to check @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -1151,29 +1154,29 @@ int CCTK_SetString(char **data, const char *value) @routine CCTK_SetBoolean @date Thu Jan 21 10:35:11 1999 @author Tom Goodale - @desc + @desc Sets the value of a boolean to true or false according to the value of the value string. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc Pointer to the value to set @vtype CCTK_INT * @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var value @vdesc The value to check @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -1208,46 +1211,46 @@ int CCTK_SetBoolean(CCTK_INT *data, const char *value) @routine CCTK_RegexMatch @date Fri Apr 16 08:40:14 1999 @author Tom Goodale - @desc + @desc Perform a regular expression match of string against pattern. Also returns the specified number of matched substrings as give by regexec. - This is a modified form of the example routine given in the SGI + This is a modified form of the example routine given in the SGI man page for regcomp. - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var string @vdesc String to match against @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var pattern @vdesc Regex pattern @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var nmatch @vdesc The size of the pmatch array @vtype const int @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var pmatch @vdesc Array in which to place the matches @vtype regmatch_t @vio out - @vcomment - - @endvar + @vcomment + + @endvar @returntype int @returndesc @@ -1256,20 +1259,20 @@ int CCTK_SetBoolean(CCTK_INT *data, const char *value) @endreturndesc @@*/ -int CCTK_RegexMatch(const char *string, - const char *pattern, +int CCTK_RegexMatch(const char *string, + const char *pattern, const int nmatch, - regmatch_t *pmatch) + regmatch_t *pmatch) { int retval; int status; regex_t re; - - if (regcomp(&re, pattern, REG_EXTENDED) == 0) + + if (regcomp(&re, pattern, REG_EXTENDED) == 0) { status = regexec(&re, string, (size_t)nmatch, pmatch, 0); regfree(&re); - if (status != 0) + if (status != 0) { retval = 0; /* report error */ } @@ -1292,28 +1295,28 @@ int CCTK_RegexMatch(const char *string, @author Gabrielle Allen @desc Prints the value of a string (this is for fortran) - @enddesc - @calls - @calledby - @history - - @endhistory + @enddesc + @calls + @calledby + @history + + @endhistory @var data @vdesc string to print - @vtype char * + @vtype const char * @vio in - @vcomment - - @endvar + @vcomment + + @endvar @@*/ -void CCTK_PrintString(char *data) +void CCTK_PrintString(const char *data) { printf("%s\n",data); } void CCTK_FCALL CCTK_FNAME(CCTK_PrintString) - (char **arg1) + (const char **arg1) { CCTK_PrintString(*arg1); } @@ -1326,43 +1329,43 @@ void CCTK_FCALL CCTK_FNAME(CCTK_PrintString) @desc Change a C string into a Fortran string @enddesc - @calls - @calledby - @history - - @endhistory + @calls + @calledby + @history + + @endhistory @var nchar @vdesc Number of characters in fortran string @vtype CCTK_INT * @vio out - @vcomment - - @endvar + @vcomment + + @endvar @var cstring @vdesc C string to be converted @vtype char ** @vio in - @vcomment - - @endvar + @vcomment + + @endvar @var ONE_FORTSTRING_ARG @vdesc Fortran string @vtype FORTRAN string macro @vio out - @vcomment - - @endvar + @vcomment + + @endvar @@*/ - - + + void CCTK_FCALL CCTK_FNAME(CCTK_FortranString) - (CCTK_INT *nchar,char **cstring,ONE_FORTSTRING_ARG) + (CCTK_INT *nchar,const char **cstring,ONE_FORTSTRING_ARG) { unsigned int i; ONE_FORTSTRING_CREATE(fstring) ONE_FORTSTRING_PTR(fptr) - if (strlen(*cstring) > cctk_strlen1) + if (strlen(*cstring) > cctk_strlen1) { CCTK_VWarn (1,__LINE__,__FILE__,"Cactus", "CCTK_FortranString: Cannot output %s to char* of length %d", @@ -1370,7 +1373,7 @@ void CCTK_FCALL CCTK_FNAME(CCTK_FortranString) *nchar = -1; } - for (i=0;i<strlen(*cstring);i++) + for (i=0;i<strlen(*cstring);i++) { fptr[i] = (*cstring)[i]; } @@ -1386,9 +1389,3 @@ void CCTK_FCALL CCTK_FNAME(CCTK_FortranString) free(fstring); } - - -/******************************************************************** - ********************* Local Routines ************************* - ********************************************************************/ - |