aboutsummaryrefslogtreecommitdiff
path: root/gdb/language.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/language.h')
-rw-r--r--gdb/language.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/gdb/language.h b/gdb/language.h
index e6dc544..3649b00 100644
--- a/gdb/language.h
+++ b/gdb/language.h
@@ -280,6 +280,10 @@ struct language_defn
int format,
enum val_prettyprint pretty);
+ /* Return non-zero if TYPE should be passed (and returned) by
+ reference at the language level. */
+ int (*la_pass_by_reference) (struct type *type);
+
/* Add fields above this point, so the magic number is always last. */
/* Magic number for compat checking */
@@ -471,4 +475,13 @@ extern void default_print_array_index (struct value *index_value,
int format,
enum val_prettyprint pretty);
+/* Return non-zero if TYPE should be passed (and returned) by
+ reference at the language level. */
+int language_pass_by_reference (struct type *type);
+
+/* Return zero; by default, types are passed by value at the language
+ level. The target ABI may pass or return some structs by reference
+ independent of this. */
+int default_pass_by_reference (struct type *type);
+
#endif /* defined (LANGUAGE_H) */