aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/pos.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/pos.h')
-rw-r--r--src/nvim/pos.h36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/nvim/pos.h b/src/nvim/pos.h
index d17e27906e..1b7e6273fd 100644
--- a/src/nvim/pos.h
+++ b/src/nvim/pos.h
@@ -1,12 +1,12 @@
#ifndef NVIM_POS_H
#define NVIM_POS_H
-// for INT_MAX, LONG_MAX et al.
-#include <limits.h>
+#include <inttypes.h>
-typedef long linenr_T; // line number type
+/// Line number type
+typedef int32_t linenr_T;
/// Format used to print values which have linenr_T type
-#define PRIdLINENR "ld"
+#define PRIdLINENR PRId32
/// Column number type
typedef int colnr_T;
@@ -15,29 +15,29 @@ typedef int colnr_T;
/// Maximal (invalid) line number
enum { MAXLNUM = 0x7fffffff, };
+
/// Maximal column number
-enum { MAXCOL = INT_MAX, };
-// Minimum line number
+/// MAXCOL used to be INT_MAX, but with 64 bit ints that results in running
+/// out of memory when trying to allocate a very long line.
+enum { MAXCOL = 0x7fffffff, };
+
+/// Minimum line number
enum { MINLNUM = 1, };
-// minimum column number
+
+/// Minimum column number
enum { MINCOL = 1, };
-/*
- * position in file or buffer
- */
+/// position in file or buffer
typedef struct {
- linenr_T lnum; // line number
- colnr_T col; // column number
+ linenr_T lnum; ///< line number
+ colnr_T col; ///< column number
colnr_T coladd;
} pos_T;
-
-/*
- * Same, but without coladd.
- */
+/// position in file or buffer, but without coladd
typedef struct {
- linenr_T lnum; // line number
- colnr_T col; // column number
+ linenr_T lnum; ///< line number
+ colnr_T col; ///< column number
} lpos_T;
#endif // NVIM_POS_H