Commit Graph
90 Commits
Author SHA1 Message Date
Andrea Gelmini d477d2eb37 Removed executable bits on files
Change-Id: I8508d26067084ff7bb15bbf2326a1ff7bc61a6ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136521
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2022-06-28 20:55:42 +02:00
Mike Kaganski 120daca419 tdf#149447: use proper UNO types for marshalling unsigned Basic types
cppu::UnoType<sal_uInt8> corresponds to UNO boolean, so its use made the
unsigned values be converted to a true/false in Any; and additionally,
using such a boolean Any, even having a 'true' value, as a parameter to
a double argument would make operator >>=(const Any &, double &) return
false, giving the resulting double equal to 0.

The wrong conversion of UShorts and ULongs to cppu::UnoType<sal_uInt8>
(aka TypeClass_BOOLEAN) was introduced in commit
11f9aa4fcb
  Author Andreas Bregas <ab@openoffice.org>
  Date   Thu May 10 14:22:42 2001 +0000
    #79615# sbxToUnoValue(): Choose smallest possible type for numeric values

Treating of unsigned Basic Byte as a signed cppu::UnoType<sal_Int8> (aka
TypeClass_BYTE) was already introduced in
commit c25ec0608a
  Author Jens-Heiner Rechtien <hr@openoffice.org>
  Date   Mon Sep 18 15:18:56 2000 +0000
    initial import

Then, in commit 553cf2a834
  Author Andreas Bregas <ab@openoffice.org>
  Date   Fri Jun 08 14:59:57 2001 +0000
    #87927# Map TypeClass_BYTE to SbxINTEGER instead of SbxBYTE because of signed/unsigned problem

an attempt was made to handle obviously this same problem, changing the
corresponding UNO type to TypeClass_SHORT. But it seems that it created
problems when passing arrays of Byte through UNO to COM, where it needed
to convert to a safearray, so this decision was reverted in commit
dd6ba6b64a
  Author Mikhail Voytenko <mav@openoffice.org>
  Date   Thu Jul 08 21:33:48 2010 +0200
    mib17: #162917# let basic byte use one byte, let olebridge convert sequence to safearray correctly

This change tries to avoid the problem that caused the latter revert,
by only treating Bytes as UNO shorts in getUnoTypeForSbxValue, where
scalar Byte values are considered, keeping old handling for arrays.

Change-Id: I805108743376e2fc27dd21a27c31759b76dc0d09
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136526
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-06-28 15:15:48 +02:00
Andreas Heinisch 522f5ad4d8 tdf#147529 - BASIC MsgBox: Check for missing optional parameters
Change-Id: Iecb47e0005c609ee1117d6fb141e810c0166806a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136339
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-06-24 09:20:45 +02:00
Mike Kaganski f4ff0ed557 tdf#149622: also clear return value before calling method from SbxObject::Call
Moves the custom cleanup logic to overridden SbxMethod::Clear, to simplify
the cleanup code and make sure it restores empty Variant correctly.

Change-Id: I01fa0529acd9ac787ffcda60fd6836ade4afdcb1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136108
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-06-20 12:46:27 +02:00
Andreas Heinisch 90d33f5945 tdf#148358 - Compare Non-ASCII variable names case-insensitive
Change-Id: I761eb27b16c92d58df1be8e6011fc9b94db2a59c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133774
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-05-07 16:00:50 +02:00
Mike Kaganski fe597a3379 Test StarBasic's native non-ASCII name syntax
Change-Id: Ie9f0cd21e59ffc1e3fbe2616e2ae7abbd0169424
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133103
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-04-17 10:08:08 +02:00
Alain Romedenne da27693800 Basic Collection class unit test
Change-Id: I7b67727ab8c3f7f67c2038500434ab44fa7d1949
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128544
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-03-31 17:26:55 +02:00
Stephan Bergmann e2ba33336f Adapt test to even slower builds
...like my local ASan+UBSan build, which now happened to fail once with

>  Failed: TestReplacePerformance (t = 60 s)
> Tests passed: 0
> Tests failed: 1

when the machine was under load during a parallelizing `make check`, following
up on 3564b5c6e9 "Adapt test to slow builds"

Change-Id: I8f0c8f7e6e145b6d5009f48d2af865ea5caab375
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/132335
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-03-31 14:06:56 +02:00
Alain Romedenne b9b9b3afde tdf#114263 tdf#147262 CallByName() function LibO Basic test unit
Change-Id: Ia9bd38c0da4d3f94b824ebb1f98ac912758e8d38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129610
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-03-30 09:04:38 +02:00
Andreas Heinisch aa54ea2323 Change the comment of the test cases to clarify the textual representation of the calculated string
Change-Id: I98478297a577f723864b37514bbd432a6224350d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129844
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-03-02 21:42:09 +01:00
Andreas Heinisch 3ba8b56b32 tdf#147089 - Round Integral Division (IDIV) literals to Integer values
Change-Id: Ia243c6117a437d0c6efb33a4e76c5e9ee539fbdc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130302
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-02-21 23:10:46 +01:00
Mike Kaganski 5276177877 tdf#147364: fix function signature to account to calling convention
First, the integer function result is returned in a 64-bit register (RAX),
and truncation it to sal_Int32 breaks any pointer return value.

Second, using explicit (not vararg) first function double argument would
pass it through XMM0, without also copying it to RCX (which is guaranteed
for varargs).

Ref: https://docs.microsoft.com/en-us/cpp/build/x64-calling-convention
Change-Id: I08212c44d8690d6910068b13c16af2ce899c94f2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129808
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-02-11 12:56:03 +01:00
Andreas Heinisch a79e7dc9e8 tdf#146672 - CDbl: skip spaces and tabs at the end of the scanned string
Change-Id: Ib7a4e8c7145b549a5327de23549d39d11f8590cf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129648
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-02-09 11:09:01 +01:00
Stephan Bergmann 3564b5c6e9 Adapt test to slow builds
...like my local ASan+UBSan build, which kept failing with

>  Failed: TestReplacePerformance (t = 35 s)
> Tests passed: 0
> Tests failed: 1

when the machine was under load during a parallelizing `make check`

Change-Id: I59c81a61a29df7165f6fad33e3fe3da975f05ed2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129237
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-01-31 23:34:32 +01:00
Mike Kaganski 24afbaab3a Fix format string
Change-Id: I18952bf6641175d25128b512ddfb56fd51767038
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129083
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-01-31 14:08:17 +01:00
Mike Kaganski 81a3d9b4bf tdf#132388: add unit test
I hope that this performance test is OK. I chose 20 s threshold, as
it works much faster on my system (under 4 s); it shouldn't be much
slower elsewhere; and both the original bug, and the regression that
followed the initial fix, made it execute orders of magnitute slower
(I expect hours on fast systems).

Change-Id: I75ee4c60e562473fe70a203faa94b48c5fbfb4fe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/129203
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2022-01-31 11:24:00 +01:00
Andreas Heinisch 35aa82ef1c tdf#145693 - Argument name should be 'charcode' instead of 'string'
In addition, changed argument datatype from Int to Long.

Change-Id: I702e09b6b8061d7cf00dd403e4681a0ab348d4c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128100
Tested-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-01-08 11:48:32 +01:00
Andreas Heinisch 260a2036d6 tdf#130426 - Rename file for tdf#145693
Change-Id: I1435f3e8c8ecf41ecd6b2766e19009c6b1783326
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128099
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2022-01-07 12:17:50 +01:00
Andreas Heinisch 565a5fdee3 tdf#145960 - Return type of boolean operators should be of type boolean
In addition, added missing vba test to the test routine.

Change-Id: I3ee837e1eab30f10e0a4169d11014f9b6574ad1c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127631
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-12-28 19:54:58 +01:00
Tor Lillqvist 47aabde053 Make the tdf#97983 changes to BASIC optional
If you want to keep the string to floating point conversion semantics
in BASIC as they were in LibreOffice 6, you can either set the
LIBREOFFICE6FLOATINGPOINTMODE environment variable to some non-empty
value, or set the org.openoffice.Office.Scripting/Basic/Compatibility/
UseLibreOffice6FloatingPointConversion flag in the Expert
Configuration. (Or use a registry modification file with that effect.)

Adapt the relevant unit test accordingly. Thanks to Mike Kaganski for
showing how to access the setting in the LibreOffice registry from
Basic.

Change-Id: I13d6d5d834e1bb81ef8df489db2b1da79f01dfc5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125756
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-12-09 12:06:49 +01:00
Andreas Heinisch 67c1591060 tdf#125637 - Correctly hand names ending with an underscore
If a name is ending with an underscore at the end of the line, it won't
be recognized correctly and it will be wrongly interpreted as the
respective name without the underscore at the end. Instead of changing
the macro source, use a flag in order to correclty identify the line end.

Change-Id: I6f933d7382b510bffed3e2692d32c232b7084624
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123833
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-10-20 20:27:59 +02:00
Andreas Heinisch e090afc29b tdf#144924 - Change return type of array elements of the split function
If VBA is not enabled, allow the assignment of variables with different
data types to the individual array elements created by the split
function.

Change-Id: I7bdd432cdebbfded5f7fb3acc0216474eb6b6821
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123122
Tested-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-10-07 08:21:58 +02:00
Andreas Heinisch ed16602512 tdf#143575, tdf#143974 - Use rtl::math::doubleToUString to convert numbers to strings
Change-Id: I1427dbd49af680a1bf386410977c9cb2b0a3961e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122831
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
Tested-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-09-30 09:26:54 +02:00
Andreas Heinisch e32d864dbe tdf#144353 - Handling of missing optional parameters
Don't assign a missing optional variable to a property and don't allow
the computation/comparision including missing optional attributes.

In the previous cases a ERRCODE_BASIC_NOT_OPTIONAL is raised.

Change-Id: Iab391286fcace16c271ae511304075e2a0c5c651
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/121794
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-09-10 13:28:33 +02:00
Andreas Heinisch a330732cf8 tdf#107953 - Extend significant digits
According to
https://randomascii.wordpress.com/2012/03/08/float-precisionfrom-zero-to-100-digits-2/
show at least 9 / 17 significant digits for a single / double data type
in order to identify the contained value.

Change-Id: Id2833fc51ca005bc78b68d6b4cca28f2d95f5a85
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119526
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-07-28 09:57:31 +02:00
Andreas Heinisch afddd56a80 tdf#139840 - Use utl::TextSearch to implement the InStr function
In addtion, fixed a crash if the start position is greater than the
length of the string being searched.

Change-Id: I9bcda1131324bdfac6957018e91b3a36dd2dc3d6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118996
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-07-16 09:29:16 +02:00
Xisco Fauli 0ce3a9dcc0 tdf#111313: basic_macros: Add unittest
Change-Id: Id6f8bc0998d4f79434d46017b998917dcc53ac6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118949
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-15 10:02:00 +02:00
Xisco Fauli f7d128f122 tdf#98778: basic_macros: Add unittest
Change-Id: I35468fb35f5c24af2138688d99af0e41ba672334
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118944
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-14 19:39:07 +02:00
Xisco Fauli c3fc5aaa65 tdf#114011: basic_macros: Add unittest
Change-Id: Ib9a7e87b4c8159fd5fbaaaa66705cddae138fcdd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118942
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-14 18:15:28 +02:00
Andreas Heinisch 7e5c9220ef tdf#142487 - use utl::TextSearch in order to implement the replace algorithm
In the old algorithm, some special unicode characters lead to a
malfunction of basic's replace function. For instance, replacing a
German ß to uppercase in the insensitive case will lead to SS, breaking
the replace positions.

Change-Id: I4e6f6e5fba3d560b8cfd0786fa2439ed5174a928
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118760
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-07-12 20:30:19 +02:00
Xisco Fauli 0ad1810a91 basic_coverage: use Option Explicit where possible
Add missing license headers to a couple of files

Change-Id: I7610f922e9ac914ae8fda0d0b6a7ca389401caca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118489
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-07 10:01:10 +02:00
Xisco Fauli faaf95859c basic: remove unneeded variable in test
Kudos to M. Kaganski for spotting it
Change-Id: I04ceea4607cf94a5a84af4f171d6f2b204ef8653

Change-Id: Ie9064d3c12da657ecd82fdab6891bc8703ee6f37
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118464
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-06 11:18:15 +02:00
Xisco Fauli 3be3a020d4 tdf#117612: basic_macros: Add unittest
Change-Id: I4189b52be788deafe921c860f807ec5cee8ec667
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118443
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-05 17:48:49 +02:00
Xisco Fauli c6cc94ea78 tdf#134692: basic_macros: Add unittest
Change-Id: I9115eca2fce784cd55a8eb4f1cfd6e614fd3612b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118442
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-05 17:35:30 +02:00
Mike Kaganski 357c0e2a4a Move utility code out of test directories
This simplifies iteration over the test files, and avoids relying
on file URLs being the same (e.g., having no /./ segments).

Change-Id: I227785806e474a3a2dffeb46df21617eae43327e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118329
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2021-07-02 21:53:39 +02:00
Mike Kaganski 9258f7009e Rename LibreOffice Basic test files from .vb to .bas: they are not VBA
Change-Id: I4ff8a8dc855da2c60084318e067d4ec8149d055e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118330
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2021-07-02 20:48:34 +02:00
Xisco Fauli 79657c9f53 tdf#143081: basic_macros: Add unittest
Change-Id: I2d9fa23627f40a2398288b1ee7f5bfd4de4a6131
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118326
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-02 19:36:56 +02:00
Xisco Fauli a6178d172e tdf#84098 kill copy+paste in basic/qa/basic_coverage
This also fix the problem of basic_coverage tests not showing
the results when they were failing, since doUnitTest
returned a Integer

Change-Id: I637cd4cfaa34047bc99bfe6e0930f2945f1a9315
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118234
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2021-07-02 17:50:10 +02:00
Joshua Williams 6cdfd89413 tdf#142180 Swapped comparison operators for static strings
It seems that, for some reason, the comparison operators for
strings in basic were swapped in the code that evaluates
string comparisons at compile-time. This is what caused
bug #142180. This commit simply swaps the operators and
should fix the bug.

Change-Id: I14f90db8598f2f7f8b709e26902986e1f64af576
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115983
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-05-23 07:14:07 +02:00
Andreas Heinisch 7a578c0635 tdf#139840 - Case-insensitive operation for non-ASCII characters
Support case-insensitive operation for non-ASCII characters in the
InStr function in Basic.

Change-Id: Idb2b8e128adf3596fa49e3e86365d5724ea3e11c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115538
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-05-13 18:36:20 +02:00
Andreas Heinisch a9fcd2cf2b tdf#141201 - Round MOD literals to Integer values
(regression from commit I8dbfdf4bb2eceac0b5afbddd3f35e1dcde2db68b
"tdf#84435: Mod operator does not deal with decimals as described in help").

Change-Id: I74b231d3814148579a3be0a92b7602fa4387281f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113571
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-04-05 16:38:44 +02:00
Alain Romedenne 08151f4827 TypeName, VarType, TypeLen Basic QA test cases
1- exhibiting array type names
2- highlighting supplemental libO Basic constants
3- precising data types internal representations

I intend to document in help:

1- primitive data types array names: Boolean(), Byte(), … as IsArray() function does not provide such info
2- Publish extra Basic constants for already published values:
  - V_OBJECT=9, V_BOOLEAN=11, V_VARIANT=12, V_BYTE=17
  - not necessarily V_ARRAY=8192, V_ERROR=10

The latter is conditioned to the creation of an enhancement request.

FYI, published Vartype() values and constants for VBA and other Basic-like languages:

https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/vartype-function
https://docs.xojo.com/VarType
https://help.hcltechsw.com/dom_designer/9.0.1/appdev/LSAZ_DATATYPE_FUNCTION.html

Change-Id: I51bac3caf555d94e91de7c6d624b3fca9e73a673
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111042
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2021-03-29 15:29:39 +02:00
arpit1912 54b3ada2e5 tdf#141050 Accept CCur with negative strings
the ImpStringToCurrency now increment the pointer on finding a '+' or '-' in sbxcurr.cxx file

Change-Id: I4a1093ae0b4e52b6a61dc412bd5e7b95b1309e7a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112734
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-03-20 11:57:48 +01:00
Andreas Heinisch ac0b6fb384 tdf#141045 - fixed copy paste error in the replace function
Change-Id: Id68670fed89e4cc700c5eea395139914bebdb657
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112509
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-03-15 15:16:57 +01:00
Andreas Heinisch 0426748927 tdf#136755, tdf#124008 - delete the variable beforehand REDIM
If an array of objects is passed as an argument to ReDim, delete the
variable beforehand, otherwise the construction of the new variable
fails, because the old one is still on the stack.

Change-Id: Ic863a36f5f2aca658df369f95d275aa287edf795
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106832
Tested-by: Jenkins
Reviewed-by: Andreas Heinisch <andreas.heinisch@yahoo.de>
2021-01-25 07:57:59 +01:00
Andreas Heinisch 48d46bcc90 tdf#85371 - grant write access to the method used as a variable
During the creation of the parameter list of a method, explicitly grant
write access to the method which will used as a variable. Otherwise, the
name of the method can't be used in certain statements, i.e., index in a
for loop or as a dimension in ReDim.

Change-Id: I3e4c49c21fd3345d5ddd69bc31a5823b5de5b8e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104696
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-10-30 05:12:25 +01:00
Andreas Heinisch d6b7cc3f7c tdf#123025 - ReDim Preserve fails if array is filled by Split
The Split function sets the datatype of the array to SbxVARIANT instead
of SbxSTRING preventing any subsequent assignments to the array and to
the elements itself.

Change-Id: Ib099eee7bfd222c97520ac8970352bcf2b44bc3e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104039
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-10-16 12:31:02 +02:00
Andreas Heinisch 698e5d5418 tdf#123025 - fixed broken tests for cverr method
Change-Id: I44eb44107a24207764da24b4e01b407570342013
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103956
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-10-06 17:17:55 +02:00
Alain Romedenne c3c8d2d671 tdf#136112 Unit test for Date() Basic function
Change-Id: Id6660627e766c6dcd107c3ee483bacb046cae7bf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102123
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-09-08 17:18:29 +02:00
Andreas Heinisch 40031dd453 tdf#54912 - with option base arrays should start at index 1
Using option base, every array should start at index 1. Previously, it
needed option VBASupport too. Without option compatible, the upper bound
of an array is increased as well in order to preserve the specified
size.

Change-Id: I52885f14914a4636b98258aa428c2123f62482a3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101269
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-09-01 09:28:46 +02:00