Files
harbour-core/harbour/utils/hbtest/Makefile
Przemyslaw Czerpak 0e9b041baa 2009-07-03 02:24 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/macro/macro.y
  * harbour/source/macro/macro.yyc
  * harbour/source/compiler/harbour.y
  * harbour/source/compiler/harbour.yyc
    % reduced INASSING definition - thanks to Xavi for information

  * harbour/source/compiler/hbopt.c
    ! fixed stupid bug in logical expression optimization - thanks to Randy
      for self contain example

  * harbour/include/hbapi.h
  * harbour/include/hbmacro.h
  * harbour/include/hbexprb.c
  * harbour/source/vm/macro.c
  * harbour/source/vm/hvm.c
  * harbour/source/macro/macro.y
  * harbour/source/macro/macro.yyc
    + added direct support for pushing references to macro expressions.
      It resolves the problem with Clipper compatibility (thanks to Alex
      for information and example) in code like:
         m->var := {0}
         &("var[1]") += 10
      and also many other things, f.e. now Harbour can cleanly compile
      and execute this code:
            proc main
               local s
               m->o := errorNew()
               s:="o:tries"
               ? m->o:tries
               ? &s
               ? &(s+"+=2")
               ? m->o:tries
               ? &(s+":=3")
               ? m->o:tries
               ?
               &s := 4
               ? m->o:tries
               &s -= 2
               ? m->o:tries
               &s++
               ? m->o:tries
               ?
               s := "o"
               m->o := 1
               ? &s
               &s := &s + 4
               ? &s
               ? &s += 5
               ? --&s
               ?
               s := "o[2]"
               m->o := { 1, 2 }
               ? &s
               &s := &s + 4
               ? &s
               ? &s += 5
               ? --&s
            return

  * harbour/utils/hbtest/Makefile
    * force hbtest compilation with line numbers - information about line
      numbers is important part of this test.
2009-07-03 00:24:36 +00:00

46 lines
501 B
Makefile

#
# $Id$
#
ifeq ($(HB_MAIN),)
HB_MAIN = std
endif
ROOT = ../../
PRG_SOURCES=\
hbtest.prg \
rt_array.prg \
rt_date.prg \
rt_file.prg \
rt_hvm.prg \
rt_hvma.prg \
rt_math.prg \
rt_misc.prg \
rt_mt.prg \
rt_str.prg \
rt_stra.prg \
rt_trans.prg \
rt_class.prg \
C_SOURCES=\
rt_miscc.c \
PRG_MAIN=hbtest.prg
LIBS=\
hbdebug \
hbvm \
hbrtl \
hblang \
hbrdd \
hbrtl \
hbvm \
hbmacro \
hbpp \
hbcommon \
include $(TOP)$(ROOT)config/bin.cf
HB_USER_PRGFLAGS += -l-