Commit Graph

2897 Commits

Author SHA1 Message Date
Luiz Rafael Culik
a37353b894 See changelog 20000528-21:50 gmt-3 2000-05-29 00:46:06 +00:00
Maurilio Longo
3e886ea141 20000529-00:01 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 22:02:50 +00:00
Viktor Szakats
eb952f521c 2000-05-28 22:57 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-05-28 21:01:27 +00:00
Luiz Rafael Culik
c365efd38b see changelog 20000528-22:50 gmt-3 2000-05-28 20:15:30 +00:00
Luiz Rafael Culik
2a1d49817b See changelog 20000528-22:50 2000-05-28 20:14:21 +00:00
Luiz Rafael Culik
e71a9651ba See changelog 20000528-22:50 gmt -3 2000-05-28 20:10:00 +00:00
Jean-Francois Lefebvre
937101dd91 *harbour/include/hboo.ch
*harbour/include/hbclass.ch
 Now support MI, scoping, fowarding and delegating
 Also support 10 chars limit by not prefixing the Classname when in 10 chars mode

*harbour/include/hbsetup.ch
 Allow the configuration of Hidden message

*harbour/source/rtl/objfunc.prg
 added function __objDerivedFrom(oSelf, oObj | cClassName)

*harbour/source/rtl/tclass.prg
 Major modification to implement MI & scoping
 Added message :Super to acces frist superclass object instance
 Added message :IsDerivedFrom(oObj | cClassName ) (Xbase++ comp.)

*harbour/source/vm/proc.c
  added char * hb_procname( int iLevel, char * szName )
  extracted from HB_FUNC( PROCNAME ) to allow it to be called from c
  HB_FUNC( PROCNAME ) modified to call the previous'one

*harbour/source/vm/classes.c
  Major modification to implement MI & Scoping
  Added function Sender() used by delegating to allow full polymorphism
  Added function __CLS_PARAM used by the preprocessor
2000-05-28 20:09:56 +00:00
Viktor Szakats
be81ee127d 2000-05-27 23:12 UTC+0100 Victor Szakats <info@szelvesz.hu> 2000-05-28 19:52:03 +00:00
Maurilio Longo
4a7c3337a0 20000528-21:38 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 19:39:31 +00:00
Maurilio Longo
d478f28dbf 20000528-17:41 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 15:44:39 +00:00
Maurilio Longo
3b8dd5b3a9 20000528-13:55 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 11:55:29 +00:00
Maurilio Longo
c87f2b9dc1 20000528-13:45 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 11:46:18 +00:00
Maurilio Longo
0c367f2906 20000528-13:41 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 11:42:50 +00:00
Maurilio Longo
9b5cef673f 20000528-13:08 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-28 11:11:17 +00:00
Paul Tucker
cb454fc1f1 UPdates to makefile.bc and vc 2000-05-28 06:17:45 +00:00
Luiz Rafael Culik
3301c48805 see changelog 20000527 -08:33 2000-05-27 21:56:45 +00:00
Luiz Rafael Culik
16a39a2c7f See changelog 20000527-08:33 GMT -3 2000-05-27 11:35:34 +00:00
Ron Pinkas
04837b2eaa 2000-05-22 10:40 UTC-800 Ron Pinkas <Ron@Profit-Master.com>
* include/hbvmpub.h
     * Modified HB_FS_FIRST to  ( ( HB_SYMBOLSCOPE ) 0x04 )

   * source/compiler/harbour.c
     * Minor optimization when storing HB_FS_FIRST

   * source/pp/pptable.c
     - Removed built-in rule, for STRUCTURE support

   * source/vm/runner.c
     ! Fixed bug when there is no startup procedure

   * source/rtl/tclass.prg
     - Removed HB_Structure()

   * include/hbextern.ch
     * Moved EXTERNAL HB_STRUCTURE to separate section

   * tests/teststru.prg
     + added #INCLUDE "..\Include\HBSTRUC.CH"

   + include/hbstruc.ch

   + source/rtl/hbstruc.prg

   * makefile.bc
     + Added rules for hbstruc.prg
2000-05-26 07:39:42 +00:00
David G. Holm
8379f01566 See ChangeLog entry 2000-05-25 12:45 UTC-0400 David G. Holm <dholm@jsd-llc.com> 2000-05-25 16:50:07 +00:00
Ryszard Glab
61737c34d9 ChangeLog 20000524-17:55 GMT+1 2000-05-24 15:49:41 +00:00
David G. Holm
814163b5b3 See ChangeLog 2000-05-24 10:35 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-24 14:38:37 +00:00
Paul Tucker
cb5c7083d4 Add missing cast to xgrab call 2000-05-24 04:25:29 +00:00
David G. Holm
c781ff65df See ChangeLog entry 2000-05-23 16:45 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-23 20:52:53 +00:00
David G. Holm
0a3c8ed810 See ChangeLog entry 2000-05-23 13:40 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-23 17:45:11 +00:00
David G. Holm
38804ba817 See ChangeLog entry 2000-05-23 12:30 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-23 16:34:30 +00:00
Ron Pinkas
9f05928bd2 20000522-10:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     ! Fixed ambigious else in hb_StrongType()

   * source/pp/pptable.c
     ! Fixed STRUCTURE rule to allow nesting of structures.

   * tests/teststru.prg
     * Enhanced to demonstrate Structure as element of other structure and self reference capabilities.
2000-05-23 01:31:34 +00:00
Viktor Szakats
23f1982817 20000523-02:58 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-23 00:56:50 +00:00
Viktor Szakats
7c3033e04e 20000523-02:06 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-23 00:06:44 +00:00
Viktor Szakats
6a0ab26de6 20000523-02:06 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-23 00:03:41 +00:00
David G. Holm
b055723311 See ChangeLog entry 2000-05-22 18:15 GMT-4 David G. Holm <dholm@jsd-llc.com> 2000-05-22 22:19:23 +00:00
Ron Pinkas
e6afd45d90 20000522-09:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* contrib/hbclip.ch
     ! Updated to reflect latest sysntax.

   * tests/testwarn.ch
     ! Updated translate segment to reflect latest sysntax.
2000-05-22 17:28:03 +00:00
Ron Pinkas
30020a437f 20000522-09:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbextern.ch
     + Added HB_STRUCTURE to list of Externals
2000-05-22 16:47:45 +00:00
Ron Pinkas
5dafe5ee47 20000522-09:20 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.c
     + Added code to main() to process symbols and look for the first symbol in the prg and give it scope HB_FS_FIRST

   * source/compiler/genc.c
     + Added check for HB_FS_FIRST in the symbol processing loop, and output to the symbol table.

   * source/vm/hvm.c
     ! Fixed bug where if first symbol was an init symbol, it got executed twice.

   * source/vm/runner.c
     + Added logic to look for first symbol, to provide correct startup.
     ! Fixed bug where if first symbol was an init symbol, it got executed twice.

   * source/rtl/tclass.prg
     ! Corrected minor typo in HB_Structure()

   * tests/teststru.prg
     ! Corrected minor typo.

   + tests/testinit.prg
     + Added file to test proper startup processing.
2000-05-22 16:27:20 +00:00
Ron Pinkas
eb2d8afdb4 20000522-06:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added "as structure", "as stru", "as array of structure", "as array of stru"

   * source/compiler/hbpcode.c
     * Improved some logic in hb_StrongType()

   * source/vm/hvm.c
     ! Corrected startup symbol when having to use Main() as per Ryszard.

   * source/pp/pptable.c
     + Added the equivalent of:
        #COMMANDS STRUCTURE <StruName> <Var1> AS <Type1> [, <VarN> AS <TypeN> ] => ;
                  STATIC __<StruName> := {|| IF( __<StruName> == NIL, , ) , HB_Structure( <"StruName">, { <"Var1"> [, <"VarN">] } )} ;;
                  DECLARE <StruName> <Var1> AS <Type1> [ <VarN> AS <TypeN> ] ;;
                  #TRANSLATE AS NEW <ClassName> => AS CLASS <StruName> := ( Eval( __<StruName> ), HB_Structure( <StruName> ) )

	#TRANSLATE AS NEW <ClassName> => AS CLASS <ClassName> := <ClassName>():New()

   * source/rtl/tclass.prg
     + Added Function HB_Structure() ( Fully Declared! ) This function is used internally, but may be freely called from Clipper level.
       It Aceepts Parameter 1 Structure Name, and optional parameter 2, as array of structure variable names.
       If called with 2nd parameter, returns NIL (just creates the new Structure), if called with just parameter 1, it returns
       new instance of defined structure.

   + tests\teststru.prg
     + Added demo for new structure syntax
2000-05-22 13:53:14 +00:00
Paul Tucker
82c9bb8579 Update ComClass declaration 2000-05-22 05:51:04 +00:00
Ron Pinkas
34b7814957 20000521-21:50 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.y
     - Removed few unneeded hb_strdup() from calls to hb_compClassFind()
     + Added auto addition of Method Declaration for the SET Function of a declared Var of a declared class.

   * source/compiler/harbour.c
     - Removed few unneeded hb_strdup() from calls to hb_compClassFind()
2000-05-22 04:53:45 +00:00
Ron Pinkas
a2b2b0ab65 20000521-14:42 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* tests/testwarn.prg
     ! Consolidate #translate rules, and verified that it can compile under Clipper
2000-05-21 21:43:25 +00:00
Ron Pinkas
c7e237273e 20000521-14:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     + Added "as class"

   * source/compiler/harbour.y
     ! Fixed shift conflicts and reduce conflicts.
     * Modified rules for syntax "AS Object ClassName" to "As Class ClassName"

   * tests/testwarn.prg
     ! Corrected the #translate to reflect latest syntax
     ! Corrected syntax to use AS CLASS ClassName instead of AS OBJECT ClassName.
2000-05-21 21:19:51 +00:00
Ron Pinkas
8e184f78a4 20000520-21:30 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbvmpub.h
     + Added: #define HB_FS_FIRST    ( ( HB_SYMBOLSCOPE ) 0x40 )

   * source/compiler/genc.c
     + Added logic to add | HB_FS_FIRST to first defined symbol in a prg.

   * source/vm/hvm.c
     * Modified hb_vmProcessSymbols() to llok for HB_FS_FIRST for startup procedure instead of any first symbol.

   * source/compiler/harbour.y
     * Minor consilidation in AsType
       *** I am aware of 6 reduce conflicts resulting from previous removal of FROM_CLASS, and am looking into it. ***

   * tests/testwarn.prg
     ! Corrected the #translate to reflect latest syntax
2000-05-21 04:55:06 +00:00
Paul Tucker
2a97599b58 include "hbapigt.h" for proper c++ support 2000-05-21 04:38:05 +00:00
Ron Pinkas
f778702d2d 20000520-10:07 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.l
     - Removed rule for "FROM CLASS"
     + Added "AS Obj" as an abrreviation for "AS Object"

   * source/compiler/harbour.y
     * Changed "AS Object FROM CLASS ClassName" to "As Object ClassName"

   * tests/testwarn.prg
     * Modified code to demonstrate new syntax for "As Object..."
2000-05-20 17:12:20 +00:00
Ryszard Glab
c4309a12ca ChangeLog 20000520-15:25 GMT+1 2000-05-20 13:20:42 +00:00
Ryszard Glab
8e16af8da6 ChangeLog 20000520-14:45 GMT+1 2000-05-20 12:42:32 +00:00
Luiz Rafael Culik
7a71ef51aa See changelog 20000519-23:50 GMT -3 2000-05-20 02:48:50 +00:00
Ron Pinkas
9339186a1b 20000519-15:40 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hbpcode.c
     + Minor correction in hb_compStrongType()
2000-05-19 22:41:06 +00:00
Ron Pinkas
9f3912cbd9 20000519-15:28 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     + Added member pParamClasses to COMDECLARED
     * Changed hb_comp_szClass to hb_comp_szFromClass

   * source/compiler/harbour.y
     * Changed hb_comp_szClass to hb_comp_szFromClass

   * source/compiler/harbour.c
     + Added support for declared parameters of Functions/Methods AS Object FROM CLASS ...

   * source/compiler/hbpcode.c
     + Added Strong Type checking for declared parameters of Functions/Methods AS Object FROM CLASS ...

   * tests/testwarn.prg
     + Added code to demonstrate warnings for declared parameters of Functions/Methods AS Object FROM CLASS ...
2000-05-19 22:31:19 +00:00
Ron Pinkas
7c2cac0386 20000519-10:17 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.y
   * source/compiler/harbour.c
   * source/compiler/hbpcode.c
     + Added support for AS Array Of Objects FROM CLASS ClassName syntax and type checking.

   * tests/testwarn.prg
     + Added code to demonstrate syntax and warnings for AS Array Of Objects FROM CLASS ClassName syntax and type checking.
2000-05-19 17:19:58 +00:00
Ron Pinkas
59501e617d 20000519-02:05 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     ! Consoldated COMDECLARED and COMMETHOD into COMDECLARED
     + Added member pClass to COMDECLARED
     + Added member pLast to COMCLASS

   * source/compiler/harbour.y
     + Added support for Methods/Datas of type Object of a declared Class.

   * source/compiler/harbour.c
     ! Fixed bug in hb_compMethodAdd()

   * source/compiler/hbpcode.c
     + Added Strong Type Checking to Objects syntax.

   * include/hberrors.h
     + Added : "HB_COMP_WARN_MESSAGE_NOT_FOUND"

   * source/compiler/hbgenerr.c
     + Added : "3Message \'%s\' not known in Class \'%s\'"

   * tests/testwarn.prg
     + Added code to demonstrate syntax and warnings for OO Strong Type Checking.
2000-05-19 09:25:06 +00:00
Maurilio Longo
ce6f538e36 20000516-22:48 GMT+2 Maurilio Longo <maurilio.longo@libero.it> 2000-05-16 20:54:14 +00:00
April White
2ad1cdfeef 20000516-03:55 GMT+4 April White <awhite@user.rose.com> 2000-05-16 04:01:13 +00:00