aboutsummaryrefslogtreecommitdiffstats
path: root/tests/gpgscm/scheme-private.h
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2017-02-28 08:40:01 +0000
committerJustus Winter <[email protected]>2017-02-28 09:00:29 +0000
commit7cc57e2c63d0fa97569736419db5c76117e7685b (patch)
treeb207319233f78d2807b65507aa64a3266857caef /tests/gpgscm/scheme-private.h
parentgpgv,w32: Fix --status-fd. (diff)
downloadgnupg-7cc57e2c63d0fa97569736419db5c76117e7685b.tar.gz
gnupg-7cc57e2c63d0fa97569736419db5c76117e7685b.zip
gpgscm: Track source locations in every kind of ports.
* tests/gpgscm/scheme-private.h (struct port): Move location information out of the union. * tests/gpgscm/scheme.c (mark): All ports need marking now. (gc): Likewise all ports on the load stack. (port_clear_location): Adapt accordingly. Also, add an empty function for !SHOW_ERROR_LINE. (port_increment_current_line): Likewise. (port_reset_current_line): Drop function in favor of... (port_init_location): ... this new function. (file_push): Simplify. (file_pop): Likewise. (port_rep_from_filename): Likewise. (port_rep_from_file): Likewise. (port_rep_from_string): Also initialize the location. (port_rep_from_scratch): Likewise. (port_close): Simplify and generalize. (skipspace): Likewise. (token): Likewise. (_Error_1): Generalize. (opexe_5): Likewise. (scheme_deinit): Simplify and generalize. (scheme_load_named_file): Likewise. (scheme_load_string): Also initialize the location. -- This change tracks the location of source code loaded from non-file ports that is used in error messages. It also simplifies the code quite a bit. Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to 'tests/gpgscm/scheme-private.h')
-rw-r--r--tests/gpgscm/scheme-private.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h
index ad8f57142..abd89e8cb 100644
--- a/tests/gpgscm/scheme-private.h
+++ b/tests/gpgscm/scheme-private.h
@@ -27,10 +27,6 @@ typedef struct port {
struct {
FILE *file;
int closeit;
-#if SHOW_ERROR_LINE
- pointer curr_line;
- pointer filename;
-#endif
} stdio;
struct {
char *start;
@@ -38,6 +34,10 @@ typedef struct port {
char *curr;
} string;
} rep;
+#if SHOW_ERROR_LINE
+ pointer curr_line;
+ pointer filename;
+#endif
} port;
/* cell structure */