Merge branch release-2016
authorTeemu Murtola <teemu.murtola@gmail.com>
Mon, 12 Dec 2016 19:39:12 +0000 (21:39 +0200)
committerTeemu Murtola <teemu.murtola@gmail.com>
Mon, 12 Dec 2016 20:36:50 +0000 (22:36 +0200)
Conflicts:
    cmake/gmxVersionInfo.cmake

Add a suppression for Intel compiler warning in generated code in
scanner.cpp.

Change-Id: I3a6310c433a50202fbc76e53570a491bd3d06544

1  2 
CMakeLists.txt
admin/builds/gromacs.py
cmake/gmxVersionInfo.cmake
src/gromacs/CMakeLists.txt
src/gromacs/selection/scanner.cpp
src/gromacs/selection/scanner.l
src/gromacs/selection/scanner_flex.h

diff --cc CMakeLists.txt
Simple merge
Simple merge
index 44ffa8197828e9a36ab568fe663fca59cbcc3a08,700af4ffc3e1885a7f62a72fc4c4013409156f14..e886ff0825c5939310817136906dec0c19ad822a
@@@ -221,12 -227,8 +224,8 @@@ if (NOT SOURCE_IS_SOURCE_DISTRIBUTION A
  endif()
  
  set(REGRESSIONTEST_VERSION "${GMX_VERSION_STRING}")
 -set(REGRESSIONTEST_BRANCH "refs/heads/release-2016")
 -set(REGRESSIONTEST_MD5SUM "366438549270d005fa6def6e56ca0256" CACHE INTERNAL "MD5 sum of the regressiontests tarball")
 +set(REGRESSIONTEST_BRANCH "refs/heads/master")
- # TODO Find some way of ensuring that this is bumped appropriately for
- # each release. It's hard to test because it is only used for
- # REGRESSIONTEST_DOWNLOAD, which doesn't work until that tarball has
- # been placed on the server.
 +set(REGRESSIONTEST_MD5SUM "366438549270d005fa6def6e56ca0256")
  
  math(EXPR GMX_VERSION_NUMERIC
       "${GMX_VERSION_MAJOR}*10000 + ${GMX_VERSION_PATCH}")
index be72d3df3793f6d21eb29cb611ea3ead99c16fdc,a42e624e1d6d6ac7711d909d84f0feaa7a5d0bc2..65f2ac435360c91ea2ccf0d6d497b630ed4d5180
@@@ -167,31 -170,17 +167,22 @@@ check_cxx_compiler_flag(-Wno-unused-par
  if (HAS_NO_UNUSED_PARAMETER)
      set(_scanner_cpp_compiler_flags "${_scanner_cpp_compiler_flags} -Wno-unused-parameter")
  endif()
- check_cxx_compiler_flag(-Wno-deprecated-register HAS_NO_DEPRECATED_REGISTER)
- if (HAS_NO_DEPRECATED_REGISTER)
-     set(_scanner_cpp_compiler_flags "${_scanner_cpp_compiler_flags} -Wno-deprecated-register")
- else()
-     check_cxx_compiler_flag(-Wno-deprecated HAS_NO_DEPRECATED)
-     if (HAS_NO_DEPRECATED)
-         set(_scanner_cpp_compiler_flags "${_scanner_cpp_compiler_flags} -Wno-deprecated")
-     endif()
- endif()
  set_source_files_properties(selection/scanner.cpp PROPERTIES COMPILE_FLAGS "${_scanner_cpp_compiler_flags}")
  
 +gmx_setup_tng_for_libgromacs()
 +
  target_link_libraries(libgromacs
 +                      PRIVATE
                        ${EXTRAE_LIBRARIES}
                        ${GMX_EXTRA_LIBRARIES}
 -                      ${TNG_IO_LIBRARIES}
 +                      ${GMX_COMMON_LIBRARIES}
                        ${FFT_LIBRARIES} ${LINEAR_ALGEBRA_LIBRARIES}
 -                      ${XML_LIBRARIES}
                        ${LMFIT_LIBRARIES_TO_LINK}
                        ${THREAD_LIB} ${GMX_SHARED_LINKER_FLAGS} ${OPENCL_LIBRARIES}
 -                      ${GMX_STDLIB_LIBRARIES})
 +                      ${GMX_STDLIB_LIBRARIES}
 +                      PUBLIC
 +                      ${GMX_PUBLIC_LIBRARIES}
 +                      )
  set_target_properties(libgromacs PROPERTIES
                        OUTPUT_NAME "gromacs${GMX_LIBS_SUFFIX}"
                        SOVERSION ${LIBRARY_SOVERSION_MAJOR}
index 3cdfb93e73b11554cb8984336cb319257c61e377,c16a479a6793abca29797c07e961632832fd5963..0f506f14d4a6481e960c3bdafded2c54fc9fb077
@@@ -556,11 -569,11 +569,16 @@@ static yyconst flex_int16_t yy_chk[151
  // when we have return statements followed by break. Instead, we add breaks
  // manually.
  #define YY_BREAK
++
++#ifdef __INTEL_COMPILER
++// Ignore unused variables in generated code.
++#pragma warning(disable:593)
++#endif
  #define YY_NO_UNISTD_H 1
  
  
  
- #line 564 "scanner.cpp"
 -#line 577 "scanner.cpp"
++#line 582 "scanner.cpp"
  
  #define INITIAL 0
  #define matchof 1
@@@ -783,12 -805,39 +810,39 @@@ extern int _gmx_sel_yylex (yyscan_t yys
   */
  YY_DECL
  {
-       register yy_state_type yy_current_state;
-       register char *yy_cp, *yy_bp;
-       register int yy_act;
+       yy_state_type yy_current_state;
+       char *yy_cp, *yy_bp;
+       int yy_act;
      struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
  
- #line 98 "scanner.l"
+       if ( !yyg->yy_init )
+               {
+               yyg->yy_init = 1;
+ #ifdef YY_USER_INIT
+               YY_USER_INIT;
+ #endif
+               if ( ! yyg->yy_start )
+                       yyg->yy_start = 1;      /* first start state */
+               if ( ! yyin )
+                       yyin = stdin;
+               if ( ! yyout )
+                       yyout = stdout;
+               if ( ! YY_CURRENT_BUFFER ) {
+                       _gmx_sel_yyensure_buffer_stack (yyscanner);
+                       YY_CURRENT_BUFFER_LVALUE =
+                               _gmx_sel_yy_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
+               }
+               _gmx_sel_yy_load_buffer_state(yyscanner );
+               }
+       {
 -#line 99 "scanner.l"
++#line 104 "scanner.l"
  
  
  
      }
  
  
- #line 826 "scanner.cpp"
-       if ( !yyg->yy_init )
-               {
-               yyg->yy_init = 1;
- #ifdef YY_USER_INIT
-               YY_USER_INIT;
- #endif
-               if ( ! yyg->yy_start )
-                       yyg->yy_start = 1;      /* first start state */
-               if ( ! yyin )
-                       yyin = stdin;
-               if ( ! yyout )
-                       yyout = stdout;
 -#line 875 "scanner.cpp"
++#line 880 "scanner.cpp"
  
-               if ( ! YY_CURRENT_BUFFER ) {
-                       _gmx_sel_yyensure_buffer_stack (yyscanner);
-                       YY_CURRENT_BUFFER_LVALUE =
-                               _gmx_sel_yy_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
-               }
-               _gmx_sel_yy_load_buffer_state(yyscanner );
-               }
-       while ( 1 )             /* loops until end-of-file is reached */
+       while ( /*CONSTCOND*/1 )                /* loops until end-of-file is reached */
                {
                yy_cp = yyg->yy_c_buf_p;
  
@@@ -903,34 -926,34 +931,34 @@@ do_action:      /* This label is used only t
  
  case 1:
  YY_RULE_SETUP
- #line 131 "scanner.l"
 -#line 132 "scanner.l"
++#line 137 "scanner.l"
  break;
        YY_BREAK
  case 2:
  YY_RULE_SETUP
- #line 132 "scanner.l"
 -#line 133 "scanner.l"
++#line 138 "scanner.l"
  { yylval->i   = strtol(yytext, NULL, 10);    ADD_TOKEN; return TOK_INT; }
        YY_BREAK
  case 3:
  YY_RULE_SETUP
- #line 133 "scanner.l"
 -#line 134 "scanner.l"
++#line 139 "scanner.l"
  { yylval->r   = strtod(yytext, NULL);        ADD_TOKEN; return TOK_REAL; }
        YY_BREAK
  case 4:
  YY_RULE_SETUP
- #line 134 "scanner.l"
 -#line 135 "scanner.l"
++#line 140 "scanner.l"
  { yylval->str = gmx_strndup(yytext+1, yyleng-2); ADD_TOKEN; return STR;  }
        YY_BREAK
  case 5:
  /* rule 5 can match eol */
  YY_RULE_SETUP
- #line 136 "scanner.l"
 -#line 137 "scanner.l"
++#line 142 "scanner.l"
  { _gmx_sel_lexer_add_token(yylloc, " ", 1, state); break; }
        YY_BREAK
  case 6:
  /* rule 6 can match eol */
  YY_RULE_SETUP
- #line 137 "scanner.l"
 -#line 138 "scanner.l"
++#line 143 "scanner.l"
  {
                      if (yytext[0] == ';' || state->statusWriter != NULL)
                      {
                  }
        YY_BREAK
  case YY_STATE_EOF(cmdstart):
- #line 151 "scanner.l"
 -#line 152 "scanner.l"
++#line 157 "scanner.l"
  { state->bCmdStart = true; yyterminate(); }
        YY_BREAK
  case YY_STATE_EOF(INITIAL):
  case YY_STATE_EOF(matchof):
  case YY_STATE_EOF(matchbool):
- #line 152 "scanner.l"
 -#line 153 "scanner.l"
++#line 158 "scanner.l"
  { state->bCmdStart = true; return CMD_SEP; }
        YY_BREAK
  
  case 7:
  YY_RULE_SETUP
- #line 155 "scanner.l"
 -#line 156 "scanner.l"
++#line 161 "scanner.l"
  { ADD_TOKEN; yylval->i = 1; return TOK_INT; }
        YY_BREAK
  case 8:
  YY_RULE_SETUP
- #line 156 "scanner.l"
 -#line 157 "scanner.l"
++#line 162 "scanner.l"
  { ADD_TOKEN; yylval->i = 0; return TOK_INT; }
        YY_BREAK
  
  case 9:
  YY_RULE_SETUP
- #line 158 "scanner.l"
 -#line 159 "scanner.l"
++#line 164 "scanner.l"
  { ADD_TOKEN; return GROUP; }
        YY_BREAK
  case 10:
  YY_RULE_SETUP
- #line 159 "scanner.l"
 -#line 160 "scanner.l"
++#line 165 "scanner.l"
  { ADD_TOKEN; return TO; }
        YY_BREAK
  case 11:
  YY_RULE_SETUP
- #line 160 "scanner.l"
 -#line 161 "scanner.l"
++#line 166 "scanner.l"
  { ADD_TOKEN; BEGIN(0); return OF; }
        YY_BREAK
  case 12:
  YY_RULE_SETUP
- #line 161 "scanner.l"
 -#line 162 "scanner.l"
++#line 167 "scanner.l"
  { ADD_TOKEN; return AND; }
        YY_BREAK
  case 13:
  YY_RULE_SETUP
- #line 162 "scanner.l"
 -#line 163 "scanner.l"
++#line 168 "scanner.l"
  { ADD_TOKEN; return OR; }
        YY_BREAK
  case 14:
  YY_RULE_SETUP
- #line 163 "scanner.l"
 -#line 164 "scanner.l"
++#line 169 "scanner.l"
  { ADD_TOKEN; return XOR; }
        YY_BREAK
  case 15:
  YY_RULE_SETUP
- #line 164 "scanner.l"
 -#line 165 "scanner.l"
++#line 170 "scanner.l"
  { ADD_TOKEN; return NOT; }
        YY_BREAK
  case 16:
  YY_RULE_SETUP
- #line 165 "scanner.l"
 -#line 166 "scanner.l"
++#line 171 "scanner.l"
  { yylval->str = gmx_strndup(yytext, yyleng); ADD_TOKEN; return CMP_OP; }
        YY_BREAK
  case 17:
  YY_RULE_SETUP
- #line 167 "scanner.l"
 -#line 168 "scanner.l"
++#line 173 "scanner.l"
  { return _gmx_sel_lexer_process_identifier(yylval, yylloc, yytext, yyleng, state); }
        YY_BREAK
  case 18:
  /* rule 18 can match eol */
  YY_RULE_SETUP
- #line 169 "scanner.l"
 -#line 170 "scanner.l"
++#line 175 "scanner.l"
  { _gmx_sel_lexer_add_token(yylloc, " ", 1, state); break; }
        YY_BREAK
  case 19:
  YY_RULE_SETUP
- #line 170 "scanner.l"
 -#line 171 "scanner.l"
++#line 176 "scanner.l"
  { yylval->str = gmx_strndup(yytext, yyleng); ADD_TOKEN; return STR; }
        YY_BREAK
  case 20:
  YY_RULE_SETUP
- #line 171 "scanner.l"
 -#line 172 "scanner.l"
++#line 177 "scanner.l"
  { ADD_TOKEN; return yytext[0]; }
        YY_BREAK
  case 21:
  YY_RULE_SETUP
- #line 172 "scanner.l"
 -#line 173 "scanner.l"
++#line 178 "scanner.l"
  YY_FATAL_ERROR( "flex scanner jammed" );
        YY_BREAK
- #line 1037 "scanner.cpp"
 -#line 1060 "scanner.cpp"
++#line 1065 "scanner.cpp"
  
        case YY_END_OF_BUFFER:
                {
@@@ -2184,4 -2224,4 +2229,4 @@@ void _gmx_sel_yyfree (void * ptr , yysc
  
  #define YYTABLES_NAME "yytables"
  
- #line 172 "scanner.l"
 -#line 173 "scanner.l"
++#line 178 "scanner.l"
index d2d2fd97ecbd8bc7edcfd52df34ceeaf32a89d0d,2c03a33e4278e4bbb7956e6d5524ffabd047f823..105250f2d4711ca117109cb66f6894baff99c0db
  // when we have return statements followed by break. Instead, we add breaks
  // manually.
  #define YY_BREAK
++
++#ifdef __INTEL_COMPILER
++// Ignore unused variables in generated code.
++#pragma warning(disable:593)
++#endif
  %}
  
  INTEGER    [[:digit:]]+
index abad91858e7dc5f935ff2528ff63dd32b2487038,0e23931895812e50d6d941e92514385b5f4a781b..14d3030508e30446a5df94834a9bda7f9531da50
@@@ -344,8 -357,8 +357,8 @@@ extern int _gmx_sel_yylex (yyscan_t yys
  #undef YY_DECL
  #endif
  
- #line 172 "scanner.l"
 -#line 173 "scanner.l"
++#line 178 "scanner.l"
  
- #line 350 "scanner_flex.h"
+ #line 363 "scanner_flex.h"
  #undef _gmx_sel_yyIN_HEADER
  #endif /* _gmx_sel_yyHEADER_H */