summaryrefslogtreecommitdiff
path: root/src/main/ProcessParameterDatabase.c
diff options
context:
space:
mode:
authorallen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac>2001-12-04 10:53:03 +0000
committerallen <allen@17b73243-c579-4c4c-a9d2-2d5706c11dac>2001-12-04 10:53:03 +0000
commitb06dbf62ce5079af010dcbd42a1e73101079e746 (patch)
tree82d2df518abe9515a60dabe49e656eb9d051e5ae /src/main/ProcessParameterDatabase.c
parent8d532a917cedb5e0af9f623c273265939fbda01d (diff)
Fixes for Cactus/833,828,825
Parsing errors from Parameter file are fatal errors Report all parameter errors before terminating simulation (actually this isn't quite true, it will report all parsing errors and then stop if necessary and then report all parameter setting errors and stop if necessary) In parsing the parameter file omitting the "=" and ommiting the "= value" are fatal errors. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2478 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/main/ProcessParameterDatabase.c')
-rw-r--r--src/main/ProcessParameterDatabase.c27
1 files changed, 26 insertions, 1 deletions
diff --git a/src/main/ProcessParameterDatabase.c b/src/main/ProcessParameterDatabase.c
index 20737769..195e49ff 100644
--- a/src/main/ProcessParameterDatabase.c
+++ b/src/main/ProcessParameterDatabase.c
@@ -75,8 +75,11 @@ void CCTKi_SetParameterSetMask(int mask);
int CCTKi_ProcessParameterDatabase(tFleshConfig *ConfigData)
{
int retval;
+ int parse_errors;
FILE *parameter_file;
+ parse_errors = 0;
+
CCTKi_SetParameterSetMask(PARAMETER_RECOVERY_PRE);
if(!strcmp(ConfigData->parameter_file_name,"-"))
@@ -90,12 +93,34 @@ int CCTKi_ProcessParameterDatabase(tFleshConfig *ConfigData)
if(parameter_file)
{
- ParseFile(parameter_file, CCTKi_SetParameter, ConfigData);
+ parse_errors = ParseFile(parameter_file, CCTKi_SetParameter, ConfigData);
if(strcmp(ConfigData->parameter_file_name,"-"))
{
fclose(parameter_file);
}
+
+ if (parse_errors)
+ {
+ CCTK_VWarn(0,__LINE__,__FILE__,"Cactus",
+ "CCTKi_SetParameterSetMask: %d parsing errors in "
+ "parameter file",parse_errors);
+ }
+
+ if (CCTKi_NumParameterFileErrors(1))
+ {
+ CCTK_VWarn(1,__LINE__,__FILE__,"Cactus",
+ "CCTKi_SetParameterSetMask: %d level 1 errors in "
+ "parameter file",CCTKi_NumParameterFileErrors(1));
+ }
+
+ if (CCTKi_NumParameterFileErrors(0))
+ {
+ CCTK_VWarn(0,__LINE__,__FILE__,"Cactus",
+ "CCTKi_SetParameterSetMask: %d level 0 errors in "
+ "parameter file",CCTKi_NumParameterFileErrors(0));
+ }
+
retval = 0;
}
else