From 6ef007da2455e4fcae17f14e75251bac48b39c81 Mon Sep 17 00:00:00 2001 From: "Jurgen J. Vinju" Date: Thu, 29 Feb 2024 12:02:44 +0100 Subject: [PATCH] improved readability of operator declaration locations --- src/lang/cpp/internal/BindingsResolver.java | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/src/lang/cpp/internal/BindingsResolver.java b/src/lang/cpp/internal/BindingsResolver.java index 6300ab9e..1f4da82d 100644 --- a/src/lang/cpp/internal/BindingsResolver.java +++ b/src/lang/cpp/internal/BindingsResolver.java @@ -219,10 +219,8 @@ private ISourceLocation ownedBinding(IBinding binding, String scheme, String pos private String renameOperators(String name) { if (isOperatorName(name)) { - // remove the additional spaces to avoid accidental synonyms - name = name.replaceAll(" ", ""); // wrap the operator in braces to disambiguate from possible methods with names like "operatordelete" - name = "operator(" + name.substring("operator".length()) + ")"; + name = "operator(" + name.substring("operator ".length()) + ")"; } return name; @@ -715,17 +713,7 @@ else if (binding.getName().startsWith("~")) { } private boolean isOperatorName(String name) { - if (name.startsWith("operator")) { - if (name.matches("[<>\\-+*/=%!&\\|\\^\\?\\.\\[\\]]")) { - return true; - } - - if (name.endsWith(" delete") || name.endsWith(" new")) { - return true; - } - } - - return false; + return name.startsWith("operator "); } private ISourceLocation resolveCEnumeration(CEnumeration binding, ISourceLocation origin) throws URISyntaxException {