blob: a0d3c1df6d99c3d598a403dfe243cc68069298ca (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
https://bugs.llvm.org/show_bug.cgi?id=43235
diff --git a/llvm/include/llvm/Support/raw_ostream.h b/llvm/include/llvm/Support/raw_ostream.h
index 705f1790b1d..a0314b2c46a 100644
--- a/include/llvm/Support/raw_ostream.h
+++ b/include/llvm/Support/raw_ostream.h
@@ -507,9 +507,7 @@ class raw_string_ostream : public raw_ostream {
/// See raw_ostream::write_impl.
void write_impl(const char *Ptr, size_t Size) override;
- /// Return the current position within the stream, not counting the bytes
- /// currently in the buffer.
- uint64_t current_pos() const override { return OS.size(); }
+ uint64_t current_pos() const override;
public:
explicit raw_string_ostream(std::string &O) : OS(O) {}
diff --git a/llvm/lib/Support/raw_ostream.cpp b/llvm/lib/Support/raw_ostream.cpp
index 4bb315f824a..742e2aced39 100644
--- a/lib/Support/raw_ostream.cpp
+++ b/lib/Support/raw_ostream.cpp
@@ -895,6 +895,10 @@ raw_ostream &llvm::nulls() {
// raw_string_ostream
//===----------------------------------------------------------------------===//
+/// Return the current position within the stream, not counting the bytes
+/// currently in the buffer.
+uint64_t raw_string_ostream::current_pos() const { return OS.size(); }
+
raw_string_ostream::~raw_string_ostream() {
flush();
}
|