mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-02 13:55:39 +02:00
Bug 292949 - XL C++ parser using wrong scanner config
This commit is contained in:
parent
8789d929c1
commit
bd5a8a4f8a
5 changed files with 48 additions and 10 deletions
|
@ -55,7 +55,7 @@ public class XlcCLanguage extends GCCLanguage {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
|
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
|
||||||
return XlcScannerExtensionConfiguration.getInstance();
|
return XlcCScannerExtensionConfiguration.getInstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ public class XlcCPPLanguage extends GPPLanguage {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
|
protected IScannerExtensionConfiguration getScannerExtensionConfiguration() {
|
||||||
return XlcScannerExtensionConfiguration.getInstance();
|
return XlcCPPScannerExtensionConfiguration.getInstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
/*******************************************************************************
|
||||||
|
* Copyright (c) 2009 IBM Corporation and others.
|
||||||
|
* All rights reserved. This program and the accompanying materials
|
||||||
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
|
* which accompanies this distribution, and is available at
|
||||||
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
|
*
|
||||||
|
* Contributors:
|
||||||
|
* IBM Corporation - initial API and implementation
|
||||||
|
*******************************************************************************/
|
||||||
|
package org.eclipse.cdt.core.lrparser.xlc;
|
||||||
|
|
||||||
|
|
||||||
|
import org.eclipse.cdt.core.dom.parser.cpp.GPPScannerExtensionConfiguration;
|
||||||
|
|
||||||
|
public class XlcCPPScannerExtensionConfiguration extends GPPScannerExtensionConfiguration {
|
||||||
|
|
||||||
|
private static XlcCPPScannerExtensionConfiguration instance;
|
||||||
|
|
||||||
|
|
||||||
|
private XlcCPPScannerExtensionConfiguration() {}
|
||||||
|
|
||||||
|
public static synchronized XlcCPPScannerExtensionConfiguration getInstance() {
|
||||||
|
if(instance == null)
|
||||||
|
instance = new XlcCPPScannerExtensionConfiguration();
|
||||||
|
return instance;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean supportUTFLiterals() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public char[] supportAdditionalNumericLiteralSuffixes() {
|
||||||
|
return "dflij".toCharArray(); //$NON-NLS-1$
|
||||||
|
}
|
||||||
|
}
|
|
@ -12,16 +12,16 @@ package org.eclipse.cdt.core.lrparser.xlc;
|
||||||
|
|
||||||
import org.eclipse.cdt.core.dom.parser.c.GCCScannerExtensionConfiguration;
|
import org.eclipse.cdt.core.dom.parser.c.GCCScannerExtensionConfiguration;
|
||||||
|
|
||||||
public class XlcScannerExtensionConfiguration extends GCCScannerExtensionConfiguration {
|
public class XlcCScannerExtensionConfiguration extends GCCScannerExtensionConfiguration {
|
||||||
|
|
||||||
private static XlcScannerExtensionConfiguration instance;
|
private static XlcCScannerExtensionConfiguration instance;
|
||||||
|
|
||||||
|
|
||||||
private XlcScannerExtensionConfiguration() {}
|
private XlcCScannerExtensionConfiguration() {}
|
||||||
|
|
||||||
public static synchronized XlcScannerExtensionConfiguration getInstance() {
|
public static synchronized XlcCScannerExtensionConfiguration getInstance() {
|
||||||
if(instance == null)
|
if(instance == null)
|
||||||
instance = new XlcScannerExtensionConfiguration();
|
instance = new XlcCScannerExtensionConfiguration();
|
||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,6 +32,6 @@ public class XlcScannerExtensionConfiguration extends GCCScannerExtensionConfigu
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public char[] supportAdditionalNumericLiteralSuffixes() {
|
public char[] supportAdditionalNumericLiteralSuffixes() {
|
||||||
return "dfl".toCharArray(); //$NON-NLS-1$
|
return "dflij".toCharArray(); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -78,7 +78,7 @@ public class XlcKeywords extends CLanguageKeywords {
|
||||||
|
|
||||||
|
|
||||||
private XlcKeywords(ParserLanguage language) {
|
private XlcKeywords(ParserLanguage language) {
|
||||||
super(language, XlcScannerExtensionConfiguration.getInstance());
|
super(language, XlcCScannerExtensionConfiguration.getInstance());
|
||||||
this.language = language;
|
this.language = language;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -93,7 +93,7 @@ public class XlcKeywords extends CLanguageKeywords {
|
||||||
@Override
|
@Override
|
||||||
public synchronized String[] getKeywords() {
|
public synchronized String[] getKeywords() {
|
||||||
if(allKeywords == null) {
|
if(allKeywords == null) {
|
||||||
ICLanguageKeywords base = new CLanguageKeywords(language, XlcScannerExtensionConfiguration.getInstance());
|
ICLanguageKeywords base = new CLanguageKeywords(language, XlcCScannerExtensionConfiguration.getInstance());
|
||||||
String[] baseKeywords = base.getKeywords();
|
String[] baseKeywords = base.getKeywords();
|
||||||
|
|
||||||
List<String> keywords = new ArrayList<String>();
|
List<String> keywords = new ArrayList<String>();
|
||||||
|
|
Loading…
Add table
Reference in a new issue