aboutsummaryrefslogtreecommitdiff
path: root/gcc/builtins.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2017-06-29 14:00:44 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2017-06-29 14:00:44 +0000
commitf76b422479df586a93a0a2eaac748b59923d6e97 (patch)
tree8205b4adb2b1004bef7560b116c2256cdcd06320 /gcc/builtins.c
parentf66459c1605ab66390ad5b5c54e425f96607d9eb (diff)
downloadgcc-f76b422479df586a93a0a2eaac748b59923d6e97.zip
gcc-f76b422479df586a93a0a2eaac748b59923d6e97.tar.gz
gcc-f76b422479df586a93a0a2eaac748b59923d6e97.tar.bz2
builtins.c (fold_builtin_FUNCTION): Use lang_hooks.decl_printable_name.
gcc/ * builtins.c (fold_builtin_FUNCTION): Use lang_hooks.decl_printable_name. gcc/cp/ * g++.dg/cpp1y/builtin_FUNCTION.C: New. From-SVN: r249784
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r--gcc/builtins.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 7e829ef..034ec2e 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -8739,13 +8739,12 @@ fold_builtin_FILE (location_t loc)
static inline tree
fold_builtin_FUNCTION ()
{
+ const char *name = "";
+
if (current_function_decl)
- {
- const char *name = IDENTIFIER_POINTER (DECL_NAME (current_function_decl));
- return build_string_literal (strlen (name) + 1, name);
- }
+ name = lang_hooks.decl_printable_name (current_function_decl, 0);
- return build_string_literal (1, "");
+ return build_string_literal (strlen (name) + 1, name);
}
/* Fold a call to __builtin_LINE to an integer constant. */