Results 1 to 13 of 13

Thread: Lazarus 1.8 RC1

  1. #1

    Lazarus 1.8 RC1

    Voor wie het nog niet wist: de 1e release candidate van Lazarus 1.8 is uit.
    Zie http://forum.lazarus.freepascal.org/...c,36907.0.html.

    Test hem uit. Nu heb je nog een kans om fouten eruit te halen voordat 1.8.0 definitief is.

    Bart

  2. #2
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Goed werk . Zodra ik een gaatje heb, zal ik het testen met mijn aangegeven bug.
    Delphi is great. Lazarus is more powerfull

  3. #3
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Hallo Bart,

    Mijn probleem is nog niet opgelost in de rc1. Ik heb dit reeds gemeld in de bugtracker (https://bugs.freepascal.org/view.php?id=30845)
    Ik kan geen nieuw event aanmaken in een inherited form als deze al is gekoppeld aan een event in de mainform.
    Het is een beetje vervelend aan het worden om eerst handmatig een event te maken, de referentie te plaatsen in de section van de (form)class, de koppeling te verwijderen om vervolgens een nieuwe koppeling te maken van de huidige form.
    Attached Files Attached Files
    Delphi is great. Lazarus is more powerfull

  4. #4
    Hey John, kun je niet zelf ff een patch maken

    Dit lijkt mij zo'n bugtracker-entry die er jaren onopgelost in blijft staan

  5. #5
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Rik, als ik de tijd had en de kennis van Lazarus had ik het zo gedaan. Echter is dit een probleem wat zich voordoet vanaf 1.6x. En dat vind ik jammer.
    Delphi is great. Lazarus is more powerfull

  6. #6
    Kun je wel de revisie vinden die deze bug introduceert?

  7. #7
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    O jee, hoe moet ik dat vinden. Ik weet wel dat ik het probleem niet had met 1.44 32b/ fpc 2.64.

    Ik heb het net nog even getest met 1.44 / fpc 2.64. Daar gaat het goed. Al merk ik wel dat deze release niet weet dat er al een zelfde event aanwezig is in de mainform als ik in de inherited form dezelfe event gebruikt. In Delphi wordt dan het woord inherited gebruikt.
    Code:
    //mainform (tform1 = class(tform))
    
    procedure tform1.formcreate(sender : tobject);
    begin
    
    end;
    
    //inheritedform (tform11 = class(tform1))
    
    procedure tform11.formcreate(sender : tobject);
    begin
      inherited;
    end;
    Last edited by jkuiper; 02-Jun-17 at 10:24.
    Delphi is great. Lazarus is more powerfull

  8. #8
    Ik heb "even" voor je getest welke revision van Lazarus deze bug introduceert.

    Om de bug naar voor te krijgen deed ik het volgende:
    Open je test-project
    Kies voor File > New ...
    Kies voor Inherited project component en kies voor MainForm
    Dubbelklik op de OnCreate event van het nieuwe form in de object inspector

    Revision 50005 van Lazarus maakt een FormCreate met inherited
    Revision 50006 doet dit niet. De tweede dubbelklik geeft een foutmelding.

    Dit probleem doet zich voor bij alle events die ook in je base-form staan.

    Het probleem ligt dus aan de wijzigingen van codecompletiontool.pas in revision 50005 naar 50006.

    Commentaar toegevoegd in bugtrack.

    (Lazarus revision 50006 is van 8 oktober 2015)

    Edit: Als je het probleem alvast op wilt lossen kun je de volgende regel aanpassen:
    In lazarus/component/codetools/codecompletiontool.pas
    In procedure ProcExistsInCodeCompleteClass() function (rond regel 465).
    Onder de regel van
    Code:
    Result := (FindProcNode(....
    if not Result then
    kun je dit van maken
    Code:
    Result := (FindProcNode(....
    if false {dit voeg je dus toe} and not Result then
    Daarna compileer je Lazarus opnieuw en het probleem zou opgelost moeten zijn.
    Het introduceert misschien weer een ander probleem maar dat zie je dan wel weer

    Mmm, dat werkt wel voor revision 50006 maar niet in trunk 55093.
    Last edited by rvk; 02-Jun-17 at 16:22.

  9. #9
    Mattias mag het oplossen

    Bart

  10. #10
    Inmiddels is het aan Ondrej om het op te lossen

  11. #11
    Probleem is opgelost in Lazarus rev. 55240.

    Kijk... met een heus nieuw dialoogvenster

    Click image for larger version. 

Name:	2017-06-06 10_41_38-Override or jump.png 
Views:	102 
Size:	6.6 KB 
ID:	7568

    Nu maar wachten op iemand die hem naar fixes duwt anders moet je trunk gebruiken of nog even (lang) wachten.
    Last edited by rvk; 06-Jun-17 at 11:49.

  12. #12
    John Kuiper
    Join Date
    Apr 2007
    Location
    Almere
    Posts
    8,747
    Oh, ik wacht wel tot 1.8. Is zelfs netter met een dialog dan in delphi!
    Delphi is great. Lazarus is more powerfull

  13. #13
    Quote Originally Posted by jkuiper View Post
    Oh, ik wacht wel tot 1.8. Is zelfs netter met een dialog dan in delphi!
    Ja, maar dat bedoel ik dus ook.

    Er zijn al Release Canditates voor 1.8 (ik zag volgens mij al RC2 staan).
    En als niemand deze wijziging naar de fixes voor 1.8 duwt dan zal deze dus NIET in Lazarus 1.8 zitten.

    En dan mag je nog zo'n half jaartje of langer wachten op deze fix

    Edit: Ok, ik zie dat deze wel al naar fixes geduwd is:
    http://wiki.freepascal.org/Lazarus_1.8_fixes_branch
    r55240 IDE: TMainIDE.OnPropHookCreateMethod: fixed creating JITMethod for ancestor

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •