Slashdot Mirror


GCC 4.1 Released

Luineancaion writes "Looks like GCC 4.1 has been released. From what I know this includes the GNU Classpath merge and means that Azureus can now be used in a 100% Free-Software system. Thanks to everyone that worked on it, and keep up the good work!"

74 of 343 comments (clear)

  1. But... by brilinux · · Score: 5, Funny

    But I just finished compiling 4.0...

    1. Re:But... by Col.+2.7.0-default · · Score: 2, Funny

      Does it slice? Does it dice? Does it even make Julienne fries?

      --
      My other /. account has a 4-digit ID, excellent karma, and a much wittier sig.
    2. Re:But... by strider44 · · Score: 5, Informative

      You're making too much of this. Between 4.0 and 4.1 isn't that big-a change. The only reason why it took so long for many distros to move between 3.3 and 3.4/4.0 was the change in the binary interface between the compilers. In other words a program compiled with 4.0 couldn't link to a library compiled with 3.3. There isn't this restriction between 4.0 and 4.1 so there's no reason why it can't go into the repositories straight after testing.

    3. Re:But... by larry+bagina · · Score: 2, Informative

      Just to clarify, the ABI changes only apply to C++ libraries/code, not C.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    4. Re:But... by strider44 · · Score: 2, Informative

      No actually that's wrong, if only slightly. GCC 3.3.* and below use a different C++ ABI to GCC 3.4, 4.0, and 4.1. Even Debian has upgraded from GCC 3.3 to GCC 4.0 so an incremental version upgrade shouldn't be too much of a deal.

    5. Re:But... by digidave · · Score: 5, Funny

      "But I just finished compiling 4.0"

      You should have compiled it using 4.1. It's *much* faster.

      --
      The global economy is a great thing until you feel it locally.
    6. Re:But... by ultranova · · Score: 2, Funny

      It would have to be infinitely faster to have helped the original parent poster to compile 4.0

      No, just faster than light. If you use a 5-millimeter high font, and put each statement into its own line, that means that it should compile more than 59 958 491 600 lines of code per second.

      That's ridiculous speed, but not quite ludicrous speed {;<]-=

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

  2. Home depot by Stevyn · · Score: 5, Insightful

    Most people who program, myself included as an engineering student, probably take this for granted, but GCC is like having a Home Depot down the street that gives their stuff away. For no cost, anyone can use these tools to create just about anything they want. It's pretty amazing, and fitting for Thanksgiving to show some appreciation, that we all have access to these incredible tools for free.

    1. Re:Home depot by Lisandro · · Score: 5, Informative

      GCC is an impressive piece of software - either considered asopen source or in general. A lot of people preffer more "serious" C/C++ compilers, like Intels', but it's a remarkably good compiler by itself, very fast, produces stable and well optimized code AND it is available for every platform you could dream of developing on. Ah, and constantly improving support for other languages (specially Java) is a nice perk aswell :)

          It's safe to say that if we have a healthy OSS community, is because of the great developing tools available on OSS platforms. GCC is a strong contender for that crown, IMHO.

    2. Re:Home depot by Billly+Gates · · Score: 4, Interesting

      I saw some benchmarks a few months ago that closes the gap in performance in c/c++ performance with gcc/g++ 4.0 and the Intel compilers.

      Intel wrote them when gcc2.95 was still out and c++ performance was not that good nor was it truly modern ansi compliant by the iso. For example things like the STL were merely emulated and performance for non x86 cpu's was behind too.

      With gcc3.x and now gcc4.x its fully caught up in almost all area's. Its nice now to have a nice c/c++ compiler for the alpha and mips processors that produce fast code.

      I wonder if the rise of Linux and Free software is what made the compilers catch up?

      By the way the Intel compiler is still the way to go for Fortran.

    3. Re:Home depot by hackstraw · · Score: 3, Insightful

      it's a remarkably good compiler by itself, very fast, produces stable and well optimized code AND it is available for every platform you could dream of developing on.

      Yes, gcc is a great compiler, but it is not as good as a commercial compiler like Intel's, or PathScale's, or the Portland groups' or another compiler that is designed for a specific platorm.

      I use it by default on my Itanium, Alpha, x86, and SPARC systems, but when performance matters, I go for one that is better optimized.

      The most grateful aspect of gcc to the world is that Linux would be impossible without it. And that in itself is enough. I learned C from using gcc, and like I said, I use it daily, but it is not the best performing compiler on the block. It is not uncommon to get up to 100% speedup using an optimized compiler for the platform over gcc, but for portability and familiarity of the compiler across platforms (which is its purpose), it is damn good. Especially when many vendors do not provide a C/C++ compiler for their OS without extra charge.

      Thank you GNU and the gcc people.

    4. Re:Home depot by macshit · · Score: 4, Interesting

      As for the compiler itself, yes, it's not the best of the bunch, but that doesn't mean it's any bad either (quite the opposite!). Intels' compiler, for example, still beats it for performance (at least the last few times i tried it), but i could live happily with GCC alone.

      I've spent quite a bit of time hacking on gcc, and I'd say my biggest complaint is that a lot of the gcc code really sucks. It's chock full of gigantic impossible-to-understand chunks of code -- few comments, huge numbers of global variables, an "enumerate every case I could think of with 25 page if-statements" coding style, vast numbers of unwritten assumptions about the way your processor works. That it works at all, never mind as well as it does, is a testament to the dedication of gcc hackers.

      I think a lot of this is historic, and the newer parts of the compiler are much better (and so the overall code quality is slowly improving as old code gets replaced), but gcc can still be a real pain to work on. If you're trying to port to an architecture that differs in some way from "typical" architectures, be prepared for misery.

      --
      We live, as we dream -- alone....
    5. Re:Home depot by LWATCDR · · Score: 2

      And these BSD compilers are?
      How about some links?

      --
      See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
    6. Re:Home depot by Anonymous Coward · · Score: 2, Informative

      LLVM would be one. See http://llvm.org/

      But, LLVM uses the GCC front ends, and the GCC folks are actually discussing the integration of LLVM into GCC itself.

    7. Re:Home depot by Anm · · Score: 2, Informative

      100% speedup takes 50% of the time:

      speed = progress / time

      So since a 100% improvement is 2x the original:

      2*speed = 2*progress / time

      or

      2*speed = progress / ( time/2 )

  3. Know and love GCC by JoeShmoe950 · · Score: 5, Interesting

    As a developer, I love GCC. Its great, easy, and best of all free. GCC is probably one of the most benifical open source projects around, more important even than linux.

    1. Re:Know and love GCC by AFairlyNormalPerson · · Score: 4, Funny

      GCC is bigger than Jesus!

    2. Re:Know and love GCC by kjots · · Score: 2, Informative

      I think someone might notice half the Internet disappearing overnight.

    3. Re:Know and love GCC by kocsonya · · Score: 3, Informative

      > I see them more as a symbiosis.
      >
      > Where would GCC be without Linux?
      > Where would Linux be without GCC?

      Well, I was using gcc way before Linux hit the streets. Gcc and the GNU tools were the compiler and utility package that you could run on a bunch of systems without much tweaking of your makefiles. The same input created a binary with the same behaviour. So, I think gcc would be alive and well without Linux. On the other hand, Linux was possible because of the availibility of the GNU tools. So, RMS actually has a point in insisting that it should be called GNU/Linux. As soon as you log in, you probably run bash (GNU), when you type rm, ls, cc, make and so on, it is likely that you invoke a GNU tool or even if not, whatever you start will quicly suck in the C library (GNU).

      Zoltan

    4. Re:Know and love GCC by Per+Abrahamsen · · Score: 4, Informative

      Eh, GCC was the default compiler for several platforms before Linux existed, and was the prefered compiler for cross-compilation to embedded platforms, and for software that ran on a wide range of platforms. It was also the preferred compiler for ANSI C (GCC got support for ANSI C very early).

      In other words, GCC would be exactly where it is today, had it not been for Linux.

    5. Re:Know and love GCC by chthon · · Score: 2, Interesting

      GCC existed long before Linux, but Linux made it possible to deploy it large scale on PC's (I know about DJGCC).

      When I got into PC's in school in the 80's, Borland ruled.

      When I started working in 1990, I wanted to learn C++. There were no inexpensive options however. I knew about GNU and FSF, but all the software they sold was targeted at commercial 32-bit platforms (I think that they did not even had a C++ compiler back then). All other options where too expensive, until the summer of 1991, when Zortech came out with their C++ compiler, which included also 286 and 386 extension software, which made it possible to run 32-bit code.

      Linux a year later made it possible for people really interested to run real 32-bit code on a real 32-bit platform.

      But you should really add another question to your list :

      Where would both be without the Internet ?

    6. Re:Know and love GCC by DrXym · · Score: 4, Interesting
      In other words, GCC would be exactly where it is today, had it not been for Linux.

      I doubt that. GCC was seriously stagnated way before 2.95/3.0 (hence the reason egcs appeared for a while) and was no match at all compared to various commercial compilers. Linux was about the only popular OS which *needed* a modern gcc and thus most of the development came from Linux stakeholders - Red Hat etc. Without Linux I fully expect that the compiler would be an also-ran by now, along with most commercial Unices.

  4. Masters of understatement by ReformedExCon · · Score: 3, Insightful

    You'd never know it by the link provided that there was anything special about this release.

    I am interested in how well it supports ARM5, seeing as how it was dropped as the recommended compiler for certain platforms.

    --
    Jesus saved me from my past. He can save you as well.
    1. Re:Masters of understatement by diegocgteleline.es · · Score: 4, Informative

      Hey, I like this: "GCC can now emit code for protecting applications from stack-smashing attacks. The protection is realized by buffer overflow detection and reordering of stack variables to avoid pointer corruption"

    2. Re:Masters of understatement by IamTheRealMike · · Score: 2, Interesting

      No, IIRC this is called Mudflap and generates calls to special glibc APIs which check buffer sizes for calls like read(). It's another layer of security added into Linux lately: on top of exec-shield and SELinux things are feeling pretty secure round here ... too bad not every distro has these things (basically on Red Hat distros have them all).

  5. on the java side by petermgreen · · Score: 2, Interesting

    are they using the gcj as chacheing jit (e.g. GCJ run on demand to turn class files into shared objects which are then loaded dynamically) system that was mentioned in one of the papers i read recently or what?

    --
    note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    1. Re:on the java side by ghakko · · Score: 4, Informative

      The caching JIT has been available since 3.4, but is disabled by default. To turn it on, you'll need to add these switches to your gij command line:

      -Dgnu.gcj.jit.compiler=/usr/bin/gcj -Dgnu.gcj.jit.cachedir=/tmp -Dgnu.gcj.jit.options=-O2

      In practice, this is not a great help because gij and gcj are so slow. You may be able to get much better results compiling directly from Java source to machine code, and then prelinking the resulting executables and shared objects to reduce startup time.

  6. Java status? by harmonica · · Score: 3, Interesting

    From the story: From what I know this includes the GNU Classpath merge and means that Azureus can now be used in a 100% Free-Software system.

    Sounds interesting. Is there any ChangeLog to read? I browsed the gcc and the gcj pages, but I couldn't find anything.

    1. Re:Java status? by Anonymous Coward · · Score: 4, Informative

      Changelog here

            http://gcc.gnu.org/gcc-4.1/changes.html

  7. GCC is the Key to Open Source's Success by slashfun · · Score: 5, Insightful

    For 13 years I have been a professional UNIX administrator, and if I had to pin down the single most influential software that help propel the Open Source revolution, I would name GCC.

    Back in the day the first step in loading up a UNIX workstation with Open Source tools, was to go out and grab a limited precompiled version of GCC, then bootstrap compile an more suitable version, then go to town on compiling all the rest of the goodies that we couldn't live without. We did it so often that it became second nature to go through this process.

    I salute you, makers and maintainers of GCC.

    --

    Slashmail.org "The Open Source Email Company"

    1. Re:GCC is the Key to Open Source's Success by jbn-o · · Score: 5, Insightful

      Please do take this in the supportive spirit in which it is intended. It's a letter from GCC's initial author, Richard Stallman (also founder of the free software movement) to a CNet article author who referred to GCC as an "open source" programming tool.

      Quoting from that letter:

      I appreciate the admiration expressed in your article about upgrading the GNU Compiler Collection, but it erred in describing the program as an "open source" programming tool. I developed GCC as part of the Free Software Movement--so that people can use computers in freedom as part of a community.

      Free software means software that respects the users' freedom. The philosophy of the movement is that users of software should be free to run it, study it, change it, redistribute it and publish modified versions.

      With these freedoms, you're free to engage in cooperative development; you're also free to develop it on your own or to redistribute it unchanged. Describing this as a "philosophy of cooperative development" emphasizes one beneficial consequence of freedom at the expense of freedom itself.

      It was impossible in 1984 to use a computer in freedom, since all the operating systems were proprietary. So I launched the development of GNU, a free Unix-like operating system.

      A Unix-like system must include a C compiler, so I wrote one: GCC. I designed it to handle other languages, also, so that GNU users could use more than one. GCC, like the GNU/Linux operating system in which GCC is a crucial part, exists because of the ideals of the Free Software Movement--the ideals that are forgotten when speaking of open source.

      Of course, this is not a letter from RMS to you or directly pertaining to your article. However, I thought that it was worth mentioning in case people want to tell their friends about the new GCC release. It seems that people who frequent /. go to some length to make sure that they describe Linus Torvalds' initial authorship of the Linux kernel in a manner according to his chosen movement. I thought that the same respect should be due to RMS.

    2. Re:GCC is the Key to Open Source's Success by ReformedExCon · · Score: 3, Insightful

      Free Software is a subset of Open Source Software, so to say that GCC is Open Source is absolutely correct, if perhaps more general than RMS would prefer.

      You would make the butt of jokes anyone who tried to demand that you call Roma tomatoes "Roma Tomatoes" every single time you referred to them instead of referring to them generally as tomatoes. It simply does not make any difference to anyone what you call them as long as you get the point across that the thing in question falls into a certain group. You can make that group as broad as you want or as narrow as you want, but there is a happy medium where the label is non-offensive and clear to any and all that hear it. Going too narrow may provide more information but at a loss of understanding to your audience.

      RMS is in error here, but not because he thinks that software designated Free Software ought not be referred to as Open Source software, but because he thinks that anyone cares.

      --
      Jesus saved me from my past. He can save you as well.
    3. Re:GCC is the Key to Open Source's Success by Cardoe · · Score: 2, Informative
      This isn't necessary correct. You can still install from stage1 and stage2, it just won't be documented directly in the Install Doc because of too many users that were a bit too clueless at Linux attempting to do a stage1 install. Also it reduces the confusion and complexity for first-timers.

      Also considering the age of the packages found in all the stage tarballs all of them have been replaced by newer versions so when you install Gentoo you will actually recompile everything from source.

    4. Re:GCC is the Key to Open Source's Success by gnarlin · · Score: 3, Informative
      Free Software is a subset of Open Source Software, so to say that GCC is Open Source is absolutely correct, if perhaps more general than RMS would prefer.

      First of all, it is true that if one only goes by the definition of open source then the GNU compiler collection does fulfill all the conditions of that definition. GCC also fulfills the Free software definition. Since this software package seems to satisfy both we must therefore look at some other facts to see which group this software appropriately belongs to.

      Who started writing it and for what reason?
      Richard Stallman did so that we could have more freedom. Not because he thought it simply had more technical merit to publish the code. So GCC would not exist if it were not for the philosophical base upon which it was started continues to rely on. GCC was not started because of any open source philosophy.

      What about the name of the software package?
      Humm, it appears to have the GNU name right at the beginning. I thus deduce that it is strongly involved with the Free software movement.

      In the GCC mission statement it says that GCC is not only a Free software project, but more importanly that one of the main goals is Supporting the goals of the GNU project, as defined by the FSF. Not to mention that the copyright of GCC are kept by the Free Software Foundation.

      You can make that group as broad as you want or as narrow as you want, but there is a happy medium where the label is non-offensive and clear to any and all that hear it .

      First of all, when talking about open source software you are referring to all software that fulfills the open source definition. That is just as specific and narrow as Free software and the free software definition.
      Regarding the non-offensive jib. There is absolutely nothing offensive about free software nor is there anything offensive about open source. Although I feel all warm inside whenever I hear about someone spending their lives work in defending and increasing my freedom in a non-violent manner.

      Regarding the clarity of "Free software", that is something which is only a problem in the english speaking world. In most other languages the word for freed(dom) and the word for free(of charge) are different.
      Open source is not quite as clear to a non insider of the computer idustry. Freedom is something generally a lot more meaningful then "open source(code)", since most people have no idea what source code is nor how it can be more open or closed but do have some grasp of the meaning of freedom. Many people have certainly heard of open source in the media and such but infer no real meaning from it, except perhaps that it "makes your computer go faster or something" (this is something which I have heard many people say when asked about what open source means to them). If you were to ask those same people if they cared about their freedom, I think you would get at least a little more intelligible answers. Going too narrow may provide more information but at a loss of understanding to your audience.

      How can you fail to put across your meaning if you are being as specific, lengtly and clear about your explinations as possible?! This is just nonsense.

      RMS is in error here, but not because he thinks that software designated Free Software ought not be referred to as Open Source software, but because he thinks that anyone cares.

      Well, the government of my country seemed to care enough for the minestry of education to both endorse his visit and our local LUG (with money and other resources) and to hold a special ministry session were they listened to his recommendations and from that wrote a

      --
      A bad analogy is like a leaky screwdriver.
    5. Re:GCC is the Key to Open Source's Success by EvilSmile · · Score: 3, Insightful

      There is a reason why RMS insists it is "Free software" and not "open source software". There is an ethical aspect of the philosophy of free software which is cast aside when you say "open source software". He mentioned this explicitly on many occasions.

    6. Re:GCC is the Key to Open Source's Success by top_down · · Score: 3, Insightful

      You sound like a Jehovah's Witness citing the bible.

      Here is a list of contributors to GCC: http://gcc.gnu.org/onlinedocs/gcc/Contributors.htm l

      I would be quite annoyed with all this talk about initial authorship if I had just worked my butt of to get the current release out of the door.

      --
      Anyone who generalizes about slashdotters is a typical slashdotter.
  8. Azureus by DavidLeeRoth · · Score: 5, Funny

    Azurues can now be used in a 100% free system to download not so free software :)

  9. Changelog? by Theovon · · Score: 4, Interesting

    No mention of a changelog? If you're going to announce something, it sure would be nice to have a link to a page that explains some interesting stuff about what's new in it. I've tried looking at their wiki, but its 'news' section and its stuff on 4.1 hasn't been updated since like March.

    1. Re:Changelog? by Yotsuya · · Score: 5, Informative
      --
      Claude Angers
  10. That's good. by Sheepdot · · Score: 5, Funny

    From what I know this includes the GNU Classpath merge and means that Azureus can now be used in a 100% Free-Software system.

    That's good for us, considering that the #1 use of Azureus is to pirate 100% commercial software.

    1. Re:That's good. by jsight · · Score: 2, Insightful

      That's good for us, considering that the #1 use of Azureus is to pirate 100% commercial software.


      I doubt that. It's probably movies and tv shows.
    2. Re:That's good. by jZnat · · Score: 2, Informative

      Porn and upgrades to Azureus I'd imagine would be a better response.

      --
      'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
    3. Re:That's good. by slavemowgli · · Score: 2, Interesting

      Is it? How do you know? Maybe it's just me, but I've uploaded about 150 GB in the past 7 months on BT on my measly 192 kbps uplink, and not a *single* bit of that was infringing on copyright. Why do people always think that BT doesn't have any uses besides copyright infringement? It's not true, and while it *seems* that copyright infringement accounts for a significant part of BT use, there simply is no data that would show that it's actually the #1 use (of course, there's no data that shows it's not the case, either, but without any data at all whatsoever, you shouldn't pull numbers out of your ass).

      --
      quidquid latine dictum sit altum videtur.
  11. Sense and portability by noz · · Score: 3, Interesting

    I was always angry with Sun touting Java(R)(TM)*** as portable when run-time environments were made available for only a small (albeit popular) set of architecture/operating system pairs. My Alpha running Debian at home and my Alpha running FreeBSD at work were left cold, lonely, and wanting Java; running a subset of Java applications with free software partial implementations. This is a triumph for FOSS.

  12. I'm thinking of contributing to GCC... by TwoBit · · Score: 3, Interesting

    I love GCC, but I lament that its ability to do inlining is rather bad.
    I'm wondering how hard it would be join the project and work on rectifying this.

    1. Re:I'm thinking of contributing to GCC... by larry+bagina · · Score: 5, Insightful
      Depends. Did you get an A++ in your graduate-level compiler construction class? Are you willing to spend a couple months (or more) reading through the gcc source code to get an understanding of how all the pieces work. Are you willing to spend a few more months testing your optimizations (mathematically and with source code) to make sure they don't break anything?

      The basics of compilers aren't difficult. 2nd year CS students can understand toy compilers. But gcc isn't a toy compiler, it's a real compiler in the real world dealing with a sometimes crazy language, and even crazier users. If you can write better optimizing code, prove it works, and it doesn't infringe on any patents, submit your code.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

    2. Re:I'm thinking of contributing to GCC... by multipartmixed · · Score: 2, Informative

      Parent's not kidding. GCC contribution is non-trivial.

      I got an A in my 4th-year undergrad compiler construction course, and build toy languages with flex and bison on a regular basis (about one every 18 months for 8 years).

      And the GCC code is way hard stuff.

      --

      Do daemons dream of electric sleep()?
  13. A big thanks to the GCC team. by rice_burners_suck · · Score: 2, Insightful
    Well, it's Thanksgiving, so let's give all the good folks in the GCC team a big warm Thanks for all the years of improvement to this centrally important software package. Without GCC, it is doubtful that the free software movement could be taking place at all. And with the improvements that have been added in the last year or two, GCC is getting to the point that commercial software vendors will have to come up with some really innovative ideas to compete with it, even for production of commercial software! In fact, I think all software for the Mac is compiled with GCC 4 and onwards.

    Thanks folks, and happy Thanksgiving.

  14. Actually, it's not released yet by Dan+Berlin · · Score: 5, Informative

    I'm not sure what gave the person who submitted the story, or the editor who posted the story, the idea that 4.1 was released, but it isn't. In fact, it was just branched less than a week ago. We haven't even put out an RC yet! Really, it's not out. When it is, you will see something sent to gcc-announce

    1. Re:Actually, it's not released yet by Matt+Perry · · Score: 2, Interesting
      I'm not sure what gave the person who submitted the story, or the editor who posted the story, the idea that 4.1 was released, but it isn't.
      The GCC home page very clearly states "Current release series: GCC 4.1.0" while below it all the others say "Previous release series" and one at the bottom says "Active development (mainline)." That indicates as clearly as can be which are the old, the current, and the development releases.

      If you are right, and 4.1 wasn't released, then the GCC web page might need to be reworded to better communicate that fact.

      --
      Slashdot: Failed Car Analogies. Amateur Lawyering. Anecdote Battles.
    2. Re:Actually, it's not released yet by vidarh · · Score: 2, Informative

      I guess you didn't see the "(released [date])" bit after the version numbers then... (and the corresponding lack of one for 4.1. Nor the lack of a release history on the 4.1 page.

  15. Still not released by lancelott · · Score: 5, Informative

    GCC 4.1.0 is not yet out as far as I know. This story is misleading. Just because the site lists 4.1.0 on the front does not mean it is out. Notice that it doesn't have a release date on it.

  16. Re:What was wrong with Azureus? by sr180 · · Score: 2, Informative

    Azureus is programmed in Java. Therefore it had to execute under a Java Runtime Environment (JRE) as provided by Sun or IBM. All of these JRE's are not free. Now Azureus can be compiled by GCC (which is free), Azureus can be executed in a 100% free environment.

    --
    In Soviet Russia the insensitive clod is YOU!
  17. But what about fixes? by DoofusOfDeath · · Score: 2, Informative

    About a month ago, I submitted a bug report for an internal compiler error. The GCC guys jumped on it, but I don't see in that change log a mention of what particular bugs got fixed in GCC 4.1.

    Is the changelog just oddly incomplete, or am I looking in the wrong place for the list of bugs that got fixed in this release?

    1. Re:But what about fixes? by imroy · · Score: 2, Informative

      The "changes" document appears to just list the added features, changes in ABI, and changes in the language parsers. The GCC homepage has two links to their bugzilla system: serious regressions and all known regressions. Your bug *should* be in there somewhere.

  18. C and Objective-C by SpinJaunt · · Score: 3, Insightful
    * The old Bison-based C and Objective-C parser has been replaced by a new, faster hand-written recursive-descent parser.


    I wince at the thought. The sick f*ck(s) deserves a pat on the back and a six-pack at least. Oh and a pay raise.
    --
    /. is good for you.
    1. Re:C and Objective-C by mark-t · · Score: 3, Interesting
      Hmmm... the textbook I used in the compiler course I took way back in the olden days said that recursive descent compilers were, in general, slower and in general larger than state-based ones.

      Mind you, the book is over 20 years old now.

    2. Re:C and Objective-C by am+2k · · Score: 2, Interesting

      According to a lecture I took last year, this has changed in recent years. Now it's much more important to work on a small set of data at a time, since the processors have large caches. The recursive approach helps to keep the data you're working on inside the cache.

      20 years ago nobody had a cache, so it was an imperative to keep your stack size down.

  19. RMS wrote GCC to pursue software freedom. by jbn-o · · Score: 4, Insightful

    The philosophical difference RMS describes is quite clear and RMS points it out quite well. The benefits we get from free software are great, but they shouldn't be celebrated at the expense of celebrating the freedom free software gives us for its own sake. You can't "make that group as broad as you want or as narrow as you want" and still convey the same point. People might not know about software freedom, so it's easy to make that mistake without any malicious intent (as I think was the case here). But to set out to refer to programs like GCC—programs written to make software freedom real—in the name of a movement that was built in part to not mention software freedom is ahistorical.

    1. Re:RMS wrote GCC to pursue software freedom. by jbn-o · · Score: 2, Informative

      So it's wrong to sneak software Freedom in through a back door?

      Free software would be just as free by any other name, but the Open Source movement doesn't work to get people to recognize and cherish software freedom in its own right. RMS is asking people to recognize that his work was done in pursuit of software freedom, not the developmental goals of the Open Source movement. By the way, GCC was initially developed well before the Open Source Initiative existed.

      Open Source Software is software that is available also in source code format.

      Not according to the first sentence of the introduction to the definition of the term "Open Source" as defined by the Open Source Initiative, which claims credit for coining the term and starting the Open Source movement. That definition tells us that "Open source doesn't just mean access to the source code.". I take it you mean to refer to the OSI's work since you cite them as an authority on the matter.

      Here's a quote from opensource.org:

      The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves.

      That is a development methodology chiefly aimed at programmers, not a call for defending user's freedoms to run, inspect, share, and modify software.

      If the OSI is so sympathetic to software freedom, they shouldn't continue to call freedom-talk "ideological tub-thumping" in their FAQ and they shouldn't try to phrase Peruvian Congressman Villanueva's work as pursuit of "Open Source" when Villanueva explicitly told the Microsoft representative that he wanted to call attention to free software (as the OSI does on their front page). Villanueva told Microsoft that his bill doesn't call for "Open Source". Microsoft just uses that term to try and steer the conversation to matters Microsoft's people believe they can address better—price and reliability. Furthermore, I think RMS hit the nail on the head when he talked about the philosophical differences between the two movements and when Eben Moglen talks similarly in his speeches. If the OSI and its defenders are so sympathetic to software freedom, they should be fine with people explicitly engaging in freedom talk, not just (as you say) "inherently" agree with freedom talk but never mentioning it.

      It's telling that in an instance where the preeminent Free Software movement advocate, RMS, writes a program to make software freedom a reality, and doing so well before there was an Open Source Initiative, Open Source advocates are arguing that it's okay to associate RMS' work with a movement he "is not against [...] but [doesn't] want to be lumped in with" (quoting his aforementioned essay). These admonitions suggest that even in cases like this one, the objective is to get everyone to remain silent about software freedom so that we can all get on with pleasing business and framing issues in terms of increasing developmental efficiency. I won't go along with that. I will continue to find the ethical and social examinations the Free Software movement raises far more compelling. And I will continue to associate what was initially RMS' work with the movement he started.

  20. Re:Let me know when it stops sucking by Pr0xY · · Score: 3, Insightful

    you make it sound like enforcing strict rules is a bad thing. Really the only bad thing that gcc has done is accept that _broken_ code in the past. The fact that it no longer will compile constructs which are invalid in c and c++ is an improvment. c and c++ are just like any other standard (think html/xhtml and such) and when a compiler accepts invalid constructs it destroys the portability of the code.

    The true ideal is to be able to write code that if it compiles on gcc you can say "i know for certain that this is valid c++". Such a goal is difficult, if not impossible (many things are "implementation defined") but is stilla goal worth shooting for.

  21. Some minor corrections ... by ghakko · · Score: 5, Informative

    GCC 4.1 has not been released yet.

    A modified version of Classpath has been included with GCJ since 3.2.

    Azureus may start in GIJ 4.0, but won't work properly because it relies on parts of the Sun JDK which aren't completely implemented yet in GCJ.

  22. Re:What was wrong with Azureus? by digidave · · Score: 2, Insightful

    Not free as in beer, Free as in speech.

    --
    The global economy is a great thing until you feel it locally.
  23. Nope. by Anonymous Coward · · Score: 2, Informative

    The 4.1 *branch* was created recently (in fact last week).

    The *release* is still months away.

    Toon Moene (GCC Steering Committee).

  24. GCC website by Per+Abrahamsen · · Score: 2, Interesting

    It is surprisingly hard to find out what the current release is from the GCC webpages. The front page has a misleading 4.1. Press "Releases", and you get a misleading 3.4.4. You have to go on to the "Development plan", under Future timeline, to find the actual latest and greatest 4.0.2 somewhere down the ASCII art tree.

  25. More people than you imagine ... by hummassa · · Score: 3, Insightful

    > RMS is in error here, but not because he thinks that software designated Free Software ought not be referred to as Open Source software, but because he thinks that anyone cares.
    More people than you imagine do care.
    I know I do, and I know lots of others do, too.

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
  26. GCC is NOT open source by CarpetShark · · Score: 2, Informative

    Please refer to GCC as Free Software. Open Source is something completely different, and not nearly as inspiring, imho. Moreover, when GCC pretty much started the whole Free Software movement, it deserves a bit more caution in terminology ;)

    1. Re:GCC is NOT open source by wootest · · Score: 2, Interesting

      All political discussion aside, isn't being Open Source a prerequisite of being Free Software (and to avoid stepping on toes: no, that does not mean that I think Open Source came before Free Software)? I think GCC is both Open Source and Free Software, simply because it needs to be Open Source if it's going to be Free Software; releasing your code and allowing others to fork it are key parts of both Open Source and Free Software. I guess the point I'm trying to make is that it's not *just* Open Source (which would imply not being Free Software), but it is by definition *also* Open Source.

  27. NOT a subset by CarpetShark · · Score: 2, Insightful

    You can't philosophically be a subset of something you don't philosophically agree with. Free Software is Free Software. Open Source came later, and if anything, is a watered-down version of Free Software.

  28. Re:What were the BSDs using? by kl76 · · Score: 2, Informative

    If by *BSDs, you mean 386BSD, NetBSD, FreeBSD etc, then, yes, they've always used GCC (starting with GCC 1.39 in 386BSD, I think). Before that (ie. 4.3BSD and earlier), there was the closed-source pre-ANSI pcc (Portable C Compiler). Not sure whether 4.4BSD used pcc or GCC...

  29. Bogus Blathering by ChaoticCoyote · · Score: 4, Insightful

    As many have pointed out, GCC 4.1 is actually several months away from release. Slashdot "editors" might want to learn about a concept called "fact checking." I'm disturbed by the amount of GCC bashing in this list. I've never met a perfect compiler, and GCC is far superior to many commercial tools I've used. It provides professional-quality C, C++, Objective-C, Fortran 95 (almost), Java, and Ada compilers for dozens of platforms; the code generation is imprefect, but then again so is most of the code GCC is required to compile! The vile lack of appreciation for GCC simply astounds me -- it is the foundation of Free Software. And it is a fine piece of work that is constantly growing and evolving -- though not as fast as Slashdot's headlines might suggest... ;)

  30. Re:GCC is important, but what about progress in C+ by Anonymous Coward · · Score: 2, Funny

    "And I don't want to hear anyone say 'why don't you join GCC to do it yourself', because I have a full-time job working as a C++ programmer and I have barely the time to take a bath, plus it is extremely difficult to enter the GCC development process, due to being highly not-documented (you have to read the sources) and pretty much a closed circle."

    And yet you have time to sift through slashdot posts and rant? Well... priorities...

  31. Re:Buffer overflows a non-issue. by dr2chase · · Score: 2, Insightful
    Your claims assume that we are infinitely smart and work infinitely fast. Lacking infinite resources, working in a language where half my vulnerability is taken care of lets me double the attention I direct towards the others. If there are three sorts of vulnerabilitity, and buffer overflow accounts for about half, then it is also the most common problem, though not the majority problem. Any well-informed security-conscious programmer would be aware of these numbers, and my "attitude" will not change their focus in the least (which is to say, your claim is crap, please back it up with numbers). We have known about the danger posed by buffer overflow since 1988 when the Morris Worm hit; all buffer overflows that have occurred in software written since then demonstrate the inherent stupidity of sufficiently many programmers to make networked life over-interesting.

    Or, put another way, if half the security holes are a non-issue, then the other half cannot be more of an issue, hence we have no security problem at all (check my math, please).

    Perhaps you can see why I prefer to use programs written in safe languages.

  32. egcs by Per+Abrahamsen · · Score: 3, Informative

    The one thing that is correct is that the official gcc was growing stagnant. But that was due to the official maintainer, who was (and is, he still contribute to gcc) a great compiler engineer, but a poor free software project leader. The majority of the work was done by Cygnus Support, whose customers were mostly in the embedded arena. Cygnus then decided to open up development based on their own branch, under the name egcs (and with an understanding from FSF), in order to involve more people in the development. It became a huge sucess, and the egcs branch became the official FSF branch.

    The biggest contribution from Linux may be that Linux (together with the favorite /. hate-object, ESR's, Cathedral and Bazaar paper), served as an inspiration to move away from the traditional relatively closed FSF style of maintainership.

    Today, SUSE makes good contributions. So does Red Hat, although it is hard to see which part of those contributions come from the old Cygnus part of the company (Red Hat bought Cygnus during the .com boom, and showed their first profit right after, most of their listed "wins" were in the old Cygnus business area). But the maintainer is from CodeSourcery, who does contract compiler work in a rather wide area. And the main contributor may, somewhat ironically, be Apple, it is certainly their email adress I see most on the developer list. Other than that, HP, IBM and Intel contribute a lot.