Board index » cppbuilder » Re: Does D2005 have any project management advantages over BCB v6?

Re: Does D2005 have any project management advantages over BCB v6?


2004-12-17 03:39:46 AM
cppbuilder75
Leroy Casterline wrote:
Quote
This is the case with BCB today ("XXX has been optimized..."). One
change I'd like to see in future BCB releases is having the de{*word*81} not
optimize anything out of my code unless I tell it to do so.
All optimizations are (or should be) turned off while debugging.
Apparently there's a glitch, because sometimes I can't debug certain
variables at all. I get the message "<member>is not a member of
<class>, because the type is not yet defined" in the Watch List. The
type is obviously defined, it's right there in the code, in the same
.cpp file that I debug, and yet the de{*word*81} can't recognize it. It's
hard to reproduce with small test projects, though it happens with
larger ones.
Tom
 
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

Alisdair Meredith [TeamB] wrote:
Quote
But release/debug is only part the story for C++ projects. All sorts
of build configurations might be imagines for different custom builds.
This can affect is a library is multi/single-threaded, links to the
standard library statically/dynamically, etc.
Or even UNICODE/ANSI builds, fast links for simple testing, full blown
release mode with embedded post compilation steps doing unit testing...
I'd really love to see all this implemented in a very rich configuration
manager.
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

Tamas Demjen < XXXX@XXXXX.COM >wrote:
Quote
All optimizations are (or should be) turned off while debugging.
Apparently there's a glitch, because sometimes I can't debug certain
variables at all. I get the message "<member>is not a member of
<class>, because the type is not yet defined" in the Watch List. The
type is obviously defined, it's right there in the code, in the same
.cpp file that I debug, and yet the de{*word*81} can't recognize it. It's
hard to reproduce with small test projects, though it happens with
larger ones.
Even worse, I frequently run into situations where I inspect a class,
for example MyClass, and then when I try to inspect a member of that
class I get a message to the effect that MyClass doesn't exist. This
happens, mind you, while I have MyClass open in the inspector.
Recently I've been having trouble inspecting a TnxTable object (a
NexusDB table). When I try to inspect an instance of this class, the
inspector sometimes opens one of the fields in the object rather than
the object itself. And no, John, I haven't submitted this to QC yet<g>.
As soon as I figure out how to reproduce it consistently I'll do that.
 

{smallsort}

Re:Re: Does D2005 have any project management advantages over BCB v6?

Brion,
There is stuff we can put into debug exes that we do not want to ship in release
exes: Symbol info, CodeGuard hooks.
Brion L. Webster wrote:
Quote
<delphi-inspired BCB ignorance showing>
What's the difference in C++Builder? Does it compile faster, or
with smaller .exe's or something?

Frankly, I've never had an opportunity to wonder why there's no
"debug/release mode" switch in Delphi - it all just works.

-Brion
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

"Will DeWitt Jr." < XXXX@XXXXX.COM >wrote in message
Quote
I distinctly recall a debate in the Delphi groups where someone (who I
believe had written a book on Delphi) extolled the virtues of releasing
your applications with full runtime debugging enabled (range checking,
overflow checking, I/O checking, etc). The poster said they'd rather
have a useful message pop up than have the program crash with nothing
giving the user a clue as to what went wrong. He went on to further
say that the slowdown in code execution was minimal compared to the
benefit of said error messages.

I came pretty close to never reading these ng's again after seeing that.
Shipping with all checking on is what I do, and it's what I would recommend
most other people to do. My customers value stability, reliability and
repeatability over out-and-out performance, and they know that an error
flagged the moment it occurs will get fixed by us quickly. Your priorities
are probably just different to mine.
- Roddy
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

Roddy Pratt wrote:
Quote
Shipping with all checking on is what I do, and it's what I would
recommend most other people to do. My customers value stability,
reliability and repeatability over out-and-out performance, and they
know that an error flagged the moment it occurs will get fixed by us
quickly. Your priorities are probably just different to mine.
Probably, at the time the other person was characterizing it as
essentially being stupid to ship without checks turned on because the
performance drop was, in his opinion, minimal.
At least you're being respectful about it being a choice. :P More
than I can say for the situation back then..
Will
--
Want a 64-bit Delphi compiler for AMD64 / IA-32e? Vote here--
qc.borland.com/wc/wc.exe/details
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

Roddy,
I haven't had my main app crash on a customer even once in the last 9 months. My
priority is to catch bugs before the product makes it the customer.
Roddy Pratt wrote:
Quote
Shipping with all checking on is what I do, and it's what I would recommend
most other people to do. My customers value stability, reliability and
repeatability over out-and-out performance, and they know that an error
flagged the moment it occurs will get fixed by us quickly. Your priorities
are probably just different to mine.

- Roddy


 

Re:Re: Does D2005 have any project management advantages over BCB v6?

Roddy Pratt wrote:
Quote

Shipping with all checking on is what I do, and it's what I would recommend
most other people to do. My customers value stability, reliability and
repeatability over out-and-out performance, and they know that an error
flagged the moment it occurs will get fixed by us quickly. Your priorities
are probably just different to mine.

Yes, differently people have different needs. In small apps, I always
do debug builds, but we deal with 100's Mb data and codeguard makes the
app unusable. What takes a few minutes or less in release builds can
take hours in debug build with codeguard on!
Customised option sets would allow us to have local settings for core
source files and full debugging on in non-vital areas. We do have code
that produces call stacks from exceptions/asserts etc so debugging info
is needed for these to be useful so we do sometimes ship the TDS with
the install.
Cheers
Russell
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

"Russell Hind" < XXXX@XXXXX.COM >wrote in message
Quote
Yes, differently people have different needs. In small apps, I always do
debug builds, but we deal with 100's Mb data and codeguard makes the app
unusable. What takes a few minutes or less in release builds can take
hours in debug build with codeguard on!

Ah... Codeguard... For some reason (I think a particular choice of 3-prd
party components, which will remain nameless ) I haven't been able to use CG
for a looong time. Also, CG seemed to indicate that some destructors for
static object weren't called when the app exited, which made it difficult
for me to find any 'real' leaks. [The leak(s) that CG showed up in the VCL
should also have made someone @ Borland deeply embarrassed.... ]
Quote
Customised option sets would allow us to have local settings for core
source files and full debugging on in non-vital areas. We do have code
that produces call stacks from exceptions/asserts etc so debugging info is
needed for these to be useful so we do sometimes ship the TDS with the
install.
Count me in - I do REALLY want that stuff, and I'm looking forward to
finding out what the BDS C++ is going to offer!
Quote
Cheers

Russell
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

"Will DeWitt Jr." < XXXX@XXXXX.COM >wrote in message
Quote
--
Want a 64-bit Delphi compiler for AMD64 / IA-32e? Vote here--

qc.borland.com/wc/wc.exe/details
Now, how could I have guessed that blazing performance is important to you?
:-)
I've been doing some real-time embedded work with gcc on a NIOS processor
recently, and am frankly scared by just how much effect the 'optimize' flags
have on code speed - overall, a factor of between 2 and 3. Worse, when you
turn on full optimization, a whole slew of extra warnings about "type
punning" greet you when you try and compile stuff - and to make matters
worse, debugging becomes near impossible...
- Roddy
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

"Randall Parker" < XXXX@XXXXX.COM >wrote in
message news:41c37e2a$ XXXX@XXXXX.COM ...
Quote
I haven't had my main app crash on a customer even once in the last 9
months. My priority is to catch bugs before the product makes it the
customer.

No dispute there.
In my defence, some of our apps have to deal with large installations of
broadcast equipment that we could never hope to duplicate in-house. And,
they run on customer machines, not ones provided by us, so there are always
some permutations that we maybe simply fail to anticipate (NT4.0 with IE3.0
was a recent one). For us it's important to catch those "unknown unknowns"
[(c) 2003 D.Rumsfeld] as gracefully as we can...
- Roddy
 

Re:Re: Does D2005 have any project management advantages over BCB v6?

OBones < XXXX@XXXXX.COM >wrote:
Quote
Alisdair Meredith [TeamB] wrote:

>But release/debug is only part the story for C++ projects. All sorts
>of build configurations might be imagines for different custom builds.
>This can affect is a library is multi/single-threaded, links to the
>standard library statically/dynamically, etc.

Or even UNICODE/ANSI builds, fast links for simple testing, full blown
release mode with embedded post compilation steps doing unit testing...
We do this (Debug/Release x Unicode/Ansi x
staticRTL/dynamicRTL) for /all/ our in-house
libs, as they are used in many different apps.
And for some apps we have this times a couple
of customized versions.
VC6 used to give us some problems to handle
this. However, VS7.1 has a configuration dlg
that does most of what we need.
Quote
[...]
Schobi
--
XXXX@XXXXX.COM is never read
I'm Schobi at suespammers dot org
"The presence of those seeking the truth is infinitely
to be prefered to those thinking they've found it."
Terry Pratchett