tags:

views:

1054

answers:

15

I've been working in Delphi 7 for the last 6 years now and have learnt to merely submit to the instablity of the IDE. For example, there are particular projects I've inherited which, when working on, I cannot use the CTRL+SPACE dropdown symbol list in the Delphi editor without getting an Access Violation error, this would easily top my list but there are many more. I'd like to know which bugs frustrate you the most.

A: 

The one where if you open a TADOQuery's SQL text in code view, save your project and quit, then reopen it, you get some error related to "invalid TStringsFileSystem".

Then there are the mysterious errors relating to .$$$ files which I haven't figured out yet.

I have one project I can't open without an AccessViolation in the VCL :\

Blorgbeard
+4  A: 

For me it's a battle between

  1. the various problems when debugging multi-threaded programs, like for example pressing F7 and both the program and the IDE go into a state where 100% CPU is consumed, both are unresponsive, and only the task manager can help to get things sorted. Or various exceptions in bordbkXX.dll; and

  2. the tendency of the IDE to keep references to search results in the message window after they have been cleared, also leading to constant AVs and the need to kill the IDE.

mghie
#1 was bugging me too (no longer - see http://stackoverflow.com/questions/436524/keep-app-responsive-during-long-task :-))#2 is no issue for me as I'm using GExperts grep.
Ulrich Gerhardt
#2 seems to be pretty much fixed in Delphi 2009. :)
PetriW
+8  A: 

I really hate it when the debugger is confused. Sometimes it can not find the files, or it finds the wrong ones.

A variant on this problem is the ghost breakpoints:

  • you have a file in one location.
  • during debugging you put some breakpoints in the file.
  • you find the bug, and checks the file out.
  • you now edit the checked out file and start build/run again.
  • the IDE now uses the breakpoints from the original file in the checked out version and you can't disable them from the editor (only from the breakpoint list).
Gamecat
Oh yeah, and sometimes it gets the line numbers wrong - so it looks like you're stepping through comments, method declarations, and unrelated code.
Blorgbeard
@Blogbeard, yes, that is mostly, if either part of the code is not compiled or there are two locations of the sourcefile. You can really irritate the debugger with that.
Gamecat
+3  A: 

The ones that annoy me more than anything is where the IDE just decides to close itself and disappears from the screen, losing any changes you may have made. It has only happened a few times using the 2007 IDE but it really is most annoying.

I would have to agree with the multithreaded debugging issues and not being able to find the correct unit it is debugging. The worst case of this is when you open a file from a different directory from the unit you are using, but a unit with the same name is present in the directory. It then proceeds to open the wrong unit and starts stepping through it.. (I think this was a Delphi 7 issue).

Also with the Delphi 2007 IDE, the red wavy lines saying it can't find identifiers or units drives me up the wall when it can actually find them, especially when the units it cannot find are something like Controls.pas ??

Aikislave
+1  A: 

My delphi 2007 always freezes when closing it. Vista asks me to wait, shut it down or restart. The next time I start Delphi, I have to reselect my layout.

Also, the ctrl+click vs ctrl+enter on filenames in uses annoys me. Sometimes it work, sometimes it don't. Sometimes it opens the 'open file'-dialog in the right directory. Why can't it just open the file?

What's bug me the most, though, is the list of errors in the structure-window. 'Undeclared identifier TForm at line....' . Now, why is that??

And one more: Why doesn't Ctrl+F4 work in the designer ? When I have a lot of files open, I tend to Ctrl+F4 repeatedly to close them, but when it reach a formdesigner-window, it stops. (I use embedded/docked layout)

Vegar
Re Ctrl+F4 in designer: Alt+F12 (Show DFM as text) also doesn't work everywhere and all the time.
Ulrich Gerhardt
I have the "freeze on close" problem in D2006 as well. Workaround in D2006 is to "Close All" before exiting - it will ten shutdown cleanly MOST of the time (looks like a race condition)
Gerry
Thanks, I will try that. Some of the time, it closes without any problem, but I haven't seen any pattern to it.
Vegar
+6  A: 

I hate it when I edit a *.pas file and the IDE decides to make random changes to the corresponding DFM. Some of these changes are bugs (TabStop on frames), some are as designed (Explicit*, DesignSize) and some are inbetween (Sometimes the ItemHeight of a csDropDownList combobox is changed to 0, sometimes back to 13. I never figured a scheme to it out.).

Ulrich Gerhardt
Yeah, that's always annoying when you check in your code. :(
PetriW
I'll just skip those changes (chunk by chunk if I have to) when I commit, then do an `hg update --clean` to blow away the changed DFMs.
afrazier
+2  A: 

The worst bug for me, is the one that happens when you open a Form or something which it's ancestor was modified, then the IDE asks you what happened to some component that was removed, you select either removed or renamed, click OK then click to save the file.

But when you run the application it crashes, because the IDE doesn't save anything if you don't move something on the Form.

I've got so tired of this bug, that I'm kind of addicted of moving random components in every form I open, just to make sure that Delphi saves them! urgh!

Fabio Gomes
+3  A: 

In Delphi 2007, the object inspectors grid sometimes isn't redrawn correctly. So if i click on it to alter a property, i'm in the wrong row and have to wonder why the IDE throws an error like "'MyButton' is not a valid integer value."

BloodySmartie
This drives me absolutely nuts too. I'm currently doing some maintenance work in D7 and I'd forgotten how nice the object inspector system is when it 'works properly'. It's definitely a bit broken in D2007. :-(
robsoft
+1  A: 

I have got one error which results in the IDE throwing an access violation which will repeat endlessly. I think it has something to do with the syntax highlighting. It only happens when I start to select some text in the editor. Sometimes it is possible to recover by unselecting the text again, but usually I have to kill the IDE. This bug has been in all versions of Delphi from 5 to 2007, I haven't seen it in Delphi 2009 yet.

dummzeuch
+1  A: 

I also hate it when Delphi seems to decide on a whim not to compile runtime packages into your executable.

The exe appears to work fine because it can find the bpls it needs at runtime on my dev box and the problem is only discovered after it leaves my machine. Grrr.

Ben Daniel
Do you have a test case for this? This is one I've never seen except if you have "Build with runtime packages enabled" at which point the behavior you describe is reasonable.
Allen Bauer
Hehe, yeah anyone in the team I'm in could tell you about this bug. We *never* change the "Build with runtime packages" setting, that is until this bug manifests in which case we have to tick it, clear the packages list and untick it again.
Ben Daniel
Ben Daniel
A: 

I have observed conditional breakpoints and watch-window function calls both becoming unreliable (i.e., working intermittently or not at all) several years into the development of a fairly large application. This made debugging very difficult.

The F1 help also stopped working at some point (the help window would not open at all when the function key was pressed). We had to resort to launching help from the menu item, and then typing the name of the topic that F1 should have loaded for us.

gw
+2  A: 

The help system in Delphi 2006 is totally useless.

  • To find the topic you need help on is difficult
  • There are hardly any examples
  • The language filter does not work

Plus many other problems

It is so bad that when I need help I use Google rather than the built in help

Charles Faiga
Upgrade to Delphi 2009, at least the Help actually *works*.
Fabio Gomes
+1  A: 

In Delphi 7 F11 would toggle between the form and the Object Inspector. In Delphi 2009:

Select control on Form

F11 into the Object Inspector

Select another control on Form

F11 goes to the code

TheArtTrooper
A: 

With Delphi 2007, 2009, 2010 the CPU utilization is 100% (only one core) when Delphi IDE is visible on screen. It doesn't happen when the IDE is minimized. My computer is overheating because of this.

I hate is sooooo much. And it is such and old bug!!!!!!!!!!!!!!!!!


I have stopped reporting bugs since there are so many old bugs unfixed. Why spending 5-15 minutes to report a bug if it will be fixed in 5 years? Best way is to learn to live with the bug and find a workaround or to minimize its impact.

Altar
A: 

I think it has been fixed in a newer version, but one problem that has bothered me for some time was a bug in the ADO VCL runtime. In this case, database negative values were returned as positive values. And, in general, access violations when working with multithreaded database access and dbexpress.

Juliano