Rui Ueyama
9a40ae8935
YAMLIO: Fix string quoting logic.
...
YAMLIO printed a string as is without quotes unless it contains a newline
character. That did not suffice. We also need to quote a string if it starts
with a backquote, quote, double quote or atsign, or it's the empty string.
llvm-svn: 190469
2013-09-11 00:45:48 +00:00
Aaron Ballman
0e63e53da1
Tighten up the yamilizer so it stops eliding empty sequences if the embedded empty sequence is the first key/value in a map which is itself in a sequence.
...
Patch with help from Nick Kledzik.
llvm-svn: 188508
2013-08-15 23:17:53 +00:00
Dmitri Gribenko
df73c300bc
YAMLTraits.h: replace DenseMap that used a bad implementation of DenseMapInfo
...
for StringRef with a StringMap
The bug is that the empty key compares equal to the tombstone key.
Also added an assertion to DenseMap to catch similar bugs in future.
llvm-svn: 187866
2013-08-07 05:51:27 +00:00
Craig Topper
af0dea1347
Use SmallVectorImpl::iterator/const_iterator instead of SmallVector to avoid specifying the vector size.
...
llvm-svn: 185606
2013-07-04 01:31:24 +00:00
Nick Kledzik
0dcef84b13
Fix memory leak in YAML I/O.
...
Stop using BumpPtrAllocator for HNodes because
they have fields (vector, map) which require HNode
destructors to be run.
llvm-svn: 171896
2013-01-08 21:04:44 +00:00
Nick Kledzik
11964f2a8f
Fix how YAML I/O detects flow sequences.
...
Update test case to verify flow sequence is
written as a flow sequence.
llvm-svn: 171514
2013-01-04 19:32:00 +00:00
Richard Smith
045e4f1365
Don't call back() on an empty SmallVector. Found by -fsanitize=enum!
...
llvm-svn: 170968
2012-12-22 00:15:13 +00:00
Benjamin Kramer
36b0f12474
YAMLIO: Remove all of the template instantiation hacks, I don't see why they're necessary and it breaks linking of the unit tests.
...
Also comes with a clang-format run on the cpp file, it had major style violations.
llvm-svn: 170036
2012-12-12 22:40:02 +00:00
Nick Kledzik
f54b15a86d
Fix calls to getAsSignedInteger() to use long long - not int64_t
...
llvm-svn: 170030
2012-12-12 21:42:49 +00:00
Benjamin Kramer
cbe058412a
Fix the build on case sensitive file systems.
...
llvm-svn: 170021
2012-12-12 20:55:44 +00:00
Nick Kledzik
f60a9279ea
Initial implementation of a utility for converting native data
...
structures to and from YAML using traits. The first client will
be the test suite of lld. The documentation will show up at:
http://llvm.org/docs/YamlIO.html
llvm-svn: 170019
2012-12-12 20:46:15 +00:00