]> git.sur5r.net Git - cc65/blobdiff - src/common/filepos.h
Only for jumps, the lib uses named asm labels in branches
[cc65] / src / common / filepos.h
index dd41472f88b36a76c347192b42593658634ad09a..d6368ad6f63b3d2c8b5030be850ee1d247e35882 100644 (file)
@@ -1,15 +1,15 @@
 /*****************************************************************************/
 /*                                                                           */
-/*                                filepos.h                                 */
+/*                                 filepos.h                                 */
 /*                                                                           */
-/*                      File position data structure                        */
+/*                       File position data structure                        */
 /*                                                                           */
 /*                                                                           */
 /*                                                                           */
-/* (C) 1998-2000 Ullrich von Bassewitz                                       */
-/*               Wacholderweg 14                                             */
-/*               D-70597 Stuttgart                                           */
-/* EMail:        uz@musoftware.de                                            */
+/* (C) 1998-2011, Ullrich von Bassewitz                                      */
+/*                Roemerstrasse 52                                           */
+/*                D-70794 Filderstadt                                        */
+/* EMail:         uz@cc65.org                                                */
 /*                                                                           */
 /*                                                                           */
 /* This software is provided 'as-is', without any expressed or implied       */
@@ -39,7 +39,7 @@
 
 
 /*****************************************************************************/
-/*                                          Data                                    */
+/*                                   Data                                    */
 /*****************************************************************************/
 
 
 /* Type of a file position */
 typedef struct FilePos FilePos;
 struct FilePos {
-    unsigned long   Line;              /* Line */
-    unsigned short  Col;               /* Column */
-    unsigned short  Name;              /* File */
+    unsigned    Line;               /* Line */
+    unsigned    Col;                /* Column */
+    unsigned    Name;               /* File */
 };
 
+/* Initializer for a FilePos */
+#define STATIC_FILEPOS_INITIALIZER      { 0, 0, 0 }
+
 
 
 /*****************************************************************************/
-/*                                          Code                                    */
+/*                                   Code                                    */
 /*****************************************************************************/
 
 
@@ -63,11 +66,14 @@ struct FilePos {
 void InitFilePos (FilePos* P);
 /* Initialize the file position (set all fields to zero) */
 
+int CompareFilePos (const FilePos* P1, const FilePos* P2);
+/* Compare two file positions. Return zero if both are equal, return a value
+** > 0 if P1 is greater and P2, and a value < 0 if P1 is less than P2. The
+** compare rates file index over line over column.
+*/
+
 
 
 /* End of filepos.h */
 
 #endif
-
-
-