Comments (9)
Hi Boulund,
I don't know why this is happening on your system, as it works on mine. I have an idea for fixing it though. In your copy of the code, in file tsv-filter/src/tsv-filter.d, in lines 228 and 229, try replacing the calls to 'toLower' with 'asLowerCase' and try to build. If that works for you, then I'll make this change to the code.
--Jon
from tsv-utils.
Hi,
Thanks for taking the time to look into this! I have no clue what's going on really. Tell me if there's anything I can supply you with to aid in debugging this.
I made these changes to tsv-filter.d:
[tsv-utils-dlang]$ git diff
diff --git a/tsv-filter/src/tsv-filter.d b/tsv-filter/src/tsv-filter.d
index 8c5e512..240356b 100644
--- a/tsv-filter/src/tsv-filter.d
+++ b/tsv-filter/src/tsv-filter.d
@@ -225,8 +225,8 @@ bool strNotInFld(const char[][] fields, size_t index, string val) { return !fiel
*/
bool istrEQ(const char[][] fields, size_t index, dstring val) { return fields[index].asLowerCase.equal(val); }
bool istrNE(const char[][] fields, size_t index, dstring val) { return !fields[index].asLowerCase.equal(val); }
-bool istrInFld(const char[][] fields, size_t index, dstring val) { return fields[index].toLower.canFind(val); }
-bool istrNotInFld(const char[][] fields, size_t index, dstring val) { return !fields[index].toLower.canFind(val); }
+bool istrInFld(const char[][] fields, size_t index, dstring val) { return fields[index].asLowerCase.canFind(val); }
+bool istrNotInFld(const char[][] fields, size_t index, dstring val) { return !fields[index].asLowerCase.canFind(val); }
/* Note: Case-sensitivity is built into the regex value, so these regex predicates are
* used for both case-sensitive and case-insensitive regex operators.
Running make
now gives this (even longer) output:
[tsv-utils-dlang]$ make
make -C common
make[1]: Entering directory `/home/boulund/code/tsv-utils-dlang/common'
make[1]: `release' is up to date.
make[1]: Leaving directory `/home/boulund/code/tsv-utils-dlang/common'
make -C number-lines
make[1]: Entering directory `/home/boulund/code/tsv-utils-dlang/number-lines'
dmd -release -O -inline -boundscheck=off -odobj -of/home/boulund/code/tsv-utils-dlang/bin/number-lines -I/home/boulund/code/tsv-utils-dlang/common/src src/number-lines.d
make[1]: Leaving directory `/home/boulund/code/tsv-utils-dlang/number-lines'
make -C tsv-select
make[1]: Entering directory `/home/boulund/code/tsv-utils-dlang/tsv-select'
dmd -release -O -inline -boundscheck=off -odobj -of/home/boulund/code/tsv-utils-dlang/bin/tsv-select -I/home/boulund/code/tsv-utils-dlang/common/src src/tsv-select.d /home/boulund/code/tsv-utils-dlang/common/src/tsvutil.d
make[1]: Leaving directory `/home/boulund/code/tsv-utils-dlang/tsv-select'
make -C tsv-filter
make[1]: Entering directory `/home/boulund/code/tsv-utils-dlang/tsv-filter'
dmd -release -O -inline -boundscheck=off -odobj -of/home/boulund/code/tsv-utils-dlang/bin/tsv-filter -I/home/boulund/code/tsv-utils-dlang/common/src src/tsv-filter.d
--- errorlevel 1
make[1]: Leaving directory `/home/boulund/code/tsv-utils-dlang/tsv-filter'
._D10tsv_filter9istrInFldFxAAamAywZb+0xda): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
obj/tsv-filter.o: In function `_D10tsv_filter12istrNotInFldFxAAamAywZb':
src/tsv-filter.d:(.text._D10tsv_filter12istrNotInFldFxAAamAywZb+0xda): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
obj/tsv-filter.o: In function `_D3std9algorithm9searching518__T4findVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ4findFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl':
src/tsv-filter.d:(.text._D3std9algorithm9searching518__T4findVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ4findFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl+0x37): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
obj/tsv-filter.o: In function `_D3std9algorithm9searching12__T7canFindZ502__T7canFindTS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ7canFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZb':
src/tsv-filter.d:(.text._D3std9algorithm9searching12__T7canFindZ502__T7canFindTS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ7canFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZb+0x48): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
collect2: error: ld returned 1 exit status
make[1]: *** [/home/boulund/code/tsv-utils-dlang/bin/tsv-filter] Error 1
make: *** [tsv-filter] Error 2
Got any other ideas?
from tsv-utils.
Um... Not great ones. Best I can tell, the linker is saying it can't find a particular template instantiation, something coming out of the D standard library. I looked the library code, there are several interacting templates, so it's not clear to me exactly what bit is failing. And, it doesn't fail on my machines. I've tried with three compilers, 2 DMD versions and an LDC version, and on Mac and Linux.
If you're comfortable with a bit a D coding, you could remove the problematic routines to get you going. What's failing to build are two case-insensitive string search tests for the tsv-filter routine. Specifically, the --istr-in-fld and --istr-not-in-fld command line options. They are lesser used options. To remove them, remove or comment out the function definitions, plus the calling code. It would be something like:
- Comment out the two lines you already tried modifying, lines 228 and 229. (istrInFld, istrNotInFld)
- The two calls at lines 561 and 562 (handlerIStrInFld, handerIStrNotInFld)
- The two command line option specification lines at lines 617, 618.
I haven't tried it, but I think that should do. Then you could at least try the routines out.
from tsv-utils.
After applying the following changes to the code (one additional line to comment out that you unfortunately missed your reply @jondegenhardt) it now appears to work. Really looking forward to putting tsv-utils-dlang to the test now! I work with large tab separated text daily and this looks like it will suit me perfectly :). Thanks for the help to find a way around my issue @jondegenhardt, really appreciate it!
diff --git a/tsv-filter/src/tsv-filter.d b/tsv-filter/src/tsv-filter.d
index 8c5e512..1912658 100644
--- a/tsv-filter/src/tsv-filter.d
+++ b/tsv-filter/src/tsv-filter.d
@@ -225,8 +225,8 @@ bool strNotInFld(const char[][] fields, size_t index, string val) { return !fiel
*/
bool istrEQ(const char[][] fields, size_t index, dstring val) { return fields[index].asLowerCase.equal(val); }
bool istrNE(const char[][] fields, size_t index, dstring val) { return !fields[index].asLowerCase.equal(val); }
-bool istrInFld(const char[][] fields, size_t index, dstring val) { return fields[index].toLower.canFind(val); }
-bool istrNotInFld(const char[][] fields, size_t index, dstring val) { return !fields[index].toLower.canFind(val); }
+//bool istrInFld(const char[][] fields, size_t index, dstring val) { return fields[index].asLowerCase.canFind(val); }
+//bool istrNotInFld(const char[][] fields, size_t index, dstring val) { return !fields[index].asLowerCase.canFind(val); }
/* Note: Case-sensitivity is built into the regex value, so these regex predicates are
* used for both case-sensitive and case-insensitive regex operators.
@@ -558,8 +558,8 @@ struct TsvFilterOptions {
void handlerIStrEQ(string option, string value) { fieldVsIStringOptionHandler(tests, maxFieldIndex, &istrEQ, option, value); }
void handlerIStrNE(string option, string value) { fieldVsIStringOptionHandler(tests, maxFieldIndex, &istrNE, option, value); }
- void handlerIStrInFld(string option, string value) { fieldVsIStringOptionHandler(tests, maxFieldIndex, &istrInFld, option, value); }
- void handlerIStrNotInFld(string option, string value) { fieldVsIStringOptionHandler(tests, maxFieldIndex, &istrNotInFld, option, value); }
+ //void handlerIStrInFld(string option, string value) { fieldVsIStringOptionHandler(tests, maxFieldIndex, &istrInFld, option, value); }
+ //void handlerIStrNotInFld(string option, string value) { fieldVsIStringOptionHandler(tests, maxFieldIndex, &istrNotInFld, option, value); }
void handlerRegexMatch(string option, string value) { fieldVsRegexOptionHandler(tests, maxFieldIndex, ®exMatch, option, value, true); }
void handlerRegexNotMatch(string option, string value) { fieldVsRegexOptionHandler(tests, maxFieldIndex, ®exNotMatch, option, value, true); }
@@ -614,9 +614,9 @@ struct TsvFilterOptions {
"str-ne", "FIELD:STR FIELD != STR (string).", &handlerStrNE,
"istr-ne", "FIELD:STR FIELD != STR (string, case-insensitive).", &handlerIStrNE,
"str-in-fld", "FIELD:STR FIELD contains STR (substring search).", &handlerStrInFld,
- "istr-in-fld", "FIELD:STR FIELD contains STR (substring search, case-insensitive).", &handlerIStrInFld,
- "str-not-in-fld", "FIELD:STR FIELD does not contain STR (substring search).", &handlerStrNotInFld,
- "istr-not-in-fld", "FIELD:STR FIELD does not contain STR (substring search, case-insensitive).", &handlerIStrNotInFld,
+ //"istr-in-fld", "FIELD:STR FIELD contains STR (substring search, case-insensitive).", &handlerIStrInFld,
+ //"str-not-in-fld", "FIELD:STR FIELD does not contain STR (substring search).", &handlerStrNotInFld,
+ //"istr-not-in-fld", "FIELD:STR FIELD does not contain STR (substring search, case-insensitive).", &handlerIStrNotInFld,
"regex", "FIELD:REGEX FIELD matches regular expression.", &handlerRegexMatch,
"iregex", "FIELD:REGEX FIELD matches regular expression, case-insensitive.", &handlerIRegexMatch,
from tsv-utils.
@boulund Have you tried any of the more recent releases? If so, let me know if you are still seeing this issue.
from tsv-utils.
@jondegenhardt Sorry for my late reply. No I haven't tried any later versions; I didn't really have the need to after I got it working :).
I just tried with a fresh clone of the repository and it still fails (still using dmd v2.068.1).
makefile:5: warning: overriding commands for target `unittest'
../makeapp.mk:28: warning: ignoring old commands for target `unittest'
makefile:5: warning: overriding commands for target `unittest'
../makeapp.mk:28: warning: ignoring old commands for target `unittest'
obj/tsv-filter.o: In function `_D10tsv_filter9istrInFldFxAAamAywZb':
/home/boulund/apps/tsv-utils-dlang/common/src/unittest_utils.d:(.text._D10tsv_filter9istrInFldFxAAamAywZb+0xda): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
obj/tsv-filter.o: In function `_D10tsv_filter12istrNotInFldFxAAamAywZb':
/home/boulund/apps/tsv-utils-dlang/common/src/unittest_utils.d:(.text._D10tsv_filter12istrNotInFldFxAAamAywZb+0xda): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
obj/tsv-filter.o: In function `_D3std9algorithm9searching518__T4findVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ4findFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl':
/home/boulund/apps/tsv-utils-dlang/common/src/unittest_utils.d:(.text._D3std9algorithm9searching518__T4findVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ4findFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl+0x37): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
obj/tsv-filter.o: In function `_D3std9algorithm9searching12__T7canFindZ502__T7canFindTS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ7canFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZb':
/home/boulund/apps/tsv-utils-dlang/common/src/unittest_utils.d:(.text._D3std9algorithm9searching12__T7canFindZ502__T7canFindTS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ7canFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZb+0x48): undefined reference to `_D3std9algorithm9searching531__T16simpleMindedFindVAyaa6_61203d3d2062TS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplTAywZ16simpleMindedFindFNaNbNiNfS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImplAywZS3std3uni273__T7toCaserS36_D3std3uni12toLowerIndexFNaNbNiNewZtVii1043S34_D3std3uni10toLowerTabFNaNbNiNemZwTS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ7toCaserFS3std3utf77__T7byDcharTS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ7byDcharFNcS3std3utf20__T10byCodeUnitTAxaZ10byCodeUnitFAxaZ14ByCodeUnitImplZ11byDcharImplZ11ToCaserImpl'
collect2: error: ld returned 1 exit status
make[1]: *** [/home/boulund/apps/tsv-utils-dlang/bin/tsv-filter] Error 1
make: *** [tsv-filter] Error 2
from tsv-utils.
@boulund Thanks for follow-up. I'm going to leave this issue closed unless it causes you further trouble. I haven't been able to reproduce it. I wouldn't mind getting the specifics of your environment though (OS, etc) in case anyone else encounters this.
from tsv-utils.
It appears to compile just fine with the latest version of DMD
[tsv-utils-dlang]$ dmd --version
DMD64 D Compiler v2.073.0
Copyright (c) 1999-2016 by Digital Mars written by Walter Bright
from tsv-utils.
Thank you! Very much appreciate the follow-up.
from tsv-utils.
Related Issues (20)
- AUR package with LTO & PGO enabled HOT 2
- How to best use the code as a library? HOT 4
- Improve tsv-pretty lookahead logic [tsv-pretty mistake in column formatting.] HOT 8
- bufferedByLine does not work with File due to @safe <> @system conflict HOT 3
- Issue with installing on Windows 10 using D / build failure HOT 28
- tsv-summarize: Slice SummarizerBase._operators when invoking std.algorithm.each
- Inconsistent newline handling on Windows HOT 2
- Status of Windows build HOT 6
- Bulding tsv-utils with LTO and PGO on Archlinux HOT 14
- Homebrew install HOT 6
- Package tsv-utils for conda(-forge)? HOT 1
- No linux release assets for v2.2.1
- -bash: ./tsv-pretty: cannot execute binary file HOT 1
- Ability to produce proper CSV files
- Sort using column names
- tsv-append: limit number of rows per file? [feature request]
- Error [tsv-filter]: Not enough fields in line. File: c.tsv, Line: 1425063 HOT 1
- ENH: Add ARM64 build assets for native functionality on M1 macs (the future) HOT 3
- Q: any API doc? how to skip empty field in csvReader?
- Updated benchmarks including qsv HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tsv-utils.