ecere:bgenNotRebased

Last commit made on 2022-05-19
Get this branch:
git clone -b bgenNotRebased https://git.launchpad.net/ecere

Branch merges

Branch information

Name:
bgenNotRebased
Repository:
lp:ecere

Recent commits

22569cf... by Jerome St-Louis

samples/bindings/cpp: Fixed samples
- Fixed compilation and cleaned up all samples
- Added Embedded and Dynamic configs to all samples
- Using $(ECERE_SDK_SRC) everywhere (rather than ECERE_SDK_BINDINGS)
- Removed large non-USE_MACROS sections because they did not compile and these samples are intended for end-users
- The register_* approach to registreing virtual methods no longer works (the register_* are not currently generated_
   - Did we decide to phase that out completely in favor of overriding directly in the class?
- Moved unrelated testing code in Cube sample to 12_demoTest
- Moved form.cpp / foo.cpp, testing instantiating C++ forms from eC, to 13_fromeC
- Removed other duplicates samples from samples/bindings/cpp

2d0f8f9... by Jerome St-Louis

bgen/cpp: Changing INSTANCE macro to avoid multiple evaluation (#27)
- Multiple evaluation was resulting in a crash on exit in form.cpp, due to a second HelloForm2
  instance outliving its TCPPClass.
- miscTypes: Added clarification regarding UIntPtr comparison issue
   - byValueSystemClass flag on base uintptr does not get carried to derived UIntPtr and its own derivatives
   - this causes UIntPtr64_OnCompare() to expect elements by value while they get passed by reference

94d4609... by Jerome St-Louis

bgen/cpp: Change TIH logic to use its own 'ownRef' flag (#27)
- mustFree on the instance indicates whether an object must be deleted when it reaches final destruction change
- TIH::ownRef is true if TIH created the object itself
- This prevents the TIH deleting a C++ object allocated dynamically which it didn't just create
- The problem was occurring in samples/bindings/cpp/form.cpp, together with form.cpp, as a result of testStuff() being invoked

c73e441... by Jerome St-Louis

bgen/cpp: Removing code setting mustFree = true on Application when it should not

86bc971... by Jerome St-Louis

bgen/cpp: Fixed missing null check on inst before accessing mustFree

03f2cc4... by Jerome St-Louis

bgen/py: Disabling noisy build debugging printouts

fe5f1a3... by Jerome St-Louis

bgen/c;cpp: Disabling debugging print out

3549241... by Jerome St-Louis

samples/bindings/c: Cleaned up samples
- Keeping only samples without prefix and using macros
- Removed redundant _bare, _explicit, _macros
- Removed redundant _dllbind projects
- Samples will need C bindings library to be in PATH/LD_LIBRARY_PATH
- $(ECERE_SDK_SRC) can be defined for using Embedded config or for finding C bindings headers

1939b68... by Jerome St-Louis

bgen/cpp: Fixed C++20 issues related to templatized constructors
- C++20 disallowed using the template form as a constructor (https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0968r0.html)

1e317ce... by Jerome St-Louis

Makefile.bindings: Use $(_bg_bypass_cpp)
- Making use of the defined $(_bg_bypass_cpp) variable avoids astonishment when modifying it does not have the intended effect
- The default C++ macro-using mode is currently broken in bgen (the default will revert to disabling expansion once it works again)