Comments (3)
input to divvun-suggest:
"<beapmoeh>"
"beapmoe" N Sem/Food Pl Nom <W:0.0> <sma> &LINK &space-before-punct-mark ID:1
:
"<.>"
"." CLB <W:0.0> <SpaceBeforePunctMark> <NoSpaceAfterPunctMark> <NoSpaceAfterPunctMark> <SpaceBeforePunctMark> &space-before-punct-mark &no-space-after-punct-mark ID:2 R:RIGHT:4 R:LEFT:1
"." CLB <W:0.0> <SpaceBeforePunctMark> <NoSpaceAfterPunctMark> <NoSpaceAfterPunctMark> <SpaceBeforePunctMark> "<. (>" &no-space-after-punct-mark &SUGGESTWF ID:2 R:RIGHT:4 R:LEFT:1
"." CLB <W:0.0> <SpaceBeforePunctMark> <NoSpaceAfterPunctMark> <NoSpaceAfterPunctMark> <SpaceBeforePunctMark> "<beapmoeh.>" &space-before-punct-mark &SUGGESTWF ID:2 R:RIGHT:4 R:LEFT:1
"<(>"
"(" PUNCT LEFT <W:0.0> <NoSpaceBeforeParenBeg> <sma> &LINK &no-space-after-punct-mark ID:4
:\n
from libdivvun.
heh I was just trying to figure out how to pull the suspect sentence out of gramcheck comparator, here's some valgrinds, it doesn't seem code I have worked on but not sure:
echo 'beapmoeh .('| hfst-tokenise -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/tokeniser-gramcheck-gt-desc.pmhfst' \
| src/divvun-blanktag '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/analyser-gt-whitespace.hfst' \
| vislcg3 -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/valency.bin' \
| vislcg3 -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/mwe-dis.bin' \
| cg-mwesplit \
| src/divvun-blanktag '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/analyser-gt-errorwhitespace.hfst' \
| src/divvun-cgspell -n 10 -b 15.000000 -w 5000.000000 -u 0.400000 -l '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/acceptor.default.hfst' -m '/home/flammie/github/giellalt/lang-sma/tools/grammar
checkers/errmodel.default.hfst' \
| vislcg3 -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/valency-postspell.bin' \
| vislcg3 -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/grc-disambiguator.bin' \
| vislcg3 -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/spellchecker.bin' \
| vislcg3 -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/grammarchecker.bin' \
> | valgrind src/divvun-suggest -j -g '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/generator-gramcheck-gt-norm.hfstol' -m '/home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/errors.xml' -l sma
==427429== Memcheck, a memory error detector
==427429== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==427429== Using Valgrind-3.21.0 and LibVEX; rerun with -h for copyright info
==427429== Command: src/divvun-suggest -j -g /home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/generator-gramcheck-gt-norm.hfstol -m /home/flammie/github/giellalt/lang-sma/tools/grammarcheckers/errors.xml -l sma
==427429==
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::substr: __pos (which is 8) > this->size() (which is 3)
==427429==
==427429== Process terminating with default action of signal 6 (SIGABRT): dumping core
==427429== at 0x9290D4C: __pthread_kill_implementation (in /usr/lib64/libc.so.6)
==427429== by 0x9243571: raise (in /usr/lib64/libc.so.6)
==427429== by 0x922D4B1: abort (in /usr/lib64/libc.so.6)
==427429== by 0x8F45C47: __gnu_cxx::__verbose_terminate_handler() [clone .cold] (vterminate.cc:95)
==427429== by 0x8F58185: __cxxabiv1::__terminate(void (*)()) (eh_terminate.cc:48)
==427429== by 0x8F581F0: std::terminate() (eh_terminate.cc:58)
==427429== by 0x8F58431: __cxa_throw (eh_throw.cc:98)
==427429== by 0x8F49283: std::__throw_out_of_range_fmt(char const*, ...) [clone .cold] (functexcept.cc:101)
==427429== by 0x169BE0: std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> >::_M_check(unsigned long, char const*) const (basic_string.h:390)
==427429== by 0x161F9B: std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> >::substr(unsigned long, unsigned long) const (basic_string.h:3132)
==427429== by 0x1548F2: divvun::mk_repform(std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > const&, unsigned long, std::map<std::pair<unsigned long, unsigned long>, std::pair<std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> >, divvun::Reading>, std::less<std::pair<unsigned long, unsigned long> >, std::allocator<std::pair<std::pair<unsigned long, unsigned long> const, std::pair<std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> >, divvun::Reading> > > >&) (suggest.cpp:441)
==427429== by 0x155222: divvun::proc_LEFT_RIGHT(divvun::Reading const&, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > const&, unsigned long, divvun::Sentence const&, std::__cxx11::basic_string<char16_t, std::char_traits<char16_t>, std::allocator<char16_t> > const&, unsigned long, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long, divvun::Cohort const&) (suggest.cpp:512)
==427429==
==427429== HEAP SUMMARY:
==427429== in use at exit: 36,668,026 bytes in 5,031 blocks
==427429== total heap usage: 22,876 allocs, 17,845 frees, 80,903,618 bytes allocated
==427429==
==427429== LEAK SUMMARY:
==427429== definitely lost: 0 bytes in 0 blocks
==427429== indirectly lost: 0 bytes in 0 blocks
==427429== possibly lost: 2,704 bytes in 2 blocks
==427429== still reachable: 36,665,322 bytes in 5,029 blocks
==427429== of which reachable via heuristic:
==427429== stdstring : 93 bytes in 1 blocks
==427429== suppressed: 0 bytes in 0 blocks
==427429== Rerun with --leak-check=full to see details of leaked memory
==427429==
==427429== For lists of detected and suppressed errors, rerun with: -s
==427429== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Avbrutt (SIGABRT) (kjerne lagret i fil)
from libdivvun.
Yeah it's an issue in how I combine multiple overlapping suggestions. That code is complicated :-/
(I think I know how to make a real fix, just won't have time to focus until after holidays.)
from libdivvun.
Related Issues (20)
- macOS rpath quirk HOT 1
- Rename &LINK to something more intuitive
- support for altering forms of two COERROR'd cohorts HOT 1
- Show multiword-suggestions and underlines in divvun-suggest (non-json) HOT 6
- Include all possibilities if several possible &SUGGEST's (on either side of the relation) HOT 3
- apply input casing to suggestions when RIGHT/LEFT and &COERR
- \r needs to be treated like \n after :
- Error detected by smegram-dev.mode is not detected by divvun-checker HOT 16
- regression in divvun-suggest: removes removed readings
- Check if we can remove need for `COERROR` where relations are used
- doesn't generate suggestion for linked coerror, only main error, when &SUGGEST HOT 1
- generates bad suggestion with coerror HOT 1
- Forskjell mellom yaml-test og trace-smjgram-dev.mode HOT 5
- yaml oppmerking fungerer ikke HOT 1
- yaml og COERROR HOT 23
- &ADDED bør alltid sørga for mellomrom før/etter, men lag ny &ADDED-AFTER-BLANK for `(` etc.
- DELETE tag for deleting this cohort
- fix caps when moving words HOT 1
- don't always change case when moving
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 libdivvun.