Compilers Update - 2022

The compilers of most languages have been upgraded. You can find the new versions at List of Compilers | CodeChef

Some points:

  • C++14 and C++17 now use gcc 11.1.0
  • Jave uses HotSpot 17.0.1
  • Python3 uses python 3.9.5
  • PyPy3 uses PyPy 3.6.9
  • Rust uses rust 1.56
  • Go uses go 1.17.2

Please let us know if you face any issues.

7 Likes

The compilers of most languages have been upgraded.

Thanks! These updates are very much welcome.

You can find the new versions at List of Compilers | CodeChef

D D gdc 11.1.0

This doesn’t seem to be accurate. The GDC version on CodeChef is still older than 11.x and it is also still used without any optimization options (while "-O3 -frelease -flto" would be a good choice for GDC11). I have an old topic about it here: GDC compiler settings on codechef

C++14 and C++17 now use gcc 11.1.0

Why version 11.1.0 when 11.3.0 had been released several months ago? The 11.2.0 and 11.3.0 are strictly bugfix updates for the 11.x release branch (while GCC 12.x introduces new features and possibly new bugs). Staying at GCC 11.1.0 means that CodeChef is missing fixes for roughly 300 compiler bugs:

Rust uses rust 1.56

It doesn’t look like the compiler is used in the 2021 edition mode ("--edition=2021" compiler option).

Go uses go 1.17.2

Go version 1.18 introduced generics. Go is not my first choice for competitive programming. But if I were forced to use Go programming language, then I would surely prefer to have generics there.

3 Likes

@admin I have faced this problem many a times now related to Kotlin Compiler version. The version on which the submitted code compiles is “kotlin 1.5.31” as mentioned on list of compilers page but the compiler which is used for compile & run is something around version “kotlin 1.3.x”. Can you please solve this inconsistency as there is a lot of problem with testing the solution.

Sometimes the functions are shown deprecated when “submitting” but works fine with “compile & run” like Array.min() . Or functions are not recognized while “compile & run” but works while “submitting” like Character.digitToInt().

I was looking for a way to communicate this and thought this might be the right place to explain the problem. Can you please affirm that you are looking into this inconsistency.

Thank You in advance
A fellow Chef

1 Like

Good

The version on which the submitted code compiles is “kotlin 1.5.31” as mentioned on list of compilers page but the compiler which is used for compile & run is something around version “kotlin 1.3.x”.

I can confirm this issue. It’s likely affecting many programming languages. For example, this submission in D language is accepted, but fails to compile by the Compile & Run button and in the IDE. It looks like CodeChef has indeed upgraded to GDC 11.1.0 for judging submitted solutions, but still kept the ancient GDC 6.3 for everything else.

1 Like

Thanks for looking into and confirming this issue; Hope @admin shows some attention toward this and fix this issue.

The IDE and Submit should have the same compiler versions now.

Thanks :grin:

Some older problems such as e.g. CodeChef do not have the C++17 option still.

All problems older than 2017 maybe 2018 does not have Kotlin. My main language is Kotlin so I prefer/advice to solve newer problems and focus on logic, no need to code if you understand the logic and your language option is not available.