| 2010-01-05 Jim Grosbach <grosbach@apple.com> |
| |
| Radar 7465602 |
| * semantics.c (finish_id_expression): Add check for "unavailable" |
| attribute. |
| |
| 2010-01-05 Jim Grosbach <grosbach@apple.com> |
| |
| Radar 7496972 |
| * parser.c (objc_cp_parser_at_property): Don't warn on weak_import |
| on properties. |
| |
| 2009-06-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6936421 |
| * cvt.c (force_rvalue): Convert property reference |
| expression to its getter call before converting to rvalue. |
| |
| 2009-02-11 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6573923 |
| * decl.c (synth_block_byref_id_object_copy_func, |
| synth_block_byref_id_object_dispose_func): Set BLOCK_BYREF_CALLER |
| flag in call to copy/dispose helper functions. |
| |
| 2009-02-11 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6545782 |
| * semantics.c (get_final_block_variable): New |
| (finish_id_expression): Call get_final_block_variable. |
| |
| 2008-12-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6413140 |
| * parser.c (cp_parser_block_literal_expr): Warn on use of explicit |
| block return type. |
| |
| 2008-12-02 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6396238 |
| * typeck.c (build_block_call): Handle case of a block |
| expression tree with side-effect when envoking the block. |
| |
| 2008-12-01 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6404979 |
| * parser.c (cp_parser_block_literal_expr): Use an internal name for |
| block helper's hidden argument. |
| |
| 008-11-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5847976 |
| * decl.c (synth_block_byref_id_object_copy_func): Takes new 'flag' argument |
| and produces the new much simplified API. |
| (synth_block_byref_id_object_dispose_func): Ditto. |
| (new_block_byref_decl): Turn off -fobjc-gc so we don't get |
| bogus warning on field declared as __weak. |
| (init_byref_decl): Takes a new 'flag' argument and passes |
| it down to synth_block_byref_id_object_copy_func and |
| synth_block_byref_id_object_dispose_func. |
| (cp_finish_decl): Calculates the flag for the block |
| variable declaration and passes it down to init_byref_decl. |
| * parser.c (build_block_struct_initlist): Removes call to |
| copy_in_object (not needed). |
| (synth_copy_helper_block_func): Produce the new, simplified |
| API. |
| (synth_destroy_helper_block_func): Ditto. |
| (build_block_byref_decl): Copy over COPYABLE_WEAK_BLOCK flag. |
| |
| 2008-10-31 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6175959 |
| * parser.c (synth_copy_helper_block_func): Use the new API |
| _Block_object_assign for ObjC object copying. |
| (block_object_dispose): New |
| (synth_destroy_helper_block_func): Call block_object_dispose |
| to use new _Block_object_dispose API for ObjC object release. |
| |
| 2008-10-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6329245 |
| * typeck.c (build_block_call): Block call is reverted back |
| to old ABI. |
| (build_block_descriptor_type): Removed "FuncPtr" field. |
| (build_generic_block_struct_type): This struct is partially reverted |
| to define a layout matching old ABI. |
| (build_block_struct_type): Ditto |
| (build_block_struct_initlist): Initializer list reflects the new |
| primary block layout. |
| |
| 2008-10-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6261630 |
| * parser.c (cp_parser_objc_typename): Parse trailing attribute |
| in method type. |
| |
| 2008-10-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6231433 |
| * typeck.c (objc_compare_types, objc_have_common_type): |
| Take an extra argument for better diagnostics. |
| * call.c: Ditto |
| |
| 2008-10-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6302949 |
| * parser.c (objc_cp_parser_at_property): Warn on missing |
| ',' separator for property attribute list. |
| |
| 2008-10-24 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6305545 |
| * semantics.c (expand_or_defer_fn): Lower nested function |
| of the structors. |
| |
| 2008-10-24 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5847213 (minor tweak) |
| * parser.c (build_block_descriptor_type): |
| Make descriptor_ptr_type and descriptor_ptr_type_with_copydispose |
| visible to pch. |
| |
| 2008-10-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6310599 |
| * typeck.c.c: All internal field names in block internal types |
| have '__' prefix. |
| * decl.c: Ditto |
| * semantics.c: Ditto |
| * pafrser.c: Ditto |
| |
| 2008-10-17 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6289031 |
| * decl.c: Removed all code related to |
| radar 6083129 (byref escapes). |
| |
| 2008-10-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6271728 |
| * parser.c (cp_parser_objc_method_definition_list): Method |
| definition always start with '{', or it is error. |
| |
| 2008-10-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6275956 |
| * semantics.c (finish_this_expr): Reference to "this" in a block |
| must be looked up. |
| |
| 2008-10-10 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5847213 - New Block ABI |
| |
| * typeck.c (build_block_call): New code gen for block call. |
| * parser.c (build_descriptor_block_decl) New |
| (build_block_struct_type): New block literal type. |
| (build_block_struct_initlist): New block literal initializers. |
| (build_block_literal_tmp): New block literal variable initialization. |
| (synth_copy_helper_block_func): Fixed a minor bug (unrelated to this radar). |
| (build_block_internal_types): Removed. |
| (build_block_descriptor_type): New routine to build build descriptor type. |
| (make_block_pointer_declarator): Unnecessary code is removed. |
| |
| 2008-10-02 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6246527 |
| * parser.c (cp_parser_block_literal_expr): Call to do the delta |
| on printf attribute. |
| |
| 2008-09-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6230297 |
| * parser.c (build_block_struct_initlist): 'trivial' |
| block temporary can be static as well. |
| (build_block_literal_tmp): Accomodate 'trivial' block |
| literal temporary variable as static. |
| |
| 2008-09-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6225809 |
| * parser.c (build_block_byref_decl): Add __block vaiables |
| to intervening blocks. |
| |
| 2008-09-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6154598 |
| tree.c (maybe_dummy_object): Build expression for |
| copied in "this" in the block. |
| |
| 2008-09-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6243400 |
| * parser.c (build_block_struct_type): Mostly rewritten |
| to use C++'s API for building block's main struct so structors |
| for those data members requiring them are synthesized and |
| used. |
| |
| 2008-09-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6244520 |
| * decl.c (new_block_byref_decl): New field added to |
| struct __Block_byref_x. |
| (init_byref_decl): Above field initialized to NULL. |
| |
| 2008-09-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6237713 |
| * parser.c (cp_parser_block_literal_expr): Parse |
| and set attribute on block literals. |
| |
| 2008-09-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6214617 |
| * parser.c (cp_block_requires_copying): New |
| (build_block_struct_type): Set BlockImportsCxxObjects flag. |
| (build_block_struct_initlist): Set BLOCK_HAS_CXX_OBJ if need be. |
| (synth_copy_helper_block_func): Call copy ctor if copied in object has one. |
| (synth_destroy_helper_block_func): Call dtor on cxx object. |
| |
| 2008-09-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6212722 (tweak) |
| * parser.c (build_block_ref_decl): Use decay_conversion. |
| |
| 2008-09-11 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6212722 |
| * parser.c (build_block_ref_decl): Add support for arrays referenced |
| as copied in objects in blocks. |
| |
| 2008-09-09 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6169580 |
| * decl.c (synth_block_byref_id_object_copy_func): Pass new flag |
| to finish_function. |
| (synth_block_byref_id_object_): Ditto. |
| (finish_function): Don't pop the nested class when synthesizing |
| block helpers. |
| * semantics.c (finish_id_expression): Added logic to attach |
| copied-in "this" to stand-alone field reference in a block. |
| * parser.c (synth_copy_helper_block_func, synth_destroy_helper_block_func): |
| Pass new flag to finish_function. |
| (cp_parser_block_literal_expr): When block is in non-static member |
| function, need to import "this" as a read-only copied in variable. |
| |
| |
| 2008-09-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6169527 |
| * parser.c (build_block_struct_type): Set CLASSTYPE_AS_BASE. |
| (build_block_internal_types): Ditto. |
| (build_block_struct_initlist): Rewritten. |
| (build_block_literal_tmp): Rewritten. |
| (build_block_ref_decl): Just add copied-in variable to |
| the scope. |
| (declare_block_prologue_local_vars): Rewritten. |
| (declare_block_prologue_local_byref_vars): New |
| (block_build_prologue): Call declare_block_prologue_local_byref_vars |
| for byref variables. |
| |
| 2008-09-03 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6185344 |
| * typeck.c (check_return_expr): Added extra check |
| for return type checking. |
| * parser.c (cp_parser_direct_declarator): Added |
| extra check for type used as block return type. |
| (cp_parser_block_literal_expr): Parse and handle |
| user provided block return type syntax. |
| |
| 2008-08-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6160536 |
| * parser.c (cp_parser_block_literal_expr): Call build_block_helper_name |
| to get pretty name for block helper function. |
| |
| 2008-08-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6180456 |
| * decl.c (synth_block_byref_id_object_copy_func): Use different |
| API when copying __block object in c language. |
| (synth_block_byref_id_object_dispose_func): Use different |
| API when releasing a __block object in c. |
| * parser.c (synth_copy_helper_block_func): Refactored to |
| call build_block_byref_assign_copy_decl(). |
| |
| 2008-08-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6087117 |
| * typeck.c (convert_arguments): Takes an extra argument |
| for distiguinsing block call to function calls. |
| (build_function_call): Tell convert_arguments if we |
| are calling a block. |
| |
| 2008-08-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6172148 |
| * parser.c (build_helper_func_decl): Set BLOCK_SYNTHESIZED_FUNC |
| for all block helper functions; used by die generation. |
| |
| 2008-08-24 Caroline Tice <ctice@apple.com. |
| |
| Radar 6144664 |
| * parser.c (build_block_byref_decl): Assign the |
| source location for each byref decl to the source |
| location of the helper function decl. |
| (build_block_ref_decl): Ditto for ref decls. |
| |
| 2008-08-06 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 - work in proggress. |
| * parser.c (clean_and_exit): Clean up if inside |
| a function. |
| (cp_parser_block_literal_expr): Set DECL_NO_STATIC_CHAIN |
| if inside a function. |
| |
| 2008-08-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 - work in progress. |
| * decl.c (cp_finish_decl): local static is treated just |
| like global static wrt __byref. |
| * semantics.c (finish_id_expression): Ditto. |
| |
| 2008-08-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 - work in progress. |
| * decl.c (init_byref_decl): Generate c-style helper |
| functions for compose/dispose helpers. |
| |
| 2008-08-04 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 - work in progress. |
| * decl.c (synth_block_byref_id_object_copy_func, |
| synth_block_byref_id_object_dispose_func, |
| block_start_struct, block_finish_struct, |
| new_block_byref_decl, init_byref_decl): New routines. |
| (cp_finish_decl): Build the APIed version of |
| a __byref local vriable. |
| * semantics.c (finish_id_expression): Add a __byref |
| variable to the list of such variables for current |
| block. |
| * parser.c (build_component_ref): Fix to make it work. |
| (cp_parser_block_literal_expr): Push/pop language-c, |
| set context of the helper function. |
| (declare_block_prologue_local_vars): Mend tree for |
| the built-in local variables in the helper prologue. |
| |
| 2008-07-31 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 - work in progress |
| * objcp-lang.c (c_finish_return): Removed |
| * cp-lang.c (c_finish_return): Removed |
| * typeck.c (c_finish_return): Add |
| (check_return_expr): On error of a return |
| expresison inside a block return error_mark_node. |
| * semantics.c (finish_return_stmt): For helper |
| functions, return expression is already done. |
| |
| 2008-07-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 |
| * call.c (standard_conversion): Allow conversion of 'id' |
| type to a block pointer. |
| |
| 2008-07-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 |
| * typeck.c (build_block_call): New |
| (build_function_call): Call build_block_call |
| for block calls. |
| * call.c (standard_conversion): Remove "void *" to |
| block pointer conversion. |
| |
| 2008-07-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 |
| * call.c (standard_conversion): Allow assignment of |
| "void *" to block pointer object. |
| |
| 2008-07-28 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6040305 |
| * typeck.c (comptypes): block-pointer types' |
| return type get special treatment. |
| |
| 2008-07-21 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 6029624 |
| * call.c (objcp_reference_related_p): New |
| * cp-tree.h (objcp_reference_related_p): New decl. |
| |
| 2008-07-16 Eugene Marinelli <marinelli@apple.com> |
| |
| Radar 5559195 |
| * decl.c (cxx_maybe_build_cleanup): When considering whether to |
| build a cleanup for a class type, use |
| CLASSTYPE_HAS_NONTRIVIAL_DESTRUCTOR_BODY and |
| CLASSTYPE_DESTRUCTOR_NONTRIVIAL_BECAUSE_OF_BASE instead of |
| TYPE_HAS_NONTRIVIAL_DESTRUCTOR to determine whether it must be |
| output. |
| |
| 2008-07-15 Eugene Marinelli <marinelli@apple.com> |
| |
| Radar 5559195 |
| * cp-tree.h (struct lang_type_class): Add destructor_triviality_final |
| flag to mark when has_nontrivial_destructor_body and |
| destructor_nontrivial_because_of_base are final. Add accessor for |
| this flag. |
| * parser.c (cp_parser_statement_seq_opt): Use |
| CLASSTYPE_DESTRUCTOR_TRIVIALITY_FINAL to determine if |
| destructor should be checked for being empty, and set it if |
| CLASSTYPE_HAS_NONTRIVIAL_DESTRUCTOR_BODY is changed. |
| |
| 2008-07-14 Eugene Marinelli <marinelli@apple.com> |
| |
| * class.c (check_bases): Remove curly braces. |
| |
| 2008-07-10 Eugene Marinelli <marinelli@apple.com> |
| |
| Radar 5559195 |
| * init.c (push_base_cleanups): Check flags indicating whether |
| destructor of base class has a nontrivial body, has a base destructor |
| that must be called, or is private to determine whether it should be |
| called by the derived class. Set |
| CLASSTYPE_DESTRUCTOR_NONTRIVIAL_BECAUSE_OF_BASE to 1 if it has |
| members that must be deleted. |
| * class.c (check_bases, finish_struct_bits, |
| add_implicitly_declared_members): Set |
| CLASSTYPE_DESTRUCTOR_NONTRIVIAL_BECAUSE_OF_BASE and |
| CLASSTYPE_HAS_NONTRIVIAL_DESTRUCTOR_BODY based on base classes. |
| (check_methods): Set CLASSTYPE_HAS_NONTRIVIAL_DESTRUCTOR_BODY to 1 |
| whenever a user-declared destructor is seen as a conservative |
| assumption. |
| * cp-tree.h (struct lang_type_class): Add |
| has_nontrivial_destructor_body and |
| destructor_nontrivial_because_of_base flags. Decrement remaining |
| dummy bits. Add accessors for these flags. |
| * parser.c (cp_parser_statement_seq_opt): Unmark |
| CLASSTYPE_HAS_NONTRIVIAL_DESTRUCTOR_BODY and then set it again only if |
| a statement is parsed. |
| |
| 2008-06-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5982990 |
| * parser.c (cp_parser_compound_statement): Take a new |
| argument which is used to call objc_mark_locals_volatile. |
| (cp_parser_primary_expression, cp_parser_statement, |
| etc.): add extra argument in calling cp_parser_compound_statement. |
| (cp_parser_objc_synchronized_statement): Passes |
| flag_objc_sjlj_exceptions as last argument in calling |
| cp_parser_compound_statement. |
| |
| 2008-06-02 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5976344 |
| * Parser.c (cp_parser_objc_interstitial_code): Allow template |
| declaration inside ObjC @implementation. |
| |
| 2008-05-30 Josh Conner <jconner@apple.com> |
| |
| Radar 5933878 |
| * method.c (implicitly_declare_fn): Set DECL_ALIGN, if needed. |
| Backport from 4.3: |
| 2007-07-09 Geoffrey Keating <geoffk@apple.com> |
| PR 32617 |
| * decl.c (cxx_init_decl_processing): Don't set |
| force_align_functions_log. |
| (grokfndecl): Honour ptrmemfunc_vbit_in_pfn. |
| * typeck.c (cxx_alignof_expr): When alignof is used on a plain |
| FUNCTION_DECL, return its alignment. |
| |
| 2008-02-20 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5732232 - code gen part 2. |
| * cp-lang.c (c_finish_return): Defined these |
| templates to get a clean compile. |
| |
| 2008-05-01 Josh Conner <jconner@apple.com> |
| |
| * optimize.c: Rewrite of structor shrinkage. |
| (enum in_charge_use): New. |
| (struct thunk_tree_walk_data): New. |
| (struct clone_info): New. |
| (maybe_alias_body): Remove. |
| (examine_tree_for_in_charge_use): New. |
| (compute_use_thunks): New. |
| (maybe_thunk_body): Rename to thunk_body. Remove |
| explicit in-charge parameter. |
| (find_earlier_clone): New. |
| (maybe_clone_body): Remove most of old decloner |
| patch, replace with new algorithm. |
| |
| 2008-03-20 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5802025 |
| * typeck.c (finish_class_member_access_expr): Generate getter call |
| from an OBJC_PROPERTY_REFERENCE_EXPR. |
| |
| 2008-03-19 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5733674 |
| * decl.c (expand_static_init): Generate write barrier for |
| static initialization in objective-c++ mode. |
| |
| 2007-11-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5619052 |
| * pt.c (value_dependent_expression_p): @encode expression is |
| value-dependent if the operand is type-dependent. |
| (type_dependent_expression_p): Treat @encode same as 'sizeof'. |
| |
| 1007-10-26 Josh Conner <jconner@apple.com> |
| |
| Radar 5562046 |
| * typeck.c (build_ptrmemfunc1): Add kext support for ARM. |
| |
| 2007-08-23 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4869885 |
| * class.c: Removed darwin_align_is_first_member_of_class. |
| |
| 2007-08-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4947311 |
| * parser.c (cp_parser_objc_protocol_declaration): Takes attribute list |
| as extra argument and passes it down to |
| objc_declare_protocols/objc_start_protocol. |
| (cp_parser_objc_class_interface): Now receives attribute list as input. |
| (cp_parser_objc_declaration): Parses attribute list and passes it down |
| to cp_parser_objc_class_interface/cp_parser_objc_protocol_declaration. |
| |
| 2007-08-20 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5422751 |
| * parser.c (cp_parser_objc_class_implementation): Unused syntax recognition |
| removed. |
| |
| 2007-07-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 3742561 |
| * typeck.c (build_modify_expr): Call to generate write barrier |
| for class assignment only when assignment is not overloaded. |
| |
| 2007-07-24 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5355344 |
| * cp-tree.h (cp_objc_protocol_id_list): New declaration |
| * cp-lang.c (cp_objc_protocol_id_list): New stub |
| * parser.c (cp_parser_type_name): Added code to disambiguate |
| conditional from a protocol type. |
| (cp_parser_objc_tentative_protocol_refs_opt): New |
| |
| 2007-07-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5277239 |
| * parser.c (cp_parser_objc_reference_expression): New routine to |
| build a property reference expression. |
| (cp_objc_property_reference_prefix): New routine to recognize a |
| property dot syntax. |
| (cp_parser_primary_expression): Build a property reference expression |
| when a property dot-syntax is recognized. |
| (cp_parser_type_name): Exclude property dot-syntax from being recognized |
| as a type name. |
| (cp_parser_class_name): Exclude property dot-syntax from being recognized |
| as a class name. |
| |
| 2007-07-10 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5285911 |
| * typeck.c (finish_class_member_access_expr): Call |
| objc_build_property_reference_expr instead of objc_build_getter_call. |
| |
| 2007-06-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5276085 |
| * typeck.c (build_modify_expr): Call objc_weak_reference_expr |
| instead of objc_remove_weak_read. |
| * parser.c (cp_parser_cast_expression): Call |
| objc_build_weak_reference_tree instead of objc_generate_weak_read. |
| (cp_parser_cast_expression): Ditto. |
| |
| 2007-06-20 Geoffrey Keating <geoffk@apple.com> |
| |
| Radar 5281849 |
| * decl2.c (determine_visibility_from_class): Remove old |
| 'ms tinfo compat' change. |
| (determine_visibility): Rewrite here. |
| |
| 2007-06-21 Eric Christopher <echristo@apple.com> |
| |
| Radar 5283703 |
| * typeck.c (build_binary_op): Call cp_convert_and_check |
| instead of cp_convert. |
| * cvt.c (cp_convert_and_check): New. |
| * cp-tree.h: Declare above. |
| |
| 2007-06-06 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5250860 (Remove old property) |
| * cp/lex: Remove lexer's tokens and recognition for old property |
| syntax. |
| * cp/parser.c: Remove parsing of old property syntax. |
| |
| 2007-05-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5202926 |
| * mangle.c (write_mangled_name): Removed suppression in last patch. |
| |
| 2007-05-15 Geoffrey Keating <geoffk@apple.com> |
| |
| * mangle.c (write_mangled_name): Suppress static variable name |
| mangling for Objective-C. |
| |
| 2007-05-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4157812 |
| * parser.c (cp_parser_objc_method_keyword_params): Recognize optional |
| method argument attribute. |
| |
| 2007-05-03 Mike Stump <mrs@apple.com> |
| |
| Radar 5141790 |
| * typeck2.c (process_init_constructor_array): Remove unneed APPLE |
| LOCAL code. |
| |
| 2007-05-03 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4874626 |
| * decl2.c (emit_instantiate_pending_templates): Setting of |
| current input location moved to caller site. |
| |
| 2007-04-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4874613 |
| * decl2.c (cp_finish_file): remove dump of pch file. |
| * parser.c (c_parse_file): Dump pch file if no parse errors. |
| |
| 2007-04-20 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5130983 |
| * parser.c (cp_parser_parse_foreach_stmt): Parse selector expression |
| as an expression. |
| (objc_foreach_stmt): Issue diagnostic on non-lavlue selector |
| expression. |
| |
| 2007-04-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5128402 |
| * parser.c (objc_finish_foreach_stmt): Set elem to nil at the else part |
| of the outer if-stmt instead of at the begining. |
| |
| 2007-04-11 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4872022 |
| * parser.c (cp_parser_compound_statement): Return error_mark_node |
| on missing '{' (from mainline). |
| |
| 2007-03-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4947014 - objc atomic property |
| * lex.c (RID_NONATOMIC): Add |
| * parser.c (objc_cp_parser_at_property): Recognize 'nonatomic' as |
| new property attribute. |
| |
| 2007-03-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4564694 |
| * lex.c (RID_AT_PACKAGE): Add |
| * parser.c (cp_lexer_get_preprocessor_token): Parse @package. |
| |
| 2007-03-23 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 5085245 - fall out from 4965989 merge. |
| * parser.c (cp_parser_objc_superclass_or_category): Initialize is_category. |
| |
| 2007-03-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4965989 |
| * parser.c (cp_parser_objc_superclass_or_category): Add supprt for |
| anonymous category syntax. |
| (cp_parser_objc_superclass_or_category, cp_parser_objc_class_interface): Changed because |
| of change to cp_parser_objc_superclass_or_category API. |
| |
| 2007-03-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4995967 |
| * parser.c (cp_parser_objc_try_catch_finally_stateme): Parse @catch (...) unconditionally. |
| |
| 2007-03-21 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 2848255 |
| * except.c (do_begin_catch): Take a new argument to decide |
| to call objc_begin_catch for objc exceptions. |
| (objcp_build_eh_type_type): New. |
| (do_end_catch): Call objc_end_catch for objc type |
| exceptions. |
| (expand_start_catch_block): Add new argument to do_begin_catch call. |
| (build_throw): Call objc_throw_exception for throwing objc type objects. |
| * cp-tree.h (objc2_valid_objc_catch_type, objcp_build_eh_type_type): |
| New extern decl. |
| * parser.c (cp_parser_objc_try_catch_finally_stateme): Add syntax for |
| @catch(...). |
| |
| 2007-01-10 Eric Christopher <echristo@apple.com> |
| |
| Radar 4869810 |
| * decl.c (check_tag_decl): Remove code for 4168392. |
| |
| 2006-12-19 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4874632 |
| * typeck.c (convert_for_assignment): Allow for attribute checking |
| with -Wmissing-format-attribute for objective-c++. |
| |
| 2006-12-14 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4712415 |
| * parser.c (objc_cp_parse_property_decl): Parse attribute at end of |
| property decl. |
| |
| 2006-12-14 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4854605 |
| * parser.c (objc_foreach_stmt): Set iterator |
| to nil. |
| |
| 2006-11-14 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4829851 |
| * decl.c (duplicate_decls): Check for duplicate decl. |
| of objective-c @class. |
| |
| 2006-11-01 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4805321 (new property). |
| |
| * lex.c (reswords): New entries added for new property words. |
| (init_reswords): For new property, use RID_AT_DYNAMIC instead of |
| RID_DYNAMIC in old property. |
| * parser.c (objc_cp_parse_property_decl): Attach storage attribute |
| to property. |
| (objc_cp_parser_property_impl): New. |
| (objc_cp_parser_at_property): Handle new property attributes. |
| (cp_parser_objc_method_definition_list): Recognize @synthesize and |
| @dynamic directives. |
| |
| 2006-10-25 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4795703 (also in gcc-4.2) |
| |
| * parser.c (cp_parser_functional_cast): |
| Use 'type' correctly. |
| |
| 2006-10-10 Mike Stump <mrs@apple.com> |
| |
| Radar 4739936 |
| * parser.c (cp_lexer_peek_token): Restore error for invalid |
| integer suffixes. |
| (cp_lexer_iasm_bol): Avoid cp_lexer_peek_token. |
| (cp_parser_iasm_skip_to_eol): Likewise. |
| |
| 2006-09-18 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4667060 |
| * parser.c (objc_foreach_stmt): Save elem decl. in |
| foreach node. |
| |
| 2006-09-11 Josh Conner <jconner@apple.com> |
| |
| Radar 4658012 |
| Backport from mainline: |
| 2006-09-06 Jason Merrill <jason@redhat.com> |
| PR c++/27371 |
| * cvt.c (convert_to_void): Strip useless TARGET_EXPR. |
| * cp-tree.h (TARGET_EXPR_IMPLICIT_P): New macro. |
| * tree.c (build_cplus_new): Set it. |
| |
| 2006-09-01 Fariborz Jahanian <fjahania@apple.com> |
| |
| Radar 4712269 |
| * typeck.c (build_unary_op): Call objc_build_incr_decr_setter_call |
| for potential ince/decr pre/post expressions involving properties. |
| |
| 2006-08-31 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4697411 |
| * typeck.c (build_class_member_access_expr): Call |
| objc_volatilize_component_ref. |
| |
| 2006-08-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4696522 |
| * typeck.c (build_c_cast): Code for cast of objective-c |
| pointer moved to: |
| (build_static_cast_1). |
| |
| 2006-08-29 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4705250 |
| * parser.c (cp_parser_member_declaration) : No error on use of @defs |
| with -fobjc-atdefs |
| |
| 2006-08-25 Josh Conner <jconner@apple.com> |
| |
| * call.c (build_over_call): Add APPLE LOCAL markers for previous |
| patch. |
| |
| 2006-08-25 Josh Conner <jconner@apple.com> |
| |
| Radar 4658012 |
| Backport from mainline: |
| 2006-08-22 Jason Merrill <jason@redhat.com> |
| PR c++/23372 |
| * call.c (build_over_call): Don't make a copy here if build_call |
| will make one too. |
| |
| 2006-08-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4668465 |
| * call.c (standard_conversion): In deciding on validity of |
| "pointer to cv D" to "pointer to cv B", ignore the |
| objective-c volatile type added to local object in presence of |
| sjlj's EH implementation. |
| |
| 2006-08-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4675792 |
| * parser.c (objc_cp_parser_at_property): Accomodate when getter matches |
| a c++ keyword. |
| |
| 2006-07-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4652027 |
| * parser.c (cp_parser_objc_class_ivars): Handle illegal declaration |
| of typdef. |
| |
| 2006-07-26 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4121962 |
| * class.c (check_field_decls): Fix APPLE LOCAL markers. |
| * class.c (finish_struct_bits): Fix APPLE LOCAL markers. |
| |
| 2006-07-25 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4121962 |
| * class.c (check_field_decls): Remove the extra argument in |
| calling "warning". |
| |
| 2006-07-24 Hui-May Chang <hm.chang@apple.com> |
| |
| Radar 4121962 |
| Backport from mainline: |
| 2006-07-05 Jason Merrill <jason@redhat.com> |
| * class.c (check_field_decls): Check TYPE_PACKED after |
| stripping array types. |
| (finish_struct_bits): Don't copy TYPE_SIZE here. |
| |
| 2006-07-21 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4631818 |
| * parser.c (cp_parser_parse_foreach_stmt): New. |
| (cp_parser_iteration_statement): Remove old code. |
| Replace it with call to cp_parser_parse_foreach_stmt. |
| (cp_parser_simple_declaration): Remove old code. |
| (cp_parser_init_declarator): Remove old code. |
| |
| 2006-07-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4592503 |
| * class.c (layout_class_type): Check on illegal use of __weak |
| on struct fields. |
| * decl.c (start_decl): Check on illegal use of __weak on |
| variable declarations. |
| |
| 2006-07-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4621020 |
| * lex.c (reswords): Added entry for 'weak' attribute keyword. |
| * parser.c (objc_cp_parser_at_property): Recorgnize 'weak'attribute. |
| |
| 2006-07-10 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 3904247 |
| * g++spec.c (lang_specific_driver): Handle -x objective-c++ |
| and -ObjC++ to invoke -cc1objplus. -x objective-c and -ObjC |
| to invoke cc1obj. |
| |
| 2006-06-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4591909 |
| * lex.c (reswords): New entry for 'dynamic' attribute. |
| * parser.c (objc_cp_parser_at_property): Change to parse new |
| attribute syntax. |
| |
| 2006-06-20 Howard Hinnint <hhinnant@apple.com> |
| |
| Radar 4539933 |
| * decl2.c (start_static_initialization_or_destruction): Create guard |
| variables for explicitly instantiated templated static data members. |
| |
| 2006-06-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4360010 |
| * parser.c (cp_parser_objc_class_ivars): Issue diagnostic |
| for 'static' ivar. |
| |
| 2006-06-01 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4557092 |
| * pt.c (tsubst_copy_and_build): Don't fold address of a const_decl |
| for a cfstring. |
| |
| 2006-05-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4548636 (objc attributes on class) |
| * parser.c (objc_attr_follwed_by_at_keyword): New routine to disambiguate |
| attribute before a type and attribute before an @interface declaration.. |
| (cp_parser_declaration): Handle case of attribute list which can be |
| followed by an @interface. |
| (cp_parser_objc_class_interface): Parse possible attribute list before |
| parsing @interface. |
| (cp_parser_objc_declaration): Recognize 'attribute' as a valid token which |
| can start an @interface declaration. |
| |
| 2006-05-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4547045 |
| * parser.c (objc_foreach_stmt): Fix a thinko. |
| |
| 2006-05-16 Devang Patel <dpatel@apple.com> |
| |
| Radar 4546244 |
| * parser.c (cp_lexer_consume_bincl_eincl_token): New. |
| (cp_lexer_peek_token, cp_lexer_consume_token): Use |
| cp_lexer_consume_bincl_eincl_token. |
| |
| 2006-04-10 Devang Patel <dpatel@apple.com> |
| |
| Radar 4543648 |
| * parser.c (cp_parser_enumerator_list, cp_parser_initializer_list); Remove redundant code. |
| |
| 2006-04-09 Devang Patel <dpatel@apple.com> |
| |
| Radar 4531997 |
| * parser.c (cp_lexer_handle_pragma_etc): Renamed as ... |
| (cp_lexer_handle_pragma): ... new name. Do not handle CPP_BINCL |
| or CPP_EINCL tokens. |
| (cp_lexer_peek_token): Skip CPP_BINCL and CPP_EINCL tokens. |
| (cp_lexer_peek_nth_token): Same. |
| (cp_lexer_consume_token): Consume CPP_BINCL and CPP_EINCL tokens. |
| (cp_parser_statement): Do not handle CPP_BINCL, CPP_EINCL tokens. |
| (cp_parser_declaration_seq_opt, cp_parser_enumerator_list, |
| cp_parser_initializer_clause, cp_parser_initializer_list, |
| cp_parser_member_specification_opt, |
| cp_parser_iasm_declaration_seq_opt, cp_parser_iasm_statement, |
| cp_parser_objc_interstitial_code): Same. |
| |
| 2006-05-09 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4538105 |
| * parser.c (objc_foreach_stmt): Mark element |
| selector as being used. |
| |
| 2006-05-09 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4529200 |
| * parser.c (cp_parser_init_declarator): Add '[' as another token |
| that can follow 'in'. |
| |
| 2006-05-05 Fariborz Jahanian <fjahanian@apple.com> |
| |
| radar 4533974 - ObjC new protocol |
| * parser.c (cp_parser_objc_class_implementation): Support for |
| new '@implementation <protocol> @end' syntax. |
| |
| 2006-04-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 3803157 (method attributes) |
| * parser.c (cp_parser_objc_maybe_attributes): New. |
| (cp_parser_objc_method_keyword_params): Parse attributes at end |
| of method declaration. |
| (cp_parser_objc_method_tail_params_opt): Parse attributes after |
| '...'. |
| (cp_parser_objc_method_signature): Retreive method attribute for |
| the caller. |
| (cp_parser_objc_method_prototype_list): Pass new arg. to |
| cp_parser_objc_method_signature and pass attributes to |
| objc_add_method_declaration. |
| (cp_parser_objc_method_definition_list): Pass new arg. to |
| cp_parser_objc_method_signature and pass attributes to |
| objc_start_method_definition. |
| |
| 2006-04-19 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4516785 |
| * parser.c (cp_parser_simple_type_specifier): Don't lookup for objc object types |
| if type is scope qualified. |
| |
| 2006-04-18 Devang Patel <dpatel@apple.com> |
| |
| Radar 4517944 |
| * parser.c (cp_parser_enumerator_list): Eat CPP_BINCL and CPP_EINCL |
| tokens. |
| |
| 2006-04-13 Devang Patel <dpatel@apple.com> |
| |
| Radar 4503682 |
| * parser.c (cp_lexer_new_main): Eat CPP_BINCL, CPP_EINCL tokens. |
| |
| 2006-04-12 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4507230 |
| * parser.c (objc_foreach_stmt): Check for valid objc |
| objects in foreach header. |
| |
| 2006-04-06 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4436866 |
| (Missing copies attribute) |
| * lex.c (reswords): New keyword 'copies' added. |
| * parser.c (objc_cp_parser_at_property): Parse 'copies' |
| attribute. |
| |
| 2006-03-27 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4133425 |
| * lex.c (unqualified_name_lookup_error): Issue doagnostic |
| for private 'ivar' access. |
| |
| 2006-03-24 Devang Patel <dpatel@apple.com> |
| |
| Radar 4484026 |
| * parser.c (cp_parser_enumerator_list): Eat CPP_BINCL and |
| CPP_EINCL tokens. |
| |
| 2006-03-23 Devang Patel <dpatel@apple.com> |
| |
| Radar 4488417 |
| * parser.c (cp_parser_initializer_clause): Check CPP_BINCL/CPP_EINCL |
| tokens before checking CPP_OPEN_BRACE. |
| |
| 2006-03-22 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4436866 |
| * typeck.c (finish_class_member_access_expr): Call objc_build_getter_call. |
| (build_modify_expr): Call objc_build_setter_call. |
| * lex.c: Add keyword @property and context sensitive lexical tokens for |
| readonly, getter, setter, ivar attribute names. |
| * parser.c (objc_cp_parse_property_decl): New. |
| (objc_cp_parser_at_property): New. |
| (cp_parser_objc_method_prototype_list): Process @property keyword. |
| (cp_parser_objc_method_definition_list): Ditto. |
| |
| 2006-03-16 Devang Patel <dpatel@apple.com> |
| |
| Radar 4461042 |
| * cp/parser.c (cp_parser_initializer_clause): Eat CPP_BINCL/CPP_EINCL |
| tokens. |
| (cp_parser_initializer_list): Same. |
| |
| 2005-03-01 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4451818 |
| * call.c (standard_conversion, implicit_conversion): Ignore |
| 'volatile' attribute of artificially volatized type in objc when |
| evaluating various conversion weights. |
| |
| 2005-02-28 Devang Patel <dpatel@apple.com> |
| Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4137741 |
| * cp-objcp-common.h: Revert Radar 4133801 changes. |
| * cp-tree.h: Likewise. |
| * decl2.c: Likewise. |
| * parser.c: Likewise. |
| (cp_lexer_handle_pragma): Rename to cp_lexer_handle_pragma_etc(); |
| handle CPP_BINCL and CPP_EINCL tokens in addition to CPP_PRAGMA. |
| (cp_lexer_new_main): Set defer_file_change_debug_hooks flag |
| in preprocessor. |
| (cp_parser_statement, cp_parser_declaration_seq_opt, |
| cp_parser_member_specification_opt, cp_parser_cw_asm_declaration_seq_opt, |
| cp_parser_cw_asm_statement, cp_parser_objc_interstitial_code): |
| Call cp_lexer_handle_pragma_etc() for CPP_BINCL and CPP_EINCL tokens |
| also. |
| |
| 2006-02-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4445586 |
| * semantics.c (begin_do_stmt): DO_STMT nodes take an |
| extra argument to build. |
| |
| 2006-02-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4441551 |
| * parser.c (cp_parser_member_declaration): Warning on @defs as needed. |
| * typeck.c (build_c_cast): Call diagnose_selector_cast. |
| |
| 006-02-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4442245 |
| * typeck.c (build_class_member_access_expr): |
| Check for a valid member declaration before calling |
| objc_v2_build_ivar_ref. |
| |
| 006-02-02 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4426814 |
| * typeck.c (build_modify_expr): Undo call to objc_read_weak |
| on LHS of the assignment. |
| * parser.c (cp_parser_cast_expression): Central place to add |
| objc_read_weak call on expressions of __weak objects. |
| |
| 2006-01-30 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4386773 |
| * cp/lex.c (reswords): Add two new entries for @optional |
| and @required keywords. |
| * cp/parser.c (cp_parser_objc_interstitial_code): For |
| @optional/@required set the optional/required flag. |
| |
| 2006-01-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4294910 |
| * cp/parser.c (objc_foreach_stmt): Fix typo in diagnostic. |
| |
| 2006-01-18 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4294910 |
| * cp/parser.c (objc_foreach_stmt, objc_finish_foreach_stmt): New |
| functions. |
| (cp_parser_iteration_statement): Check for a parsed |
| foreach statement initialization and call objc_foreach_stmt instead. |
| (cp_parser_simple_declaration): Take evasive action for a |
| foreach initialization part. |
| (cp_parser_init_declarator): Parse and recognize a foreach |
| initialization part. |
| |
| 2005-12-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4229905 |
| * typeck.c (composite_pointer_type): Call objc_have_common_type |
| when comparing two objective-c pointer types. |
| |
| 2005-12-06 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4360146 |
| * typeck.c (build_class_member_access_expr): Build the new ivar |
| reference tree. |
| |
| 2006-05-18 Mike Stump <mrs@apple.com> |
| |
| Radar 4501833 |
| * parser.c (cp_parser_compound_statement): Use iasm_end_block to |
| end inline assmebly blocks. |
| (cp_parser_iasm_compound_statement): Likewise. |
| (cp_parser_iasm_top_statement): Likewise. |
| |
| 2006-04-26 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4508851 |
| * parser.c (cp_parser_objc_interstitial_code): Recognize |
| and parse RID_NAMESPACE keyword. |
| |
| 2006-04-26 Mike Stump <mrs@apple.com> |
| |
| Radar 4505741 |
| Rename cw_ to iasm_: |
| See ../ChangeLog.apple-ppc for additional changes. |
| * cp-tree.h: Rename ds_cw_asm to ds_iasm_asm. |
| * decl.c: Likewise. |
| Rename cw_asm_p to iasm_p. |
| * parser.c: Likewise. |
| Rename cp_lexer_cw_bol to cp_lexer_iasm_bol. |
| Rename cp_parser_cw_asm_compound_statement to cp_parser_iasm_compound_statement. |
| Rename cp_parser_cw_asm_top_statement to cp_parser_iasm_top_statement. |
| Rename cp_parser_cw_asm_declaration_seq_opt to cp_parser_iasm_declaration_seq_opt. |
| Rename cp_parser_cw_asm_line_seq_opt to cp_parser_iasm_line_seq_opt. |
| Rename cp_parser_cw_asm_line to cp_parser_iasm_line. |
| Rename cp_parser_cw_skip_to_eol to cp_parser_iasm_skip_to_eol. |
| Rename cp_parser_cw_maybe_skip_comments to cp_parser_iasm_maybe_skip_comments. |
| Rename cp_parser_cw_asm_statement_seq_opt to cp_parser_iasm_statement_seq_opt. |
| Rename cw_build_identifier_string to iasm_build_identifier_string. |
| Rename cp_parser_cw_identifier to cp_parser_iasm_identifier. |
| Rename cp_parser_cw_identifier_or_number to cp_parser_iasm_identifier_or_number. |
| Rename cp_parser_cw_asm_maybe_prefix to cp_parser_iasm_maybe_prefix. |
| Rename cp_parser_cw_asm_statement to cp_parser_iasm_statement. |
| Rename cp_parser_cw_skip_to_next_asm to cp_parser_iasm_skip_to_next_asm. |
| Rename cp_parser_cw_asm_operands to cp_parser_iasm_operands. |
| Rename cp_parser_cw_asm_operand to cp_parser_iasm_operand. |
| Rename cp_parser_cw_asm_relative_branch to cp_parser_iasm_relative_branch. |
| Rename cp_parser_cw_asm_postfix_expression to cp_parser_iasm_postfix_expression. |
| * semantics.c: Likewise. |
| Rename cw_asm_cp_build_component_ref to iasm_cp_build_component_ref. |
| |
| 2006-04-17 Devang Patel <dpatel@apple.com> |
| |
| Radar 4499790 |
| * parser.c (cp_parser_string_literal): Enable pascal strings for |
| wchars. |
| |
| 2006-04-12 Mike Stump <mrs@apple.com> |
| |
| Radar 4477426 4466768 |
| * parser.c (cw_build_identifier_string): Handle pseudo instructions bettter. |
| |
| 2006-03-13 Mike Stump <mrs@apple.com> |
| |
| Radar 4230099 |
| * decl2.c (determine_visibility): Add suppport for |
| -fvisibility-ms-compat. |
| * decl.c (cxx_init_decl_processing): Likewise. |
| |
| 2006-02-08 Mike Stump <mrs@apple.com> |
| |
| Radar 4407059 |
| * parser.c (cp_parser_unary_operator): Only recognize "offset" |
| when doing x86 assembly. |
| |
| 2006-01-20 Mike Stump <mrs@apple.com> |
| |
| Radar 4381918 |
| * decl.c (start_preparsed_function): Avoid warnings about lack of return |
| in asm functions. |
| |
| 2005-12-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4278774 |
| * pt.c (cxx_sizeof_or_alignof_expr): Instantiate @endcode(T). |
| * parser.c (cp_parser_objc_encode_expression): Build a templatized |
| parse tree for @encode(T). |
| |
| 2005-12-13 Mike Stump <mrs@apple.com> |
| |
| * Revert 2005-12-07 Devang Patel <dpatel@apple.com> Radar 4137741 |
| |
| 2005-12-08 Mike Stump <mrs@apple.com> |
| |
| Radar 4371551 |
| * parser.c (cp_parser_cw_asm_postfix_expression): Also handle |
| exprs with no type. |
| |
| 2005-12-07 Devang Patel <dpatel@apple.com> |
| Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4137741 |
| * cp-objcp-common.h: Revert Radar 4133801 changes. |
| * cp-tree.h: Likewise. |
| * decl2.c: Likewise. |
| * parser.c: Likewise. |
| (cp_lexer_handle_pragma): Rename to cp_lexer_handle_pragma_etc(); |
| handle CPP_BINCL and CPP_EINCL tokens in addition to CPP_PRAGMA. |
| (cp_lexer_new_main): Set defer_file_change_debug_hooks flag |
| in preprocessor. |
| (cp_parser_statement, cp_parser_declaration_seq_opt, |
| cp_parser_member_specification_opt, cp_parser_cw_asm_declaration_seq_opt, |
| cp_parser_cw_asm_statement, cp_parser_objc_interstitial_code): |
| Call cp_lexer_handle_pragma_etc() for CPP_BINCL and CPP_EINCL tokens |
| also. |
| |
| 2005-11-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4330422 |
| |
| * typeck.c (comp_ptr_ttypes_real): Remove the hack. un-volatize the |
| artiificially 'volatized' type before doing pointer comparison. |
| |
| 2005-10-17 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4290840 |
| |
| * parser.c (cp_parser_objc_method_keyword_params): Check for valid |
| method parameters and issue error. |
| (cp_parser_objc_method_definition_list): Check for invalid tokens |
| which cannot start a function definition. |
| |
| 2005-10-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4294425 |
| |
| * parser.c (cp_parser_objc_message_args): Check for missing message |
| arguments and syntax error. |
| |
| 2005-10-13 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4261146 |
| |
| * parser.c (cp_parser_objc_class_ivars): Check for @end/eof while |
| looking for '}'. |
| |
| 2005-10-04 Devang Patel <dpatel@apple.com> |
| |
| Radar 4278470 |
| * parser.c (cp_lexer_new_main): Initialized saved_pos.value. |
| |
| 2005-09-23 Mike Stump <mrs@apple.com> |
| |
| Radar 4259442 |
| * parser.c (cp_parser_compound_statement): Handle opcode int. |
| (cp_parser_asm_definition): Add statement_p parameter. |
| Handle opcode int. |
| (cp_parser_cw_identifier): Handle opcode int. |
| (cw_asm_typename_or_reserved): Likewise. |
| |
| 2005-09-15 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4258924 |
| * cp/parser.c (cp_parser_cw_asm_postfix_expression): Add check for |
| FUNCTION_DECL during lookahead. |
| |
| 2005-09-14 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4257049 |
| * cp/parser.c (cw_asm_typename_or_reserved): Check for typename. |
| |
| 2005-08-23 Mike Stump <mrs@apple.com> |
| |
| Radar 4211971 |
| * parser.c (cp_parser_primary_expression): Add support for complex memory |
| addressing. |
| (cp_parser_cw_asm_postfix_expression): Likewise. |
| * typeck.c (build_x_binary_op): Likewise. |
| |
| 2005-08-19 Mike Stump <mrs@apple.com> |
| |
| Radar 4211947 |
| * parser.c (cp_parser_cw_maybe_skip_comments): Add support for |
| ; comments. |
| (cp_parser_asm_definition): Likewise. |
| (cp_parser_cw_skip_to_eol): Likewise. |
| (cp_parser_cw_maybe_skip_comments): Likewise. |
| (cp_parser_cw_asm_top_statement): Likewise. |
| (cp_parser_cw_asm_statement_seq_opt): Likewise. |
| (cp_parser_cw_asm_statement): Likewise. |
| |
| 2005-08-18 Mike Stump <mrs@apple.com> |
| |
| Radar 4214021 |
| * parser.c (cp_parser_asm_definition): Add asm nop support. |
| (cp_parser_cw_asm_top_statement): Likewise. |
| (cp_parser_cw_asm_declaration_seq_opt): Likewise. |
| (cp_parser_cw_asm_operands): Likewise. |
| |
| 2005-08-15 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4093475 |
| * parser.c (cp_parser_objc_interstitial_code): Catch stray |
| '{' and '}' tokens and issue appropriate errors. |
| (cp_parser_objc_method_prototype_list, |
| cp_parser_objc_method_definition_list): Bail out if end-of-file |
| is seen; issue error if trailing '@end' is not seen. |
| |
| 2005-07-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4205577 |
| * cp/parser.c (cp_parser_cw_asm_postfix_expression) .align can also |
| be preceeded by a label_decl (because of recent changes). |
| |
| 2005-07-25 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 4187916 |
| * cp-tree.h (can_convert_arg, fn_type_unification): New argument. |
| * call.c (add_template_candidate_real): Pass down 'flags' to |
| fn_type_unification. |
| (can_convert_arg): New 'flags' argument. Pass it to call to |
| implicit_conversion instead of LOOKUP_NORMAL. |
| * class.c (resolve_address_of_overloaded_function): Add |
| LOOKUP_NORMAL in call to can_convert_arg. |
| (resolve_address_of_overloaded_function): Ditto. |
| * decl.c (reshape_init, check_default_argument): Ditto. |
| * typeck.c (build_ptrmemfunc): Ditto. |
| * typeck2.c (digest_init): Ditto. |
| (unify): Add LOOKUP_NORMAL to call to type_unification_real. |
| * pt.c (type_unification_real): Add 'flags' argument. |
| (fn_type_unification): Pass 'flags' to type_unification_real. |
| (type_unification_real): Pass new 'flags' argument to call to |
| can_convert_arg. |
| |
| 2005-08-02 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4185810 |
| * parser.c (cp_parser_compound_statement): Continue |
| parsing even if the initial '{' is missing; an error |
| message is already being produced. |
| (cp_parser_statement_seq_opt): In addition to '}' and |
| end-of-file, a statement sequence may also be terminated |
| by a stray 'else' or '@end'. |
| |
| 2005-07-22 Devang Patel <dpatel@apple.com> |
| |
| Radar 4182972 |
| * name-lookup.c (pushtag): Do not set DECL_IGNORED_P bit. |
| * decl.c (grokdeclarator): Do not generate debug info for anonymous |
| aggregate type when it receives real name. |
| |
| 2005-07-26 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4168392 |
| * decl.c (check_tag_decl): In '-fms-extensions' mode, |
| turn anonymous fields of aggregate (struct or union) type |
| into anonymous aggregates. For structs, issue a warning |
| if in '-pedantic' mode. |
| |
| 2005-07-25 Devang Patel <dpatel@apple.com> |
| |
| Radar 4184203 |
| Undo PR c++/1016 patch. |
| 2005-03-13 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> |
| |
| * cp-tree.h (pushtag): Adjust declaration. |
| * decl.c (lookup_and_check_tag): Call lookup_type_scope if |
| lookup_name fails. |
| (xref_tag): Adjust call to pushtag. Make hidden class visible. |
| (start_enum): Adjust call to pushtag. |
| * name-lookup.c (ambiguous_decl): Ignore hidden names. |
| (qualify_lookup): Change return type to bool. |
| (hidden_name_p): New function. |
| (lookup_namespace_name, unqualified_namespace_lookup, |
| lookup_name_real): Use it. |
| (lookup_type_scope): Update comments. |
| (maybe_process_template_type_declaration): Change parameter name |
| from globalize to is_friend. |
| (pushtag): Change globalize parameter of type int to tag_scope. |
| Hide name if introduced by friend declaration. |
| * name-lookup.h (hidden_name_p): Add declaration. |
| * parser.c (cp_parser_lookup_name): Don't deal with hidden name |
| here. |
| * pt.c (push_template_decl_real): Make hidden class template |
| visible. |
| (lookup_template_class, instantiate_class_template): Adjust call |
| to pushtag. |
| * semantics.c (begin_class_definition): Likewise. |
| * rtti.c (init_rtti_processing, build_dynamic_cast_1, |
| tinfo_base_init, emit_support_tinfos): Use ts_current instead of |
| ts_global. |
| |
| 2005-07-22 Devang Patel <dpatel@apple.com> |
| |
| Radar 4167759 |
| * class.c (finish_struct_1): Limit debug info for ctors/dtors. |
| (cp_set_decl_ignore_flag): New. |
| * cp-tree.h (cp_set_decl_ignore_flag): New. |
| * search.c (note_debug_info_needed): Limit debug info for ctors/dtors. |
| |
| 2005-07-22 Devang Patel <dpatel@apple.com> |
| |
| Radar 4182972 |
| * name-lookup.c (pushtag): Update comment. |
| * decl.c (grokdeclarator): Generate debug info for anonymous aggregate |
| type when it receives real name. |
| |
| 2005-07-18 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4175534 |
| * call.c (standard_conversion): Do not issue warnings when |
| comparing ObjC pointer types. |
| |
| 2005-06-30 Devang Patel <dpatel@apple.com> |
| |
| * lang-specs.h: While making PCH, invoke as if -fsave-repository |
| is used. |
| |
| 2005-06-22 Ziemowit Laski <zlaski@apple.com> |
| Radar 4154928 |
| * call.c (standard_conversion): Allow for a pointer conversion |
| between any two ObjC pointer types. |
| * typeck.c (composite_pointer_type): Determine common type |
| for two ObjC pointer types. |
| |
| 2005-06-15 Devang Patel <dpatel@apple.com> |
| |
| * parser.c (struct cp_lexer_file): Do not use GTY markers. |
| * decl2.c (cp_finish_file): Flush lexer file stack before writing PCH. |
| |
| 2005-06-02 Devang Patel <dpatel@apple.com> |
| |
| Radar 4133801 |
| * parser.c (struct cp_lexer_file): Decorate using GTY markers. |
| (cp_lexer_new_main): Initialize fields of new tokens. |
| |
| 2005-06-02 Devang Patel <dpatel@apple.com> |
| |
| Radar 4133801 |
| * cp-tree.h (cp_flush_lexer_file_stack): New. |
| * parser.c (cp_flush_lexer_file_stack): New. |
| (cp_lexer_file_stack, last_cp_lexer_file): Make static. |
| (cp_add_lexer_file): Initialize next field. |
| * decl2.c (cp_finish_file): Flush cp_lexer_file_stack. |
| |
| 2005-05-19 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4035492 |
| * class.c (layout_class_type): Do not issue C++ ABI warnings for |
| ObjC structs. |
| * decl.c (objc_mark_locals_volatile): Streamline by calling |
| objc_volatilize_decl(). |
| * parser.c (cp_parser_objc_message_expression): Allow simple type |
| specifiers (instead of merely type names) as message receivers. |
| * pt.c (template_args_equal): Do not call objc_comptypes(). |
| * typeck.c (composite_pointer_type): If both pointers are ObjC-esque, |
| arbitrarily choose the first; do not call objc_comptypes(). |
| (comp_array_types): Do not call objc_comptypes(). |
| (convert_for_assignment): Call objc_compare_types(). |
| (comp_ptr_ttypes_real): Call objc_type_quals_match() before |
| concluding that types do not match. |
| |
| 2005-06-01 Devang Patel <dpatel@apple.com> |
| |
| Radar 4133801 |
| * Make-lang.in (cp/parser.o): Depend on debug.h. |
| * cp-objcp-common.h (LANG_HOOKS_START_SOURCE_FILE, |
| LANG_HOOKS_END_SOURCE_FILE): New. |
| * cp-tree.h (cp_start_source_file, cp_end_source_file): New. |
| * parser.c (debug.h): Include. |
| (enum cp_file_entry_kind): New. |
| (struct cp_lexer_file): New. |
| (cp_lexer_file_stack, last_cp_lexer_file): New. |
| (cp_add_lexer_file, cp_lexer_copy_token, cp_parser_bincl_eincl): New. |
| (cp_lexer_new_main): Insert new CPP_BINCL and CPP_EINCL tokens based |
| on cp_lexer_file_stack. |
| (cp_lexer_peek_nth_token): Skip CPP_BINCL and CPP_EINCL tokens. |
| (cp_lexer_peek_token): Process CPP_BINCL and CPP_EINCL tokens. |
| |
| 2005-04-25 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4094385 |
| * semantics.c (finish_id_expression): Correctly retrieve function |
| candidate from a BASELINK node, if one was provided. |
| |
| 2005-04-20 Mike Stump <mrs@apple.com> |
| |
| Radar 4077104 |
| * parser.c (cp_parser_unary_expression): Handle -40(sp) in CW asms better. |
| |
| 2005-04-20 Devang Patel <dpatel@apple.com> |
| |
| Radar 4093536 |
| Undo PR libstdc++/10606 fix. |
| 2005-02-18 Richard Henderson <rth@redhat.com> |
| |
| PR libstdc++/10606 |
| * except.c (do_get_exception_ptr): New. |
| (expand_start_catch_block): Use it. |
| |
| 2005-04-08 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4055183 |
| * typeck.c (build_function_call): Call |
| objc_rewrite_function_call() to handle casts. |
| |
| 2005-03-11 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3995882 |
| * decl.c (objc_mark_locals_volatile): Mark local variables and |
| parameters 'volatile' in ways expected by the C++ front-end. |
| |
| 2005-03-07 Devang Patel <dpatel@apple.com> |
| |
| * class.c (tree-iterator.h): Include. |
| |
| 2005-03-02 Robert Bowdidge <bowdidge@apple.com |
| Radar 4025293 |
| * cp/typeck.c (convert_member_func_to_ptr) Ban casts from pointer-to- |
| member-function to pointer-to-function whenever the -fapple-kext flag |
| was passed to the compiler. Behavior changed between 3.3 and 4.0 in |
| incompatible ways, and the IOKit team wants all kexts to use a macro |
| that provides the correct (3.3) behavior. |
| |
| 2005-02-21 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3809189 |
| * typeck2.c (digest_init): Factor out Pascal-ness of string |
| initializer; allow NUL terminator to not fit into the array |
| being initialized. |
| |
| 2005-02-18 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 4011192 |
| * parser.c (cp_parser_objc_try_catch_finally_statement): When |
| parsing '@finally' blocks, make sure the compound statement |
| winds up in a special STATEMENT_LIST instead of current scope. |
| (cp_parser_objc_synchronized_statement): Likewise for |
| '@synchronized' blocks. |
| |
| 2005-02-17 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3635843, 3922342 |
| * tree.c (lvalue_or_else): Do not emit warning if |
| '-Wno-non-lvalue-assign' has been specified. |
| * typeck.c (build_modify_expr): Call |
| objc_generate_write_barrier() if '-fobjc-gc' has been specified. |
| |
| 2005-02-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 3971074 |
| |
| * parser.c (cp_parser_cw_asm_statement): Pass lineno to cw_asm_stmt. |
| |
| 2005-02-16 Fariborz Jahanian <fjahanian@apple.com> |
| |
| Radar 3970655 |
| |
| * cp/parser.c (cw_build_identifier_string): New function. |
| (cp_parser_cw_identifier): Build the tree for a '.'identifier. |
| (cp_parser_cw_asm_postfix_expression): Some disambiguation case. |
| |
| 2005-02-10 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3993052 |
| * parser.c (cp_parser_objc_interstitial_code): New routine. |
| (cp_parser_objc_method_prototype_list): Call |
| cp_parser_objc_interstitial_code() instead of doing |
| non-ObjC++ parsing locally. |
| (cp_parser_objc_method_definition_list): Likewise. |
| |
| 2005-02-10 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3982256 |
| * cp-objcp-common.h (cxx_get_alias_set, |
| cxx_warn_unused_global_decl, cp_expr_size, cp_tree_size, |
| cp_var_mod_type_p, cxx_initialize_diagnostics, |
| cxx_types_compatible_p): Move prototypes ... |
| * cp-tree.h: ... here. |
| |
| 2005-02-08 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3987120 |
| * parser.c (cp_parser_objc_encode_expression): Call |
| 'complete_type (cp_parser_type_id ())' instead of |
| 'cp_parser_objc_typename ()' to retrieve argument type. |
| |
| 2005-02-02 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3978104 |
| * parser.c (cp_parser_objc_method_prototype_list): Allow stray |
| semicolons in between method signatures. |
| |
| 2005-01-31 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3978168 |
| * tree.c (lvalue_or_else): Allow certain non-lvalues |
| as arguments to '&', and print appropriate warning. |
| |
| 2005-01-27 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3971244 |
| * typeck.c (composite_pointer_type): Check for |
| ObjC subtype relations. |
| |
| 2005-01-26 Matt Austern <austern@apple.com> |
| |
| Radar 3972840 |
| * call.c (build_over_call): Set type of function node correctly. |
| Type returned by build_vfn_ref_using_vtable is *not* what we |
| want. |
| * class.c (build_vfn_ref_using_vtable): Duplicate logic in |
| build_vfn_ref for setting attributes of vtable array ref node. |
| |
| 2005-01-26 Devang Patel <dpatel@apple.com> |
| |
| Radar 3971329 |
| * parser.c (cp_parser_objc_method_definition_list): Parse extern |
| linkage specification. |
| |
| 2005-01-24 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3968938 |
| * parser.c (cp_parser_simple_type_specifier): After |
| constructing a protocol-qualified ObjC type, record |
| it in the DECL_SPECS structure. |
| |
| 2005-01-23 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3961973 |
| * cp-tree.h (lvalue_or_else): Change type of first parameter |
| from 'tree' to 'tree *'. |
| * tree.c (lvalue_or_else): Change first parameter from |
| 'tree' to 'tree *'; handle conditional lvalues in addition |
| to lvalue casts; when rewriting expressions, create a new |
| tree instead of clobbering an existing one. |
| * typeck.c (build_unary_op, build_modify_expr): Adjust |
| calls to lvalue_or_else(). |
| |
| 2005-01-19 Matt Austern <austern@apple.com> |
| |
| Radar 3960754 |
| * typeck.c (comptypes): Handle return code from objc_comptypes |
| correctly. |
| |
| 2005-01-18 Mike Stump <mrs@apple.com> |
| |
| Radar 3956093 |
| * class.c (has_apple_kext_compatibility_attr_p): Avoid problems |
| when there are no base classes. |
| |
| 2005-01-18 Ziemowit Laski <zlaski@apple.com> |
| |
| * parser.c (cp_parser_cw_identifier): Reapply change |
| just reverted. |
| |
| 2005-01-18 Ziemowit Laski <zlaski@apple.com> |
| |
| * parser.c (cp_parser_cw_identifier): Revert change |
| from 2005-01-14. |
| |
| 2005-01-17 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3955336 |
| * parser.c (cp_parser_objc_message_receiver): Try parsing |
| receiver as an expression first; failing that, as a |
| nested type. |
| |
| 2005-01-17 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3951689 |
| * parser.c (cp_parser_objc_try_catch_finally_statement, |
| cp_parser_objc_synchronized_statement, cp_parser_objc_throw_statement |
| cp_parser_objc_statement): New functions. |
| (cp_parser_statement): Call cp_parser_objc_statement() to |
| parse Objective-C statements. |
| |
| 2005-01-15 Geoffrey Keating <geoffk@apple.com> |
| |
| * g++spec.c: Remove APPLE LOCAL changes involving |
| macosx_version_min_required. |
| |
| 2005-01-14 Ziemowit Laski <zlaski@apple.com> |
| |
| * parser.c (cp_parser_cw_identifier): Add a default: |
| to squash compiler warnings. |
| |
| 2005-01-08 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3913725 |
| * tree.c (lvalue_or_else): If expression is not an lvalue, |
| check if it is a cast of an lvalue; if so, and if the cast |
| involves POD types with identical size and aligment, |
| rewrite '(type)expr' into '*(type *)&expr' and allow the |
| result as an lvalue. |
| |
| 2005-01-07 Devang Patel <dpatel@apple.com> |
| |
| Radar 3943502 |
| * parser.c (cp_parser_objc_defs_expression): New. |
| (cp_parser_member_declaration): Handle @defs. |
| |
| 2005-01-06 Robert Bowdidge <bowdidge@apple.com> |
| |
| Radar 3943783 |
| * class.c: change has_apple_kext_compatibility_attr_p to use |
| BINFO_BASE_BINFO for walking class hierarchy. |
| |
| 2005-01-06 Devang Patel <dpatel@apple.com> |
| |
| Radar 3941766 |
| * parser.c (cp_parser_objc_class_ivars): Add '}' check. |
| |
| 2005-01-05 Mark Mitchell <mark@codesourcery.com> |
| Matt Austern <austern@apple.com> |
| |
| Radar 3934803 |
| PR c++/18369 |
| * init.c (build_new_1): Handle parenthesized type-ids that name an |
| array type. Tidy. |
| |
| 2004-12-20 Matt Austern <austern@apple.com> |
| |
| Radar 3845716 |
| PR c++/19044 |
| * decl.c (make_rtl_for_nonlocal_decl): Use set_builtin_user_assembler_name |
| |
| 2004-12-10 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3640156, 3877958 |
| * decl.c (builtin_function_1): Do not require subsequent declarations |
| for AltiVec PIM builtins. |
| |
| 2004-12-07 Mike Stump <mrs@apple.com> |
| |
| Radar 3603833, 3896176, 3518821. |
| * parser.c (cp_parser_binary_expression): Add support for lines |
| that start with named operators such as and. |
| (cp_parser_cw_identifier): Move reused code from here to |
| cw_get_identifier. |
| |
| 2004-11-17 Mike Stump <mrs@apple.com> |
| |
| Radar 3860322 |
| g++.dg/asm-block-3.C |
| * parser.c (cp_parser_cw_identifier): Handle C++ keywords like |
| and, or, xor in CW asm blocks. |
| |
| 2004-11-14 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3877761 |
| * parser.c (cp_parser_objc_class_ivars): Allow an optional |
| trailing semicolon, per existing usage. |
| |
| 2004-11-10 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3761423 |
| * typeck.c (finish_class_member_access_expr): Insert call to |
| objc_is_public() to check ObjC ivar access. |
| |
| 2004-11-08 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3869280 |
| * tree.c (lvalue_p_1): Determine lvalue-ness of CONST_DECLs the same |
| way as for VAR_DECLs. |
| |
| 2004-11-03 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3863563 (fix from mainline) |
| * cp-lang.c (cxx_types_compatible_p): Remove prototype and definition. |
| (LANG_HOOKS_TYPES_COMPATIBLE_P): Move to cp-objcp-common.h. |
| * cp-objcp-common.c (cxx_types_compatible_p): Moved definition here |
| from cp-lang.c. |
| * cp-objcp-common.h (cxx_types_compatible_p): Moved prototype here |
| from cp-lang.c. |
| (LANG_HOOKS_TYPES_COMPATIBLE_P): Moved here from cp-lang.c. |
| |
| 2004-11-01 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 2810013 |
| * parser.c (cp_parser_primary_expression): Perform instace variable |
| lookup in conjunction with C++ identifier expression lookup. |
| (cp_parser_postfix_expression): Moved instance variable lookup |
| to cp_parser_primary_expression(). |
| |
| 2004-10-21 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3540965 |
| * parser.c (cp_parser_postfix_expression): Do not forget to parse |
| the rhs of a postfix expression when the lhs is an instance variable. |
| |
| 2004-10-18 Robert Bowdidge <bowdidge@apple.com> |
| |
| Radar 3843618 |
| * gcc/cp/parser.c: Bring the change for PR/17829 over from mainline |
| so that Finder_FE will build again. |
| |
| 2004-10-13 Ziemowit Laski <zlaski@apple.com> |
| |
| Radar 3677258 |
| * cp-tree.h (struct lang_identifier): Add 'interface_value' field. |
| |
| 2004-09-14 Andrew Pinski <apinski@apple.com> |
| |
| Rest of Radar 3753405 |
| * cp-tree.h (enum cp_decl_sepcs): Add ds_cw_asm. |
| * decl.c (grokdeclarator): Rename cw_asm_specbit to cw_asm_p to mirror |
| the other specbits. |
| Access specbits for cw_asm. |
| Add "asm" to decl_specs_names. |
| Remove MERGE FIXME comment. |
| * parser.c (cp_parser_decl_specifier_seq, <case RID_ASM>): Mirror the |
| other decl spec bits. |
| |
| 2004-08-22 Andrew Pinski <apinski@apple.com> |
| |
| Revert: |
| 2004-08-22 Andrew Pinski <apinski@apple.com> |
| PR c++/14029 |
| * typeck.c (build_unary_op): Use &a.b if the foldded lowered |
| expression is not constant. |
| |
| 2004-08-22 Andrew Pinski <apinski@apple.com> |
| |
| PR c++/14029 |
| * typeck.c (build_unary_op): Use &a.b if the foldded lowered |
| expression is not constant. |
| |
| 2004-08-10 Devang Patel <dpatel@apple.com> |
| |
| Remove Symbol Separation. |
| Radar 3555440. Reviewed by Mike Stump. |
| * decl2.c (finish_file): Do not write context. |
| |
| 2004-08-08 Andrew Pinski <apinski@apple.com> |
| |
| * cp/lex.c (cxx_init): Remove APPLE LOCAL for setting -gused |
| by default as it is handled in CC1_SPECs now. |
| |
| 2004-08-03 Stan Shebs <shebs@apple.com> |
| |
| Support for CodeWarrior-style assembly language blocks and |
| functions. Radar 3368707. |
| * cp-tree.h (cw_asm_cp_build_component_ref): Declare. |
| * decl.c (grokdeclarator): Recognize asm keyword, set flag |
| on function decl if seen. |
| * parser.c (cp_lexer_get_preprocessor_token): Allow @-tokens |
| if doing asm. |
| (cp_parser_primary_expression): Recognize @-tokens in asm, |
| replace with @-identifier (which will become a label) later. |
| (cp_parser_unary_expression): Call asm-specific postfix |
| expression handler. |
| (cp_parser_compound_statement): Handle asm compound statements |
| specially. |
| (cp_parser_statement_seq_opt): Handle statement sequences in |
| asm blocks specially. |
| (cp_parser_simple_declaration): Leave instead of erroring out |
| if apparent asm opcode is seen. |
| (cp_parser_decl_specifier_seq, |
| cp_parser_storage_class_specifier_opt): Accept RID_ASM as a specifier. |
| (cp_parser_asm_definition): Detect asm blocks and handle. |
| (cp_parser_cw_asm_compound_statement, |
| cp_parser_cw_asm_declaration_seq_opt, cp_parser_cw_asm_line_seq_opt, |
| cp_parser_cw_asm_line, cp_parser_cw_asm_statement_seq_opt, |
| cp_parser_cw_asm_statement, cp_parser_cw_asm_operands, |
| cp_parser_cw_asm_operand, cp_parser_cw_asm_postfix_expression, |
| cw_asm_typename_or_reserved): New functions. |
| semantics.c (finish_id_expression): Handle register names |
| and labels in asm blocks specially. |
| * typeck.c (cw_asm_cp_build_component_ref): New function. |
| |
| 2004-08-01 Devang Patel <dpatel@apple.com> |
| |
| Re-implement -fwritable-strings support. |
| Radar : 3699482 |
| |
| * decl.c (cxx_init_decl_processing): Check flag_writable_strings. |
| |
| 2004-08-01 Geoffrey Keating <geoffk@apple.com> |
| |
| * decl.c (grokdeclarator): Don't call warn_about_long_double. |
| |
| 2004-06-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| * decl2.c (maybe_emit_vtables, get_guard): |
| Remove all APPLE LOCAL coalescing codes. |
| (import_export_decl): Remove all APPLE LOCAL coalescing codes, |
| except for one call to comdat_linkage. |
| |
| 2004-06-08 Fariborz Jahanian <fjahanian@apple.com> |
| |
| * decl2.c (maybe_emit_vtables, import_export_decl, get_guard): |
| Resore various APPLE LOCAL coalescing codes. |
| |
| 2004-06-07 Fariborz Jahanian <fjahanian@apple.com> |
| |
| * decl2.c (maybe_emit_vtables, import_export_decl, get_guard): |
| Remove various APPLE LOCAL coalescing codes. |
| |
| 2004-04-02 Ziemowit Laski <zlaski@apple.com> |
| |
| Remove APPLE LOCAL AltiVec code whenever possible; merge in |
| AltiVec/VECTOR_TYPE-handling code from mainline. |