/* Pragma related interfaces.
Copyright (C) 1995, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
- 2007 Free Software Foundation, Inc.
+ 2007, 2008 Free Software Foundation, Inc.
This file is part of GCC.
extern enum cpp_ttype pragma_lex (tree *);
+/* Flags for use with c_lex_with_flags. The values here were picked
+ so that 0 means to translate and join strings. */
+#define C_LEX_STRING_NO_TRANSLATE 1 /* Do not lex strings into
+ execution character set. */
+#define C_LEX_RAW_STRINGS 2 /* Return raw strings -- no
+ concatenation, no
+ translation. */
+
/* This is not actually available to pragma parsers. It's merely a
convenient location to declare this function for c-lex, after
having enum cpp_ttype declared. */
-extern enum cpp_ttype c_lex_with_flags (tree *, location_t *, unsigned char *);
-
-/* If 1, then lex strings into the execution character set.
- If 0, lex strings into the host character set.
- If -1, lex both, and chain them together, such that the former
- is the TREE_CHAIN of the latter. */
-extern int c_lex_string_translate;
+extern enum cpp_ttype c_lex_with_flags (tree *, location_t *, unsigned char *,
+ int);
-/* If true, strings should be passed to the caller of c_lex completely
- unmolested (no concatenation, no translation). */
-extern bool c_lex_return_raw_strings;
+extern void c_pp_lookup_pragma (unsigned int, const char **, const char **);
#endif /* GCC_C_PRAGMA_H */