Jump to content

Lars Fosdal

Administrators
  • Content Count

    3416
  • Joined

  • Last visited

  • Days Won

    113

Everything posted by Lars Fosdal

  1. TBH, I am not sure that can be implemented without either digging into the debugger or using techniques like those in EurekaLog where it appears they inject their own exception class that is thread aware? It was more of a wish list for the debugger team, than for GExperts.
  2. I'd like "Disable break on exception this thread" "Disable break on exception in other threads" - limiting the breaks to the current thread or threads spawned in the current thread.
  3. Neat! Did it survive patch 2?
  4. Lars Fosdal

    Does debugger handle WITH better in latest versions, 10.3+?

    Indeed. Such a warning should also apply to parameters and local variables. program WhyNotWith; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils; type TParam = class private FBar: Integer; FFoo: Integer; public constructor Create; virtual; property Foo: Integer read FFoo write FFoo; property Bar: Integer read FBar write FBar; procedure Dump(const Title: string); end; TOuter = class(TParam) public constructor Create; override; procedure Process(const Param: TParam; var Bar: Integer); end; { TOuter } constructor TOuter.Create; begin Inherited; end; // No warnings to be seen procedure TOuter.Process(const Param: TParam; var Bar: Integer); var Foo: Integer; begin Foo := 0; Bar := 7; With Param do begin Bar := Bar * Bar; Foo := Foo + Bar; end; Writeln('Process', ' Foo:', Foo, ' Bar:', Bar); end; { TParam } constructor TParam.Create; begin Foo := 2; Bar := 5; end; procedure TParam.Dump(const Title: string); begin Writeln(Title, ' Foo:', Foo, ' Bar:', Bar); end; procedure Test; var Param: TParam; Outer: TOuter; Bar: Integer; begin Bar := 9; Param := TParam.Create; Outer := TOuter.Create; Outer.Process(Param, Bar); Param.Dump('Param'); Outer.Dump('Outer'); Writeln('Bar ', Bar); end; begin try try Test; except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end; finally Write('Press Enter: '); Readln; end; end.
  5. Lars Fosdal

    Does debugger handle WITH better in latest versions, 10.3+?

    It doesn't need to be complicated. If the type of the variable you reference by with contains a field or property that has the same name as a local field or property - you do not get a hint or a warning, but the property set will be the on the with reference, not on the class instance doing the with reference.
  6. Lars Fosdal

    Help, I'm trying to move an application to Rio.

    "over there"? Huh? What? I give up.
  7. Lars Fosdal

    Help, I'm trying to move an application to Rio.

    Are you able to compile a fresh new FMX project? If you compare the project file between the old project and the new one, are there any discrepancies that stand out?
  8. Lars Fosdal

    Help, I'm trying to move an application to Rio.

    The actual compiler output after your changes in the second post would be informative. If they are just "cannot resolve" errors, you need to check your .dproj file for invalid paths
  9. Lars Fosdal

    Help, I'm trying to move an application to Rio.

    Details are important. Without accurate details, you might as well be posting "something is wrong".
  10. Lars Fosdal

    Help, I'm trying to move an application to Rio.

    ...ponders if he should guess what kind of error, but decides not to...
  11. Lars Fosdal

    Does debugger handle WITH better in latest versions, 10.3+?

    I very rarely use with. Too many pitfalls.
  12. Lars Fosdal

    Patch 2 for RAD Studio 10.4 now available

    Have a good vacation and stay healthy.
  13. Lars Fosdal

    Are we just "Cash Cows"?

    That is still very much an open-ended question, especially if you consider the power of the Mac Pro. https://www.theverge.com/2020/6/23/21296365/apple-mac-arm-processor-silicon-chips-performance-power-speed-wwdc-2020
  14. Lars Fosdal

    Are we just "Cash Cows"?

    ARM is an architecture, not a brand. The Apple chips are ARM based.
  15. Lars Fosdal

    Are we just "Cash Cows"?

    OMG, Yes!
  16. Lars Fosdal

    Are we just "Cash Cows"?

    Well, the next MacBook Pro will be ARM64. If that exercise works out, will any of the Macs remain x64? There already is a Windows for ARM64. The only constant is change.
  17. Lars Fosdal

    Are we just "Cash Cows"?

    Like the rest of us. Meanwhile, we make the best of it until we or it retires.
  18. Lars Fosdal

    Are we just "Cash Cows"?

    A language dies when it is no longer in use. COBOL is alive and kicking, but good luck finding young COBOL programmers. There is no shortage of things that can be improved in Delphi. I wish they would do more with the language. Especially generics constraints need more love. Attributes are still somewhat half-baked. I wish they would do more to improve the generated code for efficient memory access and math / vector math. I'd love an ARM64 compiler for Windows, as well as Linux/R pie. I wish the debuggers just worked and kept working and were smarter with regards to multi-threaded code. I wish the IDE would do incremental background compilation so that running your edited code was near instantaneous. But, in the mean time I code... And rant.
  19. Lars Fosdal

    Are we just "Cash Cows"?

    As I said, they need to spend more resources on testing.
  20. Lars Fosdal

    Are we just "Cash Cows"?

    I agree, it is not something you easily add as an afterthought. That said, when modifying or refactoring legacy code - unit testing and integration testing is more than a little helpful. Testing is the only way to ensure that you have achieved only the changes you intended and haven't inadvertently introduced something unfortunate. When writing new code, writing unit tests helps you write testable code. It is extra work, but it really pays off.
  21. Lars Fosdal

    Are we just "Cash Cows"?

    When you sit on millions of lines of code, in projects with several developers, implementing thousands of functions, and integrating with numerous systems, you need automated unit testing, automated integration testing and dedicated testers with proper test plans. We are not talking about one-man toy projects here.
  22. Lars Fosdal

    Are we just "Cash Cows"?

    We usually hold off moving to new major versions until Update 1 is out, but we do make the move. As far as I am aware, nobody on my team has ever had a problem with moving their IDEs to new hardware after XE4, and we use the regular named user licenses w/o any license server. Apart from the quality of the initial release, my biggest Idera/EMBT gripe at the moment is understanding why the f..k they keep spamming me with emails suggesting that I order 10.4 with a discount. Not only do I get these from EMBT, but also from the local reseller. I am on a subscription, FFS!
  23. Lars Fosdal

    Are we just "Cash Cows"?

    IMO, the development resources are probably sufficient, but as for most organizations, there simply isn't enough resource dedicated to testing - manual or automated.
  24. Lars Fosdal

    Are we just "Cash Cows"?

    That reminded me of
  25. Lars Fosdal

    Are we just "Cash Cows"?

    If you cannot say more, you should not have said anything in the first place, IMO. If you are making statements based on "private" information, you are betraying someone's trust. Nothing constructive comes from posts like these. None of the commentary here will affect Idera/Embarcadero's way of doing business what so ever.
×