lix/tests/lang
Tuomas Tynkkynen 77e9e1ed91 libexpr: Fix prim_replaceStrings() to work on an empty source string
Otherwise, running e.g.

nix-instantiate --eval -E --strict 'builtins.replaceStrings [""] ["X"] "abc"'

would just hang in an infinite loop.

Found by afl-fuzz.

First attempt of this was reverted in e2d71bd186 because it caused
another infinite loop, which is fixed now and a test added.
2018-02-26 19:49:13 +02:00
..
dir1
dir2
dir3
dir4
readDir Add test for readDir primop 2014-10-03 22:32:11 +02:00
data Add path primop. 2018-02-06 16:48:08 -05:00
eval-fail-abort.nix
eval-fail-antiquoted-path.nix
eval-fail-assert.nix
eval-fail-bad-antiquote-1.nix
eval-fail-bad-antiquote-2.nix
eval-fail-bad-antiquote-3.nix
eval-fail-blackhole.nix
eval-fail-deepseq.nix Add ‘deepSeq’ primop 2014-09-22 16:05:00 +02:00
eval-fail-missing-arg.nix
eval-fail-path-slash.nix Update mailing list. 2017-07-18 08:04:01 -04:00
eval-fail-remove.nix
eval-fail-scope-5.nix
eval-fail-seq.nix Add ‘seq’ primop 2014-09-22 16:05:00 +02:00
eval-fail-substring.nix
eval-fail-to-path.nix
eval-fail-undeclared-arg.nix
eval-okay-any-all.exp Add primops all and any 2015-07-23 19:23:11 +02:00
eval-okay-any-all.nix Add primops all and any 2015-07-23 19:23:11 +02:00
eval-okay-arithmetic.exp
eval-okay-arithmetic.nix Test some more primops 2014-02-26 19:08:44 +01:00
eval-okay-attrnames.exp
eval-okay-attrnames.nix Add primop ‘attrValues’ 2014-10-04 16:41:24 +02:00
eval-okay-attrs.exp
eval-okay-attrs.nix
eval-okay-attrs2.exp
eval-okay-attrs2.nix
eval-okay-attrs3.exp
eval-okay-attrs3.nix
eval-okay-attrs4.exp
eval-okay-attrs4.nix
eval-okay-attrs5.exp
eval-okay-attrs5.nix Fix test broken by #762 2016-02-15 15:01:26 +01:00
eval-okay-autoargs.exp
eval-okay-autoargs.flags
eval-okay-autoargs.nix
eval-okay-builtins.exp
eval-okay-builtins.nix
eval-okay-callable-attrs.exp Add functors (callable attribute sets). 2014-11-15 16:12:05 -05:00
eval-okay-callable-attrs.nix Add functors (callable attribute sets). 2014-11-15 16:12:05 -05:00
eval-okay-catattrs.exp Add primop ‘catAttrs’ 2014-10-04 18:15:03 +02:00
eval-okay-catattrs.nix Add primop ‘catAttrs’ 2014-10-04 18:15:03 +02:00
eval-okay-closure.exp.xml
eval-okay-closure.nix
eval-okay-comments.exp Fix comments parsing 2016-11-13 17:20:34 +01:00
eval-okay-comments.nix Fix comments parsing 2016-11-13 17:20:34 +01:00
eval-okay-concat.exp
eval-okay-concat.nix
eval-okay-concatstringssep.exp Add concatStringsSep as a primop 2015-07-24 02:38:09 +02:00
eval-okay-concatstringssep.nix Add concatStringsSep as a primop 2015-07-24 02:38:09 +02:00
eval-okay-context.exp
eval-okay-context.nix Fix context test 2014-10-18 20:34:48 -04:00
eval-okay-curpos.exp
eval-okay-curpos.nix
eval-okay-deepseq.exp Add ‘deepSeq’ primop 2014-09-22 16:05:00 +02:00
eval-okay-deepseq.nix Add ‘deepSeq’ primop 2014-09-22 16:05:00 +02:00
eval-okay-delayed-with-inherit.exp
eval-okay-delayed-with-inherit.nix
eval-okay-delayed-with.exp
eval-okay-delayed-with.nix
eval-okay-dynamic-attrs-2.exp Fold dynamic binds handling into addAttr 2013-12-31 17:57:10 -05:00
eval-okay-dynamic-attrs-2.nix Fold dynamic binds handling into addAttr 2013-12-31 17:57:10 -05:00
eval-okay-dynamic-attrs-bare.exp Allow "bare" dynamic attrs 2014-01-14 14:00:15 +01:00
eval-okay-dynamic-attrs-bare.nix Allow "bare" dynamic attrs 2014-01-14 14:00:15 +01:00
eval-okay-dynamic-attrs.exp Dynamic attrs 2013-12-31 20:59:49 +00:00
eval-okay-dynamic-attrs.nix Dynamic attrs 2013-12-31 20:59:49 +00:00
eval-okay-elem.exp Test some more primops 2014-02-26 19:08:44 +01:00
eval-okay-elem.nix Test some more primops 2014-02-26 19:08:44 +01:00
eval-okay-empty-args.exp
eval-okay-empty-args.nix
eval-okay-eq-derivations.exp
eval-okay-eq-derivations.nix
eval-okay-eq.exp.disabled
eval-okay-eq.nix
eval-okay-filter.exp Test some more primops 2014-02-26 19:08:44 +01:00
eval-okay-filter.nix Test some more primops 2014-02-26 19:08:44 +01:00
eval-okay-flatten.exp
eval-okay-flatten.nix
eval-okay-fromjson.exp Add builtin function ‘fromJSON’ 2014-07-04 13:34:15 +02:00
eval-okay-fromjson.nix Fix broken number parsing in fromJSON 2016-02-15 15:01:26 +01:00
eval-okay-functionargs.exp.xml
eval-okay-functionargs.nix
eval-okay-getattrpos.exp
eval-okay-getattrpos.nix
eval-okay-getenv.exp
eval-okay-getenv.nix
eval-okay-hash.exp Support SHA-512 hashes 2015-11-04 16:37:49 +01:00
eval-okay-hash.nix Support SHA-512 hashes 2015-11-04 16:37:49 +01:00
eval-okay-if.exp
eval-okay-if.nix
eval-okay-import.exp Add primop ‘scopedImport’ 2014-05-26 14:26:29 +02:00
eval-okay-import.nix Add primop ‘scopedImport’ 2014-05-26 14:26:29 +02:00
eval-okay-ind-string.exp Fix lexer to support $' in multiline strings. 2017-05-01 01:15:40 +02:00
eval-okay-ind-string.nix Fix lexer to support $' in multiline strings. 2017-05-01 01:15:40 +02:00
eval-okay-let.exp
eval-okay-let.nix
eval-okay-list.exp
eval-okay-list.nix
eval-okay-listtoattrs.exp
eval-okay-listtoattrs.nix
eval-okay-logic.exp
eval-okay-logic.nix
eval-okay-map.exp
eval-okay-map.nix
eval-okay-new-let.exp
eval-okay-new-let.nix
eval-okay-null-dynamic-attrs.exp If a dynamic attribute name evaluates to null, remove it from the set 2014-03-10 10:14:50 +01:00
eval-okay-null-dynamic-attrs.nix If a dynamic attribute name evaluates to null, remove it from the set 2014-03-10 10:14:50 +01:00
eval-okay-overrides.exp
eval-okay-overrides.nix
eval-okay-partition.exp Add builtin function "partition" 2016-08-29 19:36:54 +02:00
eval-okay-partition.nix Add builtin function "partition" 2016-08-29 19:36:54 +02:00
eval-okay-path.nix Add path primop. 2018-02-06 16:48:08 -05:00
eval-okay-pathexists.exp
eval-okay-pathexists.nix
eval-okay-patterns.exp
eval-okay-patterns.nix
eval-okay-readDir.exp Add test for readDir primop 2014-10-03 22:32:11 +02:00
eval-okay-readDir.nix Add test for readDir primop 2014-10-03 22:32:11 +02:00
eval-okay-readfile.exp
eval-okay-readfile.nix
eval-okay-redefine-builtin.exp Add the ExprBuiltin Expr type to the AST 2013-12-31 17:45:47 +00:00
eval-okay-redefine-builtin.nix Add the ExprBuiltin Expr type to the AST 2013-12-31 17:45:47 +00:00
eval-okay-regex-match.exp Add a primop for regular expression pattern matching 2014-11-25 11:47:06 +01:00
eval-okay-regex-match.nix Document that builtins.match takes a POSIX extended RE 2017-05-17 12:18:18 +02:00
eval-okay-regex-split.nix Add builtins.string function. 2017-08-15 20:04:11 +00:00
eval-okay-remove.exp
eval-okay-remove.nix
eval-okay-replacestrings.exp libexpr: Fix prim_replaceStrings() to work on an empty source string 2018-02-26 19:49:13 +02:00
eval-okay-replacestrings.nix libexpr: Fix prim_replaceStrings() to work on an empty source string 2018-02-26 19:49:13 +02:00
eval-okay-scope-1.exp
eval-okay-scope-1.nix
eval-okay-scope-2.exp
eval-okay-scope-2.nix
eval-okay-scope-3.exp
eval-okay-scope-3.nix
eval-okay-scope-4.exp
eval-okay-scope-4.nix
eval-okay-scope-6.exp
eval-okay-scope-6.nix
eval-okay-scope-7.exp
eval-okay-scope-7.nix
eval-okay-search-path.exp Fix test 2014-05-29 19:04:27 +02:00
eval-okay-search-path.flags
eval-okay-search-path.nix Rename nixPath to __nixPath 2014-07-30 11:28:39 +02:00
eval-okay-seq.exp Add ‘seq’ primop 2014-09-22 16:05:00 +02:00
eval-okay-seq.nix Add ‘seq’ primop 2014-09-22 16:05:00 +02:00
eval-okay-sort.exp Add sort primop 2015-07-28 18:39:39 +02:00
eval-okay-sort.nix Add sort primop 2015-07-28 18:39:39 +02:00
eval-okay-splitversion.exp Add splitVersion primop. 2018-02-14 09:55:43 -05:00
eval-okay-splitversion.nix Add splitVersion primop. 2018-02-14 09:55:43 -05:00
eval-okay-string.exp Fix the parsing of "$"'s in strings. 2015-07-03 14:09:58 +02:00
eval-okay-string.nix Fix the parsing of "$"'s in strings. 2015-07-03 14:09:58 +02:00
eval-okay-strings-as-attrs-names.exp
eval-okay-strings-as-attrs-names.nix
eval-okay-substring.exp
eval-okay-substring.nix
eval-okay-tail-call-1.exp-disabled Disable the tail call test 2014-01-06 11:32:22 +01:00
eval-okay-tail-call-1.nix
eval-okay-tojson.exp Adapt tests to show that floats work properly. 2016-01-06 10:03:24 +01:00
eval-okay-tojson.nix Adapt tests to show that floats work properly. 2016-01-06 10:03:24 +01:00
eval-okay-toxml.exp
eval-okay-toxml.nix
eval-okay-toxml2.exp
eval-okay-toxml2.nix
eval-okay-tryeval.exp
eval-okay-tryeval.nix
eval-okay-types.exp Adapt tests to show that floats work properly. 2016-01-06 10:03:24 +01:00
eval-okay-types.nix Adapt tests to show that floats work properly. 2016-01-06 10:03:24 +01:00
eval-okay-versions.exp
eval-okay-versions.nix
eval-okay-with.exp
eval-okay-with.nix
eval-okay-xml.exp.xml Adapt tests to show that floats work properly. 2016-01-06 10:03:24 +01:00
eval-okay-xml.nix Adapt tests to show that floats work properly. 2016-01-06 10:03:24 +01:00
imported.nix Add primop ‘scopedImport’ 2014-05-26 14:26:29 +02:00
imported2.nix Add primop ‘scopedImport’ 2014-05-26 14:26:29 +02:00
lib.nix Revert "Don't parse "x:x" as a URI" 2017-11-14 15:10:52 +01:00
parse-fail-dup-attrs-1.nix
parse-fail-dup-attrs-2.nix
parse-fail-dup-attrs-3.nix
parse-fail-dup-attrs-4.nix
parse-fail-dup-attrs-6.nix
parse-fail-dup-attrs-7.nix
parse-fail-dup-formals.nix
parse-fail-patterns-1.nix
parse-fail-regression-20060610.nix
parse-fail-undef-var-2.nix
parse-fail-undef-var.nix
parse-okay-1.nix
parse-okay-crlf.nix
parse-okay-dup-attrs-5.nix
parse-okay-regression-751.nix Remove tests/lexer.sh 2016-02-01 18:27:37 +01:00
parse-okay-regression-20041027.nix
parse-okay-subversion.nix
parse-okay-url.nix Revert "Don't parse "x:x" as a URI" 2017-11-14 15:10:52 +01:00