2017-09-08 16:00 UTC Viktor Szakats (vszakats users.noreply.github.com)

* *
    * partial sync with the 3.4 fork codebase. These are the things
      synces for the most part:
      - copyright headers
      - grammar/typos in comments and some readmes
      - comment/whitespace/decorations
      - variable scoping in C files
      - DO CASE/SWITCH and some other alternate syntax usage
      - minimal amount of human readable text in strings
      - minor code updates
      - HB_TRACE() void * casts for pointers and few other changes to
        avoid C compiler warnings
      - various other, minor code cleanups
      - only Harbour/C code/headers were touched in src, utils, contrib,
        include. No 3rd party code, no make files, and with just a few
        exceptions, no 'tests' code was touched.
      - certain components were not touched were 3.4 diverged too much
        already, like f.e. hbmk2, hbssl, hbcurl, hbexpat
      - the goal was that no actual program logic should be altered by
        these changes. Except some possible minor exceptions, any such
        change is probably a bug in this patch.
      It's a massive patch, if you find anything broken after it, please
      open an Issue with the details. Build test was done on macOS.
      The goal is make it easier to see what actual code/logic was changed
      in 3.4 compared to 3.2 and to make patches easier to apply in both
      ways.
This commit is contained in:
Viktor Szakats
2017-09-08 16:25:13 +00:00
parent d55bdd18b7
commit 5a2a287752
916 changed files with 10432 additions and 13266 deletions

View File

@@ -47,8 +47,8 @@
#ifndef HB_COMP_H_
#define HB_COMP_H_
#include "hbmacro.ch"
#include "hbapi.h"
#include "hbmacro.ch"
#include "hberrors.h"
#include "hbpp.h"
#include "hbmacro.h"
@@ -83,7 +83,7 @@ extern void hb_compParserRun( HB_COMP_DECL );
#define HB_VSCOMP_MEMVAR ( HB_VSCOMP_PUBLIC | HB_VSCOMP_PRIVATE )
#define HB_VSCOMP_TH_STATIC ( HB_VSCOMP_STATIC | HB_VSCOMP_THREAD )
/* return detailed information about a class of variable */
/* return detailed information about a class of variable */
#define HB_VS_UNDECLARED 0
/* variables declared in a current codeblock/function/procedure */
#define HB_VS_CBLOCAL_VAR 1 /* func/proc local variables and parameters used in codeblock (detached) */
@@ -116,7 +116,7 @@ extern void hb_compParserRun( HB_COMP_DECL );
#define HB_FUNF_WITH_RETURN 0x0020 /* there was RETURN statement in previous line */
#define HB_FUNF_EXTBLOCK 0x0040 /* it's extended codeblock */
#define HB_FUNF_FILE_DECL 0x0080 /* pseudo function with file wide declarations */
#define HB_FUNF_FILE_FIRST 0x0100 /* 1-st real or pseudo function in compiled .prg module */
#define HB_FUNF_FILE_FIRST 0x0100 /* 1st real or pseudo function in compiled .prg module */
#define HB_FUNF_ATTACHED 0x0200 /* function attached to function list */
extern void hb_compFunctionAdd( HB_COMP_DECL, const char * szFunName, HB_SYMBOLSCOPE cScope, int iType ); /* starts a new Clipper language function definition */
@@ -342,27 +342,27 @@ extern const HB_BYTE hb_comp_pcode_len[];
#define HB_IDENT_FREE 1
#define HB_IDENT_COPY 2
/* /GC command line setting types */
/* /GC command-line setting types */
#define HB_COMPGENC_COMPACT 0
#define HB_COMPGENC_NORMAL 1
#define HB_COMPGENC_VERBOSE 2
#define HB_COMPGENC_REALCODE 3
/* /ES command line setting types */
/* /ES command-line setting types */
#define HB_EXITLEVEL_DEFAULT 0
#define HB_EXITLEVEL_SETEXIT 1
#define HB_EXITLEVEL_DELTARGET 2
/* /kx command line setting types - compatibility modes
/* /kx command-line setting types - compatibility modes
* (turn on a bit in HB_ULONG word)
*/
#define HB_COMPFLAG_HARBOUR HB_SM_HARBOUR /* 1 -kh */
#define HB_COMPFLAG_XBASE HB_SM_XBASE /* 2 -kx */
#define HB_COMPFLAG_SHORTCUTS HB_SM_SHORTCUTS /* 8 -z enable sortcuts for logical operators */
#define HB_COMPFLAG_SHORTCUTS HB_SM_SHORTCUTS /* 8 -z enable shortcuts for logical operators */
#define HB_COMPFLAG_ARRSTR HB_SM_ARRSTR /* 16 -ks strings as array of bytes */
#define HB_COMPFLAG_EXTOPT HB_SM_EXTOPT /* 32 -ko clipper incompatible optimizations */
#define HB_COMPFLAG_EXTOPT HB_SM_EXTOPT /* 32 -ko Cl*pper incompatible optimizations */
#define HB_COMPFLAG_RT_MACRO HB_SM_RT_MACRO /* 64 -kr */
#define HB_COMPFLAG_OPTJUMP 0x0100 /* -kj turn off jump optimalization */
#define HB_COMPFLAG_OPTJUMP 0x0100 /* -kj turn off jump optimization */
#define HB_COMPFLAG_HB_INLINE 0x0200 /* -ki hb_inLine(...) { ... } support */
#define HB_COMPFLAG_MACROTEXT 0x0400 /* -kM turn off macrotext substitution */
#define HB_COMPFLAG_USERCP 0x0800 /* -ku strings in user encoding */