aboutsummaryrefslogtreecommitdiff
path: root/gcc/c-family
diff options
context:
space:
mode:
authorDimitris Papavasiliou <dpapavas@gmail.com>2014-04-24 15:58:44 +0000
committerMike Stump <mrs@gcc.gnu.org>2014-04-24 15:58:44 +0000
commitdcaaa5a04a88256c5838696742be5efb6ced353a (patch)
treeba1651fb43cb7ce456f3f31e912458a294219553 /gcc/c-family
parent07fb62554c2667cc35033f7c6439acf3e35e1996 (diff)
downloadgcc-dcaaa5a04a88256c5838696742be5efb6ced353a.zip
gcc-dcaaa5a04a88256c5838696742be5efb6ced353a.tar.gz
gcc-dcaaa5a04a88256c5838696742be5efb6ced353a.tar.bz2
flag-types.h (enum ivar_visibility): Add.
2014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com> * flag-types.h (enum ivar_visibility): Add. c-family: * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add. objc: * objc-act.c (objc_ivar_visibility, objc_default_ivar_visibility): Add. (objc_init): Initialize objc_default_ivar_visibility. (objc_start_class_interface): Use objc_default_ivar_visibility. (objc_start_class_implementation): Likewise. (objc_lookup_ivar): Implement -fno-local-ivars. From-SVN: r209753
Diffstat (limited to 'gcc/c-family')
-rw-r--r--gcc/c-family/ChangeLog4
-rw-r--r--gcc/c-family/c.opt27
2 files changed, 31 insertions, 0 deletions
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index d9e39ed..1b466ac 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,7 @@
+2014-04-24 Dimitris Papavasiliou <dpapavas@gmail.com>
+
+ * c.opt (Wshadow-ivar, flocal-ivars, fivar-visibility): Add.
+
2014-04-23 Marek Polacek <polacek@redhat.com>
* c-common.c (handle_tm_wrap_attribute): Tweak error message.
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 390c056..2bc06ba 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -684,6 +684,10 @@ Wselector
ObjC ObjC++ Var(warn_selector) Warning
Warn if a selector has multiple methods
+Wshadow-ivar
+ObjC ObjC++ Var(warn_shadow_ivar) Init(-1) Warning
+Warn if a local declaration hides an instance variable
+
Wsequence-point
C ObjC C++ ObjC++ Var(warn_sequence_point) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)
Warn about possible violations of sequence point rules
@@ -1038,6 +1042,29 @@ fnil-receivers
ObjC ObjC++ Var(flag_nil_receivers) Init(1)
Assume that receivers of Objective-C messages may be nil
+flocal-ivars
+ObjC ObjC++ Var(flag_local_ivars) Init(1)
+Allow access to instance variables as if they were local declarations within instance method implementations.
+
+fivar-visibility=
+ObjC ObjC++ Joined RejectNegative Enum(ivar_visibility) Var(default_ivar_visibility) Init(IVAR_VISIBILITY_PROTECTED)
+-fvisibility=[private|protected|public|package] Set the default symbol visibility
+
+Enum
+Name(ivar_visibility) Type(enum ivar_visibility) UnknownError(unrecognized ivar visibility value %qs)
+
+EnumValue
+Enum(ivar_visibility) String(private) Value(IVAR_VISIBILITY_PRIVATE)
+
+EnumValue
+Enum(ivar_visibility) String(protected) Value(IVAR_VISIBILITY_PROTECTED)
+
+EnumValue
+Enum(ivar_visibility) String(public) Value(IVAR_VISIBILITY_PUBLIC)
+
+EnumValue
+Enum(ivar_visibility) String(package) Value(IVAR_VISIBILITY_PACKAGE)
+
fnonansi-builtins
C++ ObjC++ Var(flag_no_nonansi_builtin, 0)