set icc_minor [format "%d" [string range __ICL 2 [expr {[string length __ICL] -1}]]]
 set icc_update __INTEL_COMPILER_UPDATE
 set compiler_info [join "icc $icc_major $icc_minor $icc_update" -]
+#elif defined(__INTEL_LLVM_COMPILER) && defined(__clang_version__)
+/* Intel Next Gen compiler defines preprocessor __INTEL_LLVM_COMPILER and
+   provides version info in __clang_version__ e.g. value:
+   "12.0.0 (icx 2020.10.0.1113)".  */
+set total_length [string length __clang_version__]
+set version_start_index [string last "(" __clang_version__]
+set version_string [string range __clang_version__ $version_start_index+5 $total_length-2]
+set version_updated_string [string map {. -} $version_string]
+set compiler_info "intel-$version_updated_string"
 #endif
 
 set icc_minor [format "%d" [string range __ICL 2 [expr {[string length __ICL] -1}]]]
 set icc_update __INTEL_COMPILER_UPDATE
 set compiler_info [join "icc $icc_major $icc_minor $icc_update" -]
+#elif defined(__INTEL_LLVM_COMPILER) && defined(__clang_version__)
+/* Intel Next Gen compiler defines preprocessor __INTEL_LLVM_COMPILER and
+   provides version info in __clang_version__ e.g. value:
+   "12.0.0 (icx 2020.10.0.1113)".  */
+set total_length [string length __clang_version__]
+set version_start_index [string last "(" __clang_version__]
+set version_string [string range __clang_version__ $version_start_index+5 $total_length-2]
+set version_updated_string [string map {. -} $version_string]
+set compiler_info "intel-$version_updated_string"
 #endif
 
 proc fortran_main {} {
     if {[test_compiler_info {gcc-4-[012]-*}]
          || [test_compiler_info {gcc-*}]
-         || [test_compiler_info {icc-*}]} {
+         || [test_compiler_info {icc-*}]
+         || [test_compiler_info {intel-*}]} {
        return "MAIN__"
     } elseif {[test_compiler_info {clang-*}]} {
        return "MAIN_"