Clang or GCC and why I moved to the first one

Revision en3, by arseniyx92, 2021-09-16 20:29:17

As you may know, usually on competitions (especially when you're coding on linux OS) GCC compiler is being used. And GCC is utterly the most popular one, I can't argue on this point. What about Clang — it's commonly known as MacOS compiler because Apple with zealous gruffness built it in the all of their PC products.

So a few weeks ago I switched OS from Ubuntu to Deepin because according to some circumstances I thought that my OS had been crashing) and btw I was right and btw Deepin is much user friendly than Ubuntu. So I changed OS then installed Clion and closed my PC, and for a week or so I used only my mac laptop, because it was just improbable to debug in such a fword compiler. Like ok, you open an application (CodeBlocks or Clion) begin debugging and by example you want to look at the variable that as you thought has some useful information that may help you rectify the thing. But instead of your variable you get "< optimized_out >" and you're obliged to make this variable global and it makes you waste some time). Ok this is not the whole problem, when you're trying :) to debug some passage of the code instead of looking through all lines of it (step by step) as Clang compiler does, you're striding, making giant leaps on other uproar compiler is kinda goading you, and in this hustle is easy to forget what you have been doing)))

Clang does NOT have this all stuff, maybe it's not the best in compiling :) or running program, but it's marvelous in debugging. So if you're interested in using a debugger, move to Clang. Good luck on contest. Bye!

Evidences:

GCC  Clang

GCC  Clang

Tags #compilation, #application, #debug, #programming, #c++, gcc, clang

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en6 English arseniyx92 2021-09-17 08:34:23 25 Tiny change: 'ang :)\n\nAs you' -> 'ang :)\n\n\n\nProblem:\n-------\n\nAs you'
en5 English arseniyx92 2021-09-17 08:32:38 264 SOLVED
en4 English arseniyx92 2021-09-16 20:33:28 282 Tiny change: 'nEvidences:\n\nFirst' -> 'nEvidences\n=========:\n\nFirst'
en3 English arseniyx92 2021-09-16 20:29:17 267 Added evidences
en2 English arseniyx92 2021-09-16 20:15:29 74
en1 English arseniyx92 2021-09-16 20:03:21 1630 Initial revision (published)