[Rose-commits] r217 - in trunk: . ROSE_ResearchPapers docs/Rose
src/ROSETTA/Grammar src/ROSETTA/src src/frontend/CxxFrontend
src/frontend/SageIII src/frontend/SageIII/sageInterface
src/util/commandlineProcessing
liaoch at osp5.lbl.gov
liaoch at osp5.lbl.gov
Sat Jan 24 13:03:43 PST 2009
Author: liaoch
Date: 2009-01-24 13:03:42 -0800 (Sat, 24 Jan 2009)
New Revision: 217
Added:
trunk/ROSE_ResearchPapers/CompassInitialPaper.pdf
trunk/ROSE_ResearchPapers/ParallelProgramAnalysis.pdf
trunk/ROSE_ResearchPapers/SignatureVisualizationOfBinaries.pdf
trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-apple-darwin-b199325a06e48e67acffdbae869b742e.tar.gz
trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
trunk/src/frontend/CxxFrontend/roseBinaryEDG-x86_64-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
Removed:
trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-apple-darwin-4ecac736504adead307fcdd2d7551376.tar.gz
trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-pc-linux-gnu-4ecac736504adead307fcdd2d7551376.tar.gz
trunk/src/frontend/CxxFrontend/roseBinaryEDG-x86_64-pc-linux-gnu-4ecac736504adead307fcdd2d7551376.tar.gz
Modified:
trunk/configure.in
trunk/docs/Rose/roseHelpOutput.txt
trunk/src/ROSETTA/Grammar/Support.code
trunk/src/ROSETTA/src/support.C
trunk/src/frontend/CxxFrontend/Makefile.am
trunk/src/frontend/SageIII/sageInterface/sageBuilder.C
trunk/src/frontend/SageIII/sageSupport.C
trunk/src/util/commandlineProcessing/commandline_processing.C
trunk/src/util/commandlineProcessing/commandline_processing.h
Log:
Load rose-0.9.4a-4107 into trunk.
Added: trunk/ROSE_ResearchPapers/CompassInitialPaper.pdf
===================================================================
(Binary files differ)
Property changes on: trunk/ROSE_ResearchPapers/CompassInitialPaper.pdf
___________________________________________________________________
Name: svn:mime-type
+ application/pdf
Added: trunk/ROSE_ResearchPapers/ParallelProgramAnalysis.pdf
===================================================================
(Binary files differ)
Property changes on: trunk/ROSE_ResearchPapers/ParallelProgramAnalysis.pdf
___________________________________________________________________
Name: svn:mime-type
+ application/pdf
Added: trunk/ROSE_ResearchPapers/SignatureVisualizationOfBinaries.pdf
===================================================================
(Binary files differ)
Property changes on: trunk/ROSE_ResearchPapers/SignatureVisualizationOfBinaries.pdf
___________________________________________________________________
Name: svn:mime-type
+ application/pdf
Modified: trunk/configure.in
===================================================================
--- trunk/configure.in 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/configure.in 2009-01-24 21:03:42 UTC (rev 217)
@@ -796,7 +796,7 @@
AM_CONDITIONAL(BINARY_EDG_TARBALL_ENABLED, [test "x$binary_edg_tarball_enabled" = "xyes"])
-release_binary_compatibility_signature="4ecac736504adead307fcdd2d7551376" # This variable will be substituted in binary-EDG release copies of configure.in
+release_binary_compatibility_signature="b199325a06e48e67acffdbae869b742e" # This variable will be substituted in binary-EDG release copies of configure.in
build_triplet_without_redhat=`${srcdir}/config/cleanConfigGuessOutput "$build"`
expected_binary_edg_dirname="roseBinaryEDG-${build_triplet_without_redhat}-${release_binary_compatibility_signature}"
expected_binary_edg_tarball="${expected_binary_edg_dirname}.tar.gz"
Modified: trunk/docs/Rose/roseHelpOutput.txt
===================================================================
--- trunk/docs/Rose/roseHelpOutput.txt 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/docs/Rose/roseHelpOutput.txt 2009-01-24 21:03:42 UTC (rev 217)
@@ -30,6 +30,8 @@
-rose:Fortran, -rose:F, -rose:f
compile Fortran code, determining version of
Fortran from file suffix)
+ -rose:CoArrayFortran, -rose:CAF, -rose:caf
+ compile Co-Array Fortran code (extension of Fortran 2003)
-rose:Fortran2003, -rose:F2003, -rose:f2003
compile Fortran 2003 code
-rose:Fortran95, -rose:F95, -rose:f95
@@ -56,7 +58,7 @@
phases (in CSV form) is placed for later
processing (using script/graphPerformance)
-rose:exit_after_parser just call the parser (fortran only)
- -rose:skip_syntax_check skip Fortran syntax checking (required for F2003 code
+ -rose:skip_syntax_check skip Fortran syntax checking (required for F2003 and Co-Array Fortran code
when using gfortran versions greater than 4.1)
-rose:skip_rose process command line and call backend directly,
skipping all ROSE-specific processing
Modified: trunk/src/ROSETTA/Grammar/Support.code
===================================================================
--- trunk/src/ROSETTA/Grammar/Support.code 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/ROSETTA/Grammar/Support.code 2009-01-24 21:03:42 UTC (rev 217)
@@ -4425,6 +4425,7 @@
bool get_F90_only (void) const;
bool get_F95_only (void) const;
bool get_F2003_only (void) const;
+ bool get_CoArrayFortran_only (void) const;
bool get_PHP_only(void) const;
@@ -10067,6 +10068,9 @@
p_F95_only = false;
p_F2003_only = false;
+ // DQ (1/23/2009): Added CoArray Fortran support.
+ p_CoArrayFortran_only = false;
+
p_PHP_only = false;
p_requires_C_preprocessor = false;
@@ -10285,8 +10289,11 @@
p_sourceFileUsesFortran77FileExtension = false;
p_sourceFileUsesFortran90FileExtension = false;
p_sourceFileUsesFortran95FileExtension = false;
- p_sourceFileUsesFortran2003FileExtension = false;
+ p_sourceFileUsesFortran2003FileExtension = false;
+ // DQ (1/23/2009): Added support for Co-Array Fortran (file extensions)
+ p_sourceFileUsesCoArrayFortranFileExtension = false;
+
p_sourceFileUsesPHPFileExtension = false;
p_sourceFileUsesBinaryFileExtension = false;
@@ -10655,6 +10662,7 @@
printf (" p_F90_only() = %s \n",(p_F90_only == true) ? "true" : "false");
printf (" p_F95_only() = %s \n",(p_F95_only == true) ? "true" : "false");
printf (" p_F2003_only() = %s \n",(p_F2003_only == true) ? "true" : "false");
+ printf (" p_CoArrayFortran_only() = %s \n",(p_CoArrayFortran_only == true) ? "true" : "false");
printf (" p_PHP_only() = %s \n",(p_PHP_only == true) ? "true" : "false");
printf (" p_requires_C_preprocessor = %s \n",(p_requires_C_preprocessor == true) ? "true" : "false");
@@ -11309,6 +11317,19 @@
}
bool
+SgProject::get_CoArrayFortran_only (void) const
+ {
+ // look at how the files are set
+ bool result = false;
+ for (int i = 0; i < numberOfFiles(); i++)
+ {
+ SgFile & file = get_file(i);
+ result = result || (bool) file.get_CoArrayFortran_only();
+ }
+ return result;
+ }
+
+bool
SgProject::get_PHP_only (void) const
{
// look at how the files are set
Modified: trunk/src/ROSETTA/src/support.C
===================================================================
--- trunk/src/ROSETTA/src/support.C 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/ROSETTA/src/support.C 2009-01-24 21:03:42 UTC (rev 217)
@@ -801,6 +801,12 @@
NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
File.setDataPrototype ( "bool", "F2003_only", "= false",
NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
+
+ // DQ (1/23/2009): Co-Array Fortran (CAF) support
+ File.setDataPrototype ( "bool", "CoArrayFortran_only", "= false",
+ NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
+
+ // PHP support
File.setDataPrototype ( "bool", "PHP_only", "= false",
NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
@@ -1039,6 +1045,8 @@
NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
File.setDataPrototype ( "bool", "sourceFileUsesFortran2003FileExtension", "= false",
NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
+ File.setDataPrototype ( "bool", "sourceFileUsesCoArrayFortranFileExtension", "= false",
+ NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
File.setDataPrototype ( "bool", "sourceFileUsesPHPFileExtension", "= false",
NO_CONSTRUCTOR_PARAMETER, BUILD_FLAG_ACCESS_FUNCTIONS, NO_TRAVERSAL, NO_DELETE);
File.setDataPrototype ( "bool", "sourceFileUsesBinaryFileExtension", "= false",
Modified: trunk/src/frontend/CxxFrontend/Makefile.am
===================================================================
--- trunk/src/frontend/CxxFrontend/Makefile.am 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/frontend/CxxFrontend/Makefile.am 2009-01-24 21:03:42 UTC (rev 217)
@@ -20,4 +20,4 @@
clean-local:
-rm -rf .libs/
-EXTRA_DIST = roseBinaryEDG-i686-apple-darwin-4ecac736504adead307fcdd2d7551376.tar.gz roseBinaryEDG-i686-pc-linux-gnu-4ecac736504adead307fcdd2d7551376.tar.gz roseBinaryEDG-x86_64-pc-linux-gnu-4ecac736504adead307fcdd2d7551376.tar.gz
+EXTRA_DIST = roseBinaryEDG-i686-apple-darwin-b199325a06e48e67acffdbae869b742e.tar.gz roseBinaryEDG-i686-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz roseBinaryEDG-x86_64-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
Deleted: trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-apple-darwin-4ecac736504adead307fcdd2d7551376.tar.gz
===================================================================
(Binary files differ)
Added: trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-apple-darwin-b199325a06e48e67acffdbae869b742e.tar.gz
===================================================================
(Binary files differ)
Property changes on: trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-apple-darwin-b199325a06e48e67acffdbae869b742e.tar.gz
___________________________________________________________________
Name: svn:mime-type
+ application/x-gzip
Deleted: trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-pc-linux-gnu-4ecac736504adead307fcdd2d7551376.tar.gz
===================================================================
(Binary files differ)
Added: trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
===================================================================
(Binary files differ)
Property changes on: trunk/src/frontend/CxxFrontend/roseBinaryEDG-i686-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
___________________________________________________________________
Name: svn:mime-type
+ application/x-gzip
Deleted: trunk/src/frontend/CxxFrontend/roseBinaryEDG-x86_64-pc-linux-gnu-4ecac736504adead307fcdd2d7551376.tar.gz
===================================================================
(Binary files differ)
Added: trunk/src/frontend/CxxFrontend/roseBinaryEDG-x86_64-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
===================================================================
(Binary files differ)
Property changes on: trunk/src/frontend/CxxFrontend/roseBinaryEDG-x86_64-pc-linux-gnu-b199325a06e48e67acffdbae869b742e.tar.gz
___________________________________________________________________
Name: svn:mime-type
+ application/x-gzip
Modified: trunk/src/frontend/SageIII/sageInterface/sageBuilder.C
===================================================================
--- trunk/src/frontend/SageIII/sageInterface/sageBuilder.C 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/frontend/SageIII/sageInterface/sageBuilder.C 2009-01-24 21:03:42 UTC (rev 217)
@@ -114,8 +114,7 @@
// extern int i;
// int i;
SgVariableDeclaration*
-SageBuilder::buildVariableDeclaration \
- (const SgName & name, SgType* type, SgInitializer * varInit, SgScopeStatement* scope)
+SageBuilder::buildVariableDeclaration (const SgName & name, SgType* type, SgInitializer * varInit, SgScopeStatement* scope)
//(const SgName & name, SgType* type, SgInitializer * varInit= NULL, SgScopeStatement* scope = NULL)
{
if (scope == NULL)
@@ -161,8 +160,7 @@
// extern int i;
// int i;
SgVariableDeclaration*
-SageBuilder::buildVariableDeclaration_nfi \
- (const SgName & name, SgType* type, SgInitializer * varInit, SgScopeStatement* scope)
+SageBuilder::buildVariableDeclaration_nfi (const SgName & name, SgType* type, SgInitializer * varInit, SgScopeStatement* scope)
//(const SgName & name, SgType* type, SgInitializer * varInit= NULL, SgScopeStatement* scope = NULL)
{
ROSE_ASSERT (scope != NULL);
@@ -2843,7 +2841,10 @@
nondefdecl->setForward();
if (scope != NULL) {
SgClassSymbol* mysymbol = new SgClassSymbol(nondefdecl);
- ROSE_ASSERT(mysymbol);
+ ROSE_ASSERT(mysymbol != NULL);
+
+ // printf ("In SageBuilder::buildNondefiningClassDeclaration(): for nondefdecl = %p built SgClassSymbol = %p \n",nondefdecl,mysymbol);
+
scope->insert_symbol(name, mysymbol);
nondefdecl->set_scope(scope);
nondefdecl->set_parent(scope);
Modified: trunk/src/frontend/SageIII/sageSupport.C
===================================================================
--- trunk/src/frontend/SageIII/sageSupport.C 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/frontend/SageIII/sageSupport.C 2009-01-24 21:03:42 UTC (rev 217)
@@ -1014,6 +1014,26 @@
}
}
+ if ( CommandlineProcessing::isOption(argv,"-rose:","(caf|CAF|CoArrayFortran)",true) == true )
+ {
+ if ( SgProject::get_verbose() >= 1 )
+ printf ("Co-Array Fortran only mode ON \n");
+ set_CoArrayFortran_only(true);
+
+ // Set this as also being F2003 code since Co-Array Fortran is an extension of Fortran 2003
+ set_F2003_only(true);
+ set_Fortran_only(true);
+
+ // It is requested (by Laksono at Rice) that CoArray Fortran defaults be to skip the syntax checking
+ set_skip_syntax_check(false);
+
+ if (get_sourceFileUsesCoArrayFortranFileExtension() == false)
+ {
+ printf ("Warning, Non Co-Array Fortran source file name specificed with explicit -rose:CoArrayFortran language option! \n");
+ set_CoArrayFortran_only(false);
+ }
+ }
+
// Fixed format v.s. free format option handling (ROSE defaults to fix or free format, depending on the file extension).
// F77 default is fixed format, F90 and later default is free format.
// Fortran source file format options for different compilers(for IBM/XL,Intel,Portland,GNU):
@@ -1637,6 +1657,7 @@
optionCount = sla(argv, "-rose:", "($)", "(f90|F90|Fortran90)",1);
optionCount = sla(argv, "-rose:", "($)", "(f95|F95|Fortran95)",1);
optionCount = sla(argv, "-rose:", "($)", "(f2003|F2003|Fortran2003)",1);
+ optionCount = sla(argv, "-rose:", "($)", "(caf|CAF|CoArrayFortran)",1);
// DQ (8/27/2007):Support for Fortran language output format
@@ -2063,6 +2084,20 @@
file->set_F2003_only(true);
}
+ if (CommandlineProcessing::isCoArrayFortranFileNameSuffix(filenameExtension) == true)
+ {
+ // printf ("Calling file->set_sourceFileUsesFortran2003FileExtension(true) \n");
+ file->set_sourceFileUsesCoArrayFortranFileExtension(true);
+
+ // Use the filename suffix as a default means to set this value
+ file->set_outputFormat(SgFile::e_free_form_output_format);
+ file->set_backendCompileFormat(SgFile::e_free_form_output_format);
+
+ // DQ (1/23/2009): I think that since CAF is an extension of F2003, we want to mark this as F2003 as well.
+ file->set_F2003_only(true);
+ file->set_CoArrayFortran_only(true);
+ }
+
if (CommandlineProcessing::isFortran2008FileNameSuffix(filenameExtension) == true)
{
printf ("Sorry, Fortran 2008 specific support is not yet implemented in ROSE ... \n");
@@ -4214,16 +4249,17 @@
#if 0
this->get_project()->display("SgProject::callFrontEnd()");
display("SgFile::callFrontEnd()");
- printf ("get_C_only() = %s \n",(get_C_only() == true) ? "true" : "false");
- printf ("get_C99_only() = %s \n",(get_C99_only() == true) ? "true" : "false");
- printf ("get_Cxx_only() = %s \n",(get_Cxx_only() == true) ? "true" : "false");
- printf ("get_Fortran_only() = %s \n",(get_Fortran_only() == true) ? "true" : "false");
- printf ("get_F77_only() = %s \n",(get_F77_only() == true) ? "true" : "false");
- printf ("get_F90_only() = %s \n",(get_F90_only() == true) ? "true" : "false");
- printf ("get_F95_only() = %s \n",(get_F95_only() == true) ? "true" : "false");
- printf ("get_F2003_only() = %s \n",(get_F2003_only() == true) ? "true" : "false");
- printf ("get_PHP_only() = %s \n",(get_PHP_only() == true) ? "true" : "false");
- printf ("get_binary_only() = %s \n",(get_binary_only() == true) ? "true" : "false");
+ printf ("get_C_only() = %s \n",(get_C_only() == true) ? "true" : "false");
+ printf ("get_C99_only() = %s \n",(get_C99_only() == true) ? "true" : "false");
+ printf ("get_Cxx_only() = %s \n",(get_Cxx_only() == true) ? "true" : "false");
+ printf ("get_Fortran_only() = %s \n",(get_Fortran_only() == true) ? "true" : "false");
+ printf ("get_F77_only() = %s \n",(get_F77_only() == true) ? "true" : "false");
+ printf ("get_F90_only() = %s \n",(get_F90_only() == true) ? "true" : "false");
+ printf ("get_F95_only() = %s \n",(get_F95_only() == true) ? "true" : "false");
+ printf ("get_F2003_only() = %s \n",(get_F2003_only() == true) ? "true" : "false");
+ printf ("get_CoArrayFortran_only() = %s \n",(get_CoArrayFortran_only() == true) ? "true" : "false");
+ printf ("get_PHP_only() = %s \n",(get_PHP_only() == true) ? "true" : "false");
+ printf ("get_binary_only() = %s \n",(get_binary_only() == true) ? "true" : "false");
// DQ (18/2008): We now explicit mark files that require C preprocessing...
printf ("get_requires_C_preprocessor() = %s \n",(get_requires_C_preprocessor() == true) ? "true" : "false");
@@ -5344,17 +5380,18 @@
#if 0
// display("SgFile::buildCompilerCommandLineOptions()");
- printf ("C compiler = %s \n",BACKEND_C_COMPILER_NAME_WITH_PATH);
- printf ("C++ compiler = %s \n",BACKEND_CXX_COMPILER_NAME_WITH_PATH);
- printf ("Fortran compiler = %s \n",BACKEND_FORTRAN_COMPILER_NAME_WITH_PATH);
- printf ("get_C_only() = %s \n",(get_C_only() == true) ? "true" : "false");
- printf ("get_C99_only() = %s \n",(get_C99_only() == true) ? "true" : "false");
- printf ("get_Cxx_only() = %s \n",(get_Cxx_only() == true) ? "true" : "false");
- printf ("get_Fortran_only() = %s \n",(get_Fortran_only() == true) ? "true" : "false");
- printf ("get_F77_only() = %s \n",(get_F77_only() == true) ? "true" : "false");
- printf ("get_F90_only() = %s \n",(get_F90_only() == true) ? "true" : "false");
- printf ("get_F95_only() = %s \n",(get_F95_only() == true) ? "true" : "false");
- printf ("get_F2003_only() = %s \n",(get_F2003_only() == true) ? "true" : "false");
+ printf ("C compiler = %s \n",BACKEND_C_COMPILER_NAME_WITH_PATH);
+ printf ("C++ compiler = %s \n",BACKEND_CXX_COMPILER_NAME_WITH_PATH);
+ printf ("Fortran compiler = %s \n",BACKEND_FORTRAN_COMPILER_NAME_WITH_PATH);
+ printf ("get_C_only() = %s \n",(get_C_only() == true) ? "true" : "false");
+ printf ("get_C99_only() = %s \n",(get_C99_only() == true) ? "true" : "false");
+ printf ("get_Cxx_only() = %s \n",(get_Cxx_only() == true) ? "true" : "false");
+ printf ("get_Fortran_only() = %s \n",(get_Fortran_only() == true) ? "true" : "false");
+ printf ("get_F77_only() = %s \n",(get_F77_only() == true) ? "true" : "false");
+ printf ("get_F90_only() = %s \n",(get_F90_only() == true) ? "true" : "false");
+ printf ("get_F95_only() = %s \n",(get_F95_only() == true) ? "true" : "false");
+ printf ("get_F2003_only() = %s \n",(get_F2003_only() == true) ? "true" : "false");
+ printf ("get_CoArrayFortran_only() = %s \n",(get_CoArrayFortran_only() == true) ? "true" : "false");
#endif
// DQ (9/10/2006): We now explicitly store the C and C++ compiler names with
@@ -6085,6 +6122,8 @@
" -rose:Fortran, -rose:F, -rose:f\n"
" compile Fortran code, determining version of\n"
" Fortran from file suffix)\n"
+" -rose:CoArrayFortran, -rose:CAF, -rose:caf\n"
+" compile Co-Array Fortran code (extension of Fortran 2003)\n"
" -rose:Fortran2003, -rose:F2003, -rose:f2003\n"
" compile Fortran 2003 code\n"
" -rose:Fortran95, -rose:F95, -rose:f95\n"
@@ -6111,7 +6150,7 @@
" phases (in CSV form) is placed for later\n"
" processing (using script/graphPerformance)\n"
" -rose:exit_after_parser just call the parser (fortran only)\n"
-" -rose:skip_syntax_check skip Fortran syntax checking (required for F2003 code\n"
+" -rose:skip_syntax_check skip Fortran syntax checking (required for F2003 and Co-Array Fortran code\n"
" when using gfortran versions greater than 4.1)\n"
" -rose:skip_rose process command line and call backend directly,\n"
" skipping all ROSE-specific processing\n"
Modified: trunk/src/util/commandlineProcessing/commandline_processing.C
===================================================================
--- trunk/src/util/commandlineProcessing/commandline_processing.C 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/util/commandlineProcessing/commandline_processing.C 2009-01-24 21:03:42 UTC (rev 217)
@@ -663,6 +663,7 @@
|| suffix == "f95"
|| suffix == "f03"
|| suffix == "f08"
+ || suffix == "caf"
// For Fortran, upper case is used to indicate that CPP preprocessing is required.
|| suffix == "F"
|| suffix == "F77"
@@ -670,6 +671,7 @@
|| suffix == "F95"
|| suffix == "F03"
|| suffix == "F08"
+ || suffix == "CAF"
|| suffix == "rmod" //FMZ 5/28/2008: for importing module declaration
)
#else//It is a case insensitive system
@@ -685,6 +687,7 @@
|| suffix == "F95"
|| suffix == "F03"
|| suffix == "F08"
+ || suffix == "CAF"
|| suffix == "rmod" //FMZ 5/28/2008: for importing module declaration
)
#endif
@@ -710,6 +713,7 @@
|| suffix == "f95"
|| suffix == "f03"
|| suffix == "f08"
+ || suffix == "caf"
|| suffix == "rmod" //FMZ (10/15/2008)
)
returnValue = false;
@@ -844,6 +848,29 @@
return returnValue;
}
+bool
+CommandlineProcessing::isCoArrayFortranFileNameSuffix ( const std::string & suffix )
+ {
+ // DQ (1/23/2009): Added Co-Array fortran mode specific suffix checking
+
+ // Returns true only if this is a valid Co-Array Fortran (extension of Fortran 2003) source file name extension (suffix)
+
+ bool returnValue = false;
+
+ // For now define CASE_SENSITIVE_SYSTEM to be true, as we are currently a UNIXish project.
+
+#if(CASE_SENSITIVE_SYSTEM == 1)
+ if ( suffix == "caf" || suffix == "CAF" )
+#else//It is a case insensitive system
+ if ( suffix == "caf" )
+#endif
+ {
+ returnValue = true;
+ }
+
+ return returnValue;
+ }
+
//Liao, 6/6/2008 Support for UPC
bool
CommandlineProcessing::isUPCFileNameSuffix ( const std::string & suffix )
@@ -910,6 +937,7 @@
validSourceFileSuffixes.push_back(".f95");
validSourceFileSuffixes.push_back(".f03");
validSourceFileSuffixes.push_back(".f08");
+ validSourceFileSuffixes.push_back(".caf");
/*
validSourceFileSuffixes.push_back(".CC");
validSourceFileSuffixes.push_back(".CP");
@@ -923,6 +951,7 @@
validSourceFileSuffixes.push_back(".F95");
validSourceFileSuffixes.push_back(".F03");
validSourceFileSuffixes.push_back(".F08");
+ validSourceFileSuffixes.push_back(".CAF");
validSourceFileSuffixes.push_back(".rmod"); //FMZ 5/28/2008
// Liao (6/6/2008) Support for UPC
@@ -948,12 +977,14 @@
validSourceFileSuffixes.push_back(".f95");
validSourceFileSuffixes.push_back(".f03");
validSourceFileSuffixes.push_back(".f08");
+ validSourceFileSuffixes.push_back(".caf");
validSourceFileSuffixes.push_back(".F");
validSourceFileSuffixes.push_back(".F77");
validSourceFileSuffixes.push_back(".F90");
validSourceFileSuffixes.push_back(".F95");
validSourceFileSuffixes.push_back(".F03");
validSourceFileSuffixes.push_back(".F08");
+ validSourceFileSuffixes.push_back(".CAF");
validSourceFileSuffixes.push_back(".rmod"); //FMZ 5/28/2008
validSourceFileSuffixes.push_back(".upc");
validSourceFileSuffixes.push_back(".php");
Modified: trunk/src/util/commandlineProcessing/commandline_processing.h
===================================================================
--- trunk/src/util/commandlineProcessing/commandline_processing.h 2009-01-23 21:04:14 UTC (rev 216)
+++ trunk/src/util/commandlineProcessing/commandline_processing.h 2009-01-24 21:03:42 UTC (rev 217)
@@ -91,6 +91,9 @@
bool isFortran2003FileNameSuffix ( const std::string & suffix );
bool isFortran2008FileNameSuffix ( const std::string & suffix );
+ // DQ (1/23/2009): Added support for Co-Array Fortran file extension.
+ bool isCoArrayFortranFileNameSuffix ( const std::string & suffix );
+
bool isPHPFileNameSuffix ( const std::string & suffix );
void initSourceFileSuffixList();
More information about the Rose-commits
mailing list