Hacker News new | past | comments | ask | show | jobs | submit login
GCC 4.8 release (gcc.gnu.org)
110 points by Marat_Dukhan on March 16, 2013 | hide | past | favorite | 40 comments



Oh well, this release page has been up for months! Please consider changing the title to "GCC 4.8 upcoming changes" or something like that. I got confused that 4.8 was released today!

Like already pointed out, 4.8 is not yet released!


It seems what happened today is:

  The GCC 4.8 branch has been created and a first release candidate
  is being prepared right now.  The branch is closed for now.
http://gcc.gnu.org/ml/gcc/2013-03/msg00124.html


"As of this time no releases of GCC 4.8 have yet been made" (http://gcc.gnu.org/gcc-4.8/).


For that matter: "Last modified 2013-02-08."


Sorry for confusing you. I watch this page almost every day, and since today they moved the gcc 4.8 from "Development" to "Release Series" section, I decided that it is finally released.


Actually only the release candidate of GNU GCC 4.8 is released. The final release is expected in about a week or so: http://gcc.gnu.org/ml/gcc/2013-03/msg00127.html


The new AVR enhancements are interesting. They added Embedded C fixed-point arithmetic. I wonder how often Arduino folks will use this.


GCC now uses C++ as its implementation language.

It looks like C++ is getting some traction. BIND has also made the switch to C++ (and Python).


> It looks like C++ is getting some traction

That's some LOL-worthy understatement right there.


He's probably talking about FOSS projects where C++ is still very uncool.


The most productive FOSS communities in terms of loc and number-of-projects (KDE and Mozilla) produce primarily C++ code.


Those are also exceptions. For KDE, it was probably because they were stuck with whatever Qt was written in. For Mozilla, I'm not sure. Possibly because C++ has had better support on Windows? You don't agree that there is a strong sense of anti-C++ sentiments in the FOSS community? ASAIK both Linus and Stallman hate C++ with passion.


No, I never got that feeling. I think there's a sub-culture of systems-level programmers that are skeptical of C++ (sometimes for reasons I can respect as pragmatic and reasonable, cf. Linus), but the FOSS community is a lot larger than systems-level programming. In the areas I've dabbled in - primarily the desktop - C++ is generally seen as a viable choice outside the G* isle, and even there you can find some significant exceptions (the de-facto FOSS vector graphics app, Inkscape, uses GTK+ and is written in C++).

And speaking as a KDE developer, I don't think I've ever met one of us who feels we're "stuck with C++". We're certainly critical of some of the warts of the language, and the community certainly includes folks who prefer and care strongly about some of the other languages we produce or have bindings for, and we're doing a lot of JavaScript on top of C++ foundations lately, but the overall sentiment is that in the grand scheme of things, C++ is ultimately the best choice for our core products.


When I said 'stuck', I actually meant 'had no other choice anyway' not, 'there were superior technologies but because Qt was in C++ they had to pick C++'. It's true that it's mostly systems programmers who are against C++ but at the same time I feel like it rubs off on the whole FOSS community.


KDE didn't use C++ because they were "stuck" with it. Talk to any KDE developer and they will tell you all about KDE's "superior C++ based technology" and how it's better than gtk/gobject. They do have a lot of nice stuff; with GObject there's just so much boilerplate.


I meant that they were stuck with it in the sense that any other choice would be insane. Not stuck with it in the sense that they would want to switch to something else but they won't because of Qt. There are no other choices. Also, at no point did I make a comparison between GTK and KDE.


You mean with GObject there's a lot of boilerplate if you use it from C, but it's supposed to be pretty nice from Vala.


What about Clang/LLVM?


Idk why they picked C++. Probably because it makes more sense for large projects. I was not arguing that there were no C++ FOSS projects, I was merely stating that overall, in the FOSS community, the vast majority of developers dislike C++. I am surprised that people seem to disagree with that.


I'll grant that it might be related to the company I tend to keep, as established above, but I've seriously never had the impression that there is anywhere near a majority of FOSS developers that actively dislike C++, especially seen vs. C.

I'd say the majority of FOSS developers most likely don't care, because they use higher-level languages doing web-related work for which either language isn't well-suited due to the tooling and deployment realities. So I guess it depends on whether you equate disinterest with dislike and you might be right. But among the developers that reasonably could use C++ I don't think there's a majority explicitly avoiding its use.


Then I would assume you are rather young.

I have been using Linux distributions since the kernel 1.0.9 days, on those days there were not much higher level languages being used and just mentioning C++ would be the start of an endless flamewar.

There were developers avoiding KDE and everything else that they knew was coded in C++.

For a while I did participate in gtkmm (C++ bindings for GNOME) and it was hard to get ourselves heard by the GNOME guys. Funny enough after a few years they came up with Vala and now are even proposing JavaScript!

If it wasn't for FOSS projects, the use of C would probably be much less than it is today.


The main reason I think was that C++ support in open source compilers used to be rubbish, and the libstdc++ used to break binary compatibility all the time (from what I've heard).

That was many years ago, but people still think C++ is rubbish because of this, and it failed to gain traction in the open source community because of it. Which is a shame, because it's quite a nice language once you learn the details and are able to use it properly.


I think it was language religion above anything else, but my memory is a bit fuzzy from those discussions.

Personally I have a sweet spot for the Pascal family of languages and their strong typing, so I only started using C and later C++ when forced to do so.

My first contact with C was at high school (Turbo C 2.0 - 1992), after knowing already a few Assembly versions and Turbo Pascal. Shortly thereafter I got to have my hands on Turbo C++ 1.0, and since then only used C instead of C++ at the university classes that required it, or on a few projects at work. My last application done in C was around 2002.

Nowadays I use a lot of languages depending on the project, but in what concerns C and C++, I will always pick C++ unless requested otherwise.


> Then I would assume you are rather young.

Well, I've been a FOSS developer for about decade now. Certainly others have been around far longer, yes.


It's not as popular as GCC for the moment. A lot of software is still compiled with GCC.


I wasn't referring to the popularity, I was referring to the "coolness" of C++ in FOSS. But LLVM and Clang are becoming more and more popular as time goes on.


Indeed. For example FreeBSD (the kernel and the ports) can now be built with Clang:

An unmodified FreeBSD head and stable/9 can completely be built by clang! (Note that you still need to setup /etc/make.conf or /etc/src.conf properly, see below for the details.) [1]

For 10-CURRENT after OSVERSION 1000024 (svnref 242624) Clang is the default compiler on i386 and amd64. And is installed as cc, c++ and cpp. [2]

[1] https://wiki.freebsd.org/BuildingFreeBSDWithClang

[2] https://wiki.freebsd.org/PortsAndClang


Isn't it just the subset compatible with C for now?


That's what it was for a couple of years, but now they've flipped the switch to where a C++03 compiler will actually be required.

Note this is drastically different from a requirement to use advanced C++, coders can still use the subset of "C style" C++ if that's easier for them.


This means that to build GCC from sources, you will need a C++ compiler that understands C++ 2003.


No, they use real C++ features. I noticed it when trying to compile a plugin and it suddenly failed to build.


They had me at -Og.


The -fsanitize=address and -fsanitize=thread sound like a very useful feature too, a nice complement to valgrind and -fmudflap.


Nice! Could someone plz explain to me what it's not technically easy to have the ASan profiler also on windows? In other words, do you prefer other OSes for development due to tools like ASan?

Thanks


Especially with the C++ change, GCC seems to be on the verge of crashing in under its own weight. I have the feeling that clang or something else, something simpler, will eventually prevail.


Clang and LLVM are written in C++...


Oh don't tell anyone that, otherwise they'll switch to PCC. Besides, obviously a program that poorly reimplements half of the STL is going to be smaller than one that uses even the barest amount of C++.


I can't be sure, but I don't think that was the point of the parent. The comment was with respect to the change, not a criticism of the language.


The "change" has been underway for years now, it's not a sudden event by any means. Even now, where a C++ compiler is "required", it's not as if a drastic alteration of the code base has been performed. Given that, all I can read the complaint as, is a criticism of the language chosen.


It's more correct to say that GCC is compilable with a C++ compiler, and now allows C++. It's not like it was all rewritten in proper C++ between 4.7 and now :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: