subroutine get_default_c_compiler(f_compiler, c_compiler)
character(len=*), intent(in) :: f_compiler
character(len=:), allocatable, intent(out) :: c_compiler
integer(compiler_enum) :: id
id = get_compiler_id(f_compiler)
select case(id)
case(id_intel_classic_nix, id_intel_classic_mac, id_intel_classic_windows)
c_compiler = 'icc'
case(id_intel_llvm_nix,id_intel_llvm_windows)
c_compiler = 'icx'
case(id_flang, id_flang_new, id_f18)
c_compiler='clang'
case(id_ibmxl)
c_compiler='xlc'
case(id_lfortran)
c_compiler = 'cc'
case(id_gcc)
c_compiler = 'gcc'
case default
! Fall-back to using Fortran compiler
c_compiler = f_compiler
end select
end subroutine get_default_c_compiler