default_catalog_reader_ty *dcatr;
dcatr = default_catalog_reader_alloc (&msgfmt_methods);
+ dcatr->pass_obsolete_entries = true;
dcatr->handle_comments = false;
dcatr->allow_domain_directives = true;
dcatr->allow_duplicates = false;
dcatr->domain = current_domain->domain_name;
dcatr->mlp = current_domain->mlp;
}
- po_lex_pass_obsolete_entries (true);
catalog_reader_parse ((abstract_catalog_reader_ty *) dcatr, fp, real_filename,
filename, false, input_syntax);
catalog_reader_free ((abstract_catalog_reader_ty *) dcatr);
check_obsolete ($1, $2);
check_obsolete ($1, $3);
check_obsolete ($1, $4);
- if (!$1.obsolete || pass_obsolete_entries)
+ if (!$1.obsolete || ps->catr->pass_obsolete_entries)
do_callback_message (ps, $1.ctxt, string2, &$1.pos, NULL,
string4, strlen (string4) + 1, &$3.pos,
$1.prev_ctxt,
check_obsolete ($1, $2);
check_obsolete ($1, $3);
check_obsolete ($1, $4);
- if (!$1.obsolete || pass_obsolete_entries)
+ if (!$1.obsolete || ps->catr->pass_obsolete_entries)
do_callback_message (ps, $1.ctxt, string2, &$1.pos, $3.string,
$4.rhs.msgstr, $4.rhs.msgstr_len, &$4.pos,
$1.prev_ctxt,
unsigned int gram_max_allowed_errors = 20;
static bool pass_comments = false;
-bool pass_obsolete_entries = false;
/* Prepare lexical analysis. */
{
pass_comments = flag;
}
-
-
-/* po_gram_lex() can return obsolete entries as if they were normal entries.
- Switch this on or off. */
-void
-po_lex_pass_obsolete_entries (bool flag)
-{
- pass_obsolete_entries = flag;
-}
terminate. Cf. error_message_count, declared in <error.h>. */
extern DLL_VARIABLE unsigned int gram_max_allowed_errors;
-/* True if obsolete entries shall be considered as valid. */
-extern DLL_VARIABLE bool pass_obsolete_entries;
-
/* Prepare lexical analysis. */
extern void lex_start (struct po_parser_state *ps,
/* po_gram_lex() can return comments as COMMENT. Switch this on or off. */
extern void po_lex_pass_comments (bool flag);
-/* po_gram_lex() can return obsolete entries as if they were normal entries.
- Switch this on or off. */
-extern void po_lex_pass_obsolete_entries (bool flag);
-
extern void po_gram_error (struct po_parser_state *ps, const char *fmt, ...)
__attribute__ ((__format__ (__printf__, 2, 3)));
extern void po_gram_error_at_line (const lex_pos_ty *pos, const char *fmt, ...)
catr = (abstract_catalog_reader_ty *) xmalloc (method_table->size);
catr->methods = method_table;
+ catr->pass_obsolete_entries = false;
catr->po_lex_isolate_start = NULL;
catr->po_lex_isolate_end = NULL;
if (method_table->constructor)
#define ABSTRACT_CATALOG_READER_TY \
abstract_catalog_reader_class_ty *methods; \
\
+ /* True if obsolete entries shall be considered as valid. */ \
+ bool pass_obsolete_entries; \
+ \
/* Representation of U+2068 FIRST STRONG ISOLATE (FSI) in the \
PO file's encoding, or NULL if not available. */ \
const char *po_lex_isolate_start; \
msgdomain_list_ty *mdlp;
dcatr = default_catalog_reader_alloc (&default_methods);
+ dcatr->pass_obsolete_entries = true;
dcatr->handle_comments = true;
dcatr->allow_domain_directives = true;
dcatr->allow_duplicates = allow_duplicates;
if (input_syntax->produces_utf8)
/* We know a priori that input_syntax->parse convert strings to UTF-8. */
dcatr->mdlp->encoding = po_charset_utf8;
- po_lex_pass_obsolete_entries (true);
catalog_reader_parse ((abstract_catalog_reader_ty *) dcatr, fp, real_filename,
logical_filename, false, input_syntax);
mdlp = dcatr->mdlp;
VARIABLE(output_format_po)
VARIABLE(output_format_properties)
VARIABLE(output_format_stringtable)
-VARIABLE(pass_obsolete_entries)
VARIABLE(plural_table)
VARIABLE(plural_table_size)
VARIABLE(po_charset_ascii)