summaryrefslogtreecommitdiff
path: root/ccode
diff options
context:
space:
mode:
authorMaciej Piechotka <uzytkownik2@gmail.com>2013-05-12 11:18:27 +0100
committerLuca Bruno <lucabru@src.gnome.org>2014-03-24 21:05:27 +0100
commit970f58989a2863faca11e30fdbcf4da1273a6acd (patch)
tree4a4e75d3fd0cffb31819c0fb012e5202682dc31f /ccode
parent5d370fcd029c39c621449f8d29768dec7a294a24 (diff)
downloadvala-970f58989a2863faca11e30fdbcf4da1273a6acd.tar.gz
Hide internal methods in ABI
Fixes bug 700157
Diffstat (limited to 'ccode')
-rw-r--r--ccode/valaccodedeclaration.vala7
-rw-r--r--ccode/valaccodefunction.vala3
-rw-r--r--ccode/valaccodemodifiers.vala3
3 files changed, 10 insertions, 3 deletions
diff --git a/ccode/valaccodedeclaration.vala b/ccode/valaccodedeclaration.vala
index 95216f815..24bda724d 100644
--- a/ccode/valaccodedeclaration.vala
+++ b/ccode/valaccodedeclaration.vala
@@ -52,7 +52,7 @@ public class Vala.CCodeDeclaration : CCodeStatement {
}
public override void write (CCodeWriter writer) {
- if ((modifiers & (CCodeModifiers.STATIC | CCodeModifiers.EXTERN)) == 0) {
+ if ((modifiers & (CCodeModifiers.STATIC | CCodeModifiers.INTERNAL | CCodeModifiers.EXTERN)) == 0) {
foreach (CCodeDeclarator decl in declarators) {
decl.write_initialization (writer);
}
@@ -70,9 +70,12 @@ public class Vala.CCodeDeclaration : CCodeStatement {
}
public override void write_declaration (CCodeWriter writer) {
- if ((modifiers & (CCodeModifiers.STATIC | CCodeModifiers.EXTERN)) != 0) {
+ if ((modifiers & (CCodeModifiers.STATIC | CCodeModifiers.INTERNAL | CCodeModifiers.EXTERN)) != 0) {
// combined declaration and initialization for static and extern variables
writer.write_indent (line);
+ if ((modifiers & CCodeModifiers.INTERNAL) != 0) {
+ writer.write_string ("G_GNUC_INTERNAL ");
+ }
if ((modifiers & CCodeModifiers.STATIC) != 0) {
writer.write_string ("static ");
}
diff --git a/ccode/valaccodefunction.vala b/ccode/valaccodefunction.vala
index d54215b13..7f3b3bb12 100644
--- a/ccode/valaccodefunction.vala
+++ b/ccode/valaccodefunction.vala
@@ -112,6 +112,9 @@ public class Vala.CCodeFunction : CCodeNode {
public override void write (CCodeWriter writer) {
writer.write_indent (line);
+ if (CCodeModifiers.INTERNAL in modifiers) {
+ writer.write_string ("G_GNUC_INTERNAL ");
+ }
if (CCodeModifiers.STATIC in modifiers) {
writer.write_string ("static ");
}
diff --git a/ccode/valaccodemodifiers.vala b/ccode/valaccodemodifiers.vala
index 4dd74557c..600751d6c 100644
--- a/ccode/valaccodemodifiers.vala
+++ b/ccode/valaccodemodifiers.vala
@@ -33,5 +33,6 @@ public enum Vala.CCodeModifiers {
INLINE = 1 << 3,
VOLATILE = 1 << 4,
DEPRECATED = 1 << 5,
- THREAD_LOCAL = 1 << 6
+ THREAD_LOCAL = 1 << 6,
+ INTERNAL = 1 << 7
}