pike.git
/
src
/
program.h
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/program.h:1:
/* || This file is part of Pike. For copyright information see COPYRIGHT. || Pike is distributed under GPL, LGPL and MPL. See the file COPYING || for more information.
-
|| $Id: program.h,v 1.
247
2008/05/
21
21
:
55
:
49
grubba Exp $
+
|| $Id: program.h,v 1.
248
2008/05/
24
15
:
14
:
12
grubba Exp $
*/ #ifndef PROGRAM_H #define PROGRAM_H #include <stdarg.h> #include "global.h" #include "pike_macros.h" #include "pike_error.h" #include "svalue.h"
pike.git/src/program.h:46:
int tmp_ = (Pike_compiler->flags & ~COMPILATION_FORCE_RESOLVE) | \ ((OLD) & COMPILATION_FORCE_RESOLVE); \ DO_IF_FRD(fprintf(stderr, \ "Force resolve unset. Flags:0x%04x (0x%04x)\n", \ tmp_, Pike_compiler->flags)); \ Pike_compiler->flags = tmp_; \ } while(0) extern struct pike_string *this_program_string;
+
/* Common compiler subsystems */
+
extern struct pike_string *parser_system_string;
+
extern struct pike_string *type_check_system_string;
+
#define LFUN___INIT 0 #define LFUN_CREATE 1 #define LFUN_DESTROY 2 #define LFUN_ADD 3 #define LFUN_SUBTRACT 4 #define LFUN_AND 5 #define LFUN_OR 6 #define LFUN_XOR 7 #define LFUN_LSH 8 #define LFUN_RSH 9
pike.git/src/program.h:675:
extern struct object *compilation_environment; extern struct program *pike_trampoline_program; extern struct program *gc_internal_program; extern struct program *placeholder_program; extern struct object *placeholder_object; /* Flags for identifier finding... */ #define SEE_STATIC 1 #define SEE_PRIVATE 2
+
/* Report levels */
+
#define REPORT_NOTICE 0 /* FYI. */
+
#define REPORT_WARNING 1 /* Compiler warning. */
+
#define REPORT_ERROR 2 /* Compilation error. */
+
#define REPORT_FATAL 3 /* Unrecoverable error. */
-
+
#define COMPILER_IN_CATCH 1 #define ADD_STORAGE(X) low_add_storage(sizeof(X), ALIGNOF(X),0) #define STORAGE_NEEDED(X) ((X)->storage_needed - (X)->inherits[0].storage_offset) #define FOO(NUMTYPE,TYPE,ARGTYPE,NAME) void PIKE_CONCAT(add_to_,NAME(ARGTYPE ARG)); #include "program_areas.h" typedef int supporter_callback (void *, int);
pike.git/src/program.h:872:
PMOD_EXPORT char *low_get_program_line_plain (struct program *prog, INT32 *linep, int malloced); PMOD_EXPORT struct pike_string *low_get_line(PIKE_OPCODE_T *pc, struct program *prog, INT32 *linep); PMOD_EXPORT char *low_get_line_plain (PIKE_OPCODE_T *pc, struct program *prog, INT32 *linep, int malloced); PMOD_EXPORT struct pike_string *get_line(PIKE_OPCODE_T *pc, struct program *prog, INT32 *linep); PMOD_EXPORT struct pike_string *low_get_function_line (struct object *o, int fun, INT32 *linep);
-
PMOD_EXPORT void va_
yyerror
(const char *fmt, va_list args);
+
PMOD_EXPORT void va_
yyreport
(
int severity_level,
+
struct pike_string *file, INT32 line,
+
struct pike_string *system, INT32 args,
+
const char *fmt, va_list
vargs);
+
PMOD_EXPORT void low_yyreport(int severity_level,
+
struct pike_string *file, INT32 line,
+
struct pike_string *system,
+
INT32
args
, const char *fmt, ...
);
+
PMOD_EXPORT void yyreport(int severity_level, struct pike_string *system,
+
INT32 args, const char *fmt, ...);
+
PMOD_EXPORT void yywarning(char *fmt, ...);
PMOD_EXPORT void my_yyerror(const char *fmt,...);
-
+
PMOD_EXPORT void yyerror(const char *s);
+
void yytype_report(int severity_level,
+
struct pike_string *expect_file, INT32 expect_line,
+
struct pike_type *expected_t,
+
struct pike_string *got_file, INT32 got_line,
+
struct pike_type *got_t,
+
INT32 args, const char *fmt, ...);
+
void yytype_error(const char *msg, struct pike_type *expected_t,
+
struct pike_type *got_t, unsigned int flags);
struct pike_string *format_exception_for_error_msg (struct svalue *thrown); void handle_compile_exception (const char *yyerror_fmt, ...); struct supporter_marker; void verify_supporters(void); void init_supporter(struct Supporter *s, supporter_callback *fun, void *data); int unlink_current_supporter(struct Supporter *c); int call_dependants(struct Supporter *s, int finish); int report_compiler_dependency(struct program *p);
pike.git/src/program.h:927:
void low_pop_local_variables(int level); void pop_local_variables(int level); void pop_compiler_frame(void); ptrdiff_t low_get_storage(struct program *o, struct program *p); PMOD_EXPORT char *get_storage(struct object *o, struct program *p); struct program *low_program_from_function(struct object *o, INT32 i); PMOD_EXPORT struct program *program_from_function(const struct svalue *f); PMOD_EXPORT struct program *program_from_svalue(const struct svalue *s); struct find_child_cache_s; int find_child(struct program *parent, struct program *child);
-
void va_yyreport(int severity_level, const char *system,
-
const char *fmt, va_list args);
-
void yyreport(int severity_level, const char *system, const char *fmt, ...);
-
void yywarning(char *fmt, ...);
+
struct implements_cache_s; PMOD_EXPORT int implements(struct program *a, struct program *b); PMOD_EXPORT int is_compatible(struct program *a, struct program *b);
-
void yyexplain_not_compatible(struct program *a, struct program *b
, int flags
);
-
void yyexplain_not_implements(struct program *a, struct program *b
, int flags
);
+
void yyexplain_not_compatible(
int severity_level,
+
struct program *a, struct program *b);
+
void yyexplain_not_implements(
int severity_level,
+
struct program *a, struct program *b);
PMOD_EXPORT void *parent_storage(int depth); PMOD_EXPORT void change_compiler_compatibility(int major, int minor); void make_program_executable(struct program *p); /* Prototypes end here */ void count_memory_in_programs(size_t *, size_t *); #ifndef PIKE_USE_MACHINE_CODE #define make_program_executable(X) #endif