diff options
author | Ian Lance Taylor <iant@golang.org> | 2022-07-27 10:15:41 -0700 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2022-07-27 10:15:41 -0700 |
commit | 9f62ed218fa656607740b386c0caa03e65dcd283 (patch) | |
tree | 6bde49bc5e4c4241266b108e4277baef4b85535d /gcc/objc | |
parent | 71e955da39cea0ebffcfee3432effa622d14ca99 (diff) | |
parent | 5eb9f117a361538834b9740d59219911680717d1 (diff) | |
download | gcc-9f62ed218fa656607740b386c0caa03e65dcd283.zip gcc-9f62ed218fa656607740b386c0caa03e65dcd283.tar.gz gcc-9f62ed218fa656607740b386c0caa03e65dcd283.tar.bz2 |
Merge from trunk revision 5eb9f117a361538834b9740d59219911680717d1.
Diffstat (limited to 'gcc/objc')
-rw-r--r-- | gcc/objc/ChangeLog | 28 | ||||
-rw-r--r-- | gcc/objc/Make-lang.in | 2 | ||||
-rw-r--r-- | gcc/objc/lang-specs.h | 8 | ||||
-rw-r--r-- | gcc/objc/objc-act.cc | 2 | ||||
-rw-r--r-- | gcc/objc/objc-act.h | 1 | ||||
-rw-r--r-- | gcc/objc/objc-lang.cc | 8 | ||||
-rw-r--r-- | gcc/objc/objc-next-runtime-abi-02.cc | 6 |
7 files changed, 47 insertions, 8 deletions
diff --git a/gcc/objc/ChangeLog b/gcc/objc/ChangeLog index fe5c9c8..01720f7 100644 --- a/gcc/objc/ChangeLog +++ b/gcc/objc/ChangeLog @@ -1,3 +1,31 @@ +2022-06-02 David Malcolm <dmalcolm@redhat.com> + + * objc-act.h (objc_get_sarif_source_language): New decl. + * objc-lang.cc (LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE): Redefine. + (objc_get_sarif_source_language): New. + +2022-05-31 Jason Merrill <jason@redhat.com> + + * Make-lang.in (objc.tags): Look at *.cc. + +2022-05-25 Jakub Jelinek <jakub@redhat.com> + + PR c/91134 + * objc-act.cc (objc_build_component_ref): Adjust build_component_ref + caller. + +2022-05-11 Martin Liska <mliska@suse.cz> + + PR target/105355 + * lang-specs.h: Use Separate syntax. + +2022-05-03 Iain Sandoe <iain@sandoe.co.uk> + + * objc-next-runtime-abi-02.cc (next_runtime_abi_02_protocol_decl): Do + not dead-strip the runtime meta-data symbols. + (build_v2_classrefs_table): Likewise. + (build_v2_protocol_list_address_table): Likewise. + 2022-01-17 Martin Liska <mliska@suse.cz> * Make-lang.in: Rename .c names to .cc. diff --git a/gcc/objc/Make-lang.in b/gcc/objc/Make-lang.in index 6e4ebf5..b2ebd86 100644 --- a/gcc/objc/Make-lang.in +++ b/gcc/objc/Make-lang.in @@ -102,7 +102,7 @@ objc.srcman: objc.install-plugin: objc.tags: force - cd $(srcdir)/objc; $(ETAGS) -o TAGS.sub *.c *.h; \ + cd $(srcdir)/objc; $(ETAGS) -o TAGS.sub *.cc *.h; \ $(ETAGS) --include TAGS.sub --include ../TAGS.sub lang_checks += check-objc diff --git a/gcc/objc/lang-specs.h b/gcc/objc/lang-specs.h index 1a785ac..049166c 100644 --- a/gcc/objc/lang-specs.h +++ b/gcc/objc/lang-specs.h @@ -41,12 +41,12 @@ along with GCC; see the file COPYING3. If not see %eGNU Objective C no longer supports traditional compilation}\ %{save-temps*|no-integrated-cpp:cc1obj -E %(cpp_options) -o %{save-temps*:%b.mi} %{!save-temps*:%g.mi} \n\ cc1obj -fpreprocessed %b.mi %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\ - -o %g.s %{!o*:--output-pch=%i.gch}\ - %W{o*:--output-pch=%*}%V}\ + -o %g.s %{!o*:--output-pch %i.gch}\ + %W{o*:--output-pch %*}%V}\ %{!save-temps*:%{!no-integrated-cpp:\ cc1obj %(cpp_unique_options) %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\ - -o %g.s %{!o*:--output-pch=%i.gch}\ - %W{o*:--output-pch=%*}%V}}}}}", 0, 0, 0}, + -o %g.s %{!o*:--output-pch %i.gch}\ + %W{o*:--output-pch %*}%V}}}}}", 0, 0, 0}, {".mi", "@objective-c-cpp-output", 0, 0, 0}, {"@objective-c-cpp-output", "%{!M:%{!MM:%{!E:cc1obj -fpreprocessed %i %(cc1_options) %{print-objc-runtime-info} %{gen-decls}\ diff --git a/gcc/objc/objc-act.cc b/gcc/objc/objc-act.cc index 252274c..10591bb 100644 --- a/gcc/objc/objc-act.cc +++ b/gcc/objc/objc-act.cc @@ -2812,7 +2812,7 @@ objc_build_component_ref (tree datum, tree component) tf_warning_or_error); #else return build_component_ref (input_location, datum, component, - UNKNOWN_LOCATION); + UNKNOWN_LOCATION, UNKNOWN_LOCATION); #endif } diff --git a/gcc/objc/objc-act.h b/gcc/objc/objc-act.h index 7d0c6d5..4f9c3a2 100644 --- a/gcc/objc/objc-act.h +++ b/gcc/objc/objc-act.h @@ -27,6 +27,7 @@ bool objc_init (void); const char *objc_printable_name (tree, int); int objc_gimplify_expr (tree *, gimple_seq *, gimple_seq *); void objc_common_init_ts (void); +const char *objc_get_sarif_source_language (const char *); /* NB: The remaining public functions are prototyped in c-common.h, for the benefit of stub-objc.cc and objc-act.cc. */ diff --git a/gcc/objc/objc-lang.cc b/gcc/objc/objc-lang.cc index ef664f5..559de4b 100644 --- a/gcc/objc/objc-lang.cc +++ b/gcc/objc/objc-lang.cc @@ -46,10 +46,18 @@ enum c_language_kind c_language = clk_objc; #define LANG_HOOKS_INIT_TS objc_common_init_ts #undef LANG_HOOKS_TREE_SIZE #define LANG_HOOKS_TREE_SIZE objc_common_tree_size +#undef LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE +#define LANG_HOOKS_GET_SARIF_SOURCE_LANGUAGE objc_get_sarif_source_language /* Each front end provides its own lang hook initializer. */ struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; +const char * +objc_get_sarif_source_language (const char *) +{ + return "objectivec"; +} + /* Lang hook routines common to C and ObjC appear in c-objc-common.cc; there should be very few (if any) routines below. */ diff --git a/gcc/objc/objc-next-runtime-abi-02.cc b/gcc/objc/objc-next-runtime-abi-02.cc index e50ca6e..9ea63b1 100644 --- a/gcc/objc/objc-next-runtime-abi-02.cc +++ b/gcc/objc/objc-next-runtime-abi-02.cc @@ -1033,6 +1033,7 @@ next_runtime_abi_02_protocol_decl (tree p) else decl = start_var_decl (objc_v2_protocol_template, buf); OBJCMETA (decl, objc_meta, meta_protocol); + DECL_PRESERVE_P (decl) = 1; return decl; } @@ -2115,8 +2116,8 @@ build_v2_classrefs_table (void) expr = convert (objc_class_type, build_fold_addr_expr (expr)); } /* The runtime wants this, even if it appears unused, so we must force the - output. - DECL_PRESERVE_P (decl) = 1; */ + output. */ + DECL_PRESERVE_P (decl) = 1; finish_var_decl (decl, expr); } } @@ -2318,6 +2319,7 @@ build_v2_protocol_list_address_table (void) expr = convert (objc_protocol_type, build_fold_addr_expr (ref->refdecl)); OBJCMETA (decl, objc_meta, meta_label_protocollist); finish_var_decl (decl, expr); + DECL_PRESERVE_P (decl) = 1; } /* TODO: delete the vec. */ |