summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTim Landscheidt <tim@tim-landscheidt.de>2019-01-15 14:21:19 +0000
committerMartin Michlmayr <tbm@cyrius.com>2019-01-25 17:10:13 -0300
commit0e5f0792ff7cfcc2012a53fa5372f4d6d04b5948 (patch)
treeafdbc0ee4d51b2e163e16310ff9d21529cb2c9fe /src
parentccd330746a77cf335b2816a3048a8e25e61f8ed4 (diff)
downloadfork-ledger-0e5f0792ff7cfcc2012a53fa5372f4d6d04b5948.tar.gz
fork-ledger-0e5f0792ff7cfcc2012a53fa5372f4d6d04b5948.tar.bz2
fork-ledger-0e5f0792ff7cfcc2012a53fa5372f4d6d04b5948.zip
Drop support for gcc 2 and earlier
Diffstat (limited to 'src')
-rw-r--r--src/annotate.cc4
-rw-r--r--src/commodity.cc4
-rw-r--r--src/context.h28
-rw-r--r--src/error.cc10
-rw-r--r--src/error.h10
-rw-r--r--src/expr.cc14
-rw-r--r--src/format.cc4
-rw-r--r--src/item.h14
-rw-r--r--src/op.cc4
-rw-r--r--src/op.h22
-rw-r--r--src/quotes.cc7
-rw-r--r--src/system.hh.in27
-rw-r--r--src/textual.cc10
-rw-r--r--src/token.cc4
14 files changed, 65 insertions, 97 deletions
diff --git a/src/annotate.cc b/src/annotate.cc
index ab81d412..c5ccdf07 100644
--- a/src/annotate.cc
+++ b/src/annotate.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -81,7 +81,7 @@ bool annotation_t::operator<(const annotation_t& rhs) const
void annotation_t::parse(std::istream& in)
{
do {
- istream_pos_type pos = in.tellg();
+ std::istream::pos_type pos = in.tellg();
if (static_cast<int>(pos) < 0)
return;
diff --git a/src/commodity.cc b/src/commodity.cc
index a8520ca1..d6d5ca98 100644
--- a/src/commodity.cc
+++ b/src/commodity.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -294,7 +294,7 @@ bool commodity_t::symbol_needs_quotes(const string& symbol)
void commodity_t::parse_symbol(std::istream& in, string& symbol)
{
- istream_pos_type pos = in.tellg();
+ std::istream::pos_type pos = in.tellg();
char buf[256];
char c = peek_next_nonws(in);
diff --git a/src/context.h b/src/context.h
index 0af59930..aba3a60e 100644
--- a/src/context.h
+++ b/src/context.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -58,19 +58,19 @@ public:
shared_ptr<std::istream> stream;
- path pathname;
- path current_directory;
- journal_t * journal;
- account_t * master;
- scope_t * scope;
- char linebuf[MAX_LINE + 1];
- istream_pos_type line_beg_pos;
- istream_pos_type curr_pos;
- std::size_t linenum;
- std::size_t errors;
- std::size_t count;
- std::size_t sequence;
- std::string last;
+ path pathname;
+ path current_directory;
+ journal_t * journal;
+ account_t * master;
+ scope_t * scope;
+ char linebuf[MAX_LINE + 1];
+ std::istream::pos_type line_beg_pos;
+ std::istream::pos_type curr_pos;
+ std::size_t linenum;
+ std::size_t errors;
+ std::size_t count;
+ std::size_t sequence;
+ std::string last;
explicit parse_context_t(const path& cwd)
: current_directory(cwd), master(NULL), scope(NULL),
diff --git a/src/error.cc b/src/error.cc
index 7e49645b..1ab92840 100644
--- a/src/error.cc
+++ b/src/error.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -78,10 +78,10 @@ string line_context(const string& line,
return buf.str();
}
-string source_context(const path& file,
- const istream_pos_type pos,
- const istream_pos_type end_pos,
- const string& prefix)
+string source_context(const path& file,
+ const std::istream::pos_type pos,
+ const std::istream::pos_type end_pos,
+ const string& prefix)
{
const std::streamoff len = end_pos - pos;
if (! len || file.empty())
diff --git a/src/error.h b/src/error.h
index bc9953cd..3bdcde98 100644
--- a/src/error.h
+++ b/src/error.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -81,10 +81,10 @@ string line_context(const string& line,
const string::size_type pos = 0,
const string::size_type end_pos = 0);
-string source_context(const path& file,
- const istream_pos_type pos,
- const istream_pos_type end_pos,
- const string& prefix = "");
+string source_context(const path& file,
+ const std::istream::pos_type pos,
+ const std::istream::pos_type end_pos,
+ const string& prefix = "");
#define DECLARE_EXCEPTION(name, kind) \
class name : public kind { \
diff --git a/src/expr.cc b/src/expr.cc
index 85818e4b..c8945d3d 100644
--- a/src/expr.cc
+++ b/src/expr.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -94,9 +94,9 @@ void expr_t::parse(std::istream& in, const parse_flags_t& flags,
const optional<string>& original_string)
{
parser_t parser;
- istream_pos_type start_pos = in.tellg();
+ std::istream::pos_type start_pos = in.tellg();
ptr = parser.parse(in, flags, original_string);
- istream_pos_type end_pos = in.tellg();
+ std::istream::pos_type end_pos = in.tellg();
if (original_string) {
set_text(*original_string);
@@ -290,10 +290,10 @@ value_t source_command(call_scope_t& args)
in = &std::cin;
}
- symbol_scope_t file_locals(args);
- std::size_t linenum = 0;
- char buf[4096];
- istream_pos_type pos;
+ symbol_scope_t file_locals(args);
+ std::size_t linenum = 0;
+ char buf[4096];
+ std::istream::pos_type pos;
while (in->good() && ! in->eof()) {
pos = in->tellg();
diff --git a/src/format.cc b/src/format.cc
index bb578141..5b9baa21 100644
--- a/src/format.cc
+++ b/src/format.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -103,7 +103,7 @@ namespace {
p += std::strlen(p);
} else {
assert(str.good());
- istream_pos_type pos = str.tellg();
+ std::istream::pos_type pos = str.tellg();
expr.set_text(string(p, p + long(pos)));
p += long(pos) - 1;
diff --git a/src/item.h b/src/item.h
index a28bf59e..51539eff 100644
--- a/src/item.h
+++ b/src/item.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -48,12 +48,12 @@ namespace ledger {
struct position_t
{
- path pathname;
- istream_pos_type beg_pos;
- std::size_t beg_line;
- istream_pos_type end_pos;
- std::size_t end_line;
- std::size_t sequence;
+ path pathname;
+ std::istream::pos_type beg_pos;
+ std::size_t beg_line;
+ std::istream::pos_type end_pos;
+ std::size_t end_line;
+ std::size_t sequence;
position_t()
: beg_pos(0), beg_line(0), end_pos(0), end_line(0), sequence(0) {
diff --git a/src/op.cc b/src/op.cc
index 00b84459..5801b1dd 100644
--- a/src/op.cc
+++ b/src/op.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -963,7 +963,7 @@ void expr_t::op_t::dump(std::ostream& out, const int depth) const
string op_context(const expr_t::ptr_op_t op,
const expr_t::ptr_op_t locus)
{
- ostream_pos_type start_pos, end_pos;
+ std::ostream::pos_type start_pos, end_pos;
expr_t::op_t::context_t context(op, locus, &start_pos, &end_pos);
std::ostringstream buf;
buf << " ";
diff --git a/src/op.h b/src/op.h
index bbbb5d81..aab362c7 100644
--- a/src/op.h
+++ b/src/op.h
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -285,19 +285,19 @@ public:
struct context_t
{
- ptr_op_t expr_op;
- ptr_op_t op_to_find;
- ostream_pos_type * start_pos;
- ostream_pos_type * end_pos;
- bool relaxed;
+ ptr_op_t expr_op;
+ ptr_op_t op_to_find;
+ std::ostream::pos_type * start_pos;
+ std::ostream::pos_type * end_pos;
+ bool relaxed;
context_t() : start_pos(NULL), end_pos(NULL), relaxed(false) {}
- context_t(const ptr_op_t& _expr_op,
- const ptr_op_t& _op_to_find,
- ostream_pos_type * const _start_pos = NULL,
- ostream_pos_type * const _end_pos = NULL,
- const bool _relaxed = true)
+ context_t(const ptr_op_t& _expr_op,
+ const ptr_op_t& _op_to_find,
+ std::ostream::pos_type * const _start_pos = NULL,
+ std::ostream::pos_type * const _end_pos = NULL,
+ const bool _relaxed = true)
: expr_op(_expr_op), op_to_find(_op_to_find),
start_pos(_start_pos), end_pos(_end_pos),
relaxed(_relaxed) {}
diff --git a/src/quotes.cc b/src/quotes.cc
index 50791560..8ae8ca90 100644
--- a/src/quotes.cc
+++ b/src/quotes.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -79,13 +79,8 @@ commodity_quote_from_script(commodity_t& commodity,
if (optional<std::pair<commodity_t *, price_point_t> > point =
commodity_pool_t::current_pool->parse_price_directive(buf)) {
if (commodity_pool_t::current_pool->price_db) {
-#if defined(__GNUG__) && __GNUG__ < 3
- ofstream database(*commodity_pool_t::current_pool->price_db,
- ios::out | ios::app);
-#else
ofstream database(*commodity_pool_t::current_pool->price_db,
std::ios_base::out | std::ios_base::app);
-#endif
database << "P "
<< format_datetime(point->second.when, FMT_WRITTEN)
<< " " << commodity.symbol()
diff --git a/src/system.hh.in b/src/system.hh.in
index 799c7102..97651e8b 100644
--- a/src/system.hh.in
+++ b/src/system.hh.in
@@ -81,10 +81,6 @@
/* System includes */
/*------------------------------------------------------------------------*/
-#if defined(__GNUG__) && __GNUG__ < 3
-#define _XOPEN_SOURCE
-#endif
-
#include <algorithm>
#include <exception>
#include <typeinfo>
@@ -104,29 +100,6 @@
#include <string>
#include <vector>
-#if defined(__GNUG__) && __GNUG__ < 3
-
-namespace std {
- inline ostream & right (ostream & i) {
- i.setf(i.right, i.adjustfield);
- return i;
- }
- inline ostream & left (ostream & i) {
- i.setf(i.left, i.adjustfield);
- return i;
- }
-}
-
-typedef std::streamoff istream_pos_type;
-typedef std::streamoff ostream_pos_type;
-
-#else // ! (defined(__GNUG__) && __GNUG__ < 3)
-
-typedef std::istream::pos_type istream_pos_type;
-typedef std::ostream::pos_type ostream_pos_type;
-
-#endif
-
#include <cassert>
#include <cctype>
#include <cstdarg>
diff --git a/src/textual.cc b/src/textual.cc
index 3416073b..1e494969 100644
--- a/src/textual.cc
+++ b/src/textual.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -557,7 +557,7 @@ void instance_t::option_directive(char * line)
void instance_t::automated_xact_directive(char * line)
{
- istream_pos_type pos = context.line_beg_pos;
+ std::istream::pos_type pos = context.line_beg_pos;
bool reveal_context = true;
@@ -653,7 +653,7 @@ void instance_t::automated_xact_directive(char * line)
void instance_t::period_xact_directive(char * line)
{
- istream_pos_type pos = context.line_beg_pos;
+ std::istream::pos_type pos = context.line_beg_pos;
bool reveal_context = true;
@@ -916,8 +916,8 @@ void instance_t::end_apply_directive(char * kind)
void instance_t::account_directive(char * line)
{
- istream_pos_type beg_pos = context.line_beg_pos;
- std::size_t beg_linenum = context.linenum;
+ std::istream::pos_type beg_pos = context.line_beg_pos;
+ std::size_t beg_linenum = context.linenum;
char * p = skip_ws(line);
account_t * account =
diff --git a/src/token.cc b/src/token.cc
index 1ec052ed..76bf5106 100644
--- a/src/token.cc
+++ b/src/token.cc
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2003-2018, John Wiegley. All rights reserved.
+ * Copyright (c) 2003-2019, John Wiegley. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -380,7 +380,7 @@ void expr_t::token_t::next(std::istream& in, const parse_flags_t& pflags)
break;
default: {
- istream_pos_type pos = in.tellg();
+ std::istream::pos_type pos = in.tellg();
// First, check to see if it's a reserved word, such as: and or not
int result = parse_reserved_word(in);