Re: [fpc-pascal] IntList

2010-10-19 Thread Juha Manninen (gmail)
On Tuesday 19 October 2010 19:10:39 Luiz Americo Pereira Camara wrote: Yes it's ready in fpc 240: uses Fgl; type TIntegerList = specialize TFPGList Integer; Well, yes. It is almost as good as a dedicated class. It has a Sort method but you must feed the compare function for it. It

[fpc-pascal] IntList

2010-10-18 Thread Juha Manninen (gmail)
Hi In Lazarus project jcf2 component has an IntList class which is poorly implemented. It depends on integer and pointer being the same size. I will later suggest to replace it. I have a better IntList. See: http://github.com/JuhaManninen/Pascal/blob/master/IntList/intlist.pas It is similar

[fpc-pascal] TInterfacedObject memory management

2010-10-17 Thread Juha Manninen (gmail)
Hi I have a program that creates a TInterfacedObject and nothing else. program project1; {$mode objfpc}{$H+} uses Classes; var io: TInterfacedObject; begin io := TInterfacedObject.Create; end. I compile it with -gh (heap trace) and get the following output: [DBGTGT] Heap dump by

Re: [fpc-pascal] TInterfacedObject memory management

2010-10-17 Thread Juha Manninen (gmail)
On Sunday 17 October 2010 15:01:37 Paul Ishenin wrote: Try the same but replace io type to IUnknown. Thanks Marco and Paul. I should have known this one. Regards, Juha ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org

Re: [fpc-pascal] How to get to Range Check Error location

2010-10-03 Thread Juha Manninen (gmail)
On Saturday 02 October 2010 17:47:27 José Mejuto wrote: The assembly window in Lazarus is shown when no backtrace line is available to point the cursor in, so open callstack View - Debug - Callstack and you will see that there is no available backtrace, maybe except the fpc sources without

Re: [fpc-pascal] How to get to Range Check Error location

2010-10-03 Thread Juha Manninen (gmail)
On Sunday 03 October 2010 19:48:22 C Western wrote: Please report the bug. Yes the result is integer and in 64 bits, this looks like a problem. I think this is an issue I reported back in March, though I can now see I uploaded the wrong patch for it Sorry - meant to add:

Re: [fpc-pascal] How to get to Range Check Error location

2010-10-03 Thread Juha Manninen (gmail)
On Sunday 03 October 2010 23:20:05 Juha Manninen (gmail) wrote: Anyway this is a good example of a valid Lazarus patch that is ignored, again. :-( Ok, sorry Lazarus guys, I must take this one back. The valid patch was uploaded only today so it was not really ignored. Now there are 2 valid

[fpc-pascal] How to get to Range Check Error location

2010-10-02 Thread Juha Manninen (gmail)
Hi I asked this on Lazarus list but it belongs better here. So, how to get to the source line that gives a range check error? I built the whole Lazarus with -Cr and debug it. When the range error happens, it only shows a RunError or similar and doesn't show me the faulty source line. When

Re: [fpc-pascal] How to get to Range Check Error location

2010-10-02 Thread Juha Manninen (gmail)
On Saturday 02 October 2010 12:21:20 Jonas Maebe wrote: Compile with -gl, or set a breakpoint on FPC_RANGEERROR Forgot to tell, I compiled with -gw -gh. -gw should be as good as -gl. Now I tried with -gl but no luck. I get an Assembly window:

Re: [fpc-pascal] How to get to Range Check Error location

2010-10-02 Thread Juha Manninen (gmail)
On Saturday 02 October 2010 16:22:02 Honza wrote: I just tried and can confirm that a LCL app running inside Lazarus (r27491), having turned on range checks is able to perfectly catch and show the place of an range check error (Ubuntu 10.04/AMD64). What I've not tried, but suggest to try, is

Re: [fpc-pascal] How to get to Range Check Error location

2010-10-02 Thread Juha Manninen (gmail)
On Saturday 02 October 2010 16:45:51 Jonas Maebe wrote: Forgot to tell, I compiled with -gw -gh. -gw should be as good as -gl. It has nothing to do with being as good as, they do different things (just like -gw and -gh do different things). I have used only -gw and debugging works fine.

Re: [fpc-pascal] Fwd: Delphi incompatible conditionals?

2010-10-01 Thread Juha Manninen (gmail)
On Friday 01 October 2010 19:33:48 Mark Daems wrote: ... And it's a weird behaviour, because it's all within an {$IFDEF FPC} construct. Why does delphi even try to interprete it? Somebody knows how to avoid the problem? Try this instead: {$IFNDEF FPC} // Can be empty {$ELSE} ...

[fpc-pascal] heap size free heap

2010-09-14 Thread Juha Manninen (gmail)
Hi Maybe someone here knows... I built Lazarus with -gh, started it and closed without doing anything else. --- Heap dump by heaptrc unit 717866 memory blocks allocated : 81646458/83984784 717866 memory blocks freed : 81646458/83984784 0 unfreed memory blocks : 0 True heap size : 851968

[fpc-pascal] Nesting

2010-09-13 Thread Juha Manninen (gmail)
A new Lazarus review : http://delphimax.wordpress.com/2010/09/13/freepascal-and-lazarus-success-or- failure/ has this comment about Lazarus source: --- Abundant use of the Exit() command instead of nesting code in If/then/else. It has been proven (last time in Delphi Informant Magazine) that

Re: [fpc-pascal] TreeView and Nonrecursion

2010-09-02 Thread Juha Manninen (gmail)
On Thursday 02 September 2010 00:47:23 José Mejuto wrote: You must know at which node a new node must be inserted... If your input data contains a string which always identifies the parent node then you can map the string - parent node and find it later for adding a child node. Pseudo code

[fpc-pascal] Hashmap for integers

2010-08-22 Thread Juha Manninen (gmail)
Hi Is there an implementation of a hash map where the keys are integers. It is needed when the integers are too big for a lookup array. I only need check the existence of keys so the data type is not important. About like this: var Len: integer; SeenLen: TIntMap; // or whatever the type is

Re: [fpc-pascal] Hashmap for integers

2010-08-22 Thread Juha Manninen (gmail)
On Sunday 22 August 2010 18:45:04 Jeppe Johansen wrote: I don't think the name map is misleading. It does exactly what a map does. It maps a type Key to another type Value. A list maps an integer(index) to a type Value The search is of course based on a list. Hash tables, as far as I know, are

Re: [fpc-pascal] Hashmap for integers

2010-08-22 Thread Juha Manninen (gmail)
On Sunday 22 August 2010 18:51:21 Andreas Schneider wrote: Afaik, inserting items into a sorted List is done via InsertSort, which is the fastest way (O(n))to go (IMHO), so you do /not/ have to resort the list. True. I could optimize the current implementation a little. Now I insert and then

Re: [fpc-pascal] Hashmap for integers

2010-08-22 Thread Juha Manninen (gmail)
On Sunday 22 August 2010 17:34:55 Andreas Schneider wrote: uses fgl; type TIntMap = specialize TFPGMapInteger, Integer; //Maps Int -- Int I compared the performance of this generics map to a simple integer list. The map was much slower and it also ate huge amouts of memory, 1.5 GB.

Re: [fpc-pascal] OFF TOPIC - how I can migrate of Delphi to FPC

2010-08-14 Thread Juha Manninen (gmail)
On Saturday 14 August 2010 20:04:33 Marcos Douglas wrote: 3- Do exists something I can do with Delphi but not do with FPC? Especialy on Windows. ... 7- Is there any other factors we should consider before making this migration, which was not written above? 1. Are you targeting for