From: Matthew Khouzam Date: Tue, 25 Oct 2016 20:07:51 +0000 (-0400) Subject: Revert "ctf: Remove the callsite support" X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=d45d05a1306dfaa1ae46cc30e46caaf8ca4df356;p=deliverable%2Ftracecompass.git Revert "ctf: Remove the callsite support" This reverts commit 73511e6797ae5d1ef5669997e21788033d1b2eee. The keyword callsite is part of the CTF specification. Dropping support for it was a misstep. Change-Id: I9b4c4842c1b2333acabac072d4a35fe224cfec5a Signed-off-by: Matthew Khouzam Reviewed-on: https://git.eclipse.org/r/83898 Reviewed-by: Genevieve Bastien Tested-by: Genevieve Bastien Reviewed-by: Hudson CI --- diff --git a/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/event/CTFCallsiteTest.java b/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/event/CTFCallsiteTest.java new file mode 100644 index 0000000000..c69d895058 --- /dev/null +++ b/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/event/CTFCallsiteTest.java @@ -0,0 +1,126 @@ +/******************************************************************************* + * Copyright (c) 2013, 2014 Ericsson + * 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: + * Matthew Khouzam - Initial API and implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.ctf.core.tests.event; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; + +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; +import org.junit.Test; + +/** + * The class CTFCallsiteTest contains tests for the class + * {@link CTFCallsite}. + * + * @author Matthew Khouzam + * @version $Revision: 1.0 $ + */ + +public class CTFCallsiteTest { + + private static CTFCallsite GenerateCS(long ip) { + return new CTFCallsite("event name", "func name", ip, "file.java", 1); + } + + /** + * Test the constructor + */ + @Test + public void constructorTest() { + CTFCallsite cs = GenerateCS(0x01); + assertNotNull(cs); + } + + /** + * Test the getters + */ + @Test + public void getterTest() { + CTFCallsite cs = GenerateCS(0x01); + assertEquals("instruction pointer", 1, cs.getIp()); + assertEquals("event name", "event name", cs.getEventName()); + assertEquals("file name", "file.java", cs.getFileName()); + assertEquals("function name", "func name", cs.getFunctionName()); + assertEquals("line number", 1, cs.getLineNumber()); + } + + /** + * Test the hash code + */ + @Test + public void hashCodeTest() { + CTFCallsite cs = GenerateCS(0x01); + Map test = new HashMap<>(); + test.put(cs, new Object()); + assertTrue(test.containsKey(cs)); + assertTrue(test.containsKey(GenerateCS(0x01))); + assertFalse(test.containsKey(GenerateCS(0x02))); + assertFalse(test.containsKey(new CTFCallsite("event nam", "func name", 1, "file.java", 1))); + assertFalse(test.containsKey(new CTFCallsite("event name", "func nam", 1, "file.java", 1))); + assertFalse(test.containsKey(new CTFCallsite("event name", "func name", 1, "file.jav", 1))); + assertFalse(test.containsKey(new CTFCallsite("event name", "func name", 1, "file.java", 2))); + } + + /** + * Test equality + */ + @Test + public void equalsTest() { + CTFCallsite cs = GenerateCS(0x01); + CTFCallsite cs1 = GenerateCS(0x01); + assertEquals(cs, cs); + assertEquals(cs, cs1); + assertEquals(cs, new CTFCallsite("event name", "func name", 1, "file.java", 1)); + assertFalse(cs.equals(null)); + assertFalse(cs.equals(-1)); + assertFalse(cs.equals(new CTFCallsite("event nam", "func name", 1, "file.java", 1))); + assertFalse(cs.equals(new CTFCallsite("event name", "func nam", 1, "file.java", 1))); + assertFalse(cs.equals(new CTFCallsite("event name", "func name", 2, "file.java", 1))); + assertFalse(cs.equals(new CTFCallsite("event name", "func name", 1, "file.jav", 1))); + assertFalse(cs.equals(new CTFCallsite("event name", "func name", 1, "file.java", 2))); + } + + /** + * Test the comparator (it should sort using the IP) + */ + @Test + public void comparatorTest() { + CTFCallsite cs[] = new CTFCallsite[5]; + long vals[] = { 1L, 0L, -2L, 2L, -1L }; + for (int i = 0; i < 5; i++) { + cs[i] = GenerateCS(vals[i]); + } + + Arrays.sort(cs, (o1, o2) -> Long.compareUnsigned(o1.getIp(), o2.getIp())); + + assertEquals(0L, cs[0].getIp()); + assertEquals(1L, cs[1].getIp()); + assertEquals(2L, cs[2].getIp()); + assertEquals(-2L, cs[3].getIp()); + assertEquals(-1L, cs[4].getIp()); + } + + /** + * Tests the output of a callsite toString function + */ + @Test + public void toStringTest() { + CTFCallsite cs = GenerateCS(0x01); + assertEquals("file.java/func name:1", cs.toString()); + } +} diff --git a/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/trace/IOstructgenTest.java b/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/trace/IOstructgenTest.java index 875ce79ca3..370b2af456 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/trace/IOstructgenTest.java +++ b/ctf/org.eclipse.tracecompass.ctf.core.tests/src/org/eclipse/tracecompass/ctf/core/tests/trace/IOstructgenTest.java @@ -243,6 +243,21 @@ public class IOstructgenTest { "};\n " + "\n"; + private static final String callsiteMD = + "callsite {\n" + + " name = \"ust_tests_demo2:loop\";\n" + + " func = \"main\";\n" + " ip = 0x400a29;\n" + + " file = \"demo.c\";\n" + " line = 59;\n" + "};\n" + "\n" + + "callsite {\n" + " name = \"ust_tests_demo3:done\";\n" + + " func = \"main\";\n" + " ip = 0x400a6c;\n" + + " file = \"demo.c\";\n" + " line = 62;\n" + "};\n" + "\n" + + "callsite {\n" + " name = \"ust_tests_demo:done\";\n" + + " func = \"main\";\n" + " ip = 0x400aaf;\n" + + " file = \"demo.c\";\n" + " line = 61;\n" + "};\n" + "\n" + + "callsite {\n" + " name = \"ust_tests_demo:starting\";\n" + + " func = \"main\";\n" + " ip = 0x400af2;\n" + + " file = \"demo.c\";\n" + " line = 55;\n" + "};\n"; + private static final String simpleTSDL = metadataDecs + ctfStart + ctfHeaders + ctfBody; private static final String enumTSDL = metadataDecs + ctfStart + ctfHeaders @@ -253,8 +268,10 @@ public class IOstructgenTest { + ctfHeaders + ctfBody; private static final String contextTSDL = metadataDecs + environmentMD + ctfStart + ctfHeaders + ctfBody + contextMD; + private static final String callsiteTSDL = metadataDecs + ctfStart + ctfHeaders + + ctfBody + callsiteMD; private static final String allDressedTSDL = metadataDecs + environmentMD + clockMD - + ctfStart + ctfHeaders + ctfBody + enumMd; + + ctfStart + ctfHeaders + ctfBody + enumMd + callsiteMD; static final String tempTraceDir = CtfCoreTestPlugin.getTemporaryDirPath() + File.separator + "tempTrace"; @@ -460,6 +477,19 @@ public class IOstructgenTest { assertNotNull(trace); } + /** + * Test with Callsites + * + * @throws CTFException + * something wrong happened + */ + @Test + public void TSDLCallsiteTest() throws CTFException { + createDummyTrace(callsiteTSDL); + trace = new CTFTrace(tempTraceDir); + assertNotNull(trace); + } + /** * Test everything * diff --git a/ctf/org.eclipse.tracecompass.ctf.core/META-INF/MANIFEST.MF b/ctf/org.eclipse.tracecompass.ctf.core/META-INF/MANIFEST.MF index ab833daa7f..f608328af6 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/META-INF/MANIFEST.MF +++ b/ctf/org.eclipse.tracecompass.ctf.core/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Bundle-Vendor: %Bundle-Vendor -Bundle-Version: 2.0.1.qualifier +Bundle-Version: 2.1.0.qualifier Bundle-Localization: plugin Bundle-SymbolicName: org.eclipse.tracecompass.ctf.core;singleton:=true Bundle-Activator: org.eclipse.tracecompass.internal.ctf.core.Activator diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/CTFCallsite.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/CTFCallsite.java new file mode 100644 index 0000000000..dd342ec042 --- /dev/null +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/CTFCallsite.java @@ -0,0 +1,150 @@ +/******************************************************************************* + * Copyright (c) 2012, 2014 Ericsson + * + * 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: + * Matthew Khouzam - Initial API and implementation + * + *******************************************************************************/ + +package org.eclipse.tracecompass.ctf.core.event; + +import java.util.Objects; + +import org.eclipse.jdt.annotation.NonNullByDefault; +import org.eclipse.jdt.annotation.Nullable; + +/** + * Callsite information to help with cdt integration + * + * @author Matthew Khouzam + * @since 2.1 + */ +@NonNullByDefault +public class CTFCallsite { + /** + * The event name + */ + private final String fEventName; + + /** + * the file name of the callsite + */ + private final String fFileName; + + /** + * the instruction pointer + */ + private final long fIp; + + /** + * the function name + */ + private final String fFunctionName; + + /** + * the line number of the callsite + */ + private final long fLineNumber; + + /** + * The callsite constructor + * + * @param en + * The event name + * @param func + * the function name + * @param ip + * the instruction pointer of the callsite + * @param fn + * the file name of the callsite + * @param line + * the line number of the callsite + */ + public CTFCallsite(String en, String func, long ip, String fn, long line) { + fEventName = en; + fFileName = fn; + fFunctionName = func; + fIp = ip; + fLineNumber = line; + } + + /** + * @return the eventName + */ + public String getEventName() { + return fEventName; + } + + /** + * @return the fileName + */ + public String getFileName() { + return fFileName; + } + + /** + * @return the ip + */ + public long getIp() { + return fIp; + } + + /** + * @return the functionName + */ + public String getFunctionName() { + return fFunctionName; + } + + /** + * @return the lineNumber + */ + public long getLineNumber() { + return fLineNumber; + } + + @Override + public int hashCode() { + return Objects.hash(fEventName, fFileName, fIp, fFunctionName, fLineNumber); + } + + @Override + public boolean equals(@Nullable Object obj) { + if (this == obj) { + return true; + } + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + CTFCallsite other = (CTFCallsite) obj; + if (!fEventName.equals(other.fEventName)) { + return false; + } + if (!fFileName.equals(other.fFileName)) { + return false; + } + if (!fFunctionName.equals(other.fFunctionName)) { + return false; + } + if (fIp != other.fIp) { + return false; + } + if (fLineNumber != other.fLineNumber) { + return false; + } + return true; + } + + @Override + public String toString() { + return fFileName + "/" + fFunctionName + ":" + fLineNumber; //$NON-NLS-1$ //$NON-NLS-2$ + } +} diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/IEventDeclaration.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/IEventDeclaration.java index 09aa50fa15..7de7f1b471 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/IEventDeclaration.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/ctf/core/event/IEventDeclaration.java @@ -11,6 +11,8 @@ package org.eclipse.tracecompass.ctf.core.event; +import java.util.Collections; +import java.util.List; import java.util.Set; import org.eclipse.jdt.annotation.NonNull; @@ -103,7 +105,8 @@ public interface IEventDeclaration { * * @return The set of custom attributes */ - @NonNull Set<@NonNull String> getCustomAttributes(); + @NonNull + Set<@NonNull String> getCustomAttributes(); /** * Get the value of a given CTF attribute. @@ -114,4 +117,14 @@ public interface IEventDeclaration { */ String getCustomAttribute(String key); + /** + * Gets the potential static call sites of an event + * + * @return the collection of call sites of an event + * @since 2.1 + */ + default @NonNull List<@NonNull CTFCallsite> getCallsites() { + return Collections.emptyList(); + } + } diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/CTFCallsiteComparator.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/CTFCallsiteComparator.java new file mode 100644 index 0000000000..3c58e790d5 --- /dev/null +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/CTFCallsiteComparator.java @@ -0,0 +1,70 @@ +/******************************************************************************* + * Copyright (c) 2013, 2014 Ericsson + * + * 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: + * Simon Delisle - Initial implementation + *******************************************************************************/ + +package org.eclipse.tracecompass.internal.ctf.core.event; + +import java.util.Comparator; + +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; + +/** + * Comparator for CTFCallsite + * + * @author Simon Delisle + */ +public class CTFCallsiteComparator implements Comparator { + + private static final long MASK32 = 0x00000000ffffffffL; + + /* + * The callsites will be sorted by calling addresses. To do this we take IPs + * (instruction pointers) and compare them. Java only supports signed + * operation and since memory addresses are unsigned, we will convert the + * longs into integers that contain the high and low bytes and compare them. + */ + @Override + public int compare(CTFCallsite o1, CTFCallsite o2) { + /* + * mask32 is 32 zeros followed by 32 ones, when we bitwise and this it + * will return the lower 32 bits + */ + + long other = o2.getIp(); + /* + * To get a high int: we downshift by 32 and bitwise and with the mask + * to get rid of the sign + * + * To get the low int: we bitwise and with the mask. + */ + long otherHigh = (other >> 32) & MASK32; + long otherLow = other & MASK32; + long ownHigh = (o1.getIp() >> 32) & MASK32; + long ownLow = o1.getIp() & MASK32; + /* are the high values different, if so ignore the lower values */ + if (ownHigh > otherHigh) { + return 1; + } + if (ownHigh < otherHigh ) { + return -1; + } + /* the high values are the same, compare the lower values */ + if (ownLow > otherLow) { + return 1; + } + if (ownLow < otherLow) { + return -1; + } + /* the values are identical */ + return 0; + } + +} diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/EventDeclaration.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/EventDeclaration.java index 59940ec57d..a4e18a0e4e 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/EventDeclaration.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/EventDeclaration.java @@ -12,7 +12,11 @@ package org.eclipse.tracecompass.internal.ctf.core.event; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Set; @@ -21,6 +25,7 @@ import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; import org.eclipse.tracecompass.ctf.core.CTFException; import org.eclipse.tracecompass.ctf.core.CTFStrings; +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; import org.eclipse.tracecompass.ctf.core.event.IEventDeclaration; import org.eclipse.tracecompass.ctf.core.event.io.BitBuffer; import org.eclipse.tracecompass.ctf.core.event.scope.ILexicalScope; @@ -36,12 +41,16 @@ import org.eclipse.tracecompass.ctf.core.trace.ICTFPacketDescriptor; import org.eclipse.tracecompass.internal.ctf.core.event.types.composite.EventHeaderDefinition; import org.eclipse.tracecompass.internal.ctf.core.trace.CTFStream; +import com.google.common.collect.ImmutableList; + /** * Representation of one type of event. A bit like "int" or "long" but for trace * events. */ public class EventDeclaration implements IEventDeclaration { + private static final Comparator CS_COMPARATOR = (o1, o2) -> Long.compareUnsigned(o1.getIp(), o2.getIp()); + // ------------------------------------------------------------------------ // Attributes // ------------------------------------------------------------------------ @@ -74,6 +83,8 @@ public class EventDeclaration implements IEventDeclaration { /** Map of this event type's custom CTF attributes */ private final Map fCustomAttributes = new HashMap<>(); + private final @NonNull List<@NonNull CTFCallsite> fCallsites = new ArrayList<>(); + private int fId = (int) UNSET_EVENT_ID; // ------------------------------------------------------------------------ @@ -455,4 +466,20 @@ public class EventDeclaration implements IEventDeclaration { return result; } + /** + * Add static callsites to an event + * + * @param callsites + * the callsites to add + */ + public void addCallsites(List<@NonNull CTFCallsite> callsites) { + fCallsites.addAll(callsites); + Collections.sort(fCallsites, CS_COMPARATOR); + } + + @Override + public List<@NonNull CTFCallsite> getCallsites() { + return ImmutableList.copyOf(fCallsites); + } + } diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/IOStructGen.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/IOStructGen.java index 839bcd55a1..9b6dbdcc64 100644 --- a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/IOStructGen.java +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/IOStructGen.java @@ -15,19 +15,24 @@ package org.eclipse.tracecompass.internal.ctf.core.event.metadata; import java.util.ArrayList; +import java.util.Collection; import java.util.List; +import java.util.stream.Collectors; import org.antlr.runtime.tree.CommonTree; import org.eclipse.jdt.annotation.NonNull; import org.eclipse.tracecompass.common.core.NonNullUtils; +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; import org.eclipse.tracecompass.ctf.core.event.CTFClock; import org.eclipse.tracecompass.ctf.core.event.metadata.DeclarationScope; import org.eclipse.tracecompass.ctf.core.trace.CTFTrace; import org.eclipse.tracecompass.ctf.parser.CTFParser; +import org.eclipse.tracecompass.internal.ctf.core.event.EventDeclaration; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.ClockParser; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.TypeAliasParser; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.TypeSpecifierListParser; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.TypedefParser; +import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.callsite.CallSiteParser; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.environment.EnvironmentParser; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.event.EventParser; import org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.stream.StreamParser; @@ -130,6 +135,7 @@ public class IOStructGen { CommonTree traceNode = null; boolean hasStreams = false; List events = new ArrayList<>(); + Collection callsites = new ArrayList<>(); for (CommonTree child : children) { final int type = child.getType(); switch (type) { @@ -158,6 +164,9 @@ public class IOStructGen { case CTFParser.ENV: fTrace.setEnvironment(EnvironmentParser.INSTANCE.parse(child, null)); break; + case CTFParser.CALLSITE: + callsites.add(CallSiteParser.INSTANCE.parse(child, null)); + break; default: throw childTypeError(child); } @@ -165,17 +174,20 @@ public class IOStructGen { if (traceNode == null) { throw new ParseException("Missing trace block"); //$NON-NLS-1$ } - parseEvents(events, hasStreams); + parseEvents(events, callsites, hasStreams); fHasBeenParsed = true; } - private void parseEvents(List events, boolean hasStreams) throws ParseException { + private void parseEvents(List events, Collection staticCallsites, boolean hasStreams) throws ParseException { if (!hasStreams && !events.isEmpty()) { /* Add an empty stream that will have a null id */ fTrace.addStream(new CTFStream(fTrace)); } for (CommonTree event : events) { - EventParser.INSTANCE.parse(event, new EventParser.Param(fTrace, fRoot)); + EventDeclaration ev = EventParser.INSTANCE.parse(event, new EventParser.Param(fTrace, fRoot)); + List callsites = staticCallsites.stream().filter(cs -> ev.getName().equals(cs.getEventName())).collect(Collectors.toList()); + ev.addCallsites(callsites); + } } @@ -185,6 +197,7 @@ public class IOStructGen { } List children = root.getChildren(); List events = new ArrayList<>(); + Collection callsites = new ArrayList<>(); for (CommonTree child : children) { final int type = child.getType(); switch (type) { @@ -207,11 +220,14 @@ public class IOStructGen { case CTFParser.ENV: fTrace.setEnvironment(EnvironmentParser.INSTANCE.parse(child, null)); break; + case CTFParser.CALLSITE: + callsites.add(CallSiteParser.INSTANCE.parse(child, null)); + break; default: throw childTypeError(child); } } - parseEvents(events, !Iterables.isEmpty(fTrace.getStreams())); + parseEvents(events, callsites, !Iterables.isEmpty(fTrace.getStreams())); } private void parseTrace(CommonTree traceNode) throws ParseException { diff --git a/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/tsdl/callsite/CallSiteParser.java b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/tsdl/callsite/CallSiteParser.java new file mode 100644 index 0000000000..36756e674b --- /dev/null +++ b/ctf/org.eclipse.tracecompass.ctf.core/src/org/eclipse/tracecompass/internal/ctf/core/event/metadata/tsdl/callsite/CallSiteParser.java @@ -0,0 +1,87 @@ +/******************************************************************************* + * Copyright (c) 2016 Ericsson + * + * 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 + *******************************************************************************/ +package org.eclipse.tracecompass.internal.ctf.core.event.metadata.tsdl.callsite; + +import java.util.List; + +import org.antlr.runtime.tree.CommonTree; +import org.eclipse.jdt.annotation.NonNull; +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; +import org.eclipse.tracecompass.internal.ctf.core.event.metadata.ICommonTreeParser; +import org.eclipse.tracecompass.internal.ctf.core.event.metadata.ParseException; + +/** + * Callsite as described in section 7.4 of the TSDL spec in CTF 1.8.2 + * + *
+ *
+ * callsite {
+ *    name = "event_name";
+ *    func = "func_name";
+ *    file = "myfile.c";
+ *    line = 39;
+ *    ip = 0x40096c;
+ * };
+ * 
+ * + * @author Matthew Khouzam + * + */ +public final class CallSiteParser implements ICommonTreeParser { + + /** + * Instance of the parser + */ + public static CallSiteParser INSTANCE = new CallSiteParser(); + + private static final @NonNull String LINE = "line"; //$NON-NLS-1$ + private static final @NonNull String FILE = "file"; //$NON-NLS-1$ + private static final @NonNull String IP = "ip"; //$NON-NLS-1$ + private static final @NonNull String FUNC = "func"; //$NON-NLS-1$ + private static final @NonNull String NAME = "name"; //$NON-NLS-1$ + + private CallSiteParser() { + // do nothing + } + + @Override + public @NonNull CTFCallsite parse(CommonTree tree, ICommonTreeParserParameter param) throws ParseException { + List children = tree.getChildren(); + String name = null; + String funcName = null; + long lineNumber = -1; + long ip = -1; + String fileName = null; + + for (CommonTree child : children) { + String left; + /* this is a regex to find the leading and trailing quotes */ + final String regex = "^\"|\"$"; //$NON-NLS-1$ + /* + * this is to replace the previous quotes with nothing... + * effectively deleting them + */ + final String nullString = ""; //$NON-NLS-1$ + left = child.getChild(0).getChild(0).getChild(0).getText(); + if (left.equals(NAME)) { + name = child.getChild(1).getChild(0).getChild(0).getText().replaceAll(regex, nullString); + } else if (left.equals(FUNC)) { + funcName = child.getChild(1).getChild(0).getChild(0).getText().replaceAll(regex, nullString); + } else if (left.equals(IP)) { + ip = Long.decode(child.getChild(1).getChild(0).getChild(0).getText()); + } else if (left.equals(FILE)) { + fileName = child.getChild(1).getChild(0).getChild(0).getText().replaceAll(regex, nullString); + } else if (left.equals(LINE)) { + lineNumber = Long.parseLong(child.getChild(1).getChild(0).getChild(0).getText()); + } + } + return new CTFCallsite(name, funcName, ip, fileName, lineNumber); + } + +} diff --git a/ctf/org.eclipse.tracecompass.ctf.parser.tests/src/org/eclipse/tracecompass/ctf/parser/tests/CtfLexerTest.java b/ctf/org.eclipse.tracecompass.ctf.parser.tests/src/org/eclipse/tracecompass/ctf/parser/tests/CtfLexerTest.java index e54c5179ae..320a975888 100644 --- a/ctf/org.eclipse.tracecompass.ctf.parser.tests/src/org/eclipse/tracecompass/ctf/parser/tests/CtfLexerTest.java +++ b/ctf/org.eclipse.tracecompass.ctf.parser.tests/src/org/eclipse/tracecompass/ctf/parser/tests/CtfLexerTest.java @@ -112,6 +112,7 @@ public class CtfLexerTest { checkSingle(CTFLexer.IMAGINARYTOK, "_Imaginary"); checkSingle(CTFLexer.ENVTOK, "env"); checkSingle(CTFLexer.CLOCKTOK, "clock"); + checkSingle(CTFLexer.CALLSITETOK, "callsite"); checkSingle(CTFLexer.NANNUMBERTOK, "NaN"); checkSingle(CTFLexer.INFINITYTOK, "+inf"); checkSingle(CTFLexer.NINFINITYTOK, "-inf"); diff --git a/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.g b/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.g index 4ff2fdf3ad..0a3c236e49 100644 --- a/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.g +++ b/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.g @@ -56,6 +56,10 @@ COMPLEXTOK : '_Complex' ; IMAGINARYTOK : '_Imaginary' ; ENVTOK : 'env' ; CLOCKTOK : 'clock' ; +/* + * Callsite tokens (CTF v1.9) + */ +CALLSITETOK : 'callsite' ; /* diff --git a/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.g b/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.g index 093506b7c4..1b399b00e7 100644 --- a/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.g +++ b/ctf/org.eclipse.tracecompass.ctf.parser/src/main/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.g @@ -15,6 +15,7 @@ tokens { TRACE; ENV; CLOCK; + CALLSITE; DECLARATION; SV_DECLARATION; @@ -607,6 +608,7 @@ ctfSpecifierHead | TRACETOK -> TRACE | ENVTOK -> ENV | CLOCKTOK -> CLOCK + | CALLSITETOK -> CALLSITE ; ctfTypeSpecifier diff --git a/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.java b/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.java index 47246c2b6b..b34c2ce4b6 100644 --- a/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.java +++ b/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFLexer.java @@ -1,4 +1,4 @@ -// $ANTLR 3.5.2 org/eclipse/tracecompass/ctf/parser/CTFLexer.g 2015-08-06 19:37:53 +// $ANTLR 3.5.2 org/eclipse/tracecompass/ctf/parser/CTFLexer.g 2015-07-09 14:10:51 /******************************************************************************* * Copyright (c) 2010, 2015 Ericsson, Ecole Polytechnique de Montréal and others @@ -35,78 +35,79 @@ public class CTFLexer extends Lexer { public static final int ASSIGNMENT=6; public static final int BACKSLASH=7; public static final int BOOLTOK=8; - public static final int CHARACTER_LITERAL=9; - public static final int CHARTOK=10; - public static final int CHAR_CONTENT=11; - public static final int CLOCKTOK=12; - public static final int CLOSEBRAC=13; - public static final int COLON=14; - public static final int COMMENT=15; - public static final int COMMENT_CLOSE=16; - public static final int COMMENT_OPEN=17; - public static final int COMPLEXTOK=18; - public static final int CONSTTOK=19; - public static final int DECIMAL_LITERAL=20; - public static final int DIGIT=21; - public static final int DOT=22; - public static final int DOUBLEQUOTE=23; - public static final int DOUBLETOK=24; - public static final int ELIPSES=25; - public static final int ENUMTOK=26; - public static final int ENVTOK=27; - public static final int ESCAPE_SEQUENCE=28; - public static final int EVENTTOK=29; - public static final int FLOATINGPOINTTOK=30; - public static final int FLOATTOK=31; - public static final int GT=32; - public static final int HEXADECIMAL_ESCAPE=33; - public static final int HEX_DIGIT=34; - public static final int HEX_LITERAL=35; - public static final int HEX_PREFIX=36; - public static final int IDENTIFIER=37; - public static final int IMAGINARYTOK=38; - public static final int INFINITYTOK=39; - public static final int INTEGERTOK=40; - public static final int INTEGER_TYPES_SUFFIX=41; - public static final int INTTOK=42; - public static final int LCURL=43; - public static final int LINE_COMMENT=44; - public static final int LONGTOK=45; - public static final int LPAREN=46; - public static final int LT=47; - public static final int NANNUMBERTOK=48; - public static final int NINFINITYTOK=49; - public static final int NONDIGIT=50; - public static final int NONZERO_DIGIT=51; - public static final int OCTAL_ESCAPE=52; - public static final int OCTAL_LITERAL=53; - public static final int OCT_DIGIT=54; - public static final int OCT_PREFIX=55; - public static final int OPENBRAC=56; - public static final int POINTER=57; - public static final int RCURL=58; - public static final int RPAREN=59; - public static final int SEPARATOR=60; - public static final int SHORTTOK=61; - public static final int SIGN=62; - public static final int SIGNEDTOK=63; - public static final int SINGLEQUOTE=64; - public static final int STREAMTOK=65; - public static final int STRINGPREFIX=66; - public static final int STRINGTOK=67; - public static final int STRING_CONTENT=68; - public static final int STRING_LITERAL=69; - public static final int STRUCTTOK=70; - public static final int TERM=71; - public static final int TRACETOK=72; - public static final int TYPEALIASTOK=73; - public static final int TYPEDEFTOK=74; - public static final int TYPE_ASSIGNMENT=75; - public static final int UNICODE_ESCAPE=76; - public static final int UNSIGNEDTOK=77; - public static final int VARIANTTOK=78; - public static final int VOIDTOK=79; - public static final int WS=80; + public static final int CALLSITETOK=9; + public static final int CHARACTER_LITERAL=10; + public static final int CHARTOK=11; + public static final int CHAR_CONTENT=12; + public static final int CLOCKTOK=13; + public static final int CLOSEBRAC=14; + public static final int COLON=15; + public static final int COMMENT=16; + public static final int COMMENT_CLOSE=17; + public static final int COMMENT_OPEN=18; + public static final int COMPLEXTOK=19; + public static final int CONSTTOK=20; + public static final int DECIMAL_LITERAL=21; + public static final int DIGIT=22; + public static final int DOT=23; + public static final int DOUBLEQUOTE=24; + public static final int DOUBLETOK=25; + public static final int ELIPSES=26; + public static final int ENUMTOK=27; + public static final int ENVTOK=28; + public static final int ESCAPE_SEQUENCE=29; + public static final int EVENTTOK=30; + public static final int FLOATINGPOINTTOK=31; + public static final int FLOATTOK=32; + public static final int GT=33; + public static final int HEXADECIMAL_ESCAPE=34; + public static final int HEX_DIGIT=35; + public static final int HEX_LITERAL=36; + public static final int HEX_PREFIX=37; + public static final int IDENTIFIER=38; + public static final int IMAGINARYTOK=39; + public static final int INFINITYTOK=40; + public static final int INTEGERTOK=41; + public static final int INTEGER_TYPES_SUFFIX=42; + public static final int INTTOK=43; + public static final int LCURL=44; + public static final int LINE_COMMENT=45; + public static final int LONGTOK=46; + public static final int LPAREN=47; + public static final int LT=48; + public static final int NANNUMBERTOK=49; + public static final int NINFINITYTOK=50; + public static final int NONDIGIT=51; + public static final int NONZERO_DIGIT=52; + public static final int OCTAL_ESCAPE=53; + public static final int OCTAL_LITERAL=54; + public static final int OCT_DIGIT=55; + public static final int OCT_PREFIX=56; + public static final int OPENBRAC=57; + public static final int POINTER=58; + public static final int RCURL=59; + public static final int RPAREN=60; + public static final int SEPARATOR=61; + public static final int SHORTTOK=62; + public static final int SIGN=63; + public static final int SIGNEDTOK=64; + public static final int SINGLEQUOTE=65; + public static final int STREAMTOK=66; + public static final int STRINGPREFIX=67; + public static final int STRINGTOK=68; + public static final int STRING_CONTENT=69; + public static final int STRING_LITERAL=70; + public static final int STRUCTTOK=71; + public static final int TERM=72; + public static final int TRACETOK=73; + public static final int TYPEALIASTOK=74; + public static final int TYPEDEFTOK=75; + public static final int TYPE_ASSIGNMENT=76; + public static final int UNICODE_ESCAPE=77; + public static final int UNSIGNEDTOK=78; + public static final int VARIANTTOK=79; + public static final int VOIDTOK=80; + public static final int WS=81; // delegates // delegators @@ -690,13 +691,34 @@ public class CTFLexer extends Lexer { } // $ANTLR end "CLOCKTOK" + // $ANTLR start "CALLSITETOK" + public final void mCALLSITETOK() throws RecognitionException { + try { + int _type = CALLSITETOK; + int _channel = DEFAULT_TOKEN_CHANNEL; + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:62:18: ( 'callsite' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:62:20: 'callsite' + { + match("callsite"); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + // do for sure before leaving + } + } + // $ANTLR end "CALLSITETOK" + // $ANTLR start "NANNUMBERTOK" public final void mNANNUMBERTOK() throws RecognitionException { try { int _type = NANNUMBERTOK; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:65:15: ( 'NaN' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:65:17: 'NaN' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:69:15: ( 'NaN' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:69:17: 'NaN' { match("NaN"); @@ -716,8 +738,8 @@ public class CTFLexer extends Lexer { try { int _type = INFINITYTOK; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:66:15: ( '+inf' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:66:17: '+inf' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:70:15: ( '+inf' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:70:17: '+inf' { match("+inf"); @@ -737,8 +759,8 @@ public class CTFLexer extends Lexer { try { int _type = NINFINITYTOK; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:67:15: ( '-inf' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:67:17: '-inf' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:71:15: ( '-inf' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:71:17: '-inf' { match("-inf"); @@ -758,8 +780,8 @@ public class CTFLexer extends Lexer { try { int _type = SEPARATOR; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:72:20: ( ',' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:72:22: ',' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:76:20: ( ',' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:76:22: ',' { match(','); } @@ -778,8 +800,8 @@ public class CTFLexer extends Lexer { try { int _type = COLON; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:73:20: ( ':' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:73:22: ':' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:77:20: ( ':' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:77:22: ':' { match(':'); } @@ -798,8 +820,8 @@ public class CTFLexer extends Lexer { try { int _type = ELIPSES; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:74:20: ( '...' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:74:22: '...' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:78:20: ( '...' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:78:22: '...' { match("..."); @@ -819,8 +841,8 @@ public class CTFLexer extends Lexer { try { int _type = ASSIGNMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:75:20: ( '=' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:75:22: '=' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:79:20: ( '=' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:79:22: '=' { match('='); } @@ -839,8 +861,8 @@ public class CTFLexer extends Lexer { try { int _type = TYPE_ASSIGNMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:76:20: ( ':=' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:76:22: ':=' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:80:20: ( ':=' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:80:22: ':=' { match(":="); @@ -860,8 +882,8 @@ public class CTFLexer extends Lexer { try { int _type = LT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:77:20: ( '<' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:77:22: '<' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:81:20: ( '<' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:81:22: '<' { match('<'); } @@ -880,8 +902,8 @@ public class CTFLexer extends Lexer { try { int _type = GT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:78:20: ( '>' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:78:22: '>' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:82:20: ( '>' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:82:22: '>' { match('>'); } @@ -900,8 +922,8 @@ public class CTFLexer extends Lexer { try { int _type = OPENBRAC; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:79:20: ( '[' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:79:22: '[' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:83:20: ( '[' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:83:22: '[' { match('['); } @@ -920,8 +942,8 @@ public class CTFLexer extends Lexer { try { int _type = CLOSEBRAC; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:80:20: ( ']' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:80:22: ']' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:84:20: ( ']' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:84:22: ']' { match(']'); } @@ -940,8 +962,8 @@ public class CTFLexer extends Lexer { try { int _type = LPAREN; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:81:20: ( '(' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:81:22: '(' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:85:20: ( '(' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:85:22: '(' { match('('); } @@ -960,8 +982,8 @@ public class CTFLexer extends Lexer { try { int _type = RPAREN; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:82:20: ( ')' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:82:22: ')' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:86:20: ( ')' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:86:22: ')' { match(')'); } @@ -980,8 +1002,8 @@ public class CTFLexer extends Lexer { try { int _type = LCURL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:83:20: ( '{' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:83:22: '{' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:87:20: ( '{' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:87:22: '{' { match('{'); } @@ -1000,8 +1022,8 @@ public class CTFLexer extends Lexer { try { int _type = RCURL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:84:20: ( '}' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:84:22: '}' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:88:20: ( '}' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:88:22: '}' { match('}'); } @@ -1020,8 +1042,8 @@ public class CTFLexer extends Lexer { try { int _type = TERM; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:85:20: ( ';' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:85:22: ';' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:89:20: ( ';' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:89:22: ';' { match(';'); } @@ -1040,8 +1062,8 @@ public class CTFLexer extends Lexer { try { int _type = POINTER; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:86:20: ( '*' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:86:22: '*' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:90:20: ( '*' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:90:22: '*' { match('*'); } @@ -1060,7 +1082,7 @@ public class CTFLexer extends Lexer { try { int _type = SIGN; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:87:20: ( '+' | '-' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:91:20: ( '+' | '-' ) // org/eclipse/tracecompass/ctf/parser/CTFLexer.g: { if ( input.LA(1)=='+'||input.LA(1)=='-' ) { @@ -1087,8 +1109,8 @@ public class CTFLexer extends Lexer { try { int _type = ARROW; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:88:20: ( '->' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:88:22: '->' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:92:20: ( '->' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:92:22: '->' { match("->"); @@ -1108,8 +1130,8 @@ public class CTFLexer extends Lexer { try { int _type = DOT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:89:20: ( '.' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:89:22: '.' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:93:20: ( '.' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:93:22: '.' { match('.'); } @@ -1126,8 +1148,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "BACKSLASH" public final void mBACKSLASH() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:90:20: ( '\\\\' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:90:22: '\\\\' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:94:20: ( '\\\\' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:94:22: '\\\\' { match('\\'); } @@ -1142,7 +1164,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "DIGIT" public final void mDIGIT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:93:16: ( '0' .. '9' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:97:16: ( '0' .. '9' ) // org/eclipse/tracecompass/ctf/parser/CTFLexer.g: { if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) { @@ -1165,7 +1187,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "OCT_DIGIT" public final void mOCT_DIGIT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:94:20: ( '0' .. '7' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:98:20: ( '0' .. '7' ) // org/eclipse/tracecompass/ctf/parser/CTFLexer.g: { if ( (input.LA(1) >= '0' && input.LA(1) <= '7') ) { @@ -1188,8 +1210,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "OCT_PREFIX" public final void mOCT_PREFIX() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:95:21: ( '0' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:95:23: '0' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:99:21: ( '0' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:99:23: '0' { match('0'); } @@ -1204,7 +1226,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "NONZERO_DIGIT" public final void mNONZERO_DIGIT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:96:24: ( '1' .. '9' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:100:24: ( '1' .. '9' ) // org/eclipse/tracecompass/ctf/parser/CTFLexer.g: { if ( (input.LA(1) >= '1' && input.LA(1) <= '9') ) { @@ -1227,7 +1249,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "HEX_DIGIT" public final void mHEX_DIGIT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:97:20: ( DIGIT | ( 'a' .. 'f' ) | ( 'A' .. 'F' ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:101:20: ( DIGIT | ( 'a' .. 'f' ) | ( 'A' .. 'F' ) ) // org/eclipse/tracecompass/ctf/parser/CTFLexer.g: { if ( (input.LA(1) >= '0' && input.LA(1) <= '9')||(input.LA(1) >= 'A' && input.LA(1) <= 'F')||(input.LA(1) >= 'a' && input.LA(1) <= 'f') ) { @@ -1250,8 +1272,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "HEX_PREFIX" public final void mHEX_PREFIX() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:98:21: ( '0' ( 'x' | 'X' ) ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:98:23: '0' ( 'x' | 'X' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:102:21: ( '0' ( 'x' | 'X' ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:102:23: '0' ( 'x' | 'X' ) { match('0'); if ( input.LA(1)=='X'||input.LA(1)=='x' ) { @@ -1276,12 +1298,12 @@ public class CTFLexer extends Lexer { try { int _type = OCTAL_LITERAL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:103:15: ( OCT_PREFIX ( OCT_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:103:17: OCT_PREFIX ( OCT_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:107:15: ( OCT_PREFIX ( OCT_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:107:17: OCT_PREFIX ( OCT_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? { mOCT_PREFIX(); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:103:28: ( OCT_DIGIT )+ + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:107:28: ( OCT_DIGIT )+ int cnt1=0; loop1: while (true) { @@ -1314,7 +1336,7 @@ public class CTFLexer extends Lexer { cnt1++; } - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:103:41: ( INTEGER_TYPES_SUFFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:107:41: ( INTEGER_TYPES_SUFFIX )? int alt2=2; int LA2_0 = input.LA(1); if ( (LA2_0=='L'||LA2_0=='U'||LA2_0=='l'||LA2_0=='u') ) { @@ -1322,7 +1344,7 @@ public class CTFLexer extends Lexer { } switch (alt2) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:103:41: INTEGER_TYPES_SUFFIX + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:107:41: INTEGER_TYPES_SUFFIX { mINTEGER_TYPES_SUFFIX(); @@ -1347,10 +1369,10 @@ public class CTFLexer extends Lexer { try { int _type = DECIMAL_LITERAL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:104:17: ( ( DIGIT )+ ( INTEGER_TYPES_SUFFIX )? ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:104:19: ( DIGIT )+ ( INTEGER_TYPES_SUFFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:108:17: ( ( DIGIT )+ ( INTEGER_TYPES_SUFFIX )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:108:19: ( DIGIT )+ ( INTEGER_TYPES_SUFFIX )? { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:104:19: ( DIGIT )+ + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:108:19: ( DIGIT )+ int cnt3=0; loop3: while (true) { @@ -1383,7 +1405,7 @@ public class CTFLexer extends Lexer { cnt3++; } - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:104:26: ( INTEGER_TYPES_SUFFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:108:26: ( INTEGER_TYPES_SUFFIX )? int alt4=2; int LA4_0 = input.LA(1); if ( (LA4_0=='L'||LA4_0=='U'||LA4_0=='l'||LA4_0=='u') ) { @@ -1391,7 +1413,7 @@ public class CTFLexer extends Lexer { } switch (alt4) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:104:26: INTEGER_TYPES_SUFFIX + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:108:26: INTEGER_TYPES_SUFFIX { mINTEGER_TYPES_SUFFIX(); @@ -1416,12 +1438,12 @@ public class CTFLexer extends Lexer { try { int _type = HEX_LITERAL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:105:13: ( HEX_PREFIX ( HEX_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:105:15: HEX_PREFIX ( HEX_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:109:13: ( HEX_PREFIX ( HEX_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:109:15: HEX_PREFIX ( HEX_DIGIT )+ ( INTEGER_TYPES_SUFFIX )? { mHEX_PREFIX(); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:105:26: ( HEX_DIGIT )+ + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:109:26: ( HEX_DIGIT )+ int cnt5=0; loop5: while (true) { @@ -1454,7 +1476,7 @@ public class CTFLexer extends Lexer { cnt5++; } - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:105:37: ( INTEGER_TYPES_SUFFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:109:37: ( INTEGER_TYPES_SUFFIX )? int alt6=2; int LA6_0 = input.LA(1); if ( (LA6_0=='L'||LA6_0=='U'||LA6_0=='l'||LA6_0=='u') ) { @@ -1462,7 +1484,7 @@ public class CTFLexer extends Lexer { } switch (alt6) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:105:37: INTEGER_TYPES_SUFFIX + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:109:37: INTEGER_TYPES_SUFFIX { mINTEGER_TYPES_SUFFIX(); @@ -1485,7 +1507,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "INTEGER_TYPES_SUFFIX" public final void mINTEGER_TYPES_SUFFIX() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:3: ( ( 'l' ( 'l' )? | 'L' ( 'L' )? ) | ( 'u' | 'U' ) | ( 'u' | 'U' ) ( 'l' ( 'l' )? | 'L' ( 'L' )? ) | ( 'l' ( 'l' )? | 'L' ( 'L' )? ) ( 'u' | 'U' ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:3: ( ( 'l' ( 'l' )? | 'L' ( 'L' )? ) | ( 'u' | 'U' ) | ( 'u' | 'U' ) ( 'l' ( 'l' )? | 'L' ( 'L' )? ) | ( 'l' ( 'l' )? | 'L' ( 'L' )? ) ( 'u' | 'U' ) ) int alt16=4; switch ( input.LA(1) ) { case 'l': @@ -1563,9 +1585,9 @@ public class CTFLexer extends Lexer { } switch (alt16) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) int alt9=2; int LA9_0 = input.LA(1); if ( (LA9_0=='l') ) { @@ -1583,10 +1605,10 @@ public class CTFLexer extends Lexer { switch (alt9) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:6: 'l' ( 'l' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:6: 'l' ( 'l' )? { match('l'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:10: ( 'l' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:10: ( 'l' )? int alt7=2; int LA7_0 = input.LA(1); if ( (LA7_0=='l') ) { @@ -1594,7 +1616,7 @@ public class CTFLexer extends Lexer { } switch (alt7) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:11: 'l' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:11: 'l' { match('l'); } @@ -1605,10 +1627,10 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:19: 'L' ( 'L' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:19: 'L' ( 'L' )? { match('L'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:23: ( 'L' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:23: ( 'L' )? int alt8=2; int LA8_0 = input.LA(1); if ( (LA8_0=='L') ) { @@ -1616,7 +1638,7 @@ public class CTFLexer extends Lexer { } switch (alt8) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:113:24: 'L' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:117:24: 'L' { match('L'); } @@ -1632,7 +1654,7 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:114:5: ( 'u' | 'U' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:118:5: ( 'u' | 'U' ) { if ( input.LA(1)=='U'||input.LA(1)=='u' ) { input.consume(); @@ -1645,7 +1667,7 @@ public class CTFLexer extends Lexer { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:5: ( 'u' | 'U' ) ( 'l' ( 'l' )? | 'L' ( 'L' )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:5: ( 'u' | 'U' ) ( 'l' ( 'l' )? | 'L' ( 'L' )? ) { if ( input.LA(1)=='U'||input.LA(1)=='u' ) { input.consume(); @@ -1655,7 +1677,7 @@ public class CTFLexer extends Lexer { recover(mse); throw mse; } - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:17: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:17: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) int alt12=2; int LA12_0 = input.LA(1); if ( (LA12_0=='l') ) { @@ -1673,10 +1695,10 @@ public class CTFLexer extends Lexer { switch (alt12) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:18: 'l' ( 'l' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:18: 'l' ( 'l' )? { match('l'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:22: ( 'l' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:22: ( 'l' )? int alt10=2; int LA10_0 = input.LA(1); if ( (LA10_0=='l') ) { @@ -1684,7 +1706,7 @@ public class CTFLexer extends Lexer { } switch (alt10) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:23: 'l' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:23: 'l' { match('l'); } @@ -1695,10 +1717,10 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:31: 'L' ( 'L' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:31: 'L' ( 'L' )? { match('L'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:35: ( 'L' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:35: ( 'L' )? int alt11=2; int LA11_0 = input.LA(1); if ( (LA11_0=='L') ) { @@ -1706,7 +1728,7 @@ public class CTFLexer extends Lexer { } switch (alt11) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:115:36: 'L' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:119:36: 'L' { match('L'); } @@ -1722,9 +1744,9 @@ public class CTFLexer extends Lexer { } break; case 4 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) ( 'u' | 'U' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) ( 'u' | 'U' ) { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:5: ( 'l' ( 'l' )? | 'L' ( 'L' )? ) int alt15=2; int LA15_0 = input.LA(1); if ( (LA15_0=='l') ) { @@ -1742,10 +1764,10 @@ public class CTFLexer extends Lexer { switch (alt15) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:6: 'l' ( 'l' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:6: 'l' ( 'l' )? { match('l'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:10: ( 'l' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:10: ( 'l' )? int alt13=2; int LA13_0 = input.LA(1); if ( (LA13_0=='l') ) { @@ -1753,7 +1775,7 @@ public class CTFLexer extends Lexer { } switch (alt13) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:11: 'l' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:11: 'l' { match('l'); } @@ -1764,10 +1786,10 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:19: 'L' ( 'L' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:19: 'L' ( 'L' )? { match('L'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:23: ( 'L' )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:23: ( 'L' )? int alt14=2; int LA14_0 = input.LA(1); if ( (LA14_0=='L') ) { @@ -1775,7 +1797,7 @@ public class CTFLexer extends Lexer { } switch (alt14) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:116:24: 'L' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:120:24: 'L' { match('L'); } @@ -1810,7 +1832,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "ESCAPE_SEQUENCE" public final void mESCAPE_SEQUENCE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:123:3: ( BACKSLASH ( '\\'' | '\"' | '?' | BACKSLASH | 'a' | 'b' | 'f' | 'n' | 'r' | 't' | 'v' ) | OCTAL_ESCAPE | UNICODE_ESCAPE | HEXADECIMAL_ESCAPE ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:127:3: ( BACKSLASH ( '\\'' | '\"' | '?' | BACKSLASH | 'a' | 'b' | 'f' | 'n' | 'r' | 't' | 'v' ) | OCTAL_ESCAPE | UNICODE_ESCAPE | HEXADECIMAL_ESCAPE ) int alt17=4; int LA17_0 = input.LA(1); if ( (LA17_0=='\\') ) { @@ -1874,7 +1896,7 @@ public class CTFLexer extends Lexer { switch (alt17) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:123:5: BACKSLASH ( '\\'' | '\"' | '?' | BACKSLASH | 'a' | 'b' | 'f' | 'n' | 'r' | 't' | 'v' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:127:5: BACKSLASH ( '\\'' | '\"' | '?' | BACKSLASH | 'a' | 'b' | 'f' | 'n' | 'r' | 't' | 'v' ) { mBACKSLASH(); @@ -1889,21 +1911,21 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:124:5: OCTAL_ESCAPE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:128:5: OCTAL_ESCAPE { mOCTAL_ESCAPE(); } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:125:5: UNICODE_ESCAPE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:129:5: UNICODE_ESCAPE { mUNICODE_ESCAPE(); } break; case 4 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:126:5: HEXADECIMAL_ESCAPE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:130:5: HEXADECIMAL_ESCAPE { mHEXADECIMAL_ESCAPE(); @@ -1921,7 +1943,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "OCTAL_ESCAPE" public final void mOCTAL_ESCAPE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:133:3: ( BACKSLASH ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | BACKSLASH ( '0' .. '7' ) ( '0' .. '7' ) | BACKSLASH ( '0' .. '7' ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:137:3: ( BACKSLASH ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | BACKSLASH ( '0' .. '7' ) ( '0' .. '7' ) | BACKSLASH ( '0' .. '7' ) ) int alt18=3; int LA18_0 = input.LA(1); if ( (LA18_0=='\\') ) { @@ -1979,7 +2001,7 @@ public class CTFLexer extends Lexer { switch (alt18) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:133:5: BACKSLASH ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:137:5: BACKSLASH ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) { mBACKSLASH(); @@ -2010,7 +2032,7 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:134:5: BACKSLASH ( '0' .. '7' ) ( '0' .. '7' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:138:5: BACKSLASH ( '0' .. '7' ) ( '0' .. '7' ) { mBACKSLASH(); @@ -2033,7 +2055,7 @@ public class CTFLexer extends Lexer { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:135:5: BACKSLASH ( '0' .. '7' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:139:5: BACKSLASH ( '0' .. '7' ) { mBACKSLASH(); @@ -2059,13 +2081,13 @@ public class CTFLexer extends Lexer { // $ANTLR start "HEXADECIMAL_ESCAPE" public final void mHEXADECIMAL_ESCAPE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:141:29: ( BACKSLASH 'x' ( HEX_DIGIT )+ ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:141:31: BACKSLASH 'x' ( HEX_DIGIT )+ + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:145:29: ( BACKSLASH 'x' ( HEX_DIGIT )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:145:31: BACKSLASH 'x' ( HEX_DIGIT )+ { mBACKSLASH(); match('x'); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:141:45: ( HEX_DIGIT )+ + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:145:45: ( HEX_DIGIT )+ int cnt19=0; loop19: while (true) { @@ -2110,7 +2132,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "UNICODE_ESCAPE" public final void mUNICODE_ESCAPE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:147:3: ( BACKSLASH 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT | BACKSLASH 'U' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:151:3: ( BACKSLASH 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT | BACKSLASH 'U' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT ) int alt20=2; int LA20_0 = input.LA(1); if ( (LA20_0=='\\') ) { @@ -2144,7 +2166,7 @@ public class CTFLexer extends Lexer { switch (alt20) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:147:5: BACKSLASH 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:151:5: BACKSLASH 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT { mBACKSLASH(); @@ -2160,7 +2182,7 @@ public class CTFLexer extends Lexer { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:148:5: BACKSLASH 'U' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:152:5: BACKSLASH 'U' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT { mBACKSLASH(); @@ -2195,8 +2217,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "STRINGPREFIX" public final void mSTRINGPREFIX() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:153:23: ( 'L' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:153:25: 'L' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:157:23: ( 'L' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:157:25: 'L' { match('L'); } @@ -2213,10 +2235,10 @@ public class CTFLexer extends Lexer { try { int _type = CHARACTER_LITERAL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:158:19: ( ( STRINGPREFIX )? SINGLEQUOTE ( CHAR_CONTENT )+ SINGLEQUOTE ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:158:21: ( STRINGPREFIX )? SINGLEQUOTE ( CHAR_CONTENT )+ SINGLEQUOTE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:162:19: ( ( STRINGPREFIX )? SINGLEQUOTE ( CHAR_CONTENT )+ SINGLEQUOTE ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:162:21: ( STRINGPREFIX )? SINGLEQUOTE ( CHAR_CONTENT )+ SINGLEQUOTE { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:158:21: ( STRINGPREFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:162:21: ( STRINGPREFIX )? int alt21=2; int LA21_0 = input.LA(1); if ( (LA21_0=='L') ) { @@ -2241,7 +2263,7 @@ public class CTFLexer extends Lexer { mSINGLEQUOTE(); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:158:47: ( CHAR_CONTENT )+ + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:162:47: ( CHAR_CONTENT )+ int cnt22=0; loop22: while (true) { @@ -2253,7 +2275,7 @@ public class CTFLexer extends Lexer { switch (alt22) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:158:47: CHAR_CONTENT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:162:47: CHAR_CONTENT { mCHAR_CONTENT(); @@ -2284,10 +2306,10 @@ public class CTFLexer extends Lexer { // $ANTLR start "CHAR_CONTENT" public final void mCHAR_CONTENT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:159:23: ( ( ESCAPE_SEQUENCE |~ ( BACKSLASH | SINGLEQUOTE ) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:159:25: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | SINGLEQUOTE ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:163:23: ( ( ESCAPE_SEQUENCE |~ ( BACKSLASH | SINGLEQUOTE ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:163:25: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | SINGLEQUOTE ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:159:25: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | SINGLEQUOTE ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:163:25: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | SINGLEQUOTE ) ) int alt23=2; int LA23_0 = input.LA(1); if ( (LA23_0=='\\') ) { @@ -2305,14 +2327,14 @@ public class CTFLexer extends Lexer { switch (alt23) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:159:26: ESCAPE_SEQUENCE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:163:26: ESCAPE_SEQUENCE { mESCAPE_SEQUENCE(); } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:159:44: ~ ( BACKSLASH | SINGLEQUOTE ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:163:44: ~ ( BACKSLASH | SINGLEQUOTE ) { if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '&')||(input.LA(1) >= '(' && input.LA(1) <= '[')||(input.LA(1) >= ']' && input.LA(1) <= '\uFFFF') ) { input.consume(); @@ -2339,8 +2361,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "SINGLEQUOTE" public final void mSINGLEQUOTE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:160:22: ( '\\'' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:160:24: '\\'' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:164:22: ( '\\'' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:164:24: '\\'' { match('\''); } @@ -2357,10 +2379,10 @@ public class CTFLexer extends Lexer { try { int _type = STRING_LITERAL; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:165:16: ( ( STRINGPREFIX )? DOUBLEQUOTE ( STRING_CONTENT )* DOUBLEQUOTE ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:165:18: ( STRINGPREFIX )? DOUBLEQUOTE ( STRING_CONTENT )* DOUBLEQUOTE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:169:16: ( ( STRINGPREFIX )? DOUBLEQUOTE ( STRING_CONTENT )* DOUBLEQUOTE ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:169:18: ( STRINGPREFIX )? DOUBLEQUOTE ( STRING_CONTENT )* DOUBLEQUOTE { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:165:18: ( STRINGPREFIX )? + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:169:18: ( STRINGPREFIX )? int alt24=2; int LA24_0 = input.LA(1); if ( (LA24_0=='L') ) { @@ -2385,7 +2407,7 @@ public class CTFLexer extends Lexer { mDOUBLEQUOTE(); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:165:44: ( STRING_CONTENT )* + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:169:44: ( STRING_CONTENT )* loop25: while (true) { int alt25=2; @@ -2396,7 +2418,7 @@ public class CTFLexer extends Lexer { switch (alt25) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:165:44: STRING_CONTENT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:169:44: STRING_CONTENT { mSTRING_CONTENT(); @@ -2424,10 +2446,10 @@ public class CTFLexer extends Lexer { // $ANTLR start "STRING_CONTENT" public final void mSTRING_CONTENT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:166:25: ( ( ESCAPE_SEQUENCE |~ ( BACKSLASH | DOUBLEQUOTE ) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:166:27: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | DOUBLEQUOTE ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:170:25: ( ( ESCAPE_SEQUENCE |~ ( BACKSLASH | DOUBLEQUOTE ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:170:27: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | DOUBLEQUOTE ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:166:27: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | DOUBLEQUOTE ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:170:27: ( ESCAPE_SEQUENCE |~ ( BACKSLASH | DOUBLEQUOTE ) ) int alt26=2; int LA26_0 = input.LA(1); if ( (LA26_0=='\\') ) { @@ -2445,14 +2467,14 @@ public class CTFLexer extends Lexer { switch (alt26) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:166:28: ESCAPE_SEQUENCE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:170:28: ESCAPE_SEQUENCE { mESCAPE_SEQUENCE(); } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:166:46: ~ ( BACKSLASH | DOUBLEQUOTE ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:170:46: ~ ( BACKSLASH | DOUBLEQUOTE ) { if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '!')||(input.LA(1) >= '#' && input.LA(1) <= '[')||(input.LA(1) >= ']' && input.LA(1) <= '\uFFFF') ) { input.consume(); @@ -2479,8 +2501,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "DOUBLEQUOTE" public final void mDOUBLEQUOTE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:167:22: ( '\"' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:167:24: '\"' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:171:22: ( '\"' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:171:24: '\"' { match('\"'); } @@ -2497,8 +2519,8 @@ public class CTFLexer extends Lexer { try { int _type = WS; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:172:4: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:172:6: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:176:4: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:176:6: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) { if ( (input.LA(1) >= '\t' && input.LA(1) <= '\n')||(input.LA(1) >= '\f' && input.LA(1) <= '\r')||input.LA(1)==' ' ) { input.consume(); @@ -2525,12 +2547,12 @@ public class CTFLexer extends Lexer { try { int _type = COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:179:9: ( COMMENT_OPEN ( . )* COMMENT_CLOSE ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:179:11: COMMENT_OPEN ( . )* COMMENT_CLOSE + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:183:9: ( COMMENT_OPEN ( . )* COMMENT_CLOSE ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:183:11: COMMENT_OPEN ( . )* COMMENT_CLOSE { mCOMMENT_OPEN(); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:179:24: ( . )* + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:183:24: ( . )* loop27: while (true) { int alt27=2; @@ -2551,7 +2573,7 @@ public class CTFLexer extends Lexer { switch (alt27) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:179:24: . + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:183:24: . { matchAny(); } @@ -2579,8 +2601,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "COMMENT_OPEN" public final void mCOMMENT_OPEN() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:180:23: ( '/*' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:180:25: '/*' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:184:23: ( '/*' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:184:25: '/*' { match("/*"); @@ -2596,8 +2618,8 @@ public class CTFLexer extends Lexer { // $ANTLR start "COMMENT_CLOSE" public final void mCOMMENT_CLOSE() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:181:24: ( '*/' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:181:26: '*/' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:185:24: ( '*/' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:185:26: '*/' { match("*/"); @@ -2615,12 +2637,12 @@ public class CTFLexer extends Lexer { try { int _type = LINE_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:186:14: ( '//' (~ ( '\\n' ) )* '\\n' ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:186:16: '//' (~ ( '\\n' ) )* '\\n' + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:190:14: ( '//' (~ ( '\\n' ) )* '\\n' ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:190:16: '//' (~ ( '\\n' ) )* '\\n' { match("//"); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:186:21: (~ ( '\\n' ) )* + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:190:21: (~ ( '\\n' ) )* loop28: while (true) { int alt28=2; @@ -2667,12 +2689,12 @@ public class CTFLexer extends Lexer { try { int _type = IDENTIFIER; int _channel = DEFAULT_TOKEN_CHANNEL; - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:191:12: ( NONDIGIT ( NONDIGIT | DIGIT )* ) - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:191:14: NONDIGIT ( NONDIGIT | DIGIT )* + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:195:12: ( NONDIGIT ( NONDIGIT | DIGIT )* ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:195:14: NONDIGIT ( NONDIGIT | DIGIT )* { mNONDIGIT(); - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:191:23: ( NONDIGIT | DIGIT )* + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:195:23: ( NONDIGIT | DIGIT )* loop29: while (true) { int alt29=2; @@ -2715,7 +2737,7 @@ public class CTFLexer extends Lexer { // $ANTLR start "NONDIGIT" public final void mNONDIGIT() throws RecognitionException { try { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:192:19: ( ( '_' ) | ( 'A' .. 'Z' ) | ( 'a' .. 'z' ) ) + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:196:19: ( ( '_' ) | ( 'A' .. 'Z' ) | ( 'a' .. 'z' ) ) // org/eclipse/tracecompass/ctf/parser/CTFLexer.g: { if ( (input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) { @@ -2737,8 +2759,8 @@ public class CTFLexer extends Lexer { @Override public void mTokens() throws RecognitionException { - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:8: ( ALIGNTOK | CONSTTOK | CHARTOK | DOUBLETOK | ENUMTOK | EVENTTOK | FLOATINGPOINTTOK | FLOATTOK | INTEGERTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | STREAMTOK | STRINGTOK | STRUCTTOK | TRACETOK | TYPEALIASTOK | TYPEDEFTOK | UNSIGNEDTOK | VARIANTTOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | ENVTOK | CLOCKTOK | NANNUMBERTOK | INFINITYTOK | NINFINITYTOK | SEPARATOR | COLON | ELIPSES | ASSIGNMENT | TYPE_ASSIGNMENT | LT | GT | OPENBRAC | CLOSEBRAC | LPAREN | RPAREN | LCURL | RCURL | TERM | POINTER | SIGN | ARROW | DOT | OCTAL_LITERAL | DECIMAL_LITERAL | HEX_LITERAL | CHARACTER_LITERAL | STRING_LITERAL | WS | COMMENT | LINE_COMMENT | IDENTIFIER ) - int alt30=57; + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:8: ( ALIGNTOK | CONSTTOK | CHARTOK | DOUBLETOK | ENUMTOK | EVENTTOK | FLOATINGPOINTTOK | FLOATTOK | INTEGERTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | STREAMTOK | STRINGTOK | STRUCTTOK | TRACETOK | TYPEALIASTOK | TYPEDEFTOK | UNSIGNEDTOK | VARIANTTOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | ENVTOK | CLOCKTOK | CALLSITETOK | NANNUMBERTOK | INFINITYTOK | NINFINITYTOK | SEPARATOR | COLON | ELIPSES | ASSIGNMENT | TYPE_ASSIGNMENT | LT | GT | OPENBRAC | CLOSEBRAC | LPAREN | RPAREN | LCURL | RCURL | TERM | POINTER | SIGN | ARROW | DOT | OCTAL_LITERAL | DECIMAL_LITERAL | HEX_LITERAL | CHARACTER_LITERAL | STRING_LITERAL | WS | COMMENT | LINE_COMMENT | IDENTIFIER ) + int alt30=58; alt30 = dfa30.predict(input); switch (alt30) { case 1 : @@ -2931,210 +2953,217 @@ public class CTFLexer extends Lexer { } break; case 28 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:276: NANNUMBERTOK + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:276: CALLSITETOK { - mNANNUMBERTOK(); + mCALLSITETOK(); } break; case 29 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:289: INFINITYTOK + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:288: NANNUMBERTOK { - mINFINITYTOK(); + mNANNUMBERTOK(); } break; case 30 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:301: NINFINITYTOK + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:301: INFINITYTOK { - mNINFINITYTOK(); + mINFINITYTOK(); } break; case 31 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:314: SEPARATOR + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:313: NINFINITYTOK { - mSEPARATOR(); + mNINFINITYTOK(); } break; case 32 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:324: COLON + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:326: SEPARATOR { - mCOLON(); + mSEPARATOR(); } break; case 33 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:330: ELIPSES + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:336: COLON { - mELIPSES(); + mCOLON(); } break; case 34 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:338: ASSIGNMENT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:342: ELIPSES { - mASSIGNMENT(); + mELIPSES(); } break; case 35 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:349: TYPE_ASSIGNMENT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:350: ASSIGNMENT { - mTYPE_ASSIGNMENT(); + mASSIGNMENT(); } break; case 36 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:365: LT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:361: TYPE_ASSIGNMENT { - mLT(); + mTYPE_ASSIGNMENT(); } break; case 37 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:368: GT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:377: LT { - mGT(); + mLT(); } break; case 38 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:371: OPENBRAC + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:380: GT { - mOPENBRAC(); + mGT(); } break; case 39 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:380: CLOSEBRAC + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:383: OPENBRAC { - mCLOSEBRAC(); + mOPENBRAC(); } break; case 40 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:390: LPAREN + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:392: CLOSEBRAC { - mLPAREN(); + mCLOSEBRAC(); } break; case 41 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:397: RPAREN + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:402: LPAREN { - mRPAREN(); + mLPAREN(); } break; case 42 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:404: LCURL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:409: RPAREN { - mLCURL(); + mRPAREN(); } break; case 43 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:410: RCURL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:416: LCURL { - mRCURL(); + mLCURL(); } break; case 44 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:416: TERM + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:422: RCURL { - mTERM(); + mRCURL(); } break; case 45 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:421: POINTER + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:428: TERM { - mPOINTER(); + mTERM(); } break; case 46 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:429: SIGN + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:433: POINTER { - mSIGN(); + mPOINTER(); } break; case 47 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:434: ARROW + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:441: SIGN { - mARROW(); + mSIGN(); } break; case 48 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:440: DOT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:446: ARROW { - mDOT(); + mARROW(); } break; case 49 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:444: OCTAL_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:452: DOT { - mOCTAL_LITERAL(); + mDOT(); } break; case 50 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:458: DECIMAL_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:456: OCTAL_LITERAL { - mDECIMAL_LITERAL(); + mOCTAL_LITERAL(); } break; case 51 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:474: HEX_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:470: DECIMAL_LITERAL { - mHEX_LITERAL(); + mDECIMAL_LITERAL(); } break; case 52 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:486: CHARACTER_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:486: HEX_LITERAL { - mCHARACTER_LITERAL(); + mHEX_LITERAL(); } break; case 53 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:504: STRING_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:498: CHARACTER_LITERAL { - mSTRING_LITERAL(); + mCHARACTER_LITERAL(); } break; case 54 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:519: WS + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:516: STRING_LITERAL { - mWS(); + mSTRING_LITERAL(); } break; case 55 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:522: COMMENT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:531: WS { - mCOMMENT(); + mWS(); } break; case 56 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:530: LINE_COMMENT + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:534: COMMENT { - mLINE_COMMENT(); + mCOMMENT(); } break; case 57 : - // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:543: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:542: LINE_COMMENT + { + mLINE_COMMENT(); + + } + break; + case 58 : + // org/eclipse/tracecompass/ctf/parser/CTFLexer.g:1:555: IDENTIFIER { mIDENTIFIER(); @@ -3147,63 +3176,63 @@ public class CTFLexer extends Lexer { protected DFA30 dfa30 = new DFA30(this); static final String DFA30_eotS = - "\1\uffff\15\45\2\75\1\uffff\1\101\1\103\13\uffff\1\37\1\uffff\1\45\5\uffff"+ - "\26\45\11\uffff\1\142\2\uffff\6\45\1\151\2\45\1\155\14\45\1\174\3\142"+ - "\1\uffff\2\45\1\u0084\2\45\1\u0087\1\uffff\3\45\1\uffff\1\u008b\11\45"+ - "\1\u0096\3\45\1\uffff\1\142\1\uffff\3\142\1\u009c\1\u009d\1\uffff\1\u009e"+ - "\1\45\1\uffff\1\u00a0\1\u00a2\1\45\1\uffff\1\u00a4\4\45\1\u00a9\4\45\1"+ - "\uffff\1\u00ae\2\45\5\uffff\1\u00b1\1\uffff\1\45\1\uffff\1\45\1\uffff"+ - "\1\u00b4\1\u00b5\1\u00b6\1\u00b7\1\uffff\4\45\1\uffff\2\45\1\uffff\1\45"+ - "\1\u00bf\4\uffff\1\45\1\u00c1\1\45\1\u00c3\3\45\1\uffff\1\45\1\uffff\1"+ - "\u00c8\1\uffff\1\u00c9\2\45\1\u00cc\2\uffff\2\45\1\uffff\1\u00cf\1\45"+ - "\1\uffff\2\45\1\u00d3\1\uffff"; + "\1\uffff\15\45\2\76\1\uffff\1\102\1\104\13\uffff\1\37\1\uffff\1\45\5\uffff"+ + "\27\45\11\uffff\1\144\2\uffff\7\45\1\154\2\45\1\160\14\45\1\177\3\144"+ + "\1\uffff\2\45\1\u0087\3\45\1\u008b\1\uffff\3\45\1\uffff\1\u008f\11\45"+ + "\1\u009a\3\45\1\uffff\1\144\1\uffff\3\144\1\u00a0\1\u00a1\1\uffff\1\u00a2"+ + "\2\45\1\uffff\1\u00a5\1\u00a7\1\45\1\uffff\1\u00a9\4\45\1\u00ae\4\45\1"+ + "\uffff\1\u00b3\2\45\5\uffff\1\45\1\u00b7\1\uffff\1\45\1\uffff\1\45\1\uffff"+ + "\1\u00ba\1\u00bb\1\u00bc\1\u00bd\1\uffff\4\45\1\uffff\3\45\1\uffff\1\45"+ + "\1\u00c6\4\uffff\1\45\1\u00c8\1\45\1\u00ca\2\45\1\u00cd\1\45\1\uffff\1"+ + "\45\1\uffff\1\u00d0\1\uffff\1\u00d1\1\45\1\uffff\1\45\1\u00d4\2\uffff"+ + "\2\45\1\uffff\1\u00d7\1\45\1\uffff\2\45\1\u00db\1\uffff"; static final String DFA30_eofS = - "\u00d4\uffff"; + "\u00dc\uffff"; static final String DFA30_minS = - "\1\11\1\154\1\150\1\157\1\156\1\154\1\156\1\157\1\150\1\162\1\156\1\141"+ + "\1\11\1\154\1\141\1\157\1\156\1\154\1\156\1\157\1\150\1\162\1\156\1\141"+ "\1\102\1\141\1\151\1\76\1\uffff\1\75\1\56\13\uffff\1\60\1\uffff\1\42\3"+ - "\uffff\1\52\1\uffff\1\151\1\156\1\141\1\157\2\165\1\145\1\157\1\164\1"+ - "\156\1\157\1\147\1\162\1\141\1\160\1\163\1\162\1\151\2\157\1\155\1\116"+ - "\11\uffff\1\60\2\uffff\1\147\1\163\1\162\1\143\1\142\1\155\1\60\1\156"+ - "\1\141\1\60\1\147\1\162\1\156\1\145\1\143\1\145\2\151\1\144\1\157\1\155"+ - "\1\141\1\60\1\125\2\114\1\uffff\1\156\1\164\1\60\1\153\1\154\1\60\1\uffff"+ - "\2\164\1\147\1\uffff\1\60\1\164\1\145\1\141\1\156\1\143\1\145\1\141\1"+ - "\147\1\141\1\60\1\154\1\160\1\147\1\uffff\1\125\1\uffff\1\125\1\154\1"+ - "\114\2\60\1\uffff\1\60\1\145\1\uffff\2\60\1\145\1\uffff\1\60\1\144\1\155"+ - "\1\147\1\164\1\60\1\154\1\145\2\156\1\uffff\1\60\1\154\1\151\5\uffff\1"+ - "\60\1\uffff\1\156\1\uffff\1\162\1\uffff\4\60\1\uffff\1\151\1\146\1\145"+ - "\1\164\1\uffff\1\145\1\156\1\uffff\1\147\1\60\4\uffff\1\141\1\60\1\144"+ - "\1\60\1\170\1\141\1\137\1\uffff\1\163\1\uffff\1\60\1\uffff\1\60\1\162"+ - "\1\160\1\60\2\uffff\1\171\1\157\1\uffff\1\60\1\151\1\uffff\1\156\1\164"+ - "\1\60\1\uffff"; + "\uffff\1\52\1\uffff\1\151\1\156\1\141\1\157\1\154\2\165\1\145\1\157\1"+ + "\164\1\156\1\157\1\147\1\162\1\141\1\160\1\163\1\162\1\151\2\157\1\155"+ + "\1\116\11\uffff\1\60\2\uffff\1\147\1\163\1\162\1\143\1\154\1\142\1\155"+ + "\1\60\1\156\1\141\1\60\1\147\1\162\1\156\1\145\1\143\1\145\2\151\1\144"+ + "\1\157\1\155\1\141\1\60\1\125\2\114\1\uffff\1\156\1\164\1\60\1\153\1\163"+ + "\1\154\1\60\1\uffff\2\164\1\147\1\uffff\1\60\1\164\1\145\1\141\1\156\1"+ + "\143\1\145\1\141\1\147\1\141\1\60\1\154\1\160\1\147\1\uffff\1\125\1\uffff"+ + "\1\125\1\154\1\114\2\60\1\uffff\1\60\1\151\1\145\1\uffff\2\60\1\145\1"+ + "\uffff\1\60\1\144\1\155\1\147\1\164\1\60\1\154\1\145\2\156\1\uffff\1\60"+ + "\1\154\1\151\5\uffff\1\164\1\60\1\uffff\1\156\1\uffff\1\162\1\uffff\4"+ + "\60\1\uffff\1\151\1\146\1\145\1\164\1\uffff\1\145\1\156\1\145\1\uffff"+ + "\1\147\1\60\4\uffff\1\141\1\60\1\144\1\60\1\170\1\141\1\60\1\137\1\uffff"+ + "\1\163\1\uffff\1\60\1\uffff\1\60\1\162\1\uffff\1\160\1\60\2\uffff\1\171"+ + "\1\157\1\uffff\1\60\1\151\1\uffff\1\156\1\164\1\60\1\uffff"; static final String DFA30_maxS = "\1\175\1\154\2\157\1\166\1\154\1\156\1\157\1\164\1\171\1\156\1\157\1\111"+ "\1\141\2\151\1\uffff\1\75\1\56\13\uffff\1\170\1\uffff\1\47\3\uffff\1\57"+ - "\1\uffff\1\151\1\156\1\141\1\157\1\165\1\166\1\145\1\157\1\164\1\156\1"+ - "\157\1\147\1\162\1\141\1\160\1\163\1\162\1\151\2\157\1\155\1\116\11\uffff"+ - "\1\165\2\uffff\1\147\1\163\1\162\1\143\1\142\1\155\1\172\1\156\1\141\1"+ - "\172\1\147\1\162\1\156\1\165\1\143\1\145\2\151\1\144\1\157\1\155\1\141"+ - "\1\172\2\165\1\154\1\uffff\1\156\1\164\1\172\1\153\1\154\1\172\1\uffff"+ - "\2\164\1\147\1\uffff\1\172\1\164\1\145\1\141\1\156\1\143\1\145\1\144\1"+ - "\147\1\141\1\172\1\154\1\160\1\147\1\uffff\1\165\1\uffff\1\165\1\154\1"+ - "\114\2\172\1\uffff\1\172\1\145\1\uffff\2\172\1\145\1\uffff\1\172\1\144"+ - "\1\155\1\147\1\164\1\172\1\154\1\145\2\156\1\uffff\1\172\1\154\1\151\5"+ - "\uffff\1\172\1\uffff\1\156\1\uffff\1\162\1\uffff\4\172\1\uffff\1\151\1"+ - "\146\1\145\1\164\1\uffff\1\145\1\156\1\uffff\1\147\1\172\4\uffff\1\141"+ - "\1\172\1\144\1\172\1\170\1\141\1\137\1\uffff\1\163\1\uffff\1\172\1\uffff"+ - "\1\172\1\162\1\160\1\172\2\uffff\1\171\1\157\1\uffff\1\172\1\151\1\uffff"+ - "\1\156\1\164\1\172\1\uffff"; + "\1\uffff\1\151\1\156\1\141\1\157\1\154\1\165\1\166\1\145\1\157\1\164\1"+ + "\156\1\157\1\147\1\162\1\141\1\160\1\163\1\162\1\151\2\157\1\155\1\116"+ + "\11\uffff\1\165\2\uffff\1\147\1\163\1\162\1\143\1\154\1\142\1\155\1\172"+ + "\1\156\1\141\1\172\1\147\1\162\1\156\1\165\1\143\1\145\2\151\1\144\1\157"+ + "\1\155\1\141\1\172\2\165\1\154\1\uffff\1\156\1\164\1\172\1\153\1\163\1"+ + "\154\1\172\1\uffff\2\164\1\147\1\uffff\1\172\1\164\1\145\1\141\1\156\1"+ + "\143\1\145\1\144\1\147\1\141\1\172\1\154\1\160\1\147\1\uffff\1\165\1\uffff"+ + "\1\165\1\154\1\114\2\172\1\uffff\1\172\1\151\1\145\1\uffff\2\172\1\145"+ + "\1\uffff\1\172\1\144\1\155\1\147\1\164\1\172\1\154\1\145\2\156\1\uffff"+ + "\1\172\1\154\1\151\5\uffff\1\164\1\172\1\uffff\1\156\1\uffff\1\162\1\uffff"+ + "\4\172\1\uffff\1\151\1\146\1\145\1\164\1\uffff\1\145\1\156\1\145\1\uffff"+ + "\1\147\1\172\4\uffff\1\141\1\172\1\144\1\172\1\170\1\141\1\172\1\137\1"+ + "\uffff\1\163\1\uffff\1\172\1\uffff\1\172\1\162\1\uffff\1\160\1\172\2\uffff"+ + "\1\171\1\157\1\uffff\1\172\1\151\1\uffff\1\156\1\164\1\172\1\uffff"; static final String DFA30_acceptS = - "\20\uffff\1\37\2\uffff\1\42\1\44\1\45\1\46\1\47\1\50\1\51\1\52\1\53\1"+ - "\54\1\55\1\uffff\1\62\1\uffff\1\64\1\65\1\66\1\uffff\1\71\26\uffff\1\35"+ - "\1\56\1\36\1\57\1\43\1\40\1\41\1\60\1\63\1\uffff\1\67\1\70\32\uffff\1"+ - "\61\6\uffff\1\32\3\uffff\1\12\16\uffff\1\34\1\uffff\1\61\5\uffff\1\3\2"+ - "\uffff\1\5\3\uffff\1\13\12\uffff\1\26\3\uffff\2\61\1\1\1\2\1\33\1\uffff"+ - "\1\6\1\uffff\1\10\1\uffff\1\14\4\uffff\1\21\4\uffff\1\27\2\uffff\1\4\2"+ - "\uffff\1\15\1\16\1\17\1\20\7\uffff\1\11\1\uffff\1\23\1\uffff\1\25\4\uffff"+ - "\1\24\1\30\2\uffff\1\22\2\uffff\1\31\3\uffff\1\7"; + "\20\uffff\1\40\2\uffff\1\43\1\45\1\46\1\47\1\50\1\51\1\52\1\53\1\54\1"+ + "\55\1\56\1\uffff\1\63\1\uffff\1\65\1\66\1\67\1\uffff\1\72\27\uffff\1\36"+ + "\1\57\1\37\1\60\1\44\1\41\1\42\1\61\1\64\1\uffff\1\70\1\71\33\uffff\1"+ + "\62\7\uffff\1\32\3\uffff\1\12\16\uffff\1\35\1\uffff\1\62\5\uffff\1\3\3"+ + "\uffff\1\5\3\uffff\1\13\12\uffff\1\26\3\uffff\2\62\1\1\1\2\1\33\2\uffff"+ + "\1\6\1\uffff\1\10\1\uffff\1\14\4\uffff\1\21\4\uffff\1\27\3\uffff\1\4\2"+ + "\uffff\1\15\1\16\1\17\1\20\10\uffff\1\11\1\uffff\1\23\1\uffff\1\25\2\uffff"+ + "\1\34\2\uffff\1\24\1\30\2\uffff\1\22\2\uffff\1\31\3\uffff\1\7"; static final String DFA30_specialS = - "\u00d4\uffff}>"; + "\u00dc\uffff}>"; static final String[] DFA30_transitionS = { "\2\43\1\uffff\2\43\22\uffff\1\43\1\uffff\1\42\4\uffff\1\41\1\30\1\31"+ "\1\35\1\16\1\20\1\17\1\22\1\44\1\36\11\37\1\21\1\34\1\24\1\23\1\25\2"+ @@ -3211,23 +3240,23 @@ public class CTFLexer extends Lexer { "\1\1\1\45\1\2\1\3\1\4\1\5\2\45\1\6\2\45\1\7\6\45\1\10\1\11\1\12\1\13"+ "\4\45\1\32\1\uffff\1\33", "\1\46", - "\1\50\3\uffff\1\51\2\uffff\1\47", - "\1\52", - "\1\53\7\uffff\1\54", - "\1\55", + "\1\52\6\uffff\1\50\3\uffff\1\51\2\uffff\1\47", + "\1\53", + "\1\54\7\uffff\1\55", "\1\56", "\1\57", - "\1\60\1\61\12\uffff\1\62", - "\1\63\6\uffff\1\64", - "\1\65", - "\1\66\15\uffff\1\67", - "\1\70\1\71\5\uffff\1\72", - "\1\73", + "\1\60", + "\1\61\1\62\12\uffff\1\63", + "\1\64\6\uffff\1\65", + "\1\66", + "\1\67\15\uffff\1\70", + "\1\71\1\72\5\uffff\1\73", "\1\74", - "\1\77\52\uffff\1\76", + "\1\75", + "\1\100\52\uffff\1\77", "", - "\1\100", - "\1\102", + "\1\101", + "\1\103", "", "", "", @@ -3239,22 +3268,21 @@ public class CTFLexer extends Lexer { "", "", "", - "\10\105\40\uffff\1\104\37\uffff\1\104", + "\10\106\40\uffff\1\105\37\uffff\1\105", "", "\1\42\4\uffff\1\41", "", "", "", - "\1\106\4\uffff\1\107", + "\1\107\4\uffff\1\110", "", - "\1\110", "\1\111", "\1\112", "\1\113", "\1\114", - "\1\115\1\116", - "\1\117", - "\1\120", + "\1\115", + "\1\116", + "\1\117\1\120", "\1\121", "\1\122", "\1\123", @@ -3269,6 +3297,8 @@ public class CTFLexer extends Lexer { "\1\134", "\1\135", "\1\136", + "\1\137", + "\1\140", "", "", "", @@ -3278,148 +3308,155 @@ public class CTFLexer extends Lexer { "", "", "", - "\10\105\2\37\22\uffff\1\140\10\uffff\1\141\26\uffff\1\137\10\uffff\1"+ - "\141", + "\10\106\2\37\22\uffff\1\142\10\uffff\1\143\26\uffff\1\141\10\uffff\1"+ + "\143", "", "", - "\1\143", - "\1\144", "\1\145", "\1\146", "\1\147", "\1\150", - "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "\1\151", "\1\152", "\1\153", - "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\4\45\1\154\25\45", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "\1\155", "\1\156", - "\1\157", - "\1\160", - "\1\161\3\uffff\1\162\13\uffff\1\163", - "\1\164", - "\1\165", - "\1\166", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\4\45\1\157\25\45", + "\1\161", + "\1\162", + "\1\163", + "\1\164\3\uffff\1\165\13\uffff\1\166", "\1\167", "\1\170", "\1\171", "\1\172", "\1\173", + "\1\174", + "\1\175", + "\1\176", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\176\26\uffff\1\175\10\uffff\1\176", - "\1\177\10\uffff\1\176\37\uffff\1\176", - "\1\u0081\37\uffff\1\u0080", + "\1\u0081\26\uffff\1\u0080\10\uffff\1\u0081", + "\1\u0082\10\uffff\1\u0081\37\uffff\1\u0081", + "\1\u0084\37\uffff\1\u0083", "", - "\1\u0082", - "\1\u0083", - "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\1\u0085", "\1\u0086", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "", "\1\u0088", "\1\u0089", "\1\u008a", - "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "", "\1\u008c", "\1\u008d", "\1\u008e", - "\1\u008f", + "", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\1\u0090", "\1\u0091", - "\1\u0092\2\uffff\1\u0093", + "\1\u0092", + "\1\u0093", "\1\u0094", "\1\u0095", - "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u0097", + "\1\u0096\2\uffff\1\u0097", "\1\u0098", "\1\u0099", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "\1\u009b", + "\1\u009c", + "\1\u009d", "", - "\1\176\37\uffff\1\176", + "\1\u0081\37\uffff\1\u0081", "", - "\1\176\37\uffff\1\176", - "\1\u009a", - "\1\u009b", - "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "\1\u0081\37\uffff\1\u0081", + "\1\u009e", + "\1\u009f", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u009f", "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\10\45\1\u00a1\21\45", "\1\u00a3", + "\1\u00a4", "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u00a5", - "\1\u00a6", - "\1\u00a7", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\10\45\1\u00a6\21\45", "\1\u00a8", + "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\1\u00aa", "\1\u00ab", "\1\u00ac", "\1\u00ad", - "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\1\u00af", "\1\u00b0", + "\1\u00b1", + "\1\u00b2", + "", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "\1\u00b4", + "\1\u00b5", "", "", "", "", "", + "\1\u00b6", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "", - "\1\u00b2", + "\1\u00b8", "", - "\1\u00b3", + "\1\u00b9", "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "", - "\1\u00b8", - "\1\u00b9", - "\1\u00ba", - "\1\u00bb", + "\1\u00be", + "\1\u00bf", + "\1\u00c0", + "\1\u00c1", "", - "\1\u00bc", - "\1\u00bd", + "\1\u00c2", + "\1\u00c3", + "\1\u00c4", "", - "\1\u00be", + "\1\u00c5", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "", "", "", "", - "\1\u00c0", + "\1\u00c7", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u00c2", + "\1\u00c9", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u00c4", - "\1\u00c5", - "\1\u00c6", + "\1\u00cb", + "\1\u00cc", + "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", + "\1\u00ce", "", - "\1\u00c7", + "\1\u00cf", "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u00ca", - "\1\u00cb", + "\1\u00d2", + "", + "\1\u00d3", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "", "", - "\1\u00cd", - "\1\u00ce", + "\1\u00d5", + "\1\u00d6", "", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", - "\1\u00d0", + "\1\u00d8", "", - "\1\u00d1", - "\1\u00d2", + "\1\u00d9", + "\1\u00da", "\12\45\7\uffff\32\45\4\uffff\1\45\1\uffff\32\45", "" }; @@ -3455,7 +3492,7 @@ public class CTFLexer extends Lexer { } @Override public String getDescription() { - return "1:1: Tokens : ( ALIGNTOK | CONSTTOK | CHARTOK | DOUBLETOK | ENUMTOK | EVENTTOK | FLOATINGPOINTTOK | FLOATTOK | INTEGERTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | STREAMTOK | STRINGTOK | STRUCTTOK | TRACETOK | TYPEALIASTOK | TYPEDEFTOK | UNSIGNEDTOK | VARIANTTOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | ENVTOK | CLOCKTOK | NANNUMBERTOK | INFINITYTOK | NINFINITYTOK | SEPARATOR | COLON | ELIPSES | ASSIGNMENT | TYPE_ASSIGNMENT | LT | GT | OPENBRAC | CLOSEBRAC | LPAREN | RPAREN | LCURL | RCURL | TERM | POINTER | SIGN | ARROW | DOT | OCTAL_LITERAL | DECIMAL_LITERAL | HEX_LITERAL | CHARACTER_LITERAL | STRING_LITERAL | WS | COMMENT | LINE_COMMENT | IDENTIFIER );"; + return "1:1: Tokens : ( ALIGNTOK | CONSTTOK | CHARTOK | DOUBLETOK | ENUMTOK | EVENTTOK | FLOATINGPOINTTOK | FLOATTOK | INTEGERTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | STREAMTOK | STRINGTOK | STRUCTTOK | TRACETOK | TYPEALIASTOK | TYPEDEFTOK | UNSIGNEDTOK | VARIANTTOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | ENVTOK | CLOCKTOK | CALLSITETOK | NANNUMBERTOK | INFINITYTOK | NINFINITYTOK | SEPARATOR | COLON | ELIPSES | ASSIGNMENT | TYPE_ASSIGNMENT | LT | GT | OPENBRAC | CLOSEBRAC | LPAREN | RPAREN | LCURL | RCURL | TERM | POINTER | SIGN | ARROW | DOT | OCTAL_LITERAL | DECIMAL_LITERAL | HEX_LITERAL | CHARACTER_LITERAL | STRING_LITERAL | WS | COMMENT | LINE_COMMENT | IDENTIFIER );"; } } diff --git a/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.java b/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.java index 70c4e1dae7..df63e2ff79 100644 --- a/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.java +++ b/ctf/org.eclipse.tracecompass.ctf.parser/target/generated-sources/antlr3/org/eclipse/tracecompass/ctf/parser/CTFParser.java @@ -1,4 +1,4 @@ -// $ANTLR 3.5.2 org/eclipse/tracecompass/ctf/parser/CTFParser.g 2015-08-06 19:37:54 +// $ANTLR 3.5.2 org/eclipse/tracecompass/ctf/parser/CTFParser.g 2015-07-09 14:10:52 /******************************************************************************* * Copyright (c) 2010, 2015 Ericsson, Ecole Polytechnique de Montréal and others @@ -47,29 +47,29 @@ import org.antlr.runtime.tree.TreeAdaptor; public class CTFParser extends Parser { public static final String[] tokenNames = new String[] { "", "", "", "", "ALIGNTOK", "ARROW", "ASSIGNMENT", - "BACKSLASH", "BOOLTOK", "CHARACTER_LITERAL", "CHARTOK", "CHAR_CONTENT", - "CLOCKTOK", "CLOSEBRAC", "COLON", "COMMENT", "COMMENT_CLOSE", "COMMENT_OPEN", - "COMPLEXTOK", "CONSTTOK", "DECIMAL_LITERAL", "DIGIT", "DOT", "DOUBLEQUOTE", - "DOUBLETOK", "ELIPSES", "ENUMTOK", "ENVTOK", "ESCAPE_SEQUENCE", "EVENTTOK", - "FLOATINGPOINTTOK", "FLOATTOK", "GT", "HEXADECIMAL_ESCAPE", "HEX_DIGIT", - "HEX_LITERAL", "HEX_PREFIX", "IDENTIFIER", "IMAGINARYTOK", "INFINITYTOK", - "INTEGERTOK", "INTEGER_TYPES_SUFFIX", "INTTOK", "LCURL", "LINE_COMMENT", - "LONGTOK", "LPAREN", "LT", "NANNUMBERTOK", "NINFINITYTOK", "NONDIGIT", - "NONZERO_DIGIT", "OCTAL_ESCAPE", "OCTAL_LITERAL", "OCT_DIGIT", "OCT_PREFIX", - "OPENBRAC", "POINTER", "RCURL", "RPAREN", "SEPARATOR", "SHORTTOK", "SIGN", - "SIGNEDTOK", "SINGLEQUOTE", "STREAMTOK", "STRINGPREFIX", "STRINGTOK", + "BACKSLASH", "BOOLTOK", "CALLSITETOK", "CHARACTER_LITERAL", "CHARTOK", + "CHAR_CONTENT", "CLOCKTOK", "CLOSEBRAC", "COLON", "COMMENT", "COMMENT_CLOSE", + "COMMENT_OPEN", "COMPLEXTOK", "CONSTTOK", "DECIMAL_LITERAL", "DIGIT", + "DOT", "DOUBLEQUOTE", "DOUBLETOK", "ELIPSES", "ENUMTOK", "ENVTOK", "ESCAPE_SEQUENCE", + "EVENTTOK", "FLOATINGPOINTTOK", "FLOATTOK", "GT", "HEXADECIMAL_ESCAPE", + "HEX_DIGIT", "HEX_LITERAL", "HEX_PREFIX", "IDENTIFIER", "IMAGINARYTOK", + "INFINITYTOK", "INTEGERTOK", "INTEGER_TYPES_SUFFIX", "INTTOK", "LCURL", + "LINE_COMMENT", "LONGTOK", "LPAREN", "LT", "NANNUMBERTOK", "NINFINITYTOK", + "NONDIGIT", "NONZERO_DIGIT", "OCTAL_ESCAPE", "OCTAL_LITERAL", "OCT_DIGIT", + "OCT_PREFIX", "OPENBRAC", "POINTER", "RCURL", "RPAREN", "SEPARATOR", "SHORTTOK", + "SIGN", "SIGNEDTOK", "SINGLEQUOTE", "STREAMTOK", "STRINGPREFIX", "STRINGTOK", "STRING_CONTENT", "STRING_LITERAL", "STRUCTTOK", "TERM", "TRACETOK", "TYPEALIASTOK", "TYPEDEFTOK", "TYPE_ASSIGNMENT", "UNICODE_ESCAPE", "UNSIGNEDTOK", "VARIANTTOK", - "VOIDTOK", "WS", "ALIGN", "CLOCK", "CTF_EXPRESSION_TYPE", "CTF_EXPRESSION_VAL", - "CTF_LEFT", "CTF_RIGHT", "DECLARATION", "DECLARATOR", "ENUM", "ENUM_BODY", - "ENUM_CONTAINER_TYPE", "ENUM_ENUMERATOR", "ENUM_NAME", "ENUM_VALUE", "ENUM_VALUE_RANGE", - "ENV", "EVENT", "FLOATING_POINT", "INTEGER", "LENGTH", "ROOT", "STREAM", - "STRING", "STRUCT", "STRUCT_BODY", "STRUCT_NAME", "SV_DECLARATION", "TRACE", - "TYPEALIAS", "TYPEALIAS_ALIAS", "TYPEALIAS_TARGET", "TYPEDEF", "TYPE_DECLARATOR", - "TYPE_DECLARATOR_LIST", "TYPE_SPECIFIER_LIST", "UNARY_EXPRESSION_DEC", - "UNARY_EXPRESSION_HEX", "UNARY_EXPRESSION_OCT", "UNARY_EXPRESSION_STRING", - "UNARY_EXPRESSION_STRING_QUOTES", "VARIANT", "VARIANT_BODY", "VARIANT_NAME", - "VARIANT_TAG" + "VOIDTOK", "WS", "ALIGN", "CALLSITE", "CLOCK", "CTF_EXPRESSION_TYPE", + "CTF_EXPRESSION_VAL", "CTF_LEFT", "CTF_RIGHT", "DECLARATION", "DECLARATOR", + "ENUM", "ENUM_BODY", "ENUM_CONTAINER_TYPE", "ENUM_ENUMERATOR", "ENUM_NAME", + "ENUM_VALUE", "ENUM_VALUE_RANGE", "ENV", "EVENT", "FLOATING_POINT", "INTEGER", + "LENGTH", "ROOT", "STREAM", "STRING", "STRUCT", "STRUCT_BODY", "STRUCT_NAME", + "SV_DECLARATION", "TRACE", "TYPEALIAS", "TYPEALIAS_ALIAS", "TYPEALIAS_TARGET", + "TYPEDEF", "TYPE_DECLARATOR", "TYPE_DECLARATOR_LIST", "TYPE_SPECIFIER_LIST", + "UNARY_EXPRESSION_DEC", "UNARY_EXPRESSION_HEX", "UNARY_EXPRESSION_OCT", + "UNARY_EXPRESSION_STRING", "UNARY_EXPRESSION_STRING_QUOTES", "VARIANT", + "VARIANT_BODY", "VARIANT_NAME", "VARIANT_TAG" }; public static final int EOF=-1; public static final int ALIGNTOK=4; @@ -77,122 +77,124 @@ public class CTFParser extends Parser { public static final int ASSIGNMENT=6; public static final int BACKSLASH=7; public static final int BOOLTOK=8; - public static final int CHARACTER_LITERAL=9; - public static final int CHARTOK=10; - public static final int CHAR_CONTENT=11; - public static final int CLOCKTOK=12; - public static final int CLOSEBRAC=13; - public static final int COLON=14; - public static final int COMMENT=15; - public static final int COMMENT_CLOSE=16; - public static final int COMMENT_OPEN=17; - public static final int COMPLEXTOK=18; - public static final int CONSTTOK=19; - public static final int DECIMAL_LITERAL=20; - public static final int DIGIT=21; - public static final int DOT=22; - public static final int DOUBLEQUOTE=23; - public static final int DOUBLETOK=24; - public static final int ELIPSES=25; - public static final int ENUMTOK=26; - public static final int ENVTOK=27; - public static final int ESCAPE_SEQUENCE=28; - public static final int EVENTTOK=29; - public static final int FLOATINGPOINTTOK=30; - public static final int FLOATTOK=31; - public static final int GT=32; - public static final int HEXADECIMAL_ESCAPE=33; - public static final int HEX_DIGIT=34; - public static final int HEX_LITERAL=35; - public static final int HEX_PREFIX=36; - public static final int IDENTIFIER=37; - public static final int IMAGINARYTOK=38; - public static final int INFINITYTOK=39; - public static final int INTEGERTOK=40; - public static final int INTEGER_TYPES_SUFFIX=41; - public static final int INTTOK=42; - public static final int LCURL=43; - public static final int LINE_COMMENT=44; - public static final int LONGTOK=45; - public static final int LPAREN=46; - public static final int LT=47; - public static final int NANNUMBERTOK=48; - public static final int NINFINITYTOK=49; - public static final int NONDIGIT=50; - public static final int NONZERO_DIGIT=51; - public static final int OCTAL_ESCAPE=52; - public static final int OCTAL_LITERAL=53; - public static final int OCT_DIGIT=54; - public static final int OCT_PREFIX=55; - public static final int OPENBRAC=56; - public static final int POINTER=57; - public static final int RCURL=58; - public static final int RPAREN=59; - public static final int SEPARATOR=60; - public static final int SHORTTOK=61; - public static final int SIGN=62; - public static final int SIGNEDTOK=63; - public static final int SINGLEQUOTE=64; - public static final int STREAMTOK=65; - public static final int STRINGPREFIX=66; - public static final int STRINGTOK=67; - public static final int STRING_CONTENT=68; - public static final int STRING_LITERAL=69; - public static final int STRUCTTOK=70; - public static final int TERM=71; - public static final int TRACETOK=72; - public static final int TYPEALIASTOK=73; - public static final int TYPEDEFTOK=74; - public static final int TYPE_ASSIGNMENT=75; - public static final int UNICODE_ESCAPE=76; - public static final int UNSIGNEDTOK=77; - public static final int VARIANTTOK=78; - public static final int VOIDTOK=79; - public static final int WS=80; - public static final int ALIGN=81; - public static final int CLOCK=82; - public static final int CTF_EXPRESSION_TYPE=83; - public static final int CTF_EXPRESSION_VAL=84; - public static final int CTF_LEFT=85; - public static final int CTF_RIGHT=86; - public static final int DECLARATION=87; - public static final int DECLARATOR=88; - public static final int ENUM=89; - public static final int ENUM_BODY=90; - public static final int ENUM_CONTAINER_TYPE=91; - public static final int ENUM_ENUMERATOR=92; - public static final int ENUM_NAME=93; - public static final int ENUM_VALUE=94; - public static final int ENUM_VALUE_RANGE=95; - public static final int ENV=96; - public static final int EVENT=97; - public static final int FLOATING_POINT=98; - public static final int INTEGER=99; - public static final int LENGTH=100; - public static final int ROOT=101; - public static final int STREAM=102; - public static final int STRING=103; - public static final int STRUCT=104; - public static final int STRUCT_BODY=105; - public static final int STRUCT_NAME=106; - public static final int SV_DECLARATION=107; - public static final int TRACE=108; - public static final int TYPEALIAS=109; - public static final int TYPEALIAS_ALIAS=110; - public static final int TYPEALIAS_TARGET=111; - public static final int TYPEDEF=112; - public static final int TYPE_DECLARATOR=113; - public static final int TYPE_DECLARATOR_LIST=114; - public static final int TYPE_SPECIFIER_LIST=115; - public static final int UNARY_EXPRESSION_DEC=116; - public static final int UNARY_EXPRESSION_HEX=117; - public static final int UNARY_EXPRESSION_OCT=118; - public static final int UNARY_EXPRESSION_STRING=119; - public static final int UNARY_EXPRESSION_STRING_QUOTES=120; - public static final int VARIANT=121; - public static final int VARIANT_BODY=122; - public static final int VARIANT_NAME=123; - public static final int VARIANT_TAG=124; + public static final int CALLSITETOK=9; + public static final int CHARACTER_LITERAL=10; + public static final int CHARTOK=11; + public static final int CHAR_CONTENT=12; + public static final int CLOCKTOK=13; + public static final int CLOSEBRAC=14; + public static final int COLON=15; + public static final int COMMENT=16; + public static final int COMMENT_CLOSE=17; + public static final int COMMENT_OPEN=18; + public static final int COMPLEXTOK=19; + public static final int CONSTTOK=20; + public static final int DECIMAL_LITERAL=21; + public static final int DIGIT=22; + public static final int DOT=23; + public static final int DOUBLEQUOTE=24; + public static final int DOUBLETOK=25; + public static final int ELIPSES=26; + public static final int ENUMTOK=27; + public static final int ENVTOK=28; + public static final int ESCAPE_SEQUENCE=29; + public static final int EVENTTOK=30; + public static final int FLOATINGPOINTTOK=31; + public static final int FLOATTOK=32; + public static final int GT=33; + public static final int HEXADECIMAL_ESCAPE=34; + public static final int HEX_DIGIT=35; + public static final int HEX_LITERAL=36; + public static final int HEX_PREFIX=37; + public static final int IDENTIFIER=38; + public static final int IMAGINARYTOK=39; + public static final int INFINITYTOK=40; + public static final int INTEGERTOK=41; + public static final int INTEGER_TYPES_SUFFIX=42; + public static final int INTTOK=43; + public static final int LCURL=44; + public static final int LINE_COMMENT=45; + public static final int LONGTOK=46; + public static final int LPAREN=47; + public static final int LT=48; + public static final int NANNUMBERTOK=49; + public static final int NINFINITYTOK=50; + public static final int NONDIGIT=51; + public static final int NONZERO_DIGIT=52; + public static final int OCTAL_ESCAPE=53; + public static final int OCTAL_LITERAL=54; + public static final int OCT_DIGIT=55; + public static final int OCT_PREFIX=56; + public static final int OPENBRAC=57; + public static final int POINTER=58; + public static final int RCURL=59; + public static final int RPAREN=60; + public static final int SEPARATOR=61; + public static final int SHORTTOK=62; + public static final int SIGN=63; + public static final int SIGNEDTOK=64; + public static final int SINGLEQUOTE=65; + public static final int STREAMTOK=66; + public static final int STRINGPREFIX=67; + public static final int STRINGTOK=68; + public static final int STRING_CONTENT=69; + public static final int STRING_LITERAL=70; + public static final int STRUCTTOK=71; + public static final int TERM=72; + public static final int TRACETOK=73; + public static final int TYPEALIASTOK=74; + public static final int TYPEDEFTOK=75; + public static final int TYPE_ASSIGNMENT=76; + public static final int UNICODE_ESCAPE=77; + public static final int UNSIGNEDTOK=78; + public static final int VARIANTTOK=79; + public static final int VOIDTOK=80; + public static final int WS=81; + public static final int ALIGN=82; + public static final int CALLSITE=83; + public static final int CLOCK=84; + public static final int CTF_EXPRESSION_TYPE=85; + public static final int CTF_EXPRESSION_VAL=86; + public static final int CTF_LEFT=87; + public static final int CTF_RIGHT=88; + public static final int DECLARATION=89; + public static final int DECLARATOR=90; + public static final int ENUM=91; + public static final int ENUM_BODY=92; + public static final int ENUM_CONTAINER_TYPE=93; + public static final int ENUM_ENUMERATOR=94; + public static final int ENUM_NAME=95; + public static final int ENUM_VALUE=96; + public static final int ENUM_VALUE_RANGE=97; + public static final int ENV=98; + public static final int EVENT=99; + public static final int FLOATING_POINT=100; + public static final int INTEGER=101; + public static final int LENGTH=102; + public static final int ROOT=103; + public static final int STREAM=104; + public static final int STRING=105; + public static final int STRUCT=106; + public static final int STRUCT_BODY=107; + public static final int STRUCT_NAME=108; + public static final int SV_DECLARATION=109; + public static final int TRACE=110; + public static final int TYPEALIAS=111; + public static final int TYPEALIAS_ALIAS=112; + public static final int TYPEALIAS_TARGET=113; + public static final int TYPEDEF=114; + public static final int TYPE_DECLARATOR=115; + public static final int TYPE_DECLARATOR_LIST=116; + public static final int TYPE_SPECIFIER_LIST=117; + public static final int UNARY_EXPRESSION_DEC=118; + public static final int UNARY_EXPRESSION_HEX=119; + public static final int UNARY_EXPRESSION_OCT=120; + public static final int UNARY_EXPRESSION_STRING=121; + public static final int UNARY_EXPRESSION_STRING_QUOTES=122; + public static final int VARIANT=123; + public static final int VARIANT_BODY=124; + public static final int VARIANT_NAME=125; + public static final int VARIANT_TAG=126; // delegates public Parser[] getDelegates() { @@ -312,7 +314,7 @@ public class CTFParser extends Parser { // $ANTLR start "parse" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:189:1: parse : ( declaration )+ EOF -> ^( ROOT ( declaration )+ ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:190:1: parse : ( declaration )+ EOF -> ^( ROOT ( declaration )+ ) ; public final CTFParser.parse_return parse() throws RecognitionException { Symbols_stack.push(new Symbols_scope()); @@ -332,10 +334,10 @@ public class CTFParser extends Parser { Symbols_stack.peek().types = new HashSet(); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:194:3: ( ( declaration )+ EOF -> ^( ROOT ( declaration )+ ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:194:5: ( declaration )+ EOF + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:195:3: ( ( declaration )+ EOF -> ^( ROOT ( declaration )+ ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:195:5: ( declaration )+ EOF { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:194:5: ( declaration )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:195:5: ( declaration )+ int cnt1=0; loop1: while (true) { @@ -347,15 +349,15 @@ public class CTFParser extends Parser { else if ( (LA1_0==IDENTIFIER) && (( inTypealiasAlias() || isTypeName(input.LT(1).getText()) ))) { alt1=1; } - else if ( (LA1_0==CLOCKTOK||LA1_0==ENVTOK||LA1_0==EVENTTOK||LA1_0==STREAMTOK||(LA1_0 >= TRACETOK && LA1_0 <= TYPEALIASTOK)) ) { + else if ( (LA1_0==CALLSITETOK||LA1_0==CLOCKTOK||LA1_0==ENVTOK||LA1_0==EVENTTOK||LA1_0==STREAMTOK||(LA1_0 >= TRACETOK && LA1_0 <= TYPEALIASTOK)) ) { alt1=1; } switch (alt1) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:194:5: declaration + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:195:5: declaration { - pushFollow(FOLLOW_declaration_in_parse442); + pushFollow(FOLLOW_declaration_in_parse449); declaration1=declaration(); state._fsp--; if (state.failed) return retval; @@ -372,7 +374,7 @@ public class CTFParser extends Parser { cnt1++; } - EOF2=(Token)match(input,EOF,FOLLOW_EOF_in_parse445); if (state.failed) return retval; + EOF2=(Token)match(input,EOF,FOLLOW_EOF_in_parse452); if (state.failed) return retval; if ( state.backtracking==0 ) stream_EOF.add(EOF2); // AST REWRITE @@ -387,9 +389,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 194:22: -> ^( ROOT ( declaration )+ ) + // 195:22: -> ^( ROOT ( declaration )+ ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:194:25: ^( ROOT ( declaration )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:195:25: ^( ROOT ( declaration )+ ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ROOT, "ROOT"), root_1); @@ -442,7 +444,7 @@ public class CTFParser extends Parser { // $ANTLR start "numberLiteral" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:197:1: numberLiteral : ( SIGN )* ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:198:1: numberLiteral : ( SIGN )* ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) ; public final CTFParser.numberLiteral_return numberLiteral() throws RecognitionException { CTFParser.numberLiteral_return retval = new CTFParser.numberLiteral_return(); retval.start = input.LT(1); @@ -458,16 +460,16 @@ public class CTFParser extends Parser { CommonTree HEX_LITERAL4_tree=null; CommonTree DECIMAL_LITERAL5_tree=null; CommonTree OCTAL_LITERAL6_tree=null; + RewriteRuleTokenStream stream_SIGN=new RewriteRuleTokenStream(adaptor,"token SIGN"); RewriteRuleTokenStream stream_OCTAL_LITERAL=new RewriteRuleTokenStream(adaptor,"token OCTAL_LITERAL"); RewriteRuleTokenStream stream_HEX_LITERAL=new RewriteRuleTokenStream(adaptor,"token HEX_LITERAL"); - RewriteRuleTokenStream stream_SIGN=new RewriteRuleTokenStream(adaptor,"token SIGN"); RewriteRuleTokenStream stream_DECIMAL_LITERAL=new RewriteRuleTokenStream(adaptor,"token DECIMAL_LITERAL"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:198:3: ( ( SIGN )* ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:198:5: ( SIGN )* ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:3: ( ( SIGN )* ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:5: ( SIGN )* ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:198:5: ( SIGN )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:5: ( SIGN )* loop2: while (true) { int alt2=2; @@ -478,9 +480,9 @@ public class CTFParser extends Parser { switch (alt2) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:198:5: SIGN + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:5: SIGN { - SIGN3=(Token)match(input,SIGN,FOLLOW_SIGN_in_numberLiteral467); if (state.failed) return retval; + SIGN3=(Token)match(input,SIGN,FOLLOW_SIGN_in_numberLiteral474); if (state.failed) return retval; if ( state.backtracking==0 ) stream_SIGN.add(SIGN3); } @@ -491,7 +493,7 @@ public class CTFParser extends Parser { } } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:7: ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:7: ( HEX_LITERAL -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) | DECIMAL_LITERAL -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) | OCTAL_LITERAL -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) ) int alt3=3; switch ( input.LA(1) ) { case HEX_LITERAL: @@ -517,9 +519,9 @@ public class CTFParser extends Parser { } switch (alt3) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:9: HEX_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:9: HEX_LITERAL { - HEX_LITERAL4=(Token)match(input,HEX_LITERAL,FOLLOW_HEX_LITERAL_in_numberLiteral478); if (state.failed) return retval; + HEX_LITERAL4=(Token)match(input,HEX_LITERAL,FOLLOW_HEX_LITERAL_in_numberLiteral485); if (state.failed) return retval; if ( state.backtracking==0 ) stream_HEX_LITERAL.add(HEX_LITERAL4); // AST REWRITE @@ -534,14 +536,14 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 199:21: -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) + // 200:21: -> ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:24: ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:24: ^( UNARY_EXPRESSION_HEX HEX_LITERAL ( SIGN )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_HEX, "UNARY_EXPRESSION_HEX"), root_1); adaptor.addChild(root_1, stream_HEX_LITERAL.nextNode()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:199:59: ( SIGN )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:59: ( SIGN )* while ( stream_SIGN.hasNext() ) { adaptor.addChild(root_1, stream_SIGN.nextNode()); } @@ -559,13 +561,13 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:9: DECIMAL_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:201:9: DECIMAL_LITERAL { - DECIMAL_LITERAL5=(Token)match(input,DECIMAL_LITERAL,FOLLOW_DECIMAL_LITERAL_in_numberLiteral499); if (state.failed) return retval; + DECIMAL_LITERAL5=(Token)match(input,DECIMAL_LITERAL,FOLLOW_DECIMAL_LITERAL_in_numberLiteral506); if (state.failed) return retval; if ( state.backtracking==0 ) stream_DECIMAL_LITERAL.add(DECIMAL_LITERAL5); // AST REWRITE - // elements: SIGN, DECIMAL_LITERAL + // elements: DECIMAL_LITERAL, SIGN // token labels: // rule labels: retval // token list labels: @@ -576,14 +578,14 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 200:25: -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) + // 201:25: -> ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:28: ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:201:28: ^( UNARY_EXPRESSION_DEC DECIMAL_LITERAL ( SIGN )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_DEC, "UNARY_EXPRESSION_DEC"), root_1); adaptor.addChild(root_1, stream_DECIMAL_LITERAL.nextNode()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:200:67: ( SIGN )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:201:67: ( SIGN )* while ( stream_SIGN.hasNext() ) { adaptor.addChild(root_1, stream_SIGN.nextNode()); } @@ -601,9 +603,9 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:201:9: OCTAL_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:202:9: OCTAL_LITERAL { - OCTAL_LITERAL6=(Token)match(input,OCTAL_LITERAL,FOLLOW_OCTAL_LITERAL_in_numberLiteral520); if (state.failed) return retval; + OCTAL_LITERAL6=(Token)match(input,OCTAL_LITERAL,FOLLOW_OCTAL_LITERAL_in_numberLiteral527); if (state.failed) return retval; if ( state.backtracking==0 ) stream_OCTAL_LITERAL.add(OCTAL_LITERAL6); // AST REWRITE @@ -618,14 +620,14 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 201:23: -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) + // 202:23: -> ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:201:26: ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:202:26: ^( UNARY_EXPRESSION_OCT OCTAL_LITERAL ( SIGN )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_OCT, "UNARY_EXPRESSION_OCT"), root_1); adaptor.addChild(root_1, stream_OCTAL_LITERAL.nextNode()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:201:63: ( SIGN )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:202:63: ( SIGN )* while ( stream_SIGN.hasNext() ) { adaptor.addChild(root_1, stream_SIGN.nextNode()); } @@ -675,7 +677,7 @@ public class CTFParser extends Parser { // $ANTLR start "primaryExpression" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:205:1: primaryExpression : ( ( IDENTIFIER )=> IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ( ctfKeyword )=> ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) | ( STRING_LITERAL )=> STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | numberLiteral | enumConstant | CHARACTER_LITERAL ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:206:1: primaryExpression : ( ( IDENTIFIER )=> IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ( ctfKeyword )=> ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) | ( STRING_LITERAL )=> STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | numberLiteral | enumConstant | CHARACTER_LITERAL ); public final CTFParser.primaryExpression_return primaryExpression() throws RecognitionException { CTFParser.primaryExpression_return retval = new CTFParser.primaryExpression_return(); retval.start = input.LT(1); @@ -697,7 +699,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_ctfKeyword=new RewriteRuleSubtreeStream(adaptor,"rule ctfKeyword"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:206:3: ( ( IDENTIFIER )=> IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ( ctfKeyword )=> ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) | ( STRING_LITERAL )=> STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | numberLiteral | enumConstant | CHARACTER_LITERAL ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:207:3: ( ( IDENTIFIER )=> IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ( ctfKeyword )=> ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) | ( STRING_LITERAL )=> STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | numberLiteral | enumConstant | CHARACTER_LITERAL ) int alt4=6; switch ( input.LA(1) ) { case IDENTIFIER: @@ -760,9 +762,9 @@ public class CTFParser extends Parser { } switch (alt4) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:206:5: ( IDENTIFIER )=> IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:207:5: ( IDENTIFIER )=> IDENTIFIER { - IDENTIFIER7=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_primaryExpression558); if (state.failed) return retval; + IDENTIFIER7=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_primaryExpression565); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER7); // AST REWRITE @@ -777,9 +779,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 207:7: -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) + // 208:7: -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:207:10: ^( UNARY_EXPRESSION_STRING IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:208:10: ^( UNARY_EXPRESSION_STRING IDENTIFIER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING, "UNARY_EXPRESSION_STRING"), root_1); @@ -796,9 +798,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:208:5: ( ctfKeyword )=> ctfKeyword + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:5: ( ctfKeyword )=> ctfKeyword { - pushFollow(FOLLOW_ctfKeyword_in_primaryExpression584); + pushFollow(FOLLOW_ctfKeyword_in_primaryExpression591); ctfKeyword8=ctfKeyword(); state._fsp--; if (state.failed) return retval; @@ -815,9 +817,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 208:32: -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) + // 209:32: -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:208:35: ^( UNARY_EXPRESSION_STRING ctfKeyword ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:35: ^( UNARY_EXPRESSION_STRING ctfKeyword ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING, "UNARY_EXPRESSION_STRING"), root_1); @@ -834,9 +836,9 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:5: ( STRING_LITERAL )=> STRING_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:210:5: ( STRING_LITERAL )=> STRING_LITERAL { - STRING_LITERAL9=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_primaryExpression604); if (state.failed) return retval; + STRING_LITERAL9=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_primaryExpression611); if (state.failed) return retval; if ( state.backtracking==0 ) stream_STRING_LITERAL.add(STRING_LITERAL9); // AST REWRITE @@ -851,9 +853,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 210:7: -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) + // 211:7: -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:210:10: ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:211:10: ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING_QUOTES, "UNARY_EXPRESSION_STRING_QUOTES"), root_1); @@ -870,12 +872,12 @@ public class CTFParser extends Parser { } break; case 4 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:212:5: numberLiteral + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:213:5: numberLiteral { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_numberLiteral_in_primaryExpression629); + pushFollow(FOLLOW_numberLiteral_in_primaryExpression636); numberLiteral10=numberLiteral(); state._fsp--; if (state.failed) return retval; @@ -884,12 +886,12 @@ public class CTFParser extends Parser { } break; case 5 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:213:5: enumConstant + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:214:5: enumConstant { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_enumConstant_in_primaryExpression635); + pushFollow(FOLLOW_enumConstant_in_primaryExpression642); enumConstant11=enumConstant(); state._fsp--; if (state.failed) return retval; @@ -898,12 +900,12 @@ public class CTFParser extends Parser { } break; case 6 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:214:5: CHARACTER_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:215:5: CHARACTER_LITERAL { root_0 = (CommonTree)adaptor.nil(); - CHARACTER_LITERAL12=(Token)match(input,CHARACTER_LITERAL,FOLLOW_CHARACTER_LITERAL_in_primaryExpression641); if (state.failed) return retval; + CHARACTER_LITERAL12=(Token)match(input,CHARACTER_LITERAL,FOLLOW_CHARACTER_LITERAL_in_primaryExpression648); if (state.failed) return retval; if ( state.backtracking==0 ) { CHARACTER_LITERAL12_tree = (CommonTree)adaptor.create(CHARACTER_LITERAL12); adaptor.addChild(root_0, CHARACTER_LITERAL12_tree); @@ -941,7 +943,7 @@ public class CTFParser extends Parser { // $ANTLR start "postfixExpressionSuffix" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:217:1: postfixExpressionSuffix : ( OPENBRAC unaryExpression CLOSEBRAC !| (ref= DOT |ref= ARROW ) IDENTIFIER -> ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:218:1: postfixExpressionSuffix : ( OPENBRAC unaryExpression CLOSEBRAC !| (ref= DOT |ref= ARROW ) IDENTIFIER -> ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) ); public final CTFParser.postfixExpressionSuffix_return postfixExpressionSuffix() throws RecognitionException { CTFParser.postfixExpressionSuffix_return retval = new CTFParser.postfixExpressionSuffix_return(); retval.start = input.LT(1); @@ -963,7 +965,7 @@ public class CTFParser extends Parser { RewriteRuleTokenStream stream_IDENTIFIER=new RewriteRuleTokenStream(adaptor,"token IDENTIFIER"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:218:3: ( OPENBRAC unaryExpression CLOSEBRAC !| (ref= DOT |ref= ARROW ) IDENTIFIER -> ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:219:3: ( OPENBRAC unaryExpression CLOSEBRAC !| (ref= DOT |ref= ARROW ) IDENTIFIER -> ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) ) int alt6=2; int LA6_0 = input.LA(1); if ( (LA6_0==OPENBRAC) ) { @@ -982,30 +984,30 @@ public class CTFParser extends Parser { switch (alt6) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:218:5: OPENBRAC unaryExpression CLOSEBRAC ! + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:219:5: OPENBRAC unaryExpression CLOSEBRAC ! { root_0 = (CommonTree)adaptor.nil(); - OPENBRAC13=(Token)match(input,OPENBRAC,FOLLOW_OPENBRAC_in_postfixExpressionSuffix654); if (state.failed) return retval; + OPENBRAC13=(Token)match(input,OPENBRAC,FOLLOW_OPENBRAC_in_postfixExpressionSuffix661); if (state.failed) return retval; if ( state.backtracking==0 ) { OPENBRAC13_tree = (CommonTree)adaptor.create(OPENBRAC13); adaptor.addChild(root_0, OPENBRAC13_tree); } - pushFollow(FOLLOW_unaryExpression_in_postfixExpressionSuffix656); + pushFollow(FOLLOW_unaryExpression_in_postfixExpressionSuffix663); unaryExpression14=unaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, unaryExpression14.getTree()); - CLOSEBRAC15=(Token)match(input,CLOSEBRAC,FOLLOW_CLOSEBRAC_in_postfixExpressionSuffix658); if (state.failed) return retval; + CLOSEBRAC15=(Token)match(input,CLOSEBRAC,FOLLOW_CLOSEBRAC_in_postfixExpressionSuffix665); if (state.failed) return retval; } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:219:5: (ref= DOT |ref= ARROW ) IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:220:5: (ref= DOT |ref= ARROW ) IDENTIFIER { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:219:5: (ref= DOT |ref= ARROW ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:220:5: (ref= DOT |ref= ARROW ) int alt5=2; int LA5_0 = input.LA(1); if ( (LA5_0==DOT) ) { @@ -1024,17 +1026,17 @@ public class CTFParser extends Parser { switch (alt5) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:219:6: ref= DOT + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:220:6: ref= DOT { - ref=(Token)match(input,DOT,FOLLOW_DOT_in_postfixExpressionSuffix668); if (state.failed) return retval; + ref=(Token)match(input,DOT,FOLLOW_DOT_in_postfixExpressionSuffix675); if (state.failed) return retval; if ( state.backtracking==0 ) stream_DOT.add(ref); } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:219:16: ref= ARROW + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:220:16: ref= ARROW { - ref=(Token)match(input,ARROW,FOLLOW_ARROW_in_postfixExpressionSuffix674); if (state.failed) return retval; + ref=(Token)match(input,ARROW,FOLLOW_ARROW_in_postfixExpressionSuffix681); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ARROW.add(ref); } @@ -1042,7 +1044,7 @@ public class CTFParser extends Parser { } - IDENTIFIER16=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_postfixExpressionSuffix677); if (state.failed) return retval; + IDENTIFIER16=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_postfixExpressionSuffix684); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER16); // AST REWRITE @@ -1058,13 +1060,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 220:7: -> ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) + // 221:7: -> ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:220:10: ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:221:10: ^( $ref ^( UNARY_EXPRESSION_STRING IDENTIFIER ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot(stream_ref.nextNode(), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:220:17: ^( UNARY_EXPRESSION_STRING IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:221:17: ^( UNARY_EXPRESSION_STRING IDENTIFIER ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING, "UNARY_EXPRESSION_STRING"), root_2); @@ -1113,7 +1115,7 @@ public class CTFParser extends Parser { // $ANTLR start "postfixCtfExpression" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:223:1: postfixCtfExpression : (ref= DOT ) ctfSpecifierHead -> ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:224:1: postfixCtfExpression : (ref= DOT ) ctfSpecifierHead -> ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) ; public final CTFParser.postfixCtfExpression_return postfixCtfExpression() throws RecognitionException { CTFParser.postfixCtfExpression_return retval = new CTFParser.postfixCtfExpression_return(); retval.start = input.LT(1); @@ -1128,18 +1130,18 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_ctfSpecifierHead=new RewriteRuleSubtreeStream(adaptor,"rule ctfSpecifierHead"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:224:3: ( (ref= DOT ) ctfSpecifierHead -> ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:224:5: (ref= DOT ) ctfSpecifierHead + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:225:3: ( (ref= DOT ) ctfSpecifierHead -> ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:225:5: (ref= DOT ) ctfSpecifierHead { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:224:5: (ref= DOT ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:224:6: ref= DOT + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:225:5: (ref= DOT ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:225:6: ref= DOT { - ref=(Token)match(input,DOT,FOLLOW_DOT_in_postfixCtfExpression712); if (state.failed) return retval; + ref=(Token)match(input,DOT,FOLLOW_DOT_in_postfixCtfExpression719); if (state.failed) return retval; if ( state.backtracking==0 ) stream_DOT.add(ref); } - pushFollow(FOLLOW_ctfSpecifierHead_in_postfixCtfExpression715); + pushFollow(FOLLOW_ctfSpecifierHead_in_postfixCtfExpression722); ctfSpecifierHead17=ctfSpecifierHead(); state._fsp--; if (state.failed) return retval; @@ -1157,13 +1159,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 225:7: -> ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) + // 226:7: -> ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:225:10: ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:226:10: ^( $ref ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot(stream_ref.nextNode(), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:225:17: ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:226:17: ^( UNARY_EXPRESSION_STRING ctfSpecifierHead ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING, "UNARY_EXPRESSION_STRING"), root_2); @@ -1210,7 +1212,7 @@ public class CTFParser extends Parser { // $ANTLR start "postfixExpression" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:228:1: postfixExpression : ( ( primaryExpression ( postfixExpressionSuffix )* ) | ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:1: postfixExpression : ( ( primaryExpression ( postfixExpressionSuffix )* ) | ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) ); public final CTFParser.postfixExpression_return postfixExpression() throws RecognitionException { CTFParser.postfixExpression_return retval = new CTFParser.postfixExpression_return(); retval.start = input.LT(1); @@ -1225,7 +1227,7 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:3: ( ( primaryExpression ( postfixExpressionSuffix )* ) | ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:3: ( ( primaryExpression ( postfixExpressionSuffix )* ) | ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) ) int alt10=2; switch ( input.LA(1) ) { case ALIGNTOK: @@ -1247,6 +1249,7 @@ public class CTFParser extends Parser { alt10=1; } break; + case CALLSITETOK: case CLOCKTOK: case ENVTOK: case STREAMTOK: @@ -1263,21 +1266,21 @@ public class CTFParser extends Parser { } switch (alt10) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:5: ( primaryExpression ( postfixExpressionSuffix )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:5: ( primaryExpression ( postfixExpressionSuffix )* ) { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:5: ( primaryExpression ( postfixExpressionSuffix )* ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:6: primaryExpression ( postfixExpressionSuffix )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:5: ( primaryExpression ( postfixExpressionSuffix )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:6: primaryExpression ( postfixExpressionSuffix )* { - pushFollow(FOLLOW_primaryExpression_in_postfixExpression748); + pushFollow(FOLLOW_primaryExpression_in_postfixExpression755); primaryExpression18=primaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, primaryExpression18.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:24: ( postfixExpressionSuffix )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:24: ( postfixExpressionSuffix )* loop7: while (true) { int alt7=2; @@ -1288,9 +1291,9 @@ public class CTFParser extends Parser { switch (alt7) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:229:24: postfixExpressionSuffix + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:24: postfixExpressionSuffix { - pushFollow(FOLLOW_postfixExpressionSuffix_in_postfixExpression750); + pushFollow(FOLLOW_postfixExpressionSuffix_in_postfixExpression757); postfixExpressionSuffix19=postfixExpressionSuffix(); state._fsp--; if (state.failed) return retval; @@ -1309,28 +1312,28 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:5: ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:5: ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:5: ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:6: ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:5: ( ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:6: ctfSpecifierHead ( postfixCtfExpression )* ( postfixExpressionSuffix )+ { - pushFollow(FOLLOW_ctfSpecifierHead_in_postfixExpression759); + pushFollow(FOLLOW_ctfSpecifierHead_in_postfixExpression766); ctfSpecifierHead20=ctfSpecifierHead(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, ctfSpecifierHead20.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:23: ( postfixCtfExpression )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:23: ( postfixCtfExpression )* loop8: while (true) { int alt8=2; int LA8_0 = input.LA(1); if ( (LA8_0==DOT) ) { int LA8_2 = input.LA(2); - if ( (LA8_2==CLOCKTOK||LA8_2==ENVTOK||LA8_2==EVENTTOK||LA8_2==STREAMTOK||LA8_2==TRACETOK) ) { + if ( (LA8_2==CALLSITETOK||LA8_2==CLOCKTOK||LA8_2==ENVTOK||LA8_2==EVENTTOK||LA8_2==STREAMTOK||LA8_2==TRACETOK) ) { alt8=1; } @@ -1338,9 +1341,9 @@ public class CTFParser extends Parser { switch (alt8) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:23: postfixCtfExpression + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:23: postfixCtfExpression { - pushFollow(FOLLOW_postfixCtfExpression_in_postfixExpression761); + pushFollow(FOLLOW_postfixCtfExpression_in_postfixExpression768); postfixCtfExpression21=postfixCtfExpression(); state._fsp--; if (state.failed) return retval; @@ -1354,7 +1357,7 @@ public class CTFParser extends Parser { } } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:45: ( postfixExpressionSuffix )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:45: ( postfixExpressionSuffix )+ int cnt9=0; loop9: while (true) { @@ -1366,9 +1369,9 @@ public class CTFParser extends Parser { switch (alt9) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:230:45: postfixExpressionSuffix + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:231:45: postfixExpressionSuffix { - pushFollow(FOLLOW_postfixExpressionSuffix_in_postfixExpression764); + pushFollow(FOLLOW_postfixExpressionSuffix_in_postfixExpression771); postfixExpressionSuffix22=postfixExpressionSuffix(); state._fsp--; if (state.failed) return retval; @@ -1420,7 +1423,7 @@ public class CTFParser extends Parser { // $ANTLR start "unaryExpression" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:233:1: unaryExpression : postfixExpression ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:234:1: unaryExpression : postfixExpression ; public final CTFParser.unaryExpression_return unaryExpression() throws RecognitionException { CTFParser.unaryExpression_return retval = new CTFParser.unaryExpression_return(); retval.start = input.LT(1); @@ -1431,13 +1434,13 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:234:3: ( postfixExpression ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:234:5: postfixExpression + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:235:3: ( postfixExpression ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:235:5: postfixExpression { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_postfixExpression_in_unaryExpression780); + pushFollow(FOLLOW_postfixExpression_in_unaryExpression787); postfixExpression23=postfixExpression(); state._fsp--; if (state.failed) return retval; @@ -1473,7 +1476,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumConstant" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:238:1: enumConstant : ( STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:239:1: enumConstant : ( STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) ); public final CTFParser.enumConstant_return enumConstant() throws RecognitionException { CTFParser.enumConstant_return retval = new CTFParser.enumConstant_return(); retval.start = input.LT(1); @@ -1491,7 +1494,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_ctfKeyword=new RewriteRuleSubtreeStream(adaptor,"rule ctfKeyword"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:239:3: ( STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:240:3: ( STRING_LITERAL -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) | IDENTIFIER -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) | ctfKeyword -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) ) int alt11=3; switch ( input.LA(1) ) { case STRING_LITERAL: @@ -1520,9 +1523,9 @@ public class CTFParser extends Parser { } switch (alt11) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:239:5: STRING_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:240:5: STRING_LITERAL { - STRING_LITERAL24=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_enumConstant797); if (state.failed) return retval; + STRING_LITERAL24=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_enumConstant804); if (state.failed) return retval; if ( state.backtracking==0 ) stream_STRING_LITERAL.add(STRING_LITERAL24); // AST REWRITE @@ -1537,9 +1540,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 239:20: -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) + // 240:20: -> ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:239:23: ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:240:23: ^( UNARY_EXPRESSION_STRING_QUOTES STRING_LITERAL ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING_QUOTES, "UNARY_EXPRESSION_STRING_QUOTES"), root_1); @@ -1556,9 +1559,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:240:5: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:241:5: IDENTIFIER { - IDENTIFIER25=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumConstant811); if (state.failed) return retval; + IDENTIFIER25=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumConstant818); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER25); // AST REWRITE @@ -1573,9 +1576,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 240:16: -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) + // 241:16: -> ^( UNARY_EXPRESSION_STRING IDENTIFIER ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:240:19: ^( UNARY_EXPRESSION_STRING IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:241:19: ^( UNARY_EXPRESSION_STRING IDENTIFIER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING, "UNARY_EXPRESSION_STRING"), root_1); @@ -1592,9 +1595,9 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:241:5: ctfKeyword + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:242:5: ctfKeyword { - pushFollow(FOLLOW_ctfKeyword_in_enumConstant825); + pushFollow(FOLLOW_ctfKeyword_in_enumConstant832); ctfKeyword26=ctfKeyword(); state._fsp--; if (state.failed) return retval; @@ -1611,9 +1614,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 241:16: -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) + // 242:16: -> ^( UNARY_EXPRESSION_STRING ctfKeyword ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:241:19: ^( UNARY_EXPRESSION_STRING ctfKeyword ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:242:19: ^( UNARY_EXPRESSION_STRING ctfKeyword ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(UNARY_EXPRESSION_STRING, "UNARY_EXPRESSION_STRING"), root_1); @@ -1664,7 +1667,7 @@ public class CTFParser extends Parser { // $ANTLR start "declaration" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:246:1: declaration : ( declarationSpecifiers ( declaratorList )? TERM -> {inTypedef()}? ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) -> ^( DECLARATION declarationSpecifiers ( declaratorList )? ) | ctfSpecifier TERM !); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:247:1: declaration : ( declarationSpecifiers ( declaratorList )? TERM -> {inTypedef()}? ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) -> ^( DECLARATION declarationSpecifiers ( declaratorList )? ) | ctfSpecifier TERM !); public final CTFParser.declaration_return declaration() throws RecognitionException { declaration_stack.push(new declaration_scope()); CTFParser.declaration_return retval = new CTFParser.declaration_return(); @@ -1688,7 +1691,7 @@ public class CTFParser extends Parser { typedefOff(); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:253:3: ( declarationSpecifiers ( declaratorList )? TERM -> {inTypedef()}? ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) -> ^( DECLARATION declarationSpecifiers ( declaratorList )? ) | ctfSpecifier TERM !) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:254:3: ( declarationSpecifiers ( declaratorList )? TERM -> {inTypedef()}? ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) -> ^( DECLARATION declarationSpecifiers ( declaratorList )? ) | ctfSpecifier TERM !) int alt13=2; int LA13_0 = input.LA(1); if ( (LA13_0==BOOLTOK||LA13_0==CHARTOK||(LA13_0 >= COMPLEXTOK && LA13_0 <= CONSTTOK)||LA13_0==DOUBLETOK||LA13_0==ENUMTOK||(LA13_0 >= FLOATINGPOINTTOK && LA13_0 <= FLOATTOK)||LA13_0==IMAGINARYTOK||LA13_0==INTEGERTOK||LA13_0==INTTOK||LA13_0==LONGTOK||LA13_0==SHORTTOK||LA13_0==SIGNEDTOK||LA13_0==STRINGTOK||LA13_0==STRUCTTOK||LA13_0==TYPEDEFTOK||(LA13_0 >= UNSIGNEDTOK && LA13_0 <= VOIDTOK)) ) { @@ -1697,7 +1700,7 @@ public class CTFParser extends Parser { else if ( (LA13_0==IDENTIFIER) && (( inTypealiasAlias() || isTypeName(input.LT(1).getText()) ))) { alt13=1; } - else if ( (LA13_0==CLOCKTOK||LA13_0==ENVTOK||LA13_0==EVENTTOK||LA13_0==STREAMTOK||(LA13_0 >= TRACETOK && LA13_0 <= TYPEALIASTOK)) ) { + else if ( (LA13_0==CALLSITETOK||LA13_0==CLOCKTOK||LA13_0==ENVTOK||LA13_0==EVENTTOK||LA13_0==STREAMTOK||(LA13_0 >= TRACETOK && LA13_0 <= TYPEALIASTOK)) ) { alt13=2; } @@ -1710,14 +1713,14 @@ public class CTFParser extends Parser { switch (alt13) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:253:5: declarationSpecifiers ( declaratorList )? TERM + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:254:5: declarationSpecifiers ( declaratorList )? TERM { - pushFollow(FOLLOW_declarationSpecifiers_in_declaration856); + pushFollow(FOLLOW_declarationSpecifiers_in_declaration863); declarationSpecifiers27=declarationSpecifiers(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_declarationSpecifiers.add(declarationSpecifiers27.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:253:27: ( declaratorList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:254:27: ( declaratorList )? int alt12=2; int LA12_0 = input.LA(1); if ( (LA12_0==IDENTIFIER||LA12_0==POINTER) ) { @@ -1725,9 +1728,9 @@ public class CTFParser extends Parser { } switch (alt12) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:253:27: declaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:254:27: declaratorList { - pushFollow(FOLLOW_declaratorList_in_declaration858); + pushFollow(FOLLOW_declaratorList_in_declaration865); declaratorList28=declaratorList(); state._fsp--; if (state.failed) return retval; @@ -1737,7 +1740,7 @@ public class CTFParser extends Parser { } - TERM29=(Token)match(input,TERM,FOLLOW_TERM_in_declaration861); if (state.failed) return retval; + TERM29=(Token)match(input,TERM,FOLLOW_TERM_in_declaration868); if (state.failed) return retval; if ( state.backtracking==0 ) stream_TERM.add(TERM29); // AST REWRITE @@ -1752,13 +1755,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 256:7: -> {inTypedef()}? ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) + // 257:7: -> {inTypedef()}? ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) if (inTypedef()) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:257:10: ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:258:10: ^( DECLARATION ^( TYPEDEF declaratorList declarationSpecifiers ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(DECLARATION, "DECLARATION"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:257:24: ^( TYPEDEF declaratorList declarationSpecifiers ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:258:24: ^( TYPEDEF declaratorList declarationSpecifiers ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPEDEF, "TYPEDEF"), root_2); @@ -1772,14 +1775,14 @@ public class CTFParser extends Parser { } - else // 258:7: -> ^( DECLARATION declarationSpecifiers ( declaratorList )? ) + else // 259:7: -> ^( DECLARATION declarationSpecifiers ( declaratorList )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:258:10: ^( DECLARATION declarationSpecifiers ( declaratorList )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:259:10: ^( DECLARATION declarationSpecifiers ( declaratorList )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(DECLARATION, "DECLARATION"), root_1); adaptor.addChild(root_1, stream_declarationSpecifiers.nextTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:258:46: ( declaratorList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:259:46: ( declaratorList )? if ( stream_declaratorList.hasNext() ) { adaptor.addChild(root_1, stream_declaratorList.nextTree()); } @@ -1797,18 +1800,18 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:259:5: ctfSpecifier TERM ! + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:260:5: ctfSpecifier TERM ! { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_ctfSpecifier_in_declaration929); + pushFollow(FOLLOW_ctfSpecifier_in_declaration936); ctfSpecifier30=ctfSpecifier(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, ctfSpecifier30.getTree()); - TERM31=(Token)match(input,TERM,FOLLOW_TERM_in_declaration931); if (state.failed) return retval; + TERM31=(Token)match(input,TERM,FOLLOW_TERM_in_declaration938); if (state.failed) return retval; } break; @@ -1842,7 +1845,7 @@ public class CTFParser extends Parser { // $ANTLR start "declarationSpecifiers" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:262:1: declarationSpecifiers : ( storageClassSpecifier | typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:263:1: declarationSpecifiers : ( storageClassSpecifier | typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ; public final CTFParser.declarationSpecifiers_return declarationSpecifiers() throws RecognitionException { CTFParser.declarationSpecifiers_return retval = new CTFParser.declarationSpecifiers_return(); retval.start = input.LT(1); @@ -1854,14 +1857,14 @@ public class CTFParser extends Parser { ParserRuleReturnScope typeSpecifier34 =null; RewriteRuleSubtreeStream stream_typeSpecifier=new RewriteRuleSubtreeStream(adaptor,"rule typeSpecifier"); - RewriteRuleSubtreeStream stream_storageClassSpecifier=new RewriteRuleSubtreeStream(adaptor,"rule storageClassSpecifier"); RewriteRuleSubtreeStream stream_typeQualifier=new RewriteRuleSubtreeStream(adaptor,"rule typeQualifier"); + RewriteRuleSubtreeStream stream_storageClassSpecifier=new RewriteRuleSubtreeStream(adaptor,"rule storageClassSpecifier"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:263:3: ( ( storageClassSpecifier | typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:263:5: ( storageClassSpecifier | typeQualifier | typeSpecifier )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:264:3: ( ( storageClassSpecifier | typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:264:5: ( storageClassSpecifier | typeQualifier | typeSpecifier )+ { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:263:5: ( storageClassSpecifier | typeQualifier | typeSpecifier )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:264:5: ( storageClassSpecifier | typeQualifier | typeSpecifier )+ int cnt14=0; loop14: while (true) { @@ -1911,9 +1914,9 @@ public class CTFParser extends Parser { } switch (alt14) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:266:9: storageClassSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:267:9: storageClassSpecifier { - pushFollow(FOLLOW_storageClassSpecifier_in_declarationSpecifiers969); + pushFollow(FOLLOW_storageClassSpecifier_in_declarationSpecifiers976); storageClassSpecifier32=storageClassSpecifier(); state._fsp--; if (state.failed) return retval; @@ -1921,9 +1924,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:267:9: typeQualifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:268:9: typeQualifier { - pushFollow(FOLLOW_typeQualifier_in_declarationSpecifiers979); + pushFollow(FOLLOW_typeQualifier_in_declarationSpecifiers986); typeQualifier33=typeQualifier(); state._fsp--; if (state.failed) return retval; @@ -1931,9 +1934,9 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:268:9: typeSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:269:9: typeSpecifier { - pushFollow(FOLLOW_typeSpecifier_in_declarationSpecifiers989); + pushFollow(FOLLOW_typeSpecifier_in_declarationSpecifiers996); typeSpecifier34=typeSpecifier(); state._fsp--; if (state.failed) return retval; @@ -1962,19 +1965,19 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 269:6: -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) + // 270:6: -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:269:9: ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:270:9: ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_SPECIFIER_LIST, "TYPE_SPECIFIER_LIST"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:269:31: ( typeQualifier )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:270:31: ( typeQualifier )* while ( stream_typeQualifier.hasNext() ) { adaptor.addChild(root_1, stream_typeQualifier.nextTree()); } stream_typeQualifier.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:269:46: ( typeSpecifier )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:270:46: ( typeSpecifier )* while ( stream_typeSpecifier.hasNext() ) { adaptor.addChild(root_1, stream_typeSpecifier.nextTree()); } @@ -2019,7 +2022,7 @@ public class CTFParser extends Parser { // $ANTLR start "declaratorList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:272:1: declaratorList : declarator ( SEPARATOR declarator )* -> ^( TYPE_DECLARATOR_LIST ( declarator )+ ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:273:1: declaratorList : declarator ( SEPARATOR declarator )* -> ^( TYPE_DECLARATOR_LIST ( declarator )+ ) ; public final CTFParser.declaratorList_return declaratorList() throws RecognitionException { CTFParser.declaratorList_return retval = new CTFParser.declaratorList_return(); retval.start = input.LT(1); @@ -2035,15 +2038,15 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_declarator=new RewriteRuleSubtreeStream(adaptor,"rule declarator"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:273:3: ( declarator ( SEPARATOR declarator )* -> ^( TYPE_DECLARATOR_LIST ( declarator )+ ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:273:5: declarator ( SEPARATOR declarator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:274:3: ( declarator ( SEPARATOR declarator )* -> ^( TYPE_DECLARATOR_LIST ( declarator )+ ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:274:5: declarator ( SEPARATOR declarator )* { - pushFollow(FOLLOW_declarator_in_declaratorList1019); + pushFollow(FOLLOW_declarator_in_declaratorList1026); declarator35=declarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_declarator.add(declarator35.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:273:16: ( SEPARATOR declarator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:274:16: ( SEPARATOR declarator )* loop15: while (true) { int alt15=2; @@ -2054,12 +2057,12 @@ public class CTFParser extends Parser { switch (alt15) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:273:17: SEPARATOR declarator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:274:17: SEPARATOR declarator { - SEPARATOR36=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_declaratorList1022); if (state.failed) return retval; + SEPARATOR36=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_declaratorList1029); if (state.failed) return retval; if ( state.backtracking==0 ) stream_SEPARATOR.add(SEPARATOR36); - pushFollow(FOLLOW_declarator_in_declaratorList1024); + pushFollow(FOLLOW_declarator_in_declaratorList1031); declarator37=declarator(); state._fsp--; if (state.failed) return retval; @@ -2084,9 +2087,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 274:7: -> ^( TYPE_DECLARATOR_LIST ( declarator )+ ) + // 275:7: -> ^( TYPE_DECLARATOR_LIST ( declarator )+ ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:274:10: ^( TYPE_DECLARATOR_LIST ( declarator )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:275:10: ^( TYPE_DECLARATOR_LIST ( declarator )+ ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_DECLARATOR_LIST, "TYPE_DECLARATOR_LIST"), root_1); @@ -2137,7 +2140,7 @@ public class CTFParser extends Parser { // $ANTLR start "abstractDeclaratorList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:277:1: abstractDeclaratorList : abstractDeclarator ( SEPARATOR abstractDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:278:1: abstractDeclaratorList : abstractDeclarator ( SEPARATOR abstractDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) ; public final CTFParser.abstractDeclaratorList_return abstractDeclaratorList() throws RecognitionException { CTFParser.abstractDeclaratorList_return retval = new CTFParser.abstractDeclaratorList_return(); retval.start = input.LT(1); @@ -2153,15 +2156,15 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_abstractDeclarator=new RewriteRuleSubtreeStream(adaptor,"rule abstractDeclarator"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:278:3: ( abstractDeclarator ( SEPARATOR abstractDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:278:5: abstractDeclarator ( SEPARATOR abstractDeclarator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:279:3: ( abstractDeclarator ( SEPARATOR abstractDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:279:5: abstractDeclarator ( SEPARATOR abstractDeclarator )* { - pushFollow(FOLLOW_abstractDeclarator_in_abstractDeclaratorList1054); + pushFollow(FOLLOW_abstractDeclarator_in_abstractDeclaratorList1061); abstractDeclarator38=abstractDeclarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_abstractDeclarator.add(abstractDeclarator38.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:278:24: ( SEPARATOR abstractDeclarator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:279:24: ( SEPARATOR abstractDeclarator )* loop16: while (true) { int alt16=2; @@ -2172,12 +2175,12 @@ public class CTFParser extends Parser { switch (alt16) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:278:25: SEPARATOR abstractDeclarator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:279:25: SEPARATOR abstractDeclarator { - SEPARATOR39=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_abstractDeclaratorList1057); if (state.failed) return retval; + SEPARATOR39=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_abstractDeclaratorList1064); if (state.failed) return retval; if ( state.backtracking==0 ) stream_SEPARATOR.add(SEPARATOR39); - pushFollow(FOLLOW_abstractDeclarator_in_abstractDeclaratorList1059); + pushFollow(FOLLOW_abstractDeclarator_in_abstractDeclaratorList1066); abstractDeclarator40=abstractDeclarator(); state._fsp--; if (state.failed) return retval; @@ -2202,9 +2205,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 279:7: -> ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) + // 280:7: -> ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:279:10: ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:280:10: ^( TYPE_DECLARATOR_LIST ( abstractDeclarator )+ ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_DECLARATOR_LIST, "TYPE_DECLARATOR_LIST"), root_1); @@ -2255,7 +2258,7 @@ public class CTFParser extends Parser { // $ANTLR start "storageClassSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:282:1: storageClassSpecifier : TYPEDEFTOK ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:283:1: storageClassSpecifier : TYPEDEFTOK ; public final CTFParser.storageClassSpecifier_return storageClassSpecifier() throws RecognitionException { CTFParser.storageClassSpecifier_return retval = new CTFParser.storageClassSpecifier_return(); retval.start = input.LT(1); @@ -2267,13 +2270,13 @@ public class CTFParser extends Parser { CommonTree TYPEDEFTOK41_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:283:3: ( TYPEDEFTOK ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:283:5: TYPEDEFTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:284:3: ( TYPEDEFTOK ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:284:5: TYPEDEFTOK { root_0 = (CommonTree)adaptor.nil(); - TYPEDEFTOK41=(Token)match(input,TYPEDEFTOK,FOLLOW_TYPEDEFTOK_in_storageClassSpecifier1089); if (state.failed) return retval; + TYPEDEFTOK41=(Token)match(input,TYPEDEFTOK,FOLLOW_TYPEDEFTOK_in_storageClassSpecifier1096); if (state.failed) return retval; if ( state.backtracking==0 ) { TYPEDEFTOK41_tree = (CommonTree)adaptor.create(TYPEDEFTOK41); adaptor.addChild(root_0, TYPEDEFTOK41_tree); @@ -2310,7 +2313,7 @@ public class CTFParser extends Parser { // $ANTLR start "typeSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:286:1: typeSpecifier : ( FLOATTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | UNSIGNEDTOK | CHARTOK | DOUBLETOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | structSpecifier | variantSpecifier | enumSpecifier | ctfTypeSpecifier |{...}? => typedefName ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:287:1: typeSpecifier : ( FLOATTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | UNSIGNEDTOK | CHARTOK | DOUBLETOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | structSpecifier | variantSpecifier | enumSpecifier | ctfTypeSpecifier |{...}? => typedefName ); public final CTFParser.typeSpecifier_return typeSpecifier() throws RecognitionException { CTFParser.typeSpecifier_return retval = new CTFParser.typeSpecifier_return(); retval.start = input.LT(1); @@ -2349,7 +2352,7 @@ public class CTFParser extends Parser { CommonTree IMAGINARYTOK53_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:287:3: ( FLOATTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | UNSIGNEDTOK | CHARTOK | DOUBLETOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | structSpecifier | variantSpecifier | enumSpecifier | ctfTypeSpecifier |{...}? => typedefName ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:288:3: ( FLOATTOK | INTTOK | LONGTOK | SHORTTOK | SIGNEDTOK | UNSIGNEDTOK | CHARTOK | DOUBLETOK | VOIDTOK | BOOLTOK | COMPLEXTOK | IMAGINARYTOK | structSpecifier | variantSpecifier | enumSpecifier | ctfTypeSpecifier |{...}? => typedefName ) int alt17=17; int LA17_0 = input.LA(1); if ( (LA17_0==FLOATTOK) ) { @@ -2406,12 +2409,12 @@ public class CTFParser extends Parser { switch (alt17) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:287:5: FLOATTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:288:5: FLOATTOK { root_0 = (CommonTree)adaptor.nil(); - FLOATTOK42=(Token)match(input,FLOATTOK,FOLLOW_FLOATTOK_in_typeSpecifier1105); if (state.failed) return retval; + FLOATTOK42=(Token)match(input,FLOATTOK,FOLLOW_FLOATTOK_in_typeSpecifier1112); if (state.failed) return retval; if ( state.backtracking==0 ) { FLOATTOK42_tree = (CommonTree)adaptor.create(FLOATTOK42); adaptor.addChild(root_0, FLOATTOK42_tree); @@ -2420,12 +2423,12 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:288:5: INTTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:289:5: INTTOK { root_0 = (CommonTree)adaptor.nil(); - INTTOK43=(Token)match(input,INTTOK,FOLLOW_INTTOK_in_typeSpecifier1111); if (state.failed) return retval; + INTTOK43=(Token)match(input,INTTOK,FOLLOW_INTTOK_in_typeSpecifier1118); if (state.failed) return retval; if ( state.backtracking==0 ) { INTTOK43_tree = (CommonTree)adaptor.create(INTTOK43); adaptor.addChild(root_0, INTTOK43_tree); @@ -2434,12 +2437,12 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:289:5: LONGTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:290:5: LONGTOK { root_0 = (CommonTree)adaptor.nil(); - LONGTOK44=(Token)match(input,LONGTOK,FOLLOW_LONGTOK_in_typeSpecifier1117); if (state.failed) return retval; + LONGTOK44=(Token)match(input,LONGTOK,FOLLOW_LONGTOK_in_typeSpecifier1124); if (state.failed) return retval; if ( state.backtracking==0 ) { LONGTOK44_tree = (CommonTree)adaptor.create(LONGTOK44); adaptor.addChild(root_0, LONGTOK44_tree); @@ -2448,12 +2451,12 @@ public class CTFParser extends Parser { } break; case 4 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:290:5: SHORTTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:291:5: SHORTTOK { root_0 = (CommonTree)adaptor.nil(); - SHORTTOK45=(Token)match(input,SHORTTOK,FOLLOW_SHORTTOK_in_typeSpecifier1123); if (state.failed) return retval; + SHORTTOK45=(Token)match(input,SHORTTOK,FOLLOW_SHORTTOK_in_typeSpecifier1130); if (state.failed) return retval; if ( state.backtracking==0 ) { SHORTTOK45_tree = (CommonTree)adaptor.create(SHORTTOK45); adaptor.addChild(root_0, SHORTTOK45_tree); @@ -2462,12 +2465,12 @@ public class CTFParser extends Parser { } break; case 5 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:291:5: SIGNEDTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:292:5: SIGNEDTOK { root_0 = (CommonTree)adaptor.nil(); - SIGNEDTOK46=(Token)match(input,SIGNEDTOK,FOLLOW_SIGNEDTOK_in_typeSpecifier1129); if (state.failed) return retval; + SIGNEDTOK46=(Token)match(input,SIGNEDTOK,FOLLOW_SIGNEDTOK_in_typeSpecifier1136); if (state.failed) return retval; if ( state.backtracking==0 ) { SIGNEDTOK46_tree = (CommonTree)adaptor.create(SIGNEDTOK46); adaptor.addChild(root_0, SIGNEDTOK46_tree); @@ -2476,12 +2479,12 @@ public class CTFParser extends Parser { } break; case 6 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:292:5: UNSIGNEDTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:293:5: UNSIGNEDTOK { root_0 = (CommonTree)adaptor.nil(); - UNSIGNEDTOK47=(Token)match(input,UNSIGNEDTOK,FOLLOW_UNSIGNEDTOK_in_typeSpecifier1135); if (state.failed) return retval; + UNSIGNEDTOK47=(Token)match(input,UNSIGNEDTOK,FOLLOW_UNSIGNEDTOK_in_typeSpecifier1142); if (state.failed) return retval; if ( state.backtracking==0 ) { UNSIGNEDTOK47_tree = (CommonTree)adaptor.create(UNSIGNEDTOK47); adaptor.addChild(root_0, UNSIGNEDTOK47_tree); @@ -2490,12 +2493,12 @@ public class CTFParser extends Parser { } break; case 7 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:293:5: CHARTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:294:5: CHARTOK { root_0 = (CommonTree)adaptor.nil(); - CHARTOK48=(Token)match(input,CHARTOK,FOLLOW_CHARTOK_in_typeSpecifier1141); if (state.failed) return retval; + CHARTOK48=(Token)match(input,CHARTOK,FOLLOW_CHARTOK_in_typeSpecifier1148); if (state.failed) return retval; if ( state.backtracking==0 ) { CHARTOK48_tree = (CommonTree)adaptor.create(CHARTOK48); adaptor.addChild(root_0, CHARTOK48_tree); @@ -2504,12 +2507,12 @@ public class CTFParser extends Parser { } break; case 8 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:294:5: DOUBLETOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:295:5: DOUBLETOK { root_0 = (CommonTree)adaptor.nil(); - DOUBLETOK49=(Token)match(input,DOUBLETOK,FOLLOW_DOUBLETOK_in_typeSpecifier1147); if (state.failed) return retval; + DOUBLETOK49=(Token)match(input,DOUBLETOK,FOLLOW_DOUBLETOK_in_typeSpecifier1154); if (state.failed) return retval; if ( state.backtracking==0 ) { DOUBLETOK49_tree = (CommonTree)adaptor.create(DOUBLETOK49); adaptor.addChild(root_0, DOUBLETOK49_tree); @@ -2518,12 +2521,12 @@ public class CTFParser extends Parser { } break; case 9 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:295:5: VOIDTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:296:5: VOIDTOK { root_0 = (CommonTree)adaptor.nil(); - VOIDTOK50=(Token)match(input,VOIDTOK,FOLLOW_VOIDTOK_in_typeSpecifier1153); if (state.failed) return retval; + VOIDTOK50=(Token)match(input,VOIDTOK,FOLLOW_VOIDTOK_in_typeSpecifier1160); if (state.failed) return retval; if ( state.backtracking==0 ) { VOIDTOK50_tree = (CommonTree)adaptor.create(VOIDTOK50); adaptor.addChild(root_0, VOIDTOK50_tree); @@ -2532,12 +2535,12 @@ public class CTFParser extends Parser { } break; case 10 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:296:5: BOOLTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:297:5: BOOLTOK { root_0 = (CommonTree)adaptor.nil(); - BOOLTOK51=(Token)match(input,BOOLTOK,FOLLOW_BOOLTOK_in_typeSpecifier1159); if (state.failed) return retval; + BOOLTOK51=(Token)match(input,BOOLTOK,FOLLOW_BOOLTOK_in_typeSpecifier1166); if (state.failed) return retval; if ( state.backtracking==0 ) { BOOLTOK51_tree = (CommonTree)adaptor.create(BOOLTOK51); adaptor.addChild(root_0, BOOLTOK51_tree); @@ -2546,12 +2549,12 @@ public class CTFParser extends Parser { } break; case 11 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:297:5: COMPLEXTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:298:5: COMPLEXTOK { root_0 = (CommonTree)adaptor.nil(); - COMPLEXTOK52=(Token)match(input,COMPLEXTOK,FOLLOW_COMPLEXTOK_in_typeSpecifier1165); if (state.failed) return retval; + COMPLEXTOK52=(Token)match(input,COMPLEXTOK,FOLLOW_COMPLEXTOK_in_typeSpecifier1172); if (state.failed) return retval; if ( state.backtracking==0 ) { COMPLEXTOK52_tree = (CommonTree)adaptor.create(COMPLEXTOK52); adaptor.addChild(root_0, COMPLEXTOK52_tree); @@ -2560,12 +2563,12 @@ public class CTFParser extends Parser { } break; case 12 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:298:5: IMAGINARYTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:299:5: IMAGINARYTOK { root_0 = (CommonTree)adaptor.nil(); - IMAGINARYTOK53=(Token)match(input,IMAGINARYTOK,FOLLOW_IMAGINARYTOK_in_typeSpecifier1171); if (state.failed) return retval; + IMAGINARYTOK53=(Token)match(input,IMAGINARYTOK,FOLLOW_IMAGINARYTOK_in_typeSpecifier1178); if (state.failed) return retval; if ( state.backtracking==0 ) { IMAGINARYTOK53_tree = (CommonTree)adaptor.create(IMAGINARYTOK53); adaptor.addChild(root_0, IMAGINARYTOK53_tree); @@ -2574,12 +2577,12 @@ public class CTFParser extends Parser { } break; case 13 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:299:5: structSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:300:5: structSpecifier { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_structSpecifier_in_typeSpecifier1177); + pushFollow(FOLLOW_structSpecifier_in_typeSpecifier1184); structSpecifier54=structSpecifier(); state._fsp--; if (state.failed) return retval; @@ -2588,12 +2591,12 @@ public class CTFParser extends Parser { } break; case 14 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:300:5: variantSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:301:5: variantSpecifier { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_variantSpecifier_in_typeSpecifier1183); + pushFollow(FOLLOW_variantSpecifier_in_typeSpecifier1190); variantSpecifier55=variantSpecifier(); state._fsp--; if (state.failed) return retval; @@ -2602,12 +2605,12 @@ public class CTFParser extends Parser { } break; case 15 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:301:5: enumSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:302:5: enumSpecifier { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_enumSpecifier_in_typeSpecifier1189); + pushFollow(FOLLOW_enumSpecifier_in_typeSpecifier1196); enumSpecifier56=enumSpecifier(); state._fsp--; if (state.failed) return retval; @@ -2616,12 +2619,12 @@ public class CTFParser extends Parser { } break; case 16 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:302:5: ctfTypeSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:303:5: ctfTypeSpecifier { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_ctfTypeSpecifier_in_typeSpecifier1195); + pushFollow(FOLLOW_ctfTypeSpecifier_in_typeSpecifier1202); ctfTypeSpecifier57=ctfTypeSpecifier(); state._fsp--; if (state.failed) return retval; @@ -2630,7 +2633,7 @@ public class CTFParser extends Parser { } break; case 17 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:303:5: {...}? => typedefName + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:304:5: {...}? => typedefName { root_0 = (CommonTree)adaptor.nil(); @@ -2639,7 +2642,7 @@ public class CTFParser extends Parser { if (state.backtracking>0) {state.failed=true; return retval;} throw new FailedPredicateException(input, "typeSpecifier", " inTypealiasAlias() || isTypeName(input.LT(1).getText()) "); } - pushFollow(FOLLOW_typedefName_in_typeSpecifier1205); + pushFollow(FOLLOW_typedefName_in_typeSpecifier1212); typedefName58=typedefName(); state._fsp--; if (state.failed) return retval; @@ -2677,7 +2680,7 @@ public class CTFParser extends Parser { // $ANTLR start "typeQualifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:306:1: typeQualifier : CONSTTOK ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:307:1: typeQualifier : CONSTTOK ; public final CTFParser.typeQualifier_return typeQualifier() throws RecognitionException { CTFParser.typeQualifier_return retval = new CTFParser.typeQualifier_return(); retval.start = input.LT(1); @@ -2689,13 +2692,13 @@ public class CTFParser extends Parser { CommonTree CONSTTOK59_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:307:3: ( CONSTTOK ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:307:5: CONSTTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:308:3: ( CONSTTOK ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:308:5: CONSTTOK { root_0 = (CommonTree)adaptor.nil(); - CONSTTOK59=(Token)match(input,CONSTTOK,FOLLOW_CONSTTOK_in_typeQualifier1218); if (state.failed) return retval; + CONSTTOK59=(Token)match(input,CONSTTOK,FOLLOW_CONSTTOK_in_typeQualifier1225); if (state.failed) return retval; if ( state.backtracking==0 ) { CONSTTOK59_tree = (CommonTree)adaptor.create(CONSTTOK59); adaptor.addChild(root_0, CONSTTOK59_tree); @@ -2731,7 +2734,7 @@ public class CTFParser extends Parser { // $ANTLR start "alignAttribute" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:310:1: alignAttribute : ALIGNTOK LPAREN unaryExpression RPAREN -> ^( ALIGN unaryExpression ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:311:1: alignAttribute : ALIGNTOK LPAREN unaryExpression RPAREN -> ^( ALIGN unaryExpression ) ; public final CTFParser.alignAttribute_return alignAttribute() throws RecognitionException { CTFParser.alignAttribute_return retval = new CTFParser.alignAttribute_return(); retval.start = input.LT(1); @@ -2746,27 +2749,27 @@ public class CTFParser extends Parser { CommonTree ALIGNTOK60_tree=null; CommonTree LPAREN61_tree=null; CommonTree RPAREN63_tree=null; - RewriteRuleTokenStream stream_LPAREN=new RewriteRuleTokenStream(adaptor,"token LPAREN"); RewriteRuleTokenStream stream_RPAREN=new RewriteRuleTokenStream(adaptor,"token RPAREN"); RewriteRuleTokenStream stream_ALIGNTOK=new RewriteRuleTokenStream(adaptor,"token ALIGNTOK"); + RewriteRuleTokenStream stream_LPAREN=new RewriteRuleTokenStream(adaptor,"token LPAREN"); RewriteRuleSubtreeStream stream_unaryExpression=new RewriteRuleSubtreeStream(adaptor,"rule unaryExpression"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:311:3: ( ALIGNTOK LPAREN unaryExpression RPAREN -> ^( ALIGN unaryExpression ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:311:5: ALIGNTOK LPAREN unaryExpression RPAREN + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:312:3: ( ALIGNTOK LPAREN unaryExpression RPAREN -> ^( ALIGN unaryExpression ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:312:5: ALIGNTOK LPAREN unaryExpression RPAREN { - ALIGNTOK60=(Token)match(input,ALIGNTOK,FOLLOW_ALIGNTOK_in_alignAttribute1231); if (state.failed) return retval; + ALIGNTOK60=(Token)match(input,ALIGNTOK,FOLLOW_ALIGNTOK_in_alignAttribute1238); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ALIGNTOK.add(ALIGNTOK60); - LPAREN61=(Token)match(input,LPAREN,FOLLOW_LPAREN_in_alignAttribute1233); if (state.failed) return retval; + LPAREN61=(Token)match(input,LPAREN,FOLLOW_LPAREN_in_alignAttribute1240); if (state.failed) return retval; if ( state.backtracking==0 ) stream_LPAREN.add(LPAREN61); - pushFollow(FOLLOW_unaryExpression_in_alignAttribute1235); + pushFollow(FOLLOW_unaryExpression_in_alignAttribute1242); unaryExpression62=unaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_unaryExpression.add(unaryExpression62.getTree()); - RPAREN63=(Token)match(input,RPAREN,FOLLOW_RPAREN_in_alignAttribute1237); if (state.failed) return retval; + RPAREN63=(Token)match(input,RPAREN,FOLLOW_RPAREN_in_alignAttribute1244); if (state.failed) return retval; if ( state.backtracking==0 ) stream_RPAREN.add(RPAREN63); // AST REWRITE @@ -2781,9 +2784,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 311:44: -> ^( ALIGN unaryExpression ) + // 312:44: -> ^( ALIGN unaryExpression ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:311:47: ^( ALIGN unaryExpression ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:312:47: ^( ALIGN unaryExpression ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ALIGN, "ALIGN"), root_1); @@ -2827,7 +2830,7 @@ public class CTFParser extends Parser { // $ANTLR start "structBody" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:315:1: structBody : LCURL ( structOrVariantDeclarationList )? RCURL -> ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:316:1: structBody : LCURL ( structOrVariantDeclarationList )? RCURL -> ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) ; public final CTFParser.structBody_return structBody() throws RecognitionException { Symbols_stack.push(new Symbols_scope()); @@ -2850,13 +2853,13 @@ public class CTFParser extends Parser { Symbols_stack.peek().types = new HashSet(); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:320:3: ( LCURL ( structOrVariantDeclarationList )? RCURL -> ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:320:5: LCURL ( structOrVariantDeclarationList )? RCURL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:321:3: ( LCURL ( structOrVariantDeclarationList )? RCURL -> ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:321:5: LCURL ( structOrVariantDeclarationList )? RCURL { - LCURL64=(Token)match(input,LCURL,FOLLOW_LCURL_in_structBody1271); if (state.failed) return retval; + LCURL64=(Token)match(input,LCURL,FOLLOW_LCURL_in_structBody1278); if (state.failed) return retval; if ( state.backtracking==0 ) stream_LCURL.add(LCURL64); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:320:11: ( structOrVariantDeclarationList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:321:11: ( structOrVariantDeclarationList )? int alt18=2; int LA18_0 = input.LA(1); if ( (LA18_0==BOOLTOK||LA18_0==CHARTOK||(LA18_0 >= COMPLEXTOK && LA18_0 <= CONSTTOK)||LA18_0==DOUBLETOK||LA18_0==ENUMTOK||(LA18_0 >= FLOATINGPOINTTOK && LA18_0 <= FLOATTOK)||LA18_0==IMAGINARYTOK||LA18_0==INTEGERTOK||LA18_0==INTTOK||LA18_0==LONGTOK||LA18_0==SHORTTOK||LA18_0==SIGNEDTOK||LA18_0==STRINGTOK||LA18_0==STRUCTTOK||LA18_0==TYPEDEFTOK||(LA18_0 >= UNSIGNEDTOK && LA18_0 <= VOIDTOK)) ) { @@ -2870,9 +2873,9 @@ public class CTFParser extends Parser { } switch (alt18) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:320:11: structOrVariantDeclarationList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:321:11: structOrVariantDeclarationList { - pushFollow(FOLLOW_structOrVariantDeclarationList_in_structBody1273); + pushFollow(FOLLOW_structOrVariantDeclarationList_in_structBody1280); structOrVariantDeclarationList65=structOrVariantDeclarationList(); state._fsp--; if (state.failed) return retval; @@ -2882,7 +2885,7 @@ public class CTFParser extends Parser { } - RCURL66=(Token)match(input,RCURL,FOLLOW_RCURL_in_structBody1276); if (state.failed) return retval; + RCURL66=(Token)match(input,RCURL,FOLLOW_RCURL_in_structBody1283); if (state.failed) return retval; if ( state.backtracking==0 ) stream_RCURL.add(RCURL66); // AST REWRITE @@ -2897,13 +2900,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 321:7: -> ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) + // 322:7: -> ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:321:10: ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:322:10: ^( STRUCT_BODY ( structOrVariantDeclarationList )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(STRUCT_BODY, "STRUCT_BODY"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:321:24: ( structOrVariantDeclarationList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:322:24: ( structOrVariantDeclarationList )? if ( stream_structOrVariantDeclarationList.hasNext() ) { adaptor.addChild(root_1, stream_structOrVariantDeclarationList.nextTree()); } @@ -2950,7 +2953,7 @@ public class CTFParser extends Parser { // $ANTLR start "structSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:324:1: structSpecifier : STRUCTTOK ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) -> ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:325:1: structSpecifier : STRUCTTOK ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) -> ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) ; public final CTFParser.structSpecifier_return structSpecifier() throws RecognitionException { CTFParser.structSpecifier_return retval = new CTFParser.structSpecifier_return(); retval.start = input.LT(1); @@ -2972,13 +2975,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_alignAttribute=new RewriteRuleSubtreeStream(adaptor,"rule alignAttribute"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:325:3: ( STRUCTTOK ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) -> ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:325:5: STRUCTTOK ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:326:3: ( STRUCTTOK ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) -> ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:326:5: STRUCTTOK ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) { - STRUCTTOK67=(Token)match(input,STRUCTTOK,FOLLOW_STRUCTTOK_in_structSpecifier1304); if (state.failed) return retval; + STRUCTTOK67=(Token)match(input,STRUCTTOK,FOLLOW_STRUCTTOK_in_structSpecifier1311); if (state.failed) return retval; if ( state.backtracking==0 ) stream_STRUCTTOK.add(STRUCTTOK67); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:326:3: ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:327:3: ( ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) | ( structBody ( alignAttribute |) ) ) int alt22=2; int LA22_0 = input.LA(1); if ( (LA22_0==IDENTIFIER) ) { @@ -2997,17 +3000,17 @@ public class CTFParser extends Parser { switch (alt22) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:328:5: ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:329:5: ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:328:5: ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:329:9: structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:329:5: ( structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:330:9: structName ( alignAttribute | ( structBody ( alignAttribute |) ) |) { - pushFollow(FOLLOW_structName_in_structSpecifier1329); + pushFollow(FOLLOW_structName_in_structSpecifier1336); structName68=structName(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_structName.add(structName68.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:330:9: ( alignAttribute | ( structBody ( alignAttribute |) ) |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:331:9: ( alignAttribute | ( structBody ( alignAttribute |) ) |) int alt20=3; switch ( input.LA(1) ) { case ALIGNTOK: @@ -3182,9 +3185,9 @@ public class CTFParser extends Parser { } switch (alt20) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:331:11: alignAttribute + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:332:11: alignAttribute { - pushFollow(FOLLOW_alignAttribute_in_structSpecifier1351); + pushFollow(FOLLOW_alignAttribute_in_structSpecifier1358); alignAttribute69=alignAttribute(); state._fsp--; if (state.failed) return retval; @@ -3192,17 +3195,17 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:333:11: ( structBody ( alignAttribute |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:334:11: ( structBody ( alignAttribute |) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:333:11: ( structBody ( alignAttribute |) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:334:13: structBody ( alignAttribute |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:334:11: ( structBody ( alignAttribute |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:335:13: structBody ( alignAttribute |) { - pushFollow(FOLLOW_structBody_in_structSpecifier1387); + pushFollow(FOLLOW_structBody_in_structSpecifier1394); structBody70=structBody(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_structBody.add(structBody70.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:335:13: ( alignAttribute |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:336:13: ( alignAttribute |) int alt19=2; int LA19_0 = input.LA(1); if ( (LA19_0==ALIGNTOK) ) { @@ -3221,9 +3224,9 @@ public class CTFParser extends Parser { switch (alt19) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:336:14: alignAttribute + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:337:14: alignAttribute { - pushFollow(FOLLOW_alignAttribute_in_structSpecifier1418); + pushFollow(FOLLOW_alignAttribute_in_structSpecifier1425); alignAttribute71=alignAttribute(); state._fsp--; if (state.failed) return retval; @@ -3231,7 +3234,7 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:339:13: + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:340:13: { } break; @@ -3243,7 +3246,7 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:343:9: + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:344:9: { } break; @@ -3255,17 +3258,17 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:347:5: ( structBody ( alignAttribute |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:348:5: ( structBody ( alignAttribute |) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:347:5: ( structBody ( alignAttribute |) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:348:7: structBody ( alignAttribute |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:348:5: ( structBody ( alignAttribute |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:349:7: structBody ( alignAttribute |) { - pushFollow(FOLLOW_structBody_in_structSpecifier1534); + pushFollow(FOLLOW_structBody_in_structSpecifier1541); structBody72=structBody(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_structBody.add(structBody72.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:349:7: ( alignAttribute |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:350:7: ( alignAttribute |) int alt21=2; int LA21_0 = input.LA(1); if ( (LA21_0==ALIGNTOK) ) { @@ -3284,9 +3287,9 @@ public class CTFParser extends Parser { switch (alt21) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:350:9: alignAttribute + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:351:9: alignAttribute { - pushFollow(FOLLOW_alignAttribute_in_structSpecifier1552); + pushFollow(FOLLOW_alignAttribute_in_structSpecifier1559); alignAttribute73=alignAttribute(); state._fsp--; if (state.failed) return retval; @@ -3294,7 +3297,7 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:353:7: + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:354:7: { } break; @@ -3309,7 +3312,7 @@ public class CTFParser extends Parser { } // AST REWRITE - // elements: structName, structBody, alignAttribute + // elements: structBody, alignAttribute, structName // token labels: // rule labels: retval // token list labels: @@ -3320,25 +3323,25 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 355:5: -> ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) + // 356:5: -> ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:355:8: ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:356:8: ^( STRUCT ( structName )? ( structBody )? ( alignAttribute )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(STRUCT, "STRUCT"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:355:17: ( structName )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:356:17: ( structName )? if ( stream_structName.hasNext() ) { adaptor.addChild(root_1, stream_structName.nextTree()); } stream_structName.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:355:29: ( structBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:356:29: ( structBody )? if ( stream_structBody.hasNext() ) { adaptor.addChild(root_1, stream_structBody.nextTree()); } stream_structBody.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:355:41: ( alignAttribute )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:356:41: ( alignAttribute )? if ( stream_alignAttribute.hasNext() ) { adaptor.addChild(root_1, stream_alignAttribute.nextTree()); } @@ -3383,7 +3386,7 @@ public class CTFParser extends Parser { // $ANTLR start "structName" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:358:1: structName : IDENTIFIER -> ^( STRUCT_NAME IDENTIFIER ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:359:1: structName : IDENTIFIER -> ^( STRUCT_NAME IDENTIFIER ) ; public final CTFParser.structName_return structName() throws RecognitionException { CTFParser.structName_return retval = new CTFParser.structName_return(); retval.start = input.LT(1); @@ -3396,10 +3399,10 @@ public class CTFParser extends Parser { RewriteRuleTokenStream stream_IDENTIFIER=new RewriteRuleTokenStream(adaptor,"token IDENTIFIER"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:359:3: ( IDENTIFIER -> ^( STRUCT_NAME IDENTIFIER ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:359:5: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:360:3: ( IDENTIFIER -> ^( STRUCT_NAME IDENTIFIER ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:360:5: IDENTIFIER { - IDENTIFIER74=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_structName1618); if (state.failed) return retval; + IDENTIFIER74=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_structName1625); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER74); // AST REWRITE @@ -3414,9 +3417,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 359:16: -> ^( STRUCT_NAME IDENTIFIER ) + // 360:16: -> ^( STRUCT_NAME IDENTIFIER ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:359:19: ^( STRUCT_NAME IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:360:19: ^( STRUCT_NAME IDENTIFIER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(STRUCT_NAME, "STRUCT_NAME"), root_1); @@ -3460,7 +3463,7 @@ public class CTFParser extends Parser { // $ANTLR start "structOrVariantDeclarationList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:362:1: structOrVariantDeclarationList : ( structOrVariantDeclaration )+ ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:363:1: structOrVariantDeclarationList : ( structOrVariantDeclaration )+ ; public final CTFParser.structOrVariantDeclarationList_return structOrVariantDeclarationList() throws RecognitionException { CTFParser.structOrVariantDeclarationList_return retval = new CTFParser.structOrVariantDeclarationList_return(); retval.start = input.LT(1); @@ -3471,13 +3474,13 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:363:3: ( ( structOrVariantDeclaration )+ ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:363:5: ( structOrVariantDeclaration )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:364:3: ( ( structOrVariantDeclaration )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:364:5: ( structOrVariantDeclaration )+ { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:363:5: ( structOrVariantDeclaration )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:364:5: ( structOrVariantDeclaration )+ int cnt23=0; loop23: while (true) { @@ -3495,9 +3498,9 @@ public class CTFParser extends Parser { switch (alt23) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:363:5: structOrVariantDeclaration + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:364:5: structOrVariantDeclaration { - pushFollow(FOLLOW_structOrVariantDeclaration_in_structOrVariantDeclarationList1639); + pushFollow(FOLLOW_structOrVariantDeclaration_in_structOrVariantDeclarationList1646); structOrVariantDeclaration75=structOrVariantDeclaration(); state._fsp--; if (state.failed) return retval; @@ -3545,7 +3548,7 @@ public class CTFParser extends Parser { // $ANTLR start "structOrVariantDeclaration" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:366:1: structOrVariantDeclaration : ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) TERM ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:367:1: structOrVariantDeclaration : ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) TERM ; public final CTFParser.structOrVariantDeclaration_return structOrVariantDeclaration() throws RecognitionException { CTFParser.structOrVariantDeclaration_return retval = new CTFParser.structOrVariantDeclaration_return(); retval.start = input.LT(1); @@ -3560,16 +3563,16 @@ public class CTFParser extends Parser { CommonTree TERM80_tree=null; RewriteRuleTokenStream stream_TERM=new RewriteRuleTokenStream(adaptor,"token TERM"); - RewriteRuleSubtreeStream stream_typealiasDecl=new RewriteRuleSubtreeStream(adaptor,"rule typealiasDecl"); RewriteRuleSubtreeStream stream_declaratorList=new RewriteRuleSubtreeStream(adaptor,"rule declaratorList"); - RewriteRuleSubtreeStream stream_structOrVariantDeclaratorList=new RewriteRuleSubtreeStream(adaptor,"rule structOrVariantDeclaratorList"); + RewriteRuleSubtreeStream stream_typealiasDecl=new RewriteRuleSubtreeStream(adaptor,"rule typealiasDecl"); RewriteRuleSubtreeStream stream_declarationSpecifiers=new RewriteRuleSubtreeStream(adaptor,"rule declarationSpecifiers"); + RewriteRuleSubtreeStream stream_structOrVariantDeclaratorList=new RewriteRuleSubtreeStream(adaptor,"rule structOrVariantDeclaratorList"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:367:3: ( ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) TERM ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:368:3: ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) TERM + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:368:3: ( ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) TERM ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:369:3: ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) TERM { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:368:3: ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:369:3: ( ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) | typealiasDecl -> typealiasDecl ) int alt25=2; int LA25_0 = input.LA(1); if ( (LA25_0==BOOLTOK||LA25_0==CHARTOK||(LA25_0 >= COMPLEXTOK && LA25_0 <= CONSTTOK)||LA25_0==DOUBLETOK||LA25_0==ENUMTOK||(LA25_0 >= FLOATINGPOINTTOK && LA25_0 <= FLOATTOK)||LA25_0==IMAGINARYTOK||LA25_0==INTEGERTOK||LA25_0==INTTOK||LA25_0==LONGTOK||LA25_0==SHORTTOK||LA25_0==SIGNEDTOK||LA25_0==STRINGTOK||LA25_0==STRUCTTOK||LA25_0==TYPEDEFTOK||(LA25_0 >= UNSIGNEDTOK && LA25_0 <= VOIDTOK)) ) { @@ -3591,28 +3594,28 @@ public class CTFParser extends Parser { switch (alt25) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:369:7: ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:370:7: ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:369:7: ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:370:8: declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:370:7: ( declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:371:8: declarationSpecifiers ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) { - pushFollow(FOLLOW_declarationSpecifiers_in_structOrVariantDeclaration1672); + pushFollow(FOLLOW_declarationSpecifiers_in_structOrVariantDeclaration1679); declarationSpecifiers76=declarationSpecifiers(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_declarationSpecifiers.add(declarationSpecifiers76.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:371:10: ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:372:10: ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) ) int alt24=2; alt24 = dfa24.predict(input); switch (alt24) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:373:12: {...}? => declaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:374:12: {...}? => declaratorList { if ( !((inTypedef())) ) { if (state.backtracking>0) {state.failed=true; return retval;} throw new FailedPredicateException(input, "structOrVariantDeclaration", "inTypedef()"); } - pushFollow(FOLLOW_declaratorList_in_structOrVariantDeclaration1713); + pushFollow(FOLLOW_declaratorList_in_structOrVariantDeclaration1720); declaratorList77=declaratorList(); state._fsp--; if (state.failed) return retval; @@ -3629,9 +3632,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 374:14: -> ^( TYPEDEF declaratorList declarationSpecifiers ) + // 375:14: -> ^( TYPEDEF declaratorList declarationSpecifiers ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:374:17: ^( TYPEDEF declaratorList declarationSpecifiers ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:375:17: ^( TYPEDEF declaratorList declarationSpecifiers ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPEDEF, "TYPEDEF"), root_1); @@ -3649,15 +3652,15 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:375:14: structOrVariantDeclaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:376:14: structOrVariantDeclaratorList { - pushFollow(FOLLOW_structOrVariantDeclaratorList_in_structOrVariantDeclaration1751); + pushFollow(FOLLOW_structOrVariantDeclaratorList_in_structOrVariantDeclaration1758); structOrVariantDeclaratorList78=structOrVariantDeclaratorList(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_structOrVariantDeclaratorList.add(structOrVariantDeclaratorList78.getTree()); // AST REWRITE - // elements: declarationSpecifiers, structOrVariantDeclaratorList + // elements: structOrVariantDeclaratorList, declarationSpecifiers // token labels: // rule labels: retval // token list labels: @@ -3668,9 +3671,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 376:14: -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) + // 377:14: -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:376:17: ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:377:17: ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(SV_DECLARATION, "SV_DECLARATION"), root_1); @@ -3695,9 +3698,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:381:5: typealiasDecl + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:382:5: typealiasDecl { - pushFollow(FOLLOW_typealiasDecl_in_structOrVariantDeclaration1810); + pushFollow(FOLLOW_typealiasDecl_in_structOrVariantDeclaration1817); typealiasDecl79=typealiasDecl(); state._fsp--; if (state.failed) return retval; @@ -3714,7 +3717,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 381:19: -> typealiasDecl + // 382:19: -> typealiasDecl { adaptor.addChild(root_0, stream_typealiasDecl.nextTree()); } @@ -3728,7 +3731,7 @@ public class CTFParser extends Parser { } - TERM80=(Token)match(input,TERM,FOLLOW_TERM_in_structOrVariantDeclaration1822); if (state.failed) return retval; + TERM80=(Token)match(input,TERM,FOLLOW_TERM_in_structOrVariantDeclaration1829); if (state.failed) return retval; if ( state.backtracking==0 ) stream_TERM.add(TERM80); } @@ -3761,7 +3764,7 @@ public class CTFParser extends Parser { // $ANTLR start "specifierQualifierList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:386:1: specifierQualifierList : ( typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:387:1: specifierQualifierList : ( typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ; public final CTFParser.specifierQualifierList_return specifierQualifierList() throws RecognitionException { CTFParser.specifierQualifierList_return retval = new CTFParser.specifierQualifierList_return(); retval.start = input.LT(1); @@ -3775,10 +3778,10 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_typeQualifier=new RewriteRuleSubtreeStream(adaptor,"rule typeQualifier"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:387:3: ( ( typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:387:5: ( typeQualifier | typeSpecifier )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:3: ( ( typeQualifier | typeSpecifier )+ -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:5: ( typeQualifier | typeSpecifier )+ { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:387:5: ( typeQualifier | typeSpecifier )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:5: ( typeQualifier | typeSpecifier )+ int cnt26=0; loop26: while (true) { @@ -3796,9 +3799,9 @@ public class CTFParser extends Parser { switch (alt26) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:387:6: typeQualifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:6: typeQualifier { - pushFollow(FOLLOW_typeQualifier_in_specifierQualifierList1836); + pushFollow(FOLLOW_typeQualifier_in_specifierQualifierList1843); typeQualifier81=typeQualifier(); state._fsp--; if (state.failed) return retval; @@ -3806,9 +3809,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:387:22: typeSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:22: typeSpecifier { - pushFollow(FOLLOW_typeSpecifier_in_specifierQualifierList1840); + pushFollow(FOLLOW_typeSpecifier_in_specifierQualifierList1847); typeSpecifier82=typeSpecifier(); state._fsp--; if (state.failed) return retval; @@ -3826,7 +3829,7 @@ public class CTFParser extends Parser { } // AST REWRITE - // elements: typeQualifier, typeSpecifier + // elements: typeSpecifier, typeQualifier // token labels: // rule labels: retval // token list labels: @@ -3837,19 +3840,19 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 388:7: -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) + // 389:7: -> ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:10: ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:389:10: ^( TYPE_SPECIFIER_LIST ( typeQualifier )* ( typeSpecifier )* ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_SPECIFIER_LIST, "TYPE_SPECIFIER_LIST"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:32: ( typeQualifier )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:389:32: ( typeQualifier )* while ( stream_typeQualifier.hasNext() ) { adaptor.addChild(root_1, stream_typeQualifier.nextTree()); } stream_typeQualifier.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:388:47: ( typeSpecifier )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:389:47: ( typeSpecifier )* while ( stream_typeSpecifier.hasNext() ) { adaptor.addChild(root_1, stream_typeSpecifier.nextTree()); } @@ -3894,7 +3897,7 @@ public class CTFParser extends Parser { // $ANTLR start "structOrVariantDeclaratorList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:391:1: structOrVariantDeclaratorList : structOrVariantDeclarator ( SEPARATOR structOrVariantDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:392:1: structOrVariantDeclaratorList : structOrVariantDeclarator ( SEPARATOR structOrVariantDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) ; public final CTFParser.structOrVariantDeclaratorList_return structOrVariantDeclaratorList() throws RecognitionException { CTFParser.structOrVariantDeclaratorList_return retval = new CTFParser.structOrVariantDeclaratorList_return(); retval.start = input.LT(1); @@ -3910,15 +3913,15 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_structOrVariantDeclarator=new RewriteRuleSubtreeStream(adaptor,"rule structOrVariantDeclarator"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:392:3: ( structOrVariantDeclarator ( SEPARATOR structOrVariantDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:392:5: structOrVariantDeclarator ( SEPARATOR structOrVariantDeclarator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:393:3: ( structOrVariantDeclarator ( SEPARATOR structOrVariantDeclarator )* -> ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:393:5: structOrVariantDeclarator ( SEPARATOR structOrVariantDeclarator )* { - pushFollow(FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1873); + pushFollow(FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1880); structOrVariantDeclarator83=structOrVariantDeclarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_structOrVariantDeclarator.add(structOrVariantDeclarator83.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:392:31: ( SEPARATOR structOrVariantDeclarator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:393:31: ( SEPARATOR structOrVariantDeclarator )* loop27: while (true) { int alt27=2; @@ -3929,12 +3932,12 @@ public class CTFParser extends Parser { switch (alt27) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:392:32: SEPARATOR structOrVariantDeclarator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:393:32: SEPARATOR structOrVariantDeclarator { - SEPARATOR84=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_structOrVariantDeclaratorList1876); if (state.failed) return retval; + SEPARATOR84=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_structOrVariantDeclaratorList1883); if (state.failed) return retval; if ( state.backtracking==0 ) stream_SEPARATOR.add(SEPARATOR84); - pushFollow(FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1878); + pushFollow(FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1885); structOrVariantDeclarator85=structOrVariantDeclarator(); state._fsp--; if (state.failed) return retval; @@ -3959,9 +3962,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 393:7: -> ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) + // 394:7: -> ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:393:10: ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:394:10: ^( TYPE_DECLARATOR_LIST ( structOrVariantDeclarator )+ ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_DECLARATOR_LIST, "TYPE_DECLARATOR_LIST"), root_1); @@ -4012,7 +4015,7 @@ public class CTFParser extends Parser { // $ANTLR start "structOrVariantDeclarator" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:396:1: structOrVariantDeclarator : ( declarator ( COLON numberLiteral )? ) -> declarator ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:397:1: structOrVariantDeclarator : ( declarator ( COLON numberLiteral )? ) -> declarator ; public final CTFParser.structOrVariantDeclarator_return structOrVariantDeclarator() throws RecognitionException { CTFParser.structOrVariantDeclarator_return retval = new CTFParser.structOrVariantDeclarator_return(); retval.start = input.LT(1); @@ -4029,18 +4032,18 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_numberLiteral=new RewriteRuleSubtreeStream(adaptor,"rule numberLiteral"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:397:3: ( ( declarator ( COLON numberLiteral )? ) -> declarator ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:399:5: ( declarator ( COLON numberLiteral )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:398:3: ( ( declarator ( COLON numberLiteral )? ) -> declarator ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:400:5: ( declarator ( COLON numberLiteral )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:399:5: ( declarator ( COLON numberLiteral )? ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:399:6: declarator ( COLON numberLiteral )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:400:5: ( declarator ( COLON numberLiteral )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:400:6: declarator ( COLON numberLiteral )? { - pushFollow(FOLLOW_declarator_in_structOrVariantDeclarator1917); + pushFollow(FOLLOW_declarator_in_structOrVariantDeclarator1924); declarator86=declarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_declarator.add(declarator86.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:399:17: ( COLON numberLiteral )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:400:17: ( COLON numberLiteral )? int alt28=2; int LA28_0 = input.LA(1); if ( (LA28_0==COLON) ) { @@ -4048,12 +4051,12 @@ public class CTFParser extends Parser { } switch (alt28) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:399:18: COLON numberLiteral + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:400:18: COLON numberLiteral { - COLON87=(Token)match(input,COLON,FOLLOW_COLON_in_structOrVariantDeclarator1920); if (state.failed) return retval; + COLON87=(Token)match(input,COLON,FOLLOW_COLON_in_structOrVariantDeclarator1927); if (state.failed) return retval; if ( state.backtracking==0 ) stream_COLON.add(COLON87); - pushFollow(FOLLOW_numberLiteral_in_structOrVariantDeclarator1922); + pushFollow(FOLLOW_numberLiteral_in_structOrVariantDeclarator1929); numberLiteral88=numberLiteral(); state._fsp--; if (state.failed) return retval; @@ -4077,7 +4080,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 399:41: -> declarator + // 400:41: -> declarator { adaptor.addChild(root_0, stream_declarator.nextTree()); } @@ -4116,7 +4119,7 @@ public class CTFParser extends Parser { // $ANTLR start "variantSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:403:1: variantSpecifier : VARIANTTOK ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) -> ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:404:1: variantSpecifier : VARIANTTOK ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) -> ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) ; public final CTFParser.variantSpecifier_return variantSpecifier() throws RecognitionException { CTFParser.variantSpecifier_return retval = new CTFParser.variantSpecifier_return(); retval.start = input.LT(1); @@ -4134,18 +4137,18 @@ public class CTFParser extends Parser { CommonTree VARIANTTOK89_tree=null; RewriteRuleTokenStream stream_VARIANTTOK=new RewriteRuleTokenStream(adaptor,"token VARIANTTOK"); - RewriteRuleSubtreeStream stream_variantBody=new RewriteRuleSubtreeStream(adaptor,"rule variantBody"); - RewriteRuleSubtreeStream stream_variantTag=new RewriteRuleSubtreeStream(adaptor,"rule variantTag"); RewriteRuleSubtreeStream stream_variantName=new RewriteRuleSubtreeStream(adaptor,"rule variantName"); + RewriteRuleSubtreeStream stream_variantTag=new RewriteRuleSubtreeStream(adaptor,"rule variantTag"); + RewriteRuleSubtreeStream stream_variantBody=new RewriteRuleSubtreeStream(adaptor,"rule variantBody"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:404:3: ( VARIANTTOK ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) -> ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:404:5: VARIANTTOK ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:405:3: ( VARIANTTOK ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) -> ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:405:5: VARIANTTOK ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) { - VARIANTTOK89=(Token)match(input,VARIANTTOK,FOLLOW_VARIANTTOK_in_variantSpecifier1946); if (state.failed) return retval; + VARIANTTOK89=(Token)match(input,VARIANTTOK,FOLLOW_VARIANTTOK_in_variantSpecifier1953); if (state.failed) return retval; if ( state.backtracking==0 ) stream_VARIANTTOK.add(VARIANTTOK89); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:405:3: ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:406:3: ( ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) | ( variantTag variantBody ) | variantBody ) int alt31=3; switch ( input.LA(1) ) { case IDENTIFIER: @@ -4171,17 +4174,17 @@ public class CTFParser extends Parser { } switch (alt31) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:406:5: ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:407:5: ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:406:5: ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:407:7: variantName ( ( variantTag ( variantBody |) ) | variantBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:407:5: ( variantName ( ( variantTag ( variantBody |) ) | variantBody ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:408:7: variantName ( ( variantTag ( variantBody |) ) | variantBody ) { - pushFollow(FOLLOW_variantName_in_variantSpecifier1964); + pushFollow(FOLLOW_variantName_in_variantSpecifier1971); variantName90=variantName(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_variantName.add(variantName90.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:408:7: ( ( variantTag ( variantBody |) ) | variantBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:409:7: ( ( variantTag ( variantBody |) ) | variantBody ) int alt30=2; int LA30_0 = input.LA(1); if ( (LA30_0==LT) ) { @@ -4200,17 +4203,17 @@ public class CTFParser extends Parser { switch (alt30) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:409:9: ( variantTag ( variantBody |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:410:9: ( variantTag ( variantBody |) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:409:9: ( variantTag ( variantBody |) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:410:11: variantTag ( variantBody |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:410:9: ( variantTag ( variantBody |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:411:11: variantTag ( variantBody |) { - pushFollow(FOLLOW_variantTag_in_variantSpecifier1994); + pushFollow(FOLLOW_variantTag_in_variantSpecifier2001); variantTag91=variantTag(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_variantTag.add(variantTag91.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:411:11: ( variantBody |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:412:11: ( variantBody |) int alt29=2; int LA29_0 = input.LA(1); if ( (LA29_0==LCURL) ) { @@ -4352,9 +4355,9 @@ public class CTFParser extends Parser { switch (alt29) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:412:13: variantBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:413:13: variantBody { - pushFollow(FOLLOW_variantBody_in_variantSpecifier2020); + pushFollow(FOLLOW_variantBody_in_variantSpecifier2027); variantBody92=variantBody(); state._fsp--; if (state.failed) return retval; @@ -4362,7 +4365,7 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:415:11: + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:416:11: { } break; @@ -4374,9 +4377,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:418:9: variantBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:419:9: variantBody { - pushFollow(FOLLOW_variantBody_in_variantSpecifier2088); + pushFollow(FOLLOW_variantBody_in_variantSpecifier2095); variantBody93=variantBody(); state._fsp--; if (state.failed) return retval; @@ -4391,17 +4394,17 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:421:5: ( variantTag variantBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:422:5: ( variantTag variantBody ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:421:5: ( variantTag variantBody ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:421:6: variantTag variantBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:422:5: ( variantTag variantBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:422:6: variantTag variantBody { - pushFollow(FOLLOW_variantTag_in_variantSpecifier2109); + pushFollow(FOLLOW_variantTag_in_variantSpecifier2116); variantTag94=variantTag(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_variantTag.add(variantTag94.getTree()); - pushFollow(FOLLOW_variantBody_in_variantSpecifier2111); + pushFollow(FOLLOW_variantBody_in_variantSpecifier2118); variantBody95=variantBody(); state._fsp--; if (state.failed) return retval; @@ -4411,9 +4414,9 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:422:5: variantBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:423:5: variantBody { - pushFollow(FOLLOW_variantBody_in_variantSpecifier2118); + pushFollow(FOLLOW_variantBody_in_variantSpecifier2125); variantBody96=variantBody(); state._fsp--; if (state.failed) return retval; @@ -4424,7 +4427,7 @@ public class CTFParser extends Parser { } // AST REWRITE - // elements: variantTag, variantBody, variantName + // elements: variantName, variantTag, variantBody // token labels: // rule labels: retval // token list labels: @@ -4435,25 +4438,25 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 423:5: -> ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) + // 424:5: -> ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:423:8: ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:424:8: ^( VARIANT ( variantName )? ( variantTag )? ( variantBody )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(VARIANT, "VARIANT"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:423:18: ( variantName )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:424:18: ( variantName )? if ( stream_variantName.hasNext() ) { adaptor.addChild(root_1, stream_variantName.nextTree()); } stream_variantName.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:423:31: ( variantTag )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:424:31: ( variantTag )? if ( stream_variantTag.hasNext() ) { adaptor.addChild(root_1, stream_variantTag.nextTree()); } stream_variantTag.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:423:43: ( variantBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:424:43: ( variantBody )? if ( stream_variantBody.hasNext() ) { adaptor.addChild(root_1, stream_variantBody.nextTree()); } @@ -4498,7 +4501,7 @@ public class CTFParser extends Parser { // $ANTLR start "variantName" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:426:1: variantName : IDENTIFIER -> ^( VARIANT_NAME IDENTIFIER ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:427:1: variantName : IDENTIFIER -> ^( VARIANT_NAME IDENTIFIER ) ; public final CTFParser.variantName_return variantName() throws RecognitionException { CTFParser.variantName_return retval = new CTFParser.variantName_return(); retval.start = input.LT(1); @@ -4511,10 +4514,10 @@ public class CTFParser extends Parser { RewriteRuleTokenStream stream_IDENTIFIER=new RewriteRuleTokenStream(adaptor,"token IDENTIFIER"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:427:3: ( IDENTIFIER -> ^( VARIANT_NAME IDENTIFIER ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:427:5: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:428:3: ( IDENTIFIER -> ^( VARIANT_NAME IDENTIFIER ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:428:5: IDENTIFIER { - IDENTIFIER97=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_variantName2150); if (state.failed) return retval; + IDENTIFIER97=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_variantName2157); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER97); // AST REWRITE @@ -4529,9 +4532,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 427:16: -> ^( VARIANT_NAME IDENTIFIER ) + // 428:16: -> ^( VARIANT_NAME IDENTIFIER ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:427:19: ^( VARIANT_NAME IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:428:19: ^( VARIANT_NAME IDENTIFIER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(VARIANT_NAME, "VARIANT_NAME"), root_1); @@ -4575,7 +4578,7 @@ public class CTFParser extends Parser { // $ANTLR start "variantBody" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:430:1: variantBody : LCURL structOrVariantDeclarationList RCURL -> ^( VARIANT_BODY structOrVariantDeclarationList ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:431:1: variantBody : LCURL structOrVariantDeclarationList RCURL -> ^( VARIANT_BODY structOrVariantDeclarationList ) ; public final CTFParser.variantBody_return variantBody() throws RecognitionException { Symbols_stack.push(new Symbols_scope()); @@ -4598,18 +4601,18 @@ public class CTFParser extends Parser { Symbols_stack.peek().types = new HashSet(); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:435:3: ( LCURL structOrVariantDeclarationList RCURL -> ^( VARIANT_BODY structOrVariantDeclarationList ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:435:5: LCURL structOrVariantDeclarationList RCURL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:436:3: ( LCURL structOrVariantDeclarationList RCURL -> ^( VARIANT_BODY structOrVariantDeclarationList ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:436:5: LCURL structOrVariantDeclarationList RCURL { - LCURL98=(Token)match(input,LCURL,FOLLOW_LCURL_in_variantBody2181); if (state.failed) return retval; + LCURL98=(Token)match(input,LCURL,FOLLOW_LCURL_in_variantBody2188); if (state.failed) return retval; if ( state.backtracking==0 ) stream_LCURL.add(LCURL98); - pushFollow(FOLLOW_structOrVariantDeclarationList_in_variantBody2183); + pushFollow(FOLLOW_structOrVariantDeclarationList_in_variantBody2190); structOrVariantDeclarationList99=structOrVariantDeclarationList(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_structOrVariantDeclarationList.add(structOrVariantDeclarationList99.getTree()); - RCURL100=(Token)match(input,RCURL,FOLLOW_RCURL_in_variantBody2185); if (state.failed) return retval; + RCURL100=(Token)match(input,RCURL,FOLLOW_RCURL_in_variantBody2192); if (state.failed) return retval; if ( state.backtracking==0 ) stream_RCURL.add(RCURL100); // AST REWRITE @@ -4624,9 +4627,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 436:7: -> ^( VARIANT_BODY structOrVariantDeclarationList ) + // 437:7: -> ^( VARIANT_BODY structOrVariantDeclarationList ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:436:10: ^( VARIANT_BODY structOrVariantDeclarationList ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:437:10: ^( VARIANT_BODY structOrVariantDeclarationList ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(VARIANT_BODY, "VARIANT_BODY"), root_1); @@ -4672,7 +4675,7 @@ public class CTFParser extends Parser { // $ANTLR start "variantTag" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:439:1: variantTag : LT IDENTIFIER GT -> ^( VARIANT_TAG IDENTIFIER ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:440:1: variantTag : LT IDENTIFIER GT -> ^( VARIANT_TAG IDENTIFIER ) ; public final CTFParser.variantTag_return variantTag() throws RecognitionException { CTFParser.variantTag_return retval = new CTFParser.variantTag_return(); retval.start = input.LT(1); @@ -4686,21 +4689,21 @@ public class CTFParser extends Parser { CommonTree LT101_tree=null; CommonTree IDENTIFIER102_tree=null; CommonTree GT103_tree=null; + RewriteRuleTokenStream stream_GT=new RewriteRuleTokenStream(adaptor,"token GT"); RewriteRuleTokenStream stream_LT=new RewriteRuleTokenStream(adaptor,"token LT"); RewriteRuleTokenStream stream_IDENTIFIER=new RewriteRuleTokenStream(adaptor,"token IDENTIFIER"); - RewriteRuleTokenStream stream_GT=new RewriteRuleTokenStream(adaptor,"token GT"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:440:3: ( LT IDENTIFIER GT -> ^( VARIANT_TAG IDENTIFIER ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:440:5: LT IDENTIFIER GT + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:441:3: ( LT IDENTIFIER GT -> ^( VARIANT_TAG IDENTIFIER ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:441:5: LT IDENTIFIER GT { - LT101=(Token)match(input,LT,FOLLOW_LT_in_variantTag2212); if (state.failed) return retval; + LT101=(Token)match(input,LT,FOLLOW_LT_in_variantTag2219); if (state.failed) return retval; if ( state.backtracking==0 ) stream_LT.add(LT101); - IDENTIFIER102=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_variantTag2214); if (state.failed) return retval; + IDENTIFIER102=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_variantTag2221); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER102); - GT103=(Token)match(input,GT,FOLLOW_GT_in_variantTag2216); if (state.failed) return retval; + GT103=(Token)match(input,GT,FOLLOW_GT_in_variantTag2223); if (state.failed) return retval; if ( state.backtracking==0 ) stream_GT.add(GT103); // AST REWRITE @@ -4715,9 +4718,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 440:22: -> ^( VARIANT_TAG IDENTIFIER ) + // 441:22: -> ^( VARIANT_TAG IDENTIFIER ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:440:25: ^( VARIANT_TAG IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:441:25: ^( VARIANT_TAG IDENTIFIER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(VARIANT_TAG, "VARIANT_TAG"), root_1); @@ -4761,7 +4764,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:443:1: enumSpecifier : ENUMTOK ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) -> ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:444:1: enumSpecifier : ENUMTOK ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) -> ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) ; public final CTFParser.enumSpecifier_return enumSpecifier() throws RecognitionException { CTFParser.enumSpecifier_return retval = new CTFParser.enumSpecifier_return(); retval.start = input.LT(1); @@ -4779,18 +4782,18 @@ public class CTFParser extends Parser { CommonTree ENUMTOK104_tree=null; RewriteRuleTokenStream stream_ENUMTOK=new RewriteRuleTokenStream(adaptor,"token ENUMTOK"); - RewriteRuleSubtreeStream stream_enumBody=new RewriteRuleSubtreeStream(adaptor,"rule enumBody"); RewriteRuleSubtreeStream stream_enumName=new RewriteRuleSubtreeStream(adaptor,"rule enumName"); RewriteRuleSubtreeStream stream_enumContainerType=new RewriteRuleSubtreeStream(adaptor,"rule enumContainerType"); + RewriteRuleSubtreeStream stream_enumBody=new RewriteRuleSubtreeStream(adaptor,"rule enumBody"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:444:3: ( ENUMTOK ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) -> ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:444:5: ENUMTOK ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:445:3: ( ENUMTOK ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) -> ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:445:5: ENUMTOK ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) { - ENUMTOK104=(Token)match(input,ENUMTOK,FOLLOW_ENUMTOK_in_enumSpecifier2237); if (state.failed) return retval; + ENUMTOK104=(Token)match(input,ENUMTOK,FOLLOW_ENUMTOK_in_enumSpecifier2244); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ENUMTOK.add(ENUMTOK104); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:445:5: ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:446:5: ( ( enumName ( enumContainerType enumBody | enumBody |) ) | ( enumContainerType enumBody | enumBody ) ) int alt34=2; int LA34_0 = input.LA(1); if ( (LA34_0==IDENTIFIER) ) { @@ -4809,17 +4812,17 @@ public class CTFParser extends Parser { switch (alt34) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:447:9: ( enumName ( enumContainerType enumBody | enumBody |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:448:9: ( enumName ( enumContainerType enumBody | enumBody |) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:447:9: ( enumName ( enumContainerType enumBody | enumBody |) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:448:13: enumName ( enumContainerType enumBody | enumBody |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:448:9: ( enumName ( enumContainerType enumBody | enumBody |) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:449:13: enumName ( enumContainerType enumBody | enumBody |) { - pushFollow(FOLLOW_enumName_in_enumSpecifier2276); + pushFollow(FOLLOW_enumName_in_enumSpecifier2283); enumName105=enumName(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_enumName.add(enumName105.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:449:13: ( enumContainerType enumBody | enumBody |) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:450:13: ( enumContainerType enumBody | enumBody |) int alt32=3; switch ( input.LA(1) ) { case COLON: @@ -4870,14 +4873,14 @@ public class CTFParser extends Parser { } switch (alt32) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:450:17: enumContainerType enumBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:451:17: enumContainerType enumBody { - pushFollow(FOLLOW_enumContainerType_in_enumSpecifier2308); + pushFollow(FOLLOW_enumContainerType_in_enumSpecifier2315); enumContainerType106=enumContainerType(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_enumContainerType.add(enumContainerType106.getTree()); - pushFollow(FOLLOW_enumBody_in_enumSpecifier2310); + pushFollow(FOLLOW_enumBody_in_enumSpecifier2317); enumBody107=enumBody(); state._fsp--; if (state.failed) return retval; @@ -4885,9 +4888,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:452:17: enumBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:453:17: enumBody { - pushFollow(FOLLOW_enumBody_in_enumSpecifier2340); + pushFollow(FOLLOW_enumBody_in_enumSpecifier2347); enumBody108=enumBody(); state._fsp--; if (state.failed) return retval; @@ -4895,7 +4898,7 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:455:13: + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:456:13: { } break; @@ -4907,9 +4910,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:459:9: ( enumContainerType enumBody | enumBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:460:9: ( enumContainerType enumBody | enumBody ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:459:9: ( enumContainerType enumBody | enumBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:460:9: ( enumContainerType enumBody | enumBody ) int alt33=2; int LA33_0 = input.LA(1); if ( (LA33_0==COLON) ) { @@ -4928,14 +4931,14 @@ public class CTFParser extends Parser { switch (alt33) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:460:13: enumContainerType enumBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:461:13: enumContainerType enumBody { - pushFollow(FOLLOW_enumContainerType_in_enumSpecifier2432); + pushFollow(FOLLOW_enumContainerType_in_enumSpecifier2439); enumContainerType109=enumContainerType(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_enumContainerType.add(enumContainerType109.getTree()); - pushFollow(FOLLOW_enumBody_in_enumSpecifier2434); + pushFollow(FOLLOW_enumBody_in_enumSpecifier2441); enumBody110=enumBody(); state._fsp--; if (state.failed) return retval; @@ -4943,9 +4946,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:462:13: enumBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:463:13: enumBody { - pushFollow(FOLLOW_enumBody_in_enumSpecifier2458); + pushFollow(FOLLOW_enumBody_in_enumSpecifier2465); enumBody111=enumBody(); state._fsp--; if (state.failed) return retval; @@ -4961,7 +4964,7 @@ public class CTFParser extends Parser { } // AST REWRITE - // elements: enumName, enumBody, enumContainerType + // elements: enumName, enumContainerType, enumBody // token labels: // rule labels: retval // token list labels: @@ -4972,25 +4975,25 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 464:7: -> ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) + // 465:7: -> ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:464:10: ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:465:10: ^( ENUM ( enumName )? ( enumContainerType )? ( enumBody )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM, "ENUM"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:464:17: ( enumName )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:465:17: ( enumName )? if ( stream_enumName.hasNext() ) { adaptor.addChild(root_1, stream_enumName.nextTree()); } stream_enumName.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:464:27: ( enumContainerType )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:465:27: ( enumContainerType )? if ( stream_enumContainerType.hasNext() ) { adaptor.addChild(root_1, stream_enumContainerType.nextTree()); } stream_enumContainerType.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:464:46: ( enumBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:465:46: ( enumBody )? if ( stream_enumBody.hasNext() ) { adaptor.addChild(root_1, stream_enumBody.nextTree()); } @@ -5035,7 +5038,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumName" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:467:1: enumName : IDENTIFIER -> ^( ENUM_NAME IDENTIFIER ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:468:1: enumName : IDENTIFIER -> ^( ENUM_NAME IDENTIFIER ) ; public final CTFParser.enumName_return enumName() throws RecognitionException { CTFParser.enumName_return retval = new CTFParser.enumName_return(); retval.start = input.LT(1); @@ -5048,10 +5051,10 @@ public class CTFParser extends Parser { RewriteRuleTokenStream stream_IDENTIFIER=new RewriteRuleTokenStream(adaptor,"token IDENTIFIER"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:468:3: ( IDENTIFIER -> ^( ENUM_NAME IDENTIFIER ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:468:5: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:469:3: ( IDENTIFIER -> ^( ENUM_NAME IDENTIFIER ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:469:5: IDENTIFIER { - IDENTIFIER112=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumName2502); if (state.failed) return retval; + IDENTIFIER112=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_enumName2509); if (state.failed) return retval; if ( state.backtracking==0 ) stream_IDENTIFIER.add(IDENTIFIER112); // AST REWRITE @@ -5066,9 +5069,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 468:16: -> ^( ENUM_NAME IDENTIFIER ) + // 469:16: -> ^( ENUM_NAME IDENTIFIER ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:468:19: ^( ENUM_NAME IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:469:19: ^( ENUM_NAME IDENTIFIER ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM_NAME, "ENUM_NAME"), root_1); @@ -5112,7 +5115,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumBody" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:471:1: enumBody : LCURL enumeratorList ( SEPARATOR )? RCURL -> ^( ENUM_BODY enumeratorList ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:472:1: enumBody : LCURL enumeratorList ( SEPARATOR )? RCURL -> ^( ENUM_BODY enumeratorList ) ; public final CTFParser.enumBody_return enumBody() throws RecognitionException { CTFParser.enumBody_return retval = new CTFParser.enumBody_return(); retval.start = input.LT(1); @@ -5127,24 +5130,24 @@ public class CTFParser extends Parser { CommonTree LCURL113_tree=null; CommonTree SEPARATOR115_tree=null; CommonTree RCURL116_tree=null; - RewriteRuleTokenStream stream_SEPARATOR=new RewriteRuleTokenStream(adaptor,"token SEPARATOR"); RewriteRuleTokenStream stream_LCURL=new RewriteRuleTokenStream(adaptor,"token LCURL"); + RewriteRuleTokenStream stream_SEPARATOR=new RewriteRuleTokenStream(adaptor,"token SEPARATOR"); RewriteRuleTokenStream stream_RCURL=new RewriteRuleTokenStream(adaptor,"token RCURL"); RewriteRuleSubtreeStream stream_enumeratorList=new RewriteRuleSubtreeStream(adaptor,"rule enumeratorList"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:472:3: ( LCURL enumeratorList ( SEPARATOR )? RCURL -> ^( ENUM_BODY enumeratorList ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:472:5: LCURL enumeratorList ( SEPARATOR )? RCURL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:473:3: ( LCURL enumeratorList ( SEPARATOR )? RCURL -> ^( ENUM_BODY enumeratorList ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:473:5: LCURL enumeratorList ( SEPARATOR )? RCURL { - LCURL113=(Token)match(input,LCURL,FOLLOW_LCURL_in_enumBody2523); if (state.failed) return retval; + LCURL113=(Token)match(input,LCURL,FOLLOW_LCURL_in_enumBody2530); if (state.failed) return retval; if ( state.backtracking==0 ) stream_LCURL.add(LCURL113); - pushFollow(FOLLOW_enumeratorList_in_enumBody2525); + pushFollow(FOLLOW_enumeratorList_in_enumBody2532); enumeratorList114=enumeratorList(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_enumeratorList.add(enumeratorList114.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:472:26: ( SEPARATOR )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:473:26: ( SEPARATOR )? int alt35=2; int LA35_0 = input.LA(1); if ( (LA35_0==SEPARATOR) ) { @@ -5152,9 +5155,9 @@ public class CTFParser extends Parser { } switch (alt35) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:472:26: SEPARATOR + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:473:26: SEPARATOR { - SEPARATOR115=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_enumBody2527); if (state.failed) return retval; + SEPARATOR115=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_enumBody2534); if (state.failed) return retval; if ( state.backtracking==0 ) stream_SEPARATOR.add(SEPARATOR115); } @@ -5162,7 +5165,7 @@ public class CTFParser extends Parser { } - RCURL116=(Token)match(input,RCURL,FOLLOW_RCURL_in_enumBody2530); if (state.failed) return retval; + RCURL116=(Token)match(input,RCURL,FOLLOW_RCURL_in_enumBody2537); if (state.failed) return retval; if ( state.backtracking==0 ) stream_RCURL.add(RCURL116); // AST REWRITE @@ -5177,9 +5180,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 472:43: -> ^( ENUM_BODY enumeratorList ) + // 473:43: -> ^( ENUM_BODY enumeratorList ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:472:46: ^( ENUM_BODY enumeratorList ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:473:46: ^( ENUM_BODY enumeratorList ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM_BODY, "ENUM_BODY"), root_1); @@ -5223,7 +5226,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumContainerType" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:475:1: enumContainerType : COLON declarationSpecifiers -> ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:476:1: enumContainerType : COLON declarationSpecifiers -> ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) ; public final CTFParser.enumContainerType_return enumContainerType() throws RecognitionException { CTFParser.enumContainerType_return retval = new CTFParser.enumContainerType_return(); retval.start = input.LT(1); @@ -5238,13 +5241,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_declarationSpecifiers=new RewriteRuleSubtreeStream(adaptor,"rule declarationSpecifiers"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:476:3: ( COLON declarationSpecifiers -> ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:476:5: COLON declarationSpecifiers + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:477:3: ( COLON declarationSpecifiers -> ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:477:5: COLON declarationSpecifiers { - COLON117=(Token)match(input,COLON,FOLLOW_COLON_in_enumContainerType2551); if (state.failed) return retval; + COLON117=(Token)match(input,COLON,FOLLOW_COLON_in_enumContainerType2558); if (state.failed) return retval; if ( state.backtracking==0 ) stream_COLON.add(COLON117); - pushFollow(FOLLOW_declarationSpecifiers_in_enumContainerType2553); + pushFollow(FOLLOW_declarationSpecifiers_in_enumContainerType2560); declarationSpecifiers118=declarationSpecifiers(); state._fsp--; if (state.failed) return retval; @@ -5261,9 +5264,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 476:33: -> ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) + // 477:33: -> ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:476:36: ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:477:36: ^( ENUM_CONTAINER_TYPE declarationSpecifiers ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM_CONTAINER_TYPE, "ENUM_CONTAINER_TYPE"), root_1); @@ -5307,7 +5310,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumeratorList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:479:1: enumeratorList : enumerator ( SEPARATOR enumerator )* -> ( ^( ENUM_ENUMERATOR enumerator ) )+ ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:480:1: enumeratorList : enumerator ( SEPARATOR enumerator )* -> ( ^( ENUM_ENUMERATOR enumerator ) )+ ; public final CTFParser.enumeratorList_return enumeratorList() throws RecognitionException { CTFParser.enumeratorList_return retval = new CTFParser.enumeratorList_return(); retval.start = input.LT(1); @@ -5323,15 +5326,15 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_enumerator=new RewriteRuleSubtreeStream(adaptor,"rule enumerator"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:480:3: ( enumerator ( SEPARATOR enumerator )* -> ( ^( ENUM_ENUMERATOR enumerator ) )+ ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:480:5: enumerator ( SEPARATOR enumerator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:481:3: ( enumerator ( SEPARATOR enumerator )* -> ( ^( ENUM_ENUMERATOR enumerator ) )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:481:5: enumerator ( SEPARATOR enumerator )* { - pushFollow(FOLLOW_enumerator_in_enumeratorList2574); + pushFollow(FOLLOW_enumerator_in_enumeratorList2581); enumerator119=enumerator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_enumerator.add(enumerator119.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:480:16: ( SEPARATOR enumerator )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:481:16: ( SEPARATOR enumerator )* loop36: while (true) { int alt36=2; @@ -5346,12 +5349,12 @@ public class CTFParser extends Parser { switch (alt36) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:480:17: SEPARATOR enumerator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:481:17: SEPARATOR enumerator { - SEPARATOR120=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_enumeratorList2577); if (state.failed) return retval; + SEPARATOR120=(Token)match(input,SEPARATOR,FOLLOW_SEPARATOR_in_enumeratorList2584); if (state.failed) return retval; if ( state.backtracking==0 ) stream_SEPARATOR.add(SEPARATOR120); - pushFollow(FOLLOW_enumerator_in_enumeratorList2579); + pushFollow(FOLLOW_enumerator_in_enumeratorList2586); enumerator121=enumerator(); state._fsp--; if (state.failed) return retval; @@ -5376,13 +5379,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 480:40: -> ( ^( ENUM_ENUMERATOR enumerator ) )+ + // 481:40: -> ( ^( ENUM_ENUMERATOR enumerator ) )+ { if ( !(stream_enumerator.hasNext()) ) { throw new RewriteEarlyExitException(); } while ( stream_enumerator.hasNext() ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:480:44: ^( ENUM_ENUMERATOR enumerator ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:481:44: ^( ENUM_ENUMERATOR enumerator ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM_ENUMERATOR, "ENUM_ENUMERATOR"), root_1); @@ -5429,7 +5432,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumerator" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:483:1: enumerator : enumConstant ( enumeratorValue )? ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:484:1: enumerator : enumConstant ( enumeratorValue )? ; public final CTFParser.enumerator_return enumerator() throws RecognitionException { CTFParser.enumerator_return retval = new CTFParser.enumerator_return(); retval.start = input.LT(1); @@ -5441,19 +5444,19 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:484:3: ( enumConstant ( enumeratorValue )? ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:484:5: enumConstant ( enumeratorValue )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:485:3: ( enumConstant ( enumeratorValue )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:485:5: enumConstant ( enumeratorValue )? { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_enumConstant_in_enumerator2605); + pushFollow(FOLLOW_enumConstant_in_enumerator2612); enumConstant122=enumConstant(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, enumConstant122.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:484:18: ( enumeratorValue )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:485:18: ( enumeratorValue )? int alt37=2; int LA37_0 = input.LA(1); if ( (LA37_0==ASSIGNMENT) ) { @@ -5461,9 +5464,9 @@ public class CTFParser extends Parser { } switch (alt37) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:484:18: enumeratorValue + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:485:18: enumeratorValue { - pushFollow(FOLLOW_enumeratorValue_in_enumerator2607); + pushFollow(FOLLOW_enumeratorValue_in_enumerator2614); enumeratorValue123=enumeratorValue(); state._fsp--; if (state.failed) return retval; @@ -5504,7 +5507,7 @@ public class CTFParser extends Parser { // $ANTLR start "enumeratorValue" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:487:1: enumeratorValue : ASSIGNMENT e1= unaryExpression ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:488:1: enumeratorValue : ASSIGNMENT e1= unaryExpression ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) ; public final CTFParser.enumeratorValue_return enumeratorValue() throws RecognitionException { CTFParser.enumeratorValue_return retval = new CTFParser.enumeratorValue_return(); retval.start = input.LT(1); @@ -5523,18 +5526,18 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_unaryExpression=new RewriteRuleSubtreeStream(adaptor,"rule unaryExpression"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:488:3: ( ASSIGNMENT e1= unaryExpression ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:488:5: ASSIGNMENT e1= unaryExpression ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:489:3: ( ASSIGNMENT e1= unaryExpression ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:489:5: ASSIGNMENT e1= unaryExpression ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) { - ASSIGNMENT124=(Token)match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_enumeratorValue2621); if (state.failed) return retval; + ASSIGNMENT124=(Token)match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_enumeratorValue2628); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ASSIGNMENT.add(ASSIGNMENT124); - pushFollow(FOLLOW_unaryExpression_in_enumeratorValue2625); + pushFollow(FOLLOW_unaryExpression_in_enumeratorValue2632); e1=unaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_unaryExpression.add(e1.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:489:7: ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:490:7: ( -> ^( ENUM_VALUE $e1) | ELIPSES e2= unaryExpression -> ^( ENUM_VALUE_RANGE $e1 $e2) ) int alt38=2; int LA38_0 = input.LA(1); if ( (LA38_0==RCURL||LA38_0==SEPARATOR) ) { @@ -5553,24 +5556,24 @@ public class CTFParser extends Parser { switch (alt38) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:490:11: + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:491:11: { // AST REWRITE // elements: e1 // token labels: - // rule labels: e1, retval + // rule labels: retval, e1 // token list labels: // rule list labels: // wildcard labels: if ( state.backtracking==0 ) { retval.tree = root_0; - RewriteRuleSubtreeStream stream_e1=new RewriteRuleSubtreeStream(adaptor,"rule e1",e1!=null?e1.getTree():null); RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + RewriteRuleSubtreeStream stream_e1=new RewriteRuleSubtreeStream(adaptor,"rule e1",e1!=null?e1.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 490:11: -> ^( ENUM_VALUE $e1) + // 491:11: -> ^( ENUM_VALUE $e1) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:490:14: ^( ENUM_VALUE $e1) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:491:14: ^( ENUM_VALUE $e1) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM_VALUE, "ENUM_VALUE"), root_1); @@ -5587,33 +5590,33 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:491:9: ELIPSES e2= unaryExpression + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:492:9: ELIPSES e2= unaryExpression { - ELIPSES125=(Token)match(input,ELIPSES,FOLLOW_ELIPSES_in_enumeratorValue2664); if (state.failed) return retval; + ELIPSES125=(Token)match(input,ELIPSES,FOLLOW_ELIPSES_in_enumeratorValue2671); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ELIPSES.add(ELIPSES125); - pushFollow(FOLLOW_unaryExpression_in_enumeratorValue2668); + pushFollow(FOLLOW_unaryExpression_in_enumeratorValue2675); e2=unaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_unaryExpression.add(e2.getTree()); // AST REWRITE - // elements: e1, e2 + // elements: e2, e1 // token labels: - // rule labels: e1, e2, retval + // rule labels: retval, e1, e2 // token list labels: // rule list labels: // wildcard labels: if ( state.backtracking==0 ) { retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); RewriteRuleSubtreeStream stream_e1=new RewriteRuleSubtreeStream(adaptor,"rule e1",e1!=null?e1.getTree():null); RewriteRuleSubtreeStream stream_e2=new RewriteRuleSubtreeStream(adaptor,"rule e2",e2!=null?e2.getTree():null); - RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 492:11: -> ^( ENUM_VALUE_RANGE $e1 $e2) + // 493:11: -> ^( ENUM_VALUE_RANGE $e1 $e2) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:492:14: ^( ENUM_VALUE_RANGE $e1 $e2) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:493:14: ^( ENUM_VALUE_RANGE $e1 $e2) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(ENUM_VALUE_RANGE, "ENUM_VALUE_RANGE"), root_1); @@ -5663,7 +5666,7 @@ public class CTFParser extends Parser { // $ANTLR start "declarator" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:496:1: declarator : ( pointer )* directDeclarator -> ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:497:1: declarator : ( pointer )* directDeclarator -> ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) ; public final CTFParser.declarator_return declarator() throws RecognitionException { CTFParser.declarator_return retval = new CTFParser.declarator_return(); retval.start = input.LT(1); @@ -5673,14 +5676,14 @@ public class CTFParser extends Parser { ParserRuleReturnScope pointer126 =null; ParserRuleReturnScope directDeclarator127 =null; - RewriteRuleSubtreeStream stream_pointer=new RewriteRuleSubtreeStream(adaptor,"rule pointer"); RewriteRuleSubtreeStream stream_directDeclarator=new RewriteRuleSubtreeStream(adaptor,"rule directDeclarator"); + RewriteRuleSubtreeStream stream_pointer=new RewriteRuleSubtreeStream(adaptor,"rule pointer"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:497:3: ( ( pointer )* directDeclarator -> ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:497:5: ( pointer )* directDeclarator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:498:3: ( ( pointer )* directDeclarator -> ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:498:5: ( pointer )* directDeclarator { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:497:5: ( pointer )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:498:5: ( pointer )* loop39: while (true) { int alt39=2; @@ -5691,9 +5694,9 @@ public class CTFParser extends Parser { switch (alt39) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:497:5: pointer + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:498:5: pointer { - pushFollow(FOLLOW_pointer_in_declarator2711); + pushFollow(FOLLOW_pointer_in_declarator2718); pointer126=pointer(); state._fsp--; if (state.failed) return retval; @@ -5706,7 +5709,7 @@ public class CTFParser extends Parser { } } - pushFollow(FOLLOW_directDeclarator_in_declarator2714); + pushFollow(FOLLOW_directDeclarator_in_declarator2721); directDeclarator127=directDeclarator(); state._fsp--; if (state.failed) return retval; @@ -5723,13 +5726,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 498:7: -> ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) + // 499:7: -> ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:498:10: ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:499:10: ^( TYPE_DECLARATOR ( pointer )* directDeclarator ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_DECLARATOR, "TYPE_DECLARATOR"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:498:28: ( pointer )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:499:28: ( pointer )* while ( stream_pointer.hasNext() ) { adaptor.addChild(root_1, stream_pointer.nextTree()); } @@ -5775,7 +5778,7 @@ public class CTFParser extends Parser { // $ANTLR start "directDeclarator" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:501:1: directDeclarator : ( IDENTIFIER ) ( directDeclaratorSuffix )* ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:502:1: directDeclarator : ( IDENTIFIER ) ( directDeclaratorSuffix )* ; public final CTFParser.directDeclarator_return directDeclarator() throws RecognitionException { CTFParser.directDeclarator_return retval = new CTFParser.directDeclarator_return(); retval.start = input.LT(1); @@ -5788,16 +5791,16 @@ public class CTFParser extends Parser { CommonTree IDENTIFIER128_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:502:3: ( ( IDENTIFIER ) ( directDeclaratorSuffix )* ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:502:5: ( IDENTIFIER ) ( directDeclaratorSuffix )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:503:3: ( ( IDENTIFIER ) ( directDeclaratorSuffix )* ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:503:5: ( IDENTIFIER ) ( directDeclaratorSuffix )* { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:502:5: ( IDENTIFIER ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:503:7: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:503:5: ( IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:504:7: IDENTIFIER { - IDENTIFIER128=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_directDeclarator2752); if (state.failed) return retval; + IDENTIFIER128=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_directDeclarator2759); if (state.failed) return retval; if ( state.backtracking==0 ) { IDENTIFIER128_tree = (CommonTree)adaptor.create(IDENTIFIER128); adaptor.addChild(root_0, IDENTIFIER128_tree); @@ -5807,7 +5810,7 @@ public class CTFParser extends Parser { if ( state.backtracking==0 ) { debug_print((IDENTIFIER128!=null?IDENTIFIER128.getText():null)); } } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:508:5: ( directDeclaratorSuffix )* + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:509:5: ( directDeclaratorSuffix )* loop40: while (true) { int alt40=2; @@ -5818,9 +5821,9 @@ public class CTFParser extends Parser { switch (alt40) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:508:5: directDeclaratorSuffix + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:509:5: directDeclaratorSuffix { - pushFollow(FOLLOW_directDeclaratorSuffix_in_directDeclarator2792); + pushFollow(FOLLOW_directDeclaratorSuffix_in_directDeclarator2799); directDeclaratorSuffix129=directDeclaratorSuffix(); state._fsp--; if (state.failed) return retval; @@ -5864,7 +5867,7 @@ public class CTFParser extends Parser { // $ANTLR start "directDeclaratorSuffix" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:511:1: directDeclaratorSuffix : OPENBRAC directDeclaratorLength CLOSEBRAC -> ^( LENGTH directDeclaratorLength ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:512:1: directDeclaratorSuffix : OPENBRAC directDeclaratorLength CLOSEBRAC -> ^( LENGTH directDeclaratorLength ) ; public final CTFParser.directDeclaratorSuffix_return directDeclaratorSuffix() throws RecognitionException { CTFParser.directDeclaratorSuffix_return retval = new CTFParser.directDeclaratorSuffix_return(); retval.start = input.LT(1); @@ -5882,18 +5885,18 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_directDeclaratorLength=new RewriteRuleSubtreeStream(adaptor,"rule directDeclaratorLength"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:512:3: ( OPENBRAC directDeclaratorLength CLOSEBRAC -> ^( LENGTH directDeclaratorLength ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:512:5: OPENBRAC directDeclaratorLength CLOSEBRAC + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:513:3: ( OPENBRAC directDeclaratorLength CLOSEBRAC -> ^( LENGTH directDeclaratorLength ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:513:5: OPENBRAC directDeclaratorLength CLOSEBRAC { - OPENBRAC130=(Token)match(input,OPENBRAC,FOLLOW_OPENBRAC_in_directDeclaratorSuffix2806); if (state.failed) return retval; + OPENBRAC130=(Token)match(input,OPENBRAC,FOLLOW_OPENBRAC_in_directDeclaratorSuffix2813); if (state.failed) return retval; if ( state.backtracking==0 ) stream_OPENBRAC.add(OPENBRAC130); - pushFollow(FOLLOW_directDeclaratorLength_in_directDeclaratorSuffix2808); + pushFollow(FOLLOW_directDeclaratorLength_in_directDeclaratorSuffix2815); directDeclaratorLength131=directDeclaratorLength(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_directDeclaratorLength.add(directDeclaratorLength131.getTree()); - CLOSEBRAC132=(Token)match(input,CLOSEBRAC,FOLLOW_CLOSEBRAC_in_directDeclaratorSuffix2810); if (state.failed) return retval; + CLOSEBRAC132=(Token)match(input,CLOSEBRAC,FOLLOW_CLOSEBRAC_in_directDeclaratorSuffix2817); if (state.failed) return retval; if ( state.backtracking==0 ) stream_CLOSEBRAC.add(CLOSEBRAC132); // AST REWRITE @@ -5908,9 +5911,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 513:7: -> ^( LENGTH directDeclaratorLength ) + // 514:7: -> ^( LENGTH directDeclaratorLength ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:513:10: ^( LENGTH directDeclaratorLength ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:514:10: ^( LENGTH directDeclaratorLength ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(LENGTH, "LENGTH"), root_1); @@ -5954,7 +5957,7 @@ public class CTFParser extends Parser { // $ANTLR start "directDeclaratorLength" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:516:1: directDeclaratorLength : unaryExpression ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:517:1: directDeclaratorLength : unaryExpression ; public final CTFParser.directDeclaratorLength_return directDeclaratorLength() throws RecognitionException { CTFParser.directDeclaratorLength_return retval = new CTFParser.directDeclaratorLength_return(); retval.start = input.LT(1); @@ -5965,13 +5968,13 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:517:3: ( unaryExpression ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:517:5: unaryExpression + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:518:3: ( unaryExpression ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:518:5: unaryExpression { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_unaryExpression_in_directDeclaratorLength2838); + pushFollow(FOLLOW_unaryExpression_in_directDeclaratorLength2845); unaryExpression133=unaryExpression(); state._fsp--; if (state.failed) return retval; @@ -6007,7 +6010,7 @@ public class CTFParser extends Parser { // $ANTLR start "abstractDeclarator" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:520:1: abstractDeclarator : ( ( pointer )+ ( directAbstractDeclarator )? -> ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) | directAbstractDeclarator -> ^( TYPE_DECLARATOR directAbstractDeclarator ) ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:1: abstractDeclarator : ( ( pointer )+ ( directAbstractDeclarator )? -> ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) | directAbstractDeclarator -> ^( TYPE_DECLARATOR directAbstractDeclarator ) ); public final CTFParser.abstractDeclarator_return abstractDeclarator() throws RecognitionException { CTFParser.abstractDeclarator_return retval = new CTFParser.abstractDeclarator_return(); retval.start = input.LT(1); @@ -6022,7 +6025,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_directAbstractDeclarator=new RewriteRuleSubtreeStream(adaptor,"rule directAbstractDeclarator"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:3: ( ( pointer )+ ( directAbstractDeclarator )? -> ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) | directAbstractDeclarator -> ^( TYPE_DECLARATOR directAbstractDeclarator ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:3: ( ( pointer )+ ( directAbstractDeclarator )? -> ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) | directAbstractDeclarator -> ^( TYPE_DECLARATOR directAbstractDeclarator ) ) int alt43=2; int LA43_0 = input.LA(1); if ( (LA43_0==POINTER) ) { @@ -6041,9 +6044,9 @@ public class CTFParser extends Parser { switch (alt43) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:5: ( pointer )+ ( directAbstractDeclarator )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:5: ( pointer )+ ( directAbstractDeclarator )? { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:5: ( pointer )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:5: ( pointer )+ int cnt41=0; loop41: while (true) { @@ -6055,9 +6058,9 @@ public class CTFParser extends Parser { switch (alt41) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:5: pointer + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:5: pointer { - pushFollow(FOLLOW_pointer_in_abstractDeclarator2851); + pushFollow(FOLLOW_pointer_in_abstractDeclarator2858); pointer134=pointer(); state._fsp--; if (state.failed) return retval; @@ -6074,7 +6077,7 @@ public class CTFParser extends Parser { cnt41++; } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:14: ( directAbstractDeclarator )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:14: ( directAbstractDeclarator )? int alt42=2; int LA42_0 = input.LA(1); if ( (LA42_0==IDENTIFIER||LA42_0==LPAREN) ) { @@ -6082,9 +6085,9 @@ public class CTFParser extends Parser { } switch (alt42) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:521:14: directAbstractDeclarator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:14: directAbstractDeclarator { - pushFollow(FOLLOW_directAbstractDeclarator_in_abstractDeclarator2854); + pushFollow(FOLLOW_directAbstractDeclarator_in_abstractDeclarator2861); directAbstractDeclarator135=directAbstractDeclarator(); state._fsp--; if (state.failed) return retval; @@ -6095,7 +6098,7 @@ public class CTFParser extends Parser { } // AST REWRITE - // elements: pointer, directAbstractDeclarator + // elements: directAbstractDeclarator, pointer // token labels: // rule labels: retval // token list labels: @@ -6106,9 +6109,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 522:7: -> ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) + // 523:7: -> ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:10: ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:523:10: ^( TYPE_DECLARATOR ( pointer )+ ( directAbstractDeclarator )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_DECLARATOR, "TYPE_DECLARATOR"), root_1); @@ -6120,7 +6123,7 @@ public class CTFParser extends Parser { } stream_pointer.reset(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:522:37: ( directAbstractDeclarator )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:523:37: ( directAbstractDeclarator )? if ( stream_directAbstractDeclarator.hasNext() ) { adaptor.addChild(root_1, stream_directAbstractDeclarator.nextTree()); } @@ -6138,9 +6141,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:523:5: directAbstractDeclarator + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:524:5: directAbstractDeclarator { - pushFollow(FOLLOW_directAbstractDeclarator_in_abstractDeclarator2879); + pushFollow(FOLLOW_directAbstractDeclarator_in_abstractDeclarator2886); directAbstractDeclarator136=directAbstractDeclarator(); state._fsp--; if (state.failed) return retval; @@ -6157,9 +6160,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 524:7: -> ^( TYPE_DECLARATOR directAbstractDeclarator ) + // 525:7: -> ^( TYPE_DECLARATOR directAbstractDeclarator ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:524:10: ^( TYPE_DECLARATOR directAbstractDeclarator ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:525:10: ^( TYPE_DECLARATOR directAbstractDeclarator ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_DECLARATOR, "TYPE_DECLARATOR"), root_1); @@ -6205,7 +6208,7 @@ public class CTFParser extends Parser { // $ANTLR start "directAbstractDeclarator" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:532:1: directAbstractDeclarator : ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:533:1: directAbstractDeclarator : ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? ; public final CTFParser.directAbstractDeclarator_return directAbstractDeclarator() throws RecognitionException { CTFParser.directAbstractDeclarator_return retval = new CTFParser.directAbstractDeclarator_return(); retval.start = input.LT(1); @@ -6227,13 +6230,13 @@ public class CTFParser extends Parser { CommonTree CLOSEBRAC143_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:533:3: ( ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:533:5: ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:534:3: ( ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:534:5: ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:533:5: ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:534:5: ( IDENTIFIER | ( LPAREN abstractDeclarator RPAREN ) ) int alt44=2; int LA44_0 = input.LA(1); if ( (LA44_0==IDENTIFIER) ) { @@ -6252,9 +6255,9 @@ public class CTFParser extends Parser { switch (alt44) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:534:7: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:535:7: IDENTIFIER { - IDENTIFIER137=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_directAbstractDeclarator2916); if (state.failed) return retval; + IDENTIFIER137=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_directAbstractDeclarator2923); if (state.failed) return retval; if ( state.backtracking==0 ) { IDENTIFIER137_tree = (CommonTree)adaptor.create(IDENTIFIER137); adaptor.addChild(root_0, IDENTIFIER137_tree); @@ -6263,24 +6266,24 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:535:9: ( LPAREN abstractDeclarator RPAREN ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:536:9: ( LPAREN abstractDeclarator RPAREN ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:535:9: ( LPAREN abstractDeclarator RPAREN ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:535:10: LPAREN abstractDeclarator RPAREN + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:536:9: ( LPAREN abstractDeclarator RPAREN ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:536:10: LPAREN abstractDeclarator RPAREN { - LPAREN138=(Token)match(input,LPAREN,FOLLOW_LPAREN_in_directAbstractDeclarator2927); if (state.failed) return retval; + LPAREN138=(Token)match(input,LPAREN,FOLLOW_LPAREN_in_directAbstractDeclarator2934); if (state.failed) return retval; if ( state.backtracking==0 ) { LPAREN138_tree = (CommonTree)adaptor.create(LPAREN138); adaptor.addChild(root_0, LPAREN138_tree); } - pushFollow(FOLLOW_abstractDeclarator_in_directAbstractDeclarator2929); + pushFollow(FOLLOW_abstractDeclarator_in_directAbstractDeclarator2936); abstractDeclarator139=abstractDeclarator(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, abstractDeclarator139.getTree()); - RPAREN140=(Token)match(input,RPAREN,FOLLOW_RPAREN_in_directAbstractDeclarator2931); if (state.failed) return retval; + RPAREN140=(Token)match(input,RPAREN,FOLLOW_RPAREN_in_directAbstractDeclarator2938); if (state.failed) return retval; if ( state.backtracking==0 ) { RPAREN140_tree = (CommonTree)adaptor.create(RPAREN140); adaptor.addChild(root_0, RPAREN140_tree); @@ -6293,7 +6296,7 @@ public class CTFParser extends Parser { } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:536:5: ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:537:5: ( OPENBRAC ( unaryExpression )? CLOSEBRAC )? int alt46=2; int LA46_0 = input.LA(1); if ( (LA46_0==OPENBRAC) ) { @@ -6301,25 +6304,25 @@ public class CTFParser extends Parser { } switch (alt46) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:537:7: OPENBRAC ( unaryExpression )? CLOSEBRAC + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:538:7: OPENBRAC ( unaryExpression )? CLOSEBRAC { - OPENBRAC141=(Token)match(input,OPENBRAC,FOLLOW_OPENBRAC_in_directAbstractDeclarator2946); if (state.failed) return retval; + OPENBRAC141=(Token)match(input,OPENBRAC,FOLLOW_OPENBRAC_in_directAbstractDeclarator2953); if (state.failed) return retval; if ( state.backtracking==0 ) { OPENBRAC141_tree = (CommonTree)adaptor.create(OPENBRAC141); adaptor.addChild(root_0, OPENBRAC141_tree); } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:537:16: ( unaryExpression )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:538:16: ( unaryExpression )? int alt45=2; int LA45_0 = input.LA(1); - if ( (LA45_0==ALIGNTOK||LA45_0==CHARACTER_LITERAL||LA45_0==CLOCKTOK||LA45_0==DECIMAL_LITERAL||LA45_0==ENVTOK||LA45_0==EVENTTOK||LA45_0==HEX_LITERAL||LA45_0==IDENTIFIER||LA45_0==OCTAL_LITERAL||(LA45_0 >= SIGN && LA45_0 <= SIGNEDTOK)||LA45_0==STREAMTOK||LA45_0==STRINGTOK||LA45_0==STRING_LITERAL||LA45_0==TRACETOK) ) { + if ( (LA45_0==ALIGNTOK||(LA45_0 >= CALLSITETOK && LA45_0 <= CHARACTER_LITERAL)||LA45_0==CLOCKTOK||LA45_0==DECIMAL_LITERAL||LA45_0==ENVTOK||LA45_0==EVENTTOK||LA45_0==HEX_LITERAL||LA45_0==IDENTIFIER||LA45_0==OCTAL_LITERAL||(LA45_0 >= SIGN && LA45_0 <= SIGNEDTOK)||LA45_0==STREAMTOK||LA45_0==STRINGTOK||LA45_0==STRING_LITERAL||LA45_0==TRACETOK) ) { alt45=1; } switch (alt45) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:537:16: unaryExpression + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:538:16: unaryExpression { - pushFollow(FOLLOW_unaryExpression_in_directAbstractDeclarator2948); + pushFollow(FOLLOW_unaryExpression_in_directAbstractDeclarator2955); unaryExpression142=unaryExpression(); state._fsp--; if (state.failed) return retval; @@ -6330,7 +6333,7 @@ public class CTFParser extends Parser { } - CLOSEBRAC143=(Token)match(input,CLOSEBRAC,FOLLOW_CLOSEBRAC_in_directAbstractDeclarator2951); if (state.failed) return retval; + CLOSEBRAC143=(Token)match(input,CLOSEBRAC,FOLLOW_CLOSEBRAC_in_directAbstractDeclarator2958); if (state.failed) return retval; if ( state.backtracking==0 ) { CLOSEBRAC143_tree = (CommonTree)adaptor.create(CLOSEBRAC143); adaptor.addChild(root_0, CLOSEBRAC143_tree); @@ -6371,7 +6374,7 @@ public class CTFParser extends Parser { // $ANTLR start "pointer" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:541:1: pointer : POINTER ( typeQualifierList )? -> ^( POINTER ( typeQualifierList )? ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:1: pointer : POINTER ( typeQualifierList )? -> ^( POINTER ( typeQualifierList )? ) ; public final CTFParser.pointer_return pointer() throws RecognitionException { CTFParser.pointer_return retval = new CTFParser.pointer_return(); retval.start = input.LT(1); @@ -6386,13 +6389,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_typeQualifierList=new RewriteRuleSubtreeStream(adaptor,"rule typeQualifierList"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:3: ( POINTER ( typeQualifierList )? -> ^( POINTER ( typeQualifierList )? ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:5: POINTER ( typeQualifierList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:543:3: ( POINTER ( typeQualifierList )? -> ^( POINTER ( typeQualifierList )? ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:543:5: POINTER ( typeQualifierList )? { - POINTER144=(Token)match(input,POINTER,FOLLOW_POINTER_in_pointer2969); if (state.failed) return retval; + POINTER144=(Token)match(input,POINTER,FOLLOW_POINTER_in_pointer2976); if (state.failed) return retval; if ( state.backtracking==0 ) stream_POINTER.add(POINTER144); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:13: ( typeQualifierList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:543:13: ( typeQualifierList )? int alt47=2; int LA47_0 = input.LA(1); if ( (LA47_0==CONSTTOK) ) { @@ -6400,9 +6403,9 @@ public class CTFParser extends Parser { } switch (alt47) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:13: typeQualifierList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:543:13: typeQualifierList { - pushFollow(FOLLOW_typeQualifierList_in_pointer2971); + pushFollow(FOLLOW_typeQualifierList_in_pointer2978); typeQualifierList145=typeQualifierList(); state._fsp--; if (state.failed) return retval; @@ -6413,7 +6416,7 @@ public class CTFParser extends Parser { } // AST REWRITE - // elements: typeQualifierList, POINTER + // elements: POINTER, typeQualifierList // token labels: // rule labels: retval // token list labels: @@ -6424,13 +6427,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 542:32: -> ^( POINTER ( typeQualifierList )? ) + // 543:32: -> ^( POINTER ( typeQualifierList )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:35: ^( POINTER ( typeQualifierList )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:543:35: ^( POINTER ( typeQualifierList )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot(stream_POINTER.nextNode(), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:542:45: ( typeQualifierList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:543:45: ( typeQualifierList )? if ( stream_typeQualifierList.hasNext() ) { adaptor.addChild(root_1, stream_typeQualifierList.nextTree()); } @@ -6475,7 +6478,7 @@ public class CTFParser extends Parser { // $ANTLR start "typeQualifierList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:545:1: typeQualifierList : ( typeQualifier )+ ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:546:1: typeQualifierList : ( typeQualifier )+ ; public final CTFParser.typeQualifierList_return typeQualifierList() throws RecognitionException { CTFParser.typeQualifierList_return retval = new CTFParser.typeQualifierList_return(); retval.start = input.LT(1); @@ -6486,13 +6489,13 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:546:3: ( ( typeQualifier )+ ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:546:5: ( typeQualifier )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:547:3: ( ( typeQualifier )+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:547:5: ( typeQualifier )+ { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:546:5: ( typeQualifier )+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:547:5: ( typeQualifier )+ int cnt48=0; loop48: while (true) { @@ -6504,9 +6507,9 @@ public class CTFParser extends Parser { switch (alt48) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:546:5: typeQualifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:547:5: typeQualifier { - pushFollow(FOLLOW_typeQualifier_in_typeQualifierList2994); + pushFollow(FOLLOW_typeQualifier_in_typeQualifierList3001); typeQualifier146=typeQualifier(); state._fsp--; if (state.failed) return retval; @@ -6554,7 +6557,7 @@ public class CTFParser extends Parser { // $ANTLR start "typedefName" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:549:1: typedefName :{...}? IDENTIFIER ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:550:1: typedefName :{...}? IDENTIFIER ; public final CTFParser.typedefName_return typedefName() throws RecognitionException { CTFParser.typedefName_return retval = new CTFParser.typedefName_return(); retval.start = input.LT(1); @@ -6566,8 +6569,8 @@ public class CTFParser extends Parser { CommonTree IDENTIFIER147_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:550:3: ({...}? IDENTIFIER ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:550:5: {...}? IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:551:3: ({...}? IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:551:5: {...}? IDENTIFIER { root_0 = (CommonTree)adaptor.nil(); @@ -6576,7 +6579,7 @@ public class CTFParser extends Parser { if (state.backtracking>0) {state.failed=true; return retval;} throw new FailedPredicateException(input, "typedefName", "inTypealiasAlias() || isTypeName(input.LT(1).getText())"); } - IDENTIFIER147=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_typedefName3010); if (state.failed) return retval; + IDENTIFIER147=(Token)match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_typedefName3017); if (state.failed) return retval; if ( state.backtracking==0 ) { IDENTIFIER147_tree = (CommonTree)adaptor.create(IDENTIFIER147); adaptor.addChild(root_0, IDENTIFIER147_tree); @@ -6613,7 +6616,7 @@ public class CTFParser extends Parser { // $ANTLR start "typealiasTarget" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:559:1: typealiasTarget : declarationSpecifiers ( abstractDeclaratorList )? ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:560:1: typealiasTarget : declarationSpecifiers ( abstractDeclaratorList )? ; public final CTFParser.typealiasTarget_return typealiasTarget() throws RecognitionException { CTFParser.typealiasTarget_return retval = new CTFParser.typealiasTarget_return(); retval.start = input.LT(1); @@ -6625,19 +6628,19 @@ public class CTFParser extends Parser { try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:560:3: ( declarationSpecifiers ( abstractDeclaratorList )? ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:560:5: declarationSpecifiers ( abstractDeclaratorList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:561:3: ( declarationSpecifiers ( abstractDeclaratorList )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:561:5: declarationSpecifiers ( abstractDeclaratorList )? { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_declarationSpecifiers_in_typealiasTarget3027); + pushFollow(FOLLOW_declarationSpecifiers_in_typealiasTarget3034); declarationSpecifiers148=declarationSpecifiers(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, declarationSpecifiers148.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:560:27: ( abstractDeclaratorList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:561:27: ( abstractDeclaratorList )? int alt49=2; int LA49_0 = input.LA(1); if ( (LA49_0==IDENTIFIER||LA49_0==LPAREN||LA49_0==POINTER) ) { @@ -6645,9 +6648,9 @@ public class CTFParser extends Parser { } switch (alt49) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:560:27: abstractDeclaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:561:27: abstractDeclaratorList { - pushFollow(FOLLOW_abstractDeclaratorList_in_typealiasTarget3029); + pushFollow(FOLLOW_abstractDeclaratorList_in_typealiasTarget3036); abstractDeclaratorList149=abstractDeclaratorList(); state._fsp--; if (state.failed) return retval; @@ -6688,7 +6691,7 @@ public class CTFParser extends Parser { // $ANTLR start "typealiasAlias" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:569:1: typealiasAlias : ( abstractDeclaratorList | declarationSpecifiers ( abstractDeclaratorList )? ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:570:1: typealiasAlias : ( abstractDeclaratorList | declarationSpecifiers ( abstractDeclaratorList )? ); public final CTFParser.typealiasAlias_return typealiasAlias() throws RecognitionException { CTFParser.typealiasAlias_return retval = new CTFParser.typealiasAlias_return(); retval.start = input.LT(1); @@ -6704,7 +6707,7 @@ public class CTFParser extends Parser { typealiasAliasOn(); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:576:3: ( abstractDeclaratorList | declarationSpecifiers ( abstractDeclaratorList )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:577:3: ( abstractDeclaratorList | declarationSpecifiers ( abstractDeclaratorList )? ) int alt51=2; switch ( input.LA(1) ) { case LPAREN: @@ -6770,12 +6773,12 @@ public class CTFParser extends Parser { } switch (alt51) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:576:5: abstractDeclaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:577:5: abstractDeclaratorList { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_abstractDeclaratorList_in_typealiasAlias3055); + pushFollow(FOLLOW_abstractDeclaratorList_in_typealiasAlias3062); abstractDeclaratorList150=abstractDeclaratorList(); state._fsp--; if (state.failed) return retval; @@ -6784,18 +6787,18 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:577:5: declarationSpecifiers ( abstractDeclaratorList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:578:5: declarationSpecifiers ( abstractDeclaratorList )? { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_declarationSpecifiers_in_typealiasAlias3061); + pushFollow(FOLLOW_declarationSpecifiers_in_typealiasAlias3068); declarationSpecifiers151=declarationSpecifiers(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) adaptor.addChild(root_0, declarationSpecifiers151.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:577:27: ( abstractDeclaratorList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:578:27: ( abstractDeclaratorList )? int alt50=2; int LA50_0 = input.LA(1); if ( (LA50_0==IDENTIFIER||LA50_0==LPAREN||LA50_0==POINTER) ) { @@ -6803,9 +6806,9 @@ public class CTFParser extends Parser { } switch (alt50) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:577:27: abstractDeclaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:578:27: abstractDeclaratorList { - pushFollow(FOLLOW_abstractDeclaratorList_in_typealiasAlias3063); + pushFollow(FOLLOW_abstractDeclaratorList_in_typealiasAlias3070); abstractDeclaratorList152=abstractDeclaratorList(); state._fsp--; if (state.failed) return retval; @@ -6851,7 +6854,7 @@ public class CTFParser extends Parser { // $ANTLR start "typealiasDecl" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:580:1: typealiasDecl : TYPEALIASTOK typealiasTarget TYPE_ASSIGNMENT typealiasAlias -> ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:581:1: typealiasDecl : TYPEALIASTOK typealiasTarget TYPE_ASSIGNMENT typealiasAlias -> ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) ; public final CTFParser.typealiasDecl_return typealiasDecl() throws RecognitionException { CTFParser.typealiasDecl_return retval = new CTFParser.typealiasDecl_return(); retval.start = input.LT(1); @@ -6871,21 +6874,21 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_typealiasTarget=new RewriteRuleSubtreeStream(adaptor,"rule typealiasTarget"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:581:3: ( TYPEALIASTOK typealiasTarget TYPE_ASSIGNMENT typealiasAlias -> ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:581:5: TYPEALIASTOK typealiasTarget TYPE_ASSIGNMENT typealiasAlias + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:582:3: ( TYPEALIASTOK typealiasTarget TYPE_ASSIGNMENT typealiasAlias -> ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:582:5: TYPEALIASTOK typealiasTarget TYPE_ASSIGNMENT typealiasAlias { - TYPEALIASTOK153=(Token)match(input,TYPEALIASTOK,FOLLOW_TYPEALIASTOK_in_typealiasDecl3077); if (state.failed) return retval; + TYPEALIASTOK153=(Token)match(input,TYPEALIASTOK,FOLLOW_TYPEALIASTOK_in_typealiasDecl3084); if (state.failed) return retval; if ( state.backtracking==0 ) stream_TYPEALIASTOK.add(TYPEALIASTOK153); - pushFollow(FOLLOW_typealiasTarget_in_typealiasDecl3079); + pushFollow(FOLLOW_typealiasTarget_in_typealiasDecl3086); typealiasTarget154=typealiasTarget(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_typealiasTarget.add(typealiasTarget154.getTree()); - TYPE_ASSIGNMENT155=(Token)match(input,TYPE_ASSIGNMENT,FOLLOW_TYPE_ASSIGNMENT_in_typealiasDecl3081); if (state.failed) return retval; + TYPE_ASSIGNMENT155=(Token)match(input,TYPE_ASSIGNMENT,FOLLOW_TYPE_ASSIGNMENT_in_typealiasDecl3088); if (state.failed) return retval; if ( state.backtracking==0 ) stream_TYPE_ASSIGNMENT.add(TYPE_ASSIGNMENT155); - pushFollow(FOLLOW_typealiasAlias_in_typealiasDecl3083); + pushFollow(FOLLOW_typealiasAlias_in_typealiasDecl3090); typealiasAlias156=typealiasAlias(); state._fsp--; if (state.failed) return retval; @@ -6902,13 +6905,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 582:7: -> ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) + // 583:7: -> ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:582:10: ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:583:10: ^( TYPEALIAS ^( TYPEALIAS_TARGET typealiasTarget ) ^( TYPEALIAS_ALIAS typealiasAlias ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPEALIAS, "TYPEALIAS"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:583:14: ^( TYPEALIAS_TARGET typealiasTarget ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:584:14: ^( TYPEALIAS_TARGET typealiasTarget ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPEALIAS_TARGET, "TYPEALIAS_TARGET"), root_2); @@ -6916,7 +6919,7 @@ public class CTFParser extends Parser { adaptor.addChild(root_1, root_2); } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:584:14: ^( TYPEALIAS_ALIAS typealiasAlias ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:585:14: ^( TYPEALIAS_ALIAS typealiasAlias ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPEALIAS_ALIAS, "TYPEALIAS_ALIAS"), root_2); @@ -6963,7 +6966,7 @@ public class CTFParser extends Parser { // $ANTLR start "ctfKeyword" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:590:1: ctfKeyword : ( ALIGNTOK | EVENTTOK | SIGNEDTOK | STRINGTOK ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:591:1: ctfKeyword : ( ALIGNTOK | EVENTTOK | SIGNEDTOK | STRINGTOK ); public final CTFParser.ctfKeyword_return ctfKeyword() throws RecognitionException { CTFParser.ctfKeyword_return retval = new CTFParser.ctfKeyword_return(); retval.start = input.LT(1); @@ -6975,7 +6978,7 @@ public class CTFParser extends Parser { CommonTree set157_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:591:3: ( ALIGNTOK | EVENTTOK | SIGNEDTOK | STRINGTOK ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:592:3: ( ALIGNTOK | EVENTTOK | SIGNEDTOK | STRINGTOK ) // org/eclipse/tracecompass/ctf/parser/CTFParser.g: { root_0 = (CommonTree)adaptor.nil(); @@ -7023,7 +7026,7 @@ public class CTFParser extends Parser { // $ANTLR start "ctfSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:597:1: ctfSpecifier : ( ctfSpecifierHead ctfBody -> ^( ctfSpecifierHead ctfBody ) | typealiasDecl -> ^( DECLARATION typealiasDecl ) ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:598:1: ctfSpecifier : ( ctfSpecifierHead ctfBody -> ^( ctfSpecifierHead ctfBody ) | typealiasDecl -> ^( DECLARATION typealiasDecl ) ); public final CTFParser.ctfSpecifier_return ctfSpecifier() throws RecognitionException { CTFParser.ctfSpecifier_return retval = new CTFParser.ctfSpecifier_return(); retval.start = input.LT(1); @@ -7034,15 +7037,15 @@ public class CTFParser extends Parser { ParserRuleReturnScope ctfBody159 =null; ParserRuleReturnScope typealiasDecl160 =null; - RewriteRuleSubtreeStream stream_typealiasDecl=new RewriteRuleSubtreeStream(adaptor,"rule typealiasDecl"); RewriteRuleSubtreeStream stream_ctfSpecifierHead=new RewriteRuleSubtreeStream(adaptor,"rule ctfSpecifierHead"); + RewriteRuleSubtreeStream stream_typealiasDecl=new RewriteRuleSubtreeStream(adaptor,"rule typealiasDecl"); RewriteRuleSubtreeStream stream_ctfBody=new RewriteRuleSubtreeStream(adaptor,"rule ctfBody"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:599:3: ( ctfSpecifierHead ctfBody -> ^( ctfSpecifierHead ctfBody ) | typealiasDecl -> ^( DECLARATION typealiasDecl ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:600:3: ( ctfSpecifierHead ctfBody -> ^( ctfSpecifierHead ctfBody ) | typealiasDecl -> ^( DECLARATION typealiasDecl ) ) int alt52=2; int LA52_0 = input.LA(1); - if ( (LA52_0==CLOCKTOK||LA52_0==ENVTOK||LA52_0==EVENTTOK||LA52_0==STREAMTOK||LA52_0==TRACETOK) ) { + if ( (LA52_0==CALLSITETOK||LA52_0==CLOCKTOK||LA52_0==ENVTOK||LA52_0==EVENTTOK||LA52_0==STREAMTOK||LA52_0==TRACETOK) ) { alt52=1; } else if ( (LA52_0==TYPEALIASTOK) ) { @@ -7058,20 +7061,20 @@ public class CTFParser extends Parser { switch (alt52) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:599:5: ctfSpecifierHead ctfBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:600:5: ctfSpecifierHead ctfBody { - pushFollow(FOLLOW_ctfSpecifierHead_in_ctfSpecifier3183); + pushFollow(FOLLOW_ctfSpecifierHead_in_ctfSpecifier3190); ctfSpecifierHead158=ctfSpecifierHead(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_ctfSpecifierHead.add(ctfSpecifierHead158.getTree()); - pushFollow(FOLLOW_ctfBody_in_ctfSpecifier3185); + pushFollow(FOLLOW_ctfBody_in_ctfSpecifier3192); ctfBody159=ctfBody(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody159.getTree()); // AST REWRITE - // elements: ctfSpecifierHead, ctfBody + // elements: ctfBody, ctfSpecifierHead // token labels: // rule labels: retval // token list labels: @@ -7082,9 +7085,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 599:30: -> ^( ctfSpecifierHead ctfBody ) + // 600:30: -> ^( ctfSpecifierHead ctfBody ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:599:33: ^( ctfSpecifierHead ctfBody ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:600:33: ^( ctfSpecifierHead ctfBody ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot(stream_ctfSpecifierHead.nextNode(), root_1); @@ -7101,9 +7104,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:601:5: typealiasDecl + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:602:5: typealiasDecl { - pushFollow(FOLLOW_typealiasDecl_in_ctfSpecifier3202); + pushFollow(FOLLOW_typealiasDecl_in_ctfSpecifier3209); typealiasDecl160=typealiasDecl(); state._fsp--; if (state.failed) return retval; @@ -7120,9 +7123,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 601:19: -> ^( DECLARATION typealiasDecl ) + // 602:19: -> ^( DECLARATION typealiasDecl ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:601:22: ^( DECLARATION typealiasDecl ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:602:22: ^( DECLARATION typealiasDecl ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(DECLARATION, "DECLARATION"), root_1); @@ -7168,7 +7171,7 @@ public class CTFParser extends Parser { // $ANTLR start "ctfSpecifierHead" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:604:1: ctfSpecifierHead : ( EVENTTOK -> EVENT | STREAMTOK -> STREAM | TRACETOK -> TRACE | ENVTOK -> ENV | CLOCKTOK -> CLOCK ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:605:1: ctfSpecifierHead : ( EVENTTOK -> EVENT | STREAMTOK -> STREAM | TRACETOK -> TRACE | ENVTOK -> ENV | CLOCKTOK -> CLOCK | CALLSITETOK -> CALLSITE ); public final CTFParser.ctfSpecifierHead_return ctfSpecifierHead() throws RecognitionException { CTFParser.ctfSpecifierHead_return retval = new CTFParser.ctfSpecifierHead_return(); retval.start = input.LT(1); @@ -7180,21 +7183,24 @@ public class CTFParser extends Parser { Token TRACETOK163=null; Token ENVTOK164=null; Token CLOCKTOK165=null; + Token CALLSITETOK166=null; CommonTree EVENTTOK161_tree=null; CommonTree STREAMTOK162_tree=null; CommonTree TRACETOK163_tree=null; CommonTree ENVTOK164_tree=null; CommonTree CLOCKTOK165_tree=null; - RewriteRuleTokenStream stream_ENVTOK=new RewriteRuleTokenStream(adaptor,"token ENVTOK"); - RewriteRuleTokenStream stream_TRACETOK=new RewriteRuleTokenStream(adaptor,"token TRACETOK"); + CommonTree CALLSITETOK166_tree=null; + RewriteRuleTokenStream stream_EVENTTOK=new RewriteRuleTokenStream(adaptor,"token EVENTTOK"); + RewriteRuleTokenStream stream_CALLSITETOK=new RewriteRuleTokenStream(adaptor,"token CALLSITETOK"); RewriteRuleTokenStream stream_STREAMTOK=new RewriteRuleTokenStream(adaptor,"token STREAMTOK"); + RewriteRuleTokenStream stream_ENVTOK=new RewriteRuleTokenStream(adaptor,"token ENVTOK"); RewriteRuleTokenStream stream_CLOCKTOK=new RewriteRuleTokenStream(adaptor,"token CLOCKTOK"); - RewriteRuleTokenStream stream_EVENTTOK=new RewriteRuleTokenStream(adaptor,"token EVENTTOK"); + RewriteRuleTokenStream stream_TRACETOK=new RewriteRuleTokenStream(adaptor,"token TRACETOK"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:605:3: ( EVENTTOK -> EVENT | STREAMTOK -> STREAM | TRACETOK -> TRACE | ENVTOK -> ENV | CLOCKTOK -> CLOCK ) - int alt53=5; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:606:3: ( EVENTTOK -> EVENT | STREAMTOK -> STREAM | TRACETOK -> TRACE | ENVTOK -> ENV | CLOCKTOK -> CLOCK | CALLSITETOK -> CALLSITE ) + int alt53=6; switch ( input.LA(1) ) { case EVENTTOK: { @@ -7221,6 +7227,11 @@ public class CTFParser extends Parser { alt53=5; } break; + case CALLSITETOK: + { + alt53=6; + } + break; default: if (state.backtracking>0) {state.failed=true; return retval;} NoViableAltException nvae = @@ -7229,9 +7240,9 @@ public class CTFParser extends Parser { } switch (alt53) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:605:5: EVENTTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:606:5: EVENTTOK { - EVENTTOK161=(Token)match(input,EVENTTOK,FOLLOW_EVENTTOK_in_ctfSpecifierHead3223); if (state.failed) return retval; + EVENTTOK161=(Token)match(input,EVENTTOK,FOLLOW_EVENTTOK_in_ctfSpecifierHead3230); if (state.failed) return retval; if ( state.backtracking==0 ) stream_EVENTTOK.add(EVENTTOK161); // AST REWRITE @@ -7246,7 +7257,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 605:14: -> EVENT + // 606:14: -> EVENT { adaptor.addChild(root_0, (CommonTree)adaptor.create(EVENT, "EVENT")); } @@ -7258,9 +7269,9 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:606:5: STREAMTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:607:5: STREAMTOK { - STREAMTOK162=(Token)match(input,STREAMTOK,FOLLOW_STREAMTOK_in_ctfSpecifierHead3233); if (state.failed) return retval; + STREAMTOK162=(Token)match(input,STREAMTOK,FOLLOW_STREAMTOK_in_ctfSpecifierHead3240); if (state.failed) return retval; if ( state.backtracking==0 ) stream_STREAMTOK.add(STREAMTOK162); // AST REWRITE @@ -7275,7 +7286,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 606:15: -> STREAM + // 607:15: -> STREAM { adaptor.addChild(root_0, (CommonTree)adaptor.create(STREAM, "STREAM")); } @@ -7287,9 +7298,9 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:607:5: TRACETOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:608:5: TRACETOK { - TRACETOK163=(Token)match(input,TRACETOK,FOLLOW_TRACETOK_in_ctfSpecifierHead3243); if (state.failed) return retval; + TRACETOK163=(Token)match(input,TRACETOK,FOLLOW_TRACETOK_in_ctfSpecifierHead3250); if (state.failed) return retval; if ( state.backtracking==0 ) stream_TRACETOK.add(TRACETOK163); // AST REWRITE @@ -7304,7 +7315,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 607:14: -> TRACE + // 608:14: -> TRACE { adaptor.addChild(root_0, (CommonTree)adaptor.create(TRACE, "TRACE")); } @@ -7316,9 +7327,9 @@ public class CTFParser extends Parser { } break; case 4 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:608:5: ENVTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:609:5: ENVTOK { - ENVTOK164=(Token)match(input,ENVTOK,FOLLOW_ENVTOK_in_ctfSpecifierHead3253); if (state.failed) return retval; + ENVTOK164=(Token)match(input,ENVTOK,FOLLOW_ENVTOK_in_ctfSpecifierHead3260); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ENVTOK.add(ENVTOK164); // AST REWRITE @@ -7333,7 +7344,7 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 608:12: -> ENV + // 609:12: -> ENV { adaptor.addChild(root_0, (CommonTree)adaptor.create(ENV, "ENV")); } @@ -7345,9 +7356,9 @@ public class CTFParser extends Parser { } break; case 5 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:609:5: CLOCKTOK + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:610:5: CLOCKTOK { - CLOCKTOK165=(Token)match(input,CLOCKTOK,FOLLOW_CLOCKTOK_in_ctfSpecifierHead3263); if (state.failed) return retval; + CLOCKTOK165=(Token)match(input,CLOCKTOK,FOLLOW_CLOCKTOK_in_ctfSpecifierHead3270); if (state.failed) return retval; if ( state.backtracking==0 ) stream_CLOCKTOK.add(CLOCKTOK165); // AST REWRITE @@ -7362,12 +7373,41 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 609:14: -> CLOCK + // 610:14: -> CLOCK { adaptor.addChild(root_0, (CommonTree)adaptor.create(CLOCK, "CLOCK")); } + retval.tree = root_0; + } + + } + break; + case 6 : + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:611:5: CALLSITETOK + { + CALLSITETOK166=(Token)match(input,CALLSITETOK,FOLLOW_CALLSITETOK_in_ctfSpecifierHead3280); if (state.failed) return retval; + if ( state.backtracking==0 ) stream_CALLSITETOK.add(CALLSITETOK166); + + // AST REWRITE + // elements: + // token labels: + // rule labels: retval + // token list labels: + // rule list labels: + // wildcard labels: + if ( state.backtracking==0 ) { + retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + + root_0 = (CommonTree)adaptor.nil(); + // 611:17: -> CALLSITE + { + adaptor.addChild(root_0, (CommonTree)adaptor.create(CALLSITE, "CALLSITE")); + } + + retval.tree = root_0; } @@ -7403,30 +7443,30 @@ public class CTFParser extends Parser { // $ANTLR start "ctfTypeSpecifier" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:612:1: ctfTypeSpecifier : ( FLOATINGPOINTTOK ctfBody -> ^( FLOATING_POINT ( ctfBody )? ) | INTEGERTOK ctfBody -> ^( INTEGER ( ctfBody )? ) | STRINGTOK ( ctfBody )? -> ^( STRING ( ctfBody )? ) ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:614:1: ctfTypeSpecifier : ( FLOATINGPOINTTOK ctfBody -> ^( FLOATING_POINT ( ctfBody )? ) | INTEGERTOK ctfBody -> ^( INTEGER ( ctfBody )? ) | STRINGTOK ( ctfBody )? -> ^( STRING ( ctfBody )? ) ); public final CTFParser.ctfTypeSpecifier_return ctfTypeSpecifier() throws RecognitionException { CTFParser.ctfTypeSpecifier_return retval = new CTFParser.ctfTypeSpecifier_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token FLOATINGPOINTTOK166=null; - Token INTEGERTOK168=null; - Token STRINGTOK170=null; - ParserRuleReturnScope ctfBody167 =null; - ParserRuleReturnScope ctfBody169 =null; - ParserRuleReturnScope ctfBody171 =null; + Token FLOATINGPOINTTOK167=null; + Token INTEGERTOK169=null; + Token STRINGTOK171=null; + ParserRuleReturnScope ctfBody168 =null; + ParserRuleReturnScope ctfBody170 =null; + ParserRuleReturnScope ctfBody172 =null; - CommonTree FLOATINGPOINTTOK166_tree=null; - CommonTree INTEGERTOK168_tree=null; - CommonTree STRINGTOK170_tree=null; + CommonTree FLOATINGPOINTTOK167_tree=null; + CommonTree INTEGERTOK169_tree=null; + CommonTree STRINGTOK171_tree=null; RewriteRuleTokenStream stream_FLOATINGPOINTTOK=new RewriteRuleTokenStream(adaptor,"token FLOATINGPOINTTOK"); - RewriteRuleTokenStream stream_INTEGERTOK=new RewriteRuleTokenStream(adaptor,"token INTEGERTOK"); RewriteRuleTokenStream stream_STRINGTOK=new RewriteRuleTokenStream(adaptor,"token STRINGTOK"); + RewriteRuleTokenStream stream_INTEGERTOK=new RewriteRuleTokenStream(adaptor,"token INTEGERTOK"); RewriteRuleSubtreeStream stream_ctfBody=new RewriteRuleSubtreeStream(adaptor,"rule ctfBody"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:614:3: ( FLOATINGPOINTTOK ctfBody -> ^( FLOATING_POINT ( ctfBody )? ) | INTEGERTOK ctfBody -> ^( INTEGER ( ctfBody )? ) | STRINGTOK ( ctfBody )? -> ^( STRING ( ctfBody )? ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:3: ( FLOATINGPOINTTOK ctfBody -> ^( FLOATING_POINT ( ctfBody )? ) | INTEGERTOK ctfBody -> ^( INTEGER ( ctfBody )? ) | STRINGTOK ( ctfBody )? -> ^( STRING ( ctfBody )? ) ) int alt55=3; switch ( input.LA(1) ) { case FLOATINGPOINTTOK: @@ -7452,16 +7492,16 @@ public class CTFParser extends Parser { } switch (alt55) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:614:5: FLOATINGPOINTTOK ctfBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:5: FLOATINGPOINTTOK ctfBody { - FLOATINGPOINTTOK166=(Token)match(input,FLOATINGPOINTTOK,FOLLOW_FLOATINGPOINTTOK_in_ctfTypeSpecifier3286); if (state.failed) return retval; - if ( state.backtracking==0 ) stream_FLOATINGPOINTTOK.add(FLOATINGPOINTTOK166); + FLOATINGPOINTTOK167=(Token)match(input,FLOATINGPOINTTOK,FOLLOW_FLOATINGPOINTTOK_in_ctfTypeSpecifier3303); if (state.failed) return retval; + if ( state.backtracking==0 ) stream_FLOATINGPOINTTOK.add(FLOATINGPOINTTOK167); - pushFollow(FOLLOW_ctfBody_in_ctfTypeSpecifier3288); - ctfBody167=ctfBody(); + pushFollow(FOLLOW_ctfBody_in_ctfTypeSpecifier3305); + ctfBody168=ctfBody(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody167.getTree()); + if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody168.getTree()); // AST REWRITE // elements: ctfBody // token labels: @@ -7474,13 +7514,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 614:30: -> ^( FLOATING_POINT ( ctfBody )? ) + // 616:30: -> ^( FLOATING_POINT ( ctfBody )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:614:33: ^( FLOATING_POINT ( ctfBody )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:33: ^( FLOATING_POINT ( ctfBody )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(FLOATING_POINT, "FLOATING_POINT"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:614:50: ( ctfBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:50: ( ctfBody )? if ( stream_ctfBody.hasNext() ) { adaptor.addChild(root_1, stream_ctfBody.nextTree()); } @@ -7498,16 +7538,16 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:615:5: INTEGERTOK ctfBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:617:5: INTEGERTOK ctfBody { - INTEGERTOK168=(Token)match(input,INTEGERTOK,FOLLOW_INTEGERTOK_in_ctfTypeSpecifier3303); if (state.failed) return retval; - if ( state.backtracking==0 ) stream_INTEGERTOK.add(INTEGERTOK168); + INTEGERTOK169=(Token)match(input,INTEGERTOK,FOLLOW_INTEGERTOK_in_ctfTypeSpecifier3320); if (state.failed) return retval; + if ( state.backtracking==0 ) stream_INTEGERTOK.add(INTEGERTOK169); - pushFollow(FOLLOW_ctfBody_in_ctfTypeSpecifier3305); - ctfBody169=ctfBody(); + pushFollow(FOLLOW_ctfBody_in_ctfTypeSpecifier3322); + ctfBody170=ctfBody(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody169.getTree()); + if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody170.getTree()); // AST REWRITE // elements: ctfBody // token labels: @@ -7520,13 +7560,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 615:24: -> ^( INTEGER ( ctfBody )? ) + // 617:24: -> ^( INTEGER ( ctfBody )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:615:27: ^( INTEGER ( ctfBody )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:617:27: ^( INTEGER ( ctfBody )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(INTEGER, "INTEGER"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:615:37: ( ctfBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:617:37: ( ctfBody )? if ( stream_ctfBody.hasNext() ) { adaptor.addChild(root_1, stream_ctfBody.nextTree()); } @@ -7544,12 +7584,12 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:5: STRINGTOK ( ctfBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:618:5: STRINGTOK ( ctfBody )? { - STRINGTOK170=(Token)match(input,STRINGTOK,FOLLOW_STRINGTOK_in_ctfTypeSpecifier3320); if (state.failed) return retval; - if ( state.backtracking==0 ) stream_STRINGTOK.add(STRINGTOK170); + STRINGTOK171=(Token)match(input,STRINGTOK,FOLLOW_STRINGTOK_in_ctfTypeSpecifier3337); if (state.failed) return retval; + if ( state.backtracking==0 ) stream_STRINGTOK.add(STRINGTOK171); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:15: ( ctfBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:618:15: ( ctfBody )? int alt54=2; int LA54_0 = input.LA(1); if ( (LA54_0==LCURL) ) { @@ -7557,13 +7597,13 @@ public class CTFParser extends Parser { } switch (alt54) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:15: ctfBody + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:618:15: ctfBody { - pushFollow(FOLLOW_ctfBody_in_ctfTypeSpecifier3322); - ctfBody171=ctfBody(); + pushFollow(FOLLOW_ctfBody_in_ctfTypeSpecifier3339); + ctfBody172=ctfBody(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody171.getTree()); + if ( state.backtracking==0 ) stream_ctfBody.add(ctfBody172.getTree()); } break; @@ -7581,13 +7621,13 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 616:24: -> ^( STRING ( ctfBody )? ) + // 618:24: -> ^( STRING ( ctfBody )? ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:27: ^( STRING ( ctfBody )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:618:27: ^( STRING ( ctfBody )? ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(STRING, "STRING"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:616:36: ( ctfBody )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:618:36: ( ctfBody )? if ( stream_ctfBody.hasNext() ) { adaptor.addChild(root_1, stream_ctfBody.nextTree()); } @@ -7634,7 +7674,7 @@ public class CTFParser extends Parser { // $ANTLR start "ctfBody" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:619:1: ctfBody : LCURL ( ctfAssignmentExpressionList )? RCURL -> ( ctfAssignmentExpressionList )? ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:621:1: ctfBody : LCURL ( ctfAssignmentExpressionList )? RCURL -> ( ctfAssignmentExpressionList )? ; public final CTFParser.ctfBody_return ctfBody() throws RecognitionException { Symbols_stack.push(new Symbols_scope()); @@ -7643,12 +7683,12 @@ public class CTFParser extends Parser { CommonTree root_0 = null; - Token LCURL172=null; - Token RCURL174=null; - ParserRuleReturnScope ctfAssignmentExpressionList173 =null; + Token LCURL173=null; + Token RCURL175=null; + ParserRuleReturnScope ctfAssignmentExpressionList174 =null; - CommonTree LCURL172_tree=null; - CommonTree RCURL174_tree=null; + CommonTree LCURL173_tree=null; + CommonTree RCURL175_tree=null; RewriteRuleTokenStream stream_LCURL=new RewriteRuleTokenStream(adaptor,"token LCURL"); RewriteRuleTokenStream stream_RCURL=new RewriteRuleTokenStream(adaptor,"token RCURL"); RewriteRuleSubtreeStream stream_ctfAssignmentExpressionList=new RewriteRuleSubtreeStream(adaptor,"rule ctfAssignmentExpressionList"); @@ -7657,13 +7697,13 @@ public class CTFParser extends Parser { Symbols_stack.peek().types = new HashSet(); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:624:3: ( LCURL ( ctfAssignmentExpressionList )? RCURL -> ( ctfAssignmentExpressionList )? ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:624:5: LCURL ( ctfAssignmentExpressionList )? RCURL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:626:3: ( LCURL ( ctfAssignmentExpressionList )? RCURL -> ( ctfAssignmentExpressionList )? ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:626:5: LCURL ( ctfAssignmentExpressionList )? RCURL { - LCURL172=(Token)match(input,LCURL,FOLLOW_LCURL_in_ctfBody3355); if (state.failed) return retval; - if ( state.backtracking==0 ) stream_LCURL.add(LCURL172); + LCURL173=(Token)match(input,LCURL,FOLLOW_LCURL_in_ctfBody3372); if (state.failed) return retval; + if ( state.backtracking==0 ) stream_LCURL.add(LCURL173); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:624:11: ( ctfAssignmentExpressionList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:626:11: ( ctfAssignmentExpressionList )? int alt56=2; int LA56_0 = input.LA(1); if ( (LA56_0==ALIGNTOK||(LA56_0 >= BOOLTOK && LA56_0 <= CHARTOK)||LA56_0==CLOCKTOK||(LA56_0 >= COMPLEXTOK && LA56_0 <= DECIMAL_LITERAL)||LA56_0==DOUBLETOK||(LA56_0 >= ENUMTOK && LA56_0 <= ENVTOK)||(LA56_0 >= EVENTTOK && LA56_0 <= FLOATTOK)||LA56_0==HEX_LITERAL||(LA56_0 >= IDENTIFIER && LA56_0 <= IMAGINARYTOK)||LA56_0==INTEGERTOK||LA56_0==INTTOK||LA56_0==LONGTOK||LA56_0==OCTAL_LITERAL||(LA56_0 >= SHORTTOK && LA56_0 <= SIGNEDTOK)||LA56_0==STREAMTOK||LA56_0==STRINGTOK||(LA56_0 >= STRING_LITERAL && LA56_0 <= STRUCTTOK)||(LA56_0 >= TRACETOK && LA56_0 <= TYPEDEFTOK)||(LA56_0 >= UNSIGNEDTOK && LA56_0 <= VOIDTOK)) ) { @@ -7671,20 +7711,20 @@ public class CTFParser extends Parser { } switch (alt56) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:624:11: ctfAssignmentExpressionList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:626:11: ctfAssignmentExpressionList { - pushFollow(FOLLOW_ctfAssignmentExpressionList_in_ctfBody3357); - ctfAssignmentExpressionList173=ctfAssignmentExpressionList(); + pushFollow(FOLLOW_ctfAssignmentExpressionList_in_ctfBody3374); + ctfAssignmentExpressionList174=ctfAssignmentExpressionList(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) stream_ctfAssignmentExpressionList.add(ctfAssignmentExpressionList173.getTree()); + if ( state.backtracking==0 ) stream_ctfAssignmentExpressionList.add(ctfAssignmentExpressionList174.getTree()); } break; } - RCURL174=(Token)match(input,RCURL,FOLLOW_RCURL_in_ctfBody3360); if (state.failed) return retval; - if ( state.backtracking==0 ) stream_RCURL.add(RCURL174); + RCURL175=(Token)match(input,RCURL,FOLLOW_RCURL_in_ctfBody3377); if (state.failed) return retval; + if ( state.backtracking==0 ) stream_RCURL.add(RCURL175); // AST REWRITE // elements: ctfAssignmentExpressionList @@ -7698,9 +7738,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 624:46: -> ( ctfAssignmentExpressionList )? + // 626:46: -> ( ctfAssignmentExpressionList )? { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:624:49: ( ctfAssignmentExpressionList )? + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:626:49: ( ctfAssignmentExpressionList )? if ( stream_ctfAssignmentExpressionList.hasNext() ) { adaptor.addChild(root_0, stream_ctfAssignmentExpressionList.nextTree()); } @@ -7744,26 +7784,26 @@ public class CTFParser extends Parser { // $ANTLR start "ctfAssignmentExpressionList" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:627:1: ctfAssignmentExpressionList : ( ctfAssignmentExpression TERM !)+ ; + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:629:1: ctfAssignmentExpressionList : ( ctfAssignmentExpression TERM !)+ ; public final CTFParser.ctfAssignmentExpressionList_return ctfAssignmentExpressionList() throws RecognitionException { CTFParser.ctfAssignmentExpressionList_return retval = new CTFParser.ctfAssignmentExpressionList_return(); retval.start = input.LT(1); CommonTree root_0 = null; - Token TERM176=null; - ParserRuleReturnScope ctfAssignmentExpression175 =null; + Token TERM177=null; + ParserRuleReturnScope ctfAssignmentExpression176 =null; - CommonTree TERM176_tree=null; + CommonTree TERM177_tree=null; try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:628:3: ( ( ctfAssignmentExpression TERM !)+ ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:628:5: ( ctfAssignmentExpression TERM !)+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:630:3: ( ( ctfAssignmentExpression TERM !)+ ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:630:5: ( ctfAssignmentExpression TERM !)+ { root_0 = (CommonTree)adaptor.nil(); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:628:5: ( ctfAssignmentExpression TERM !)+ + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:630:5: ( ctfAssignmentExpression TERM !)+ int cnt57=0; loop57: while (true) { @@ -7775,15 +7815,15 @@ public class CTFParser extends Parser { switch (alt57) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:628:6: ctfAssignmentExpression TERM ! + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:630:6: ctfAssignmentExpression TERM ! { - pushFollow(FOLLOW_ctfAssignmentExpression_in_ctfAssignmentExpressionList3379); - ctfAssignmentExpression175=ctfAssignmentExpression(); + pushFollow(FOLLOW_ctfAssignmentExpression_in_ctfAssignmentExpressionList3396); + ctfAssignmentExpression176=ctfAssignmentExpression(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) adaptor.addChild(root_0, ctfAssignmentExpression175.getTree()); + if ( state.backtracking==0 ) adaptor.addChild(root_0, ctfAssignmentExpression176.getTree()); - TERM176=(Token)match(input,TERM,FOLLOW_TERM_in_ctfAssignmentExpressionList3381); if (state.failed) return retval; + TERM177=(Token)match(input,TERM,FOLLOW_TERM_in_ctfAssignmentExpressionList3398); if (state.failed) return retval; } break; @@ -7826,7 +7866,7 @@ public class CTFParser extends Parser { // $ANTLR start "ctfAssignmentExpression" - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:631:1: ctfAssignmentExpression : (left= unaryExpression (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) | ( declarationSpecifiers {...}? declaratorList ) -> ^( TYPEDEF declaratorList declarationSpecifiers ) | typealiasDecl ); + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:633:1: ctfAssignmentExpression : (left= unaryExpression (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) | ( declarationSpecifiers {...}? declaratorList ) -> ^( TYPEDEF declaratorList declarationSpecifiers ) | typealiasDecl ); public final CTFParser.ctfAssignmentExpression_return ctfAssignmentExpression() throws RecognitionException { CTFParser.ctfAssignmentExpression_return retval = new CTFParser.ctfAssignmentExpression_return(); retval.start = input.LT(1); @@ -7838,21 +7878,21 @@ public class CTFParser extends Parser { ParserRuleReturnScope left =null; ParserRuleReturnScope right1 =null; ParserRuleReturnScope right2 =null; - ParserRuleReturnScope declarationSpecifiers177 =null; - ParserRuleReturnScope declaratorList178 =null; - ParserRuleReturnScope typealiasDecl179 =null; + ParserRuleReturnScope declarationSpecifiers178 =null; + ParserRuleReturnScope declaratorList179 =null; + ParserRuleReturnScope typealiasDecl180 =null; CommonTree assignment_tree=null; CommonTree type_assignment_tree=null; - RewriteRuleTokenStream stream_TYPE_ASSIGNMENT=new RewriteRuleTokenStream(adaptor,"token TYPE_ASSIGNMENT"); RewriteRuleTokenStream stream_ASSIGNMENT=new RewriteRuleTokenStream(adaptor,"token ASSIGNMENT"); + RewriteRuleTokenStream stream_TYPE_ASSIGNMENT=new RewriteRuleTokenStream(adaptor,"token TYPE_ASSIGNMENT"); RewriteRuleSubtreeStream stream_declaratorList=new RewriteRuleSubtreeStream(adaptor,"rule declaratorList"); - RewriteRuleSubtreeStream stream_typeSpecifier=new RewriteRuleSubtreeStream(adaptor,"rule typeSpecifier"); RewriteRuleSubtreeStream stream_unaryExpression=new RewriteRuleSubtreeStream(adaptor,"rule unaryExpression"); RewriteRuleSubtreeStream stream_declarationSpecifiers=new RewriteRuleSubtreeStream(adaptor,"rule declarationSpecifiers"); + RewriteRuleSubtreeStream stream_typeSpecifier=new RewriteRuleSubtreeStream(adaptor,"rule typeSpecifier"); try { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:637:3: (left= unaryExpression (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) | ( declarationSpecifiers {...}? declaratorList ) -> ^( TYPEDEF declaratorList declarationSpecifiers ) | typealiasDecl ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:639:3: (left= unaryExpression (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) | ( declarationSpecifiers {...}? declaratorList ) -> ^( TYPEDEF declaratorList declarationSpecifiers ) | typealiasDecl ) int alt59=3; switch ( input.LA(1) ) { case IDENTIFIER: @@ -7868,6 +7908,7 @@ public class CTFParser extends Parser { } break; case ALIGNTOK: + case CALLSITETOK: case CHARACTER_LITERAL: case CLOCKTOK: case DECIMAL_LITERAL: @@ -8031,14 +8072,14 @@ public class CTFParser extends Parser { } switch (alt59) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:637:5: left= unaryExpression (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:639:5: left= unaryExpression (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) { - pushFollow(FOLLOW_unaryExpression_in_ctfAssignmentExpression3404); + pushFollow(FOLLOW_unaryExpression_in_ctfAssignmentExpression3421); left=unaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_unaryExpression.add(left.getTree()); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:638:7: (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:640:7: (assignment= ASSIGNMENT right1= unaryExpression -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) |type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) ) int alt58=2; int LA58_0 = input.LA(1); if ( (LA58_0==ASSIGNMENT) ) { @@ -8057,37 +8098,37 @@ public class CTFParser extends Parser { switch (alt58) { case 1 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:638:9: assignment= ASSIGNMENT right1= unaryExpression + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:640:9: assignment= ASSIGNMENT right1= unaryExpression { - assignment=(Token)match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_ctfAssignmentExpression3416); if (state.failed) return retval; + assignment=(Token)match(input,ASSIGNMENT,FOLLOW_ASSIGNMENT_in_ctfAssignmentExpression3433); if (state.failed) return retval; if ( state.backtracking==0 ) stream_ASSIGNMENT.add(assignment); - pushFollow(FOLLOW_unaryExpression_in_ctfAssignmentExpression3420); + pushFollow(FOLLOW_unaryExpression_in_ctfAssignmentExpression3437); right1=unaryExpression(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_unaryExpression.add(right1.getTree()); // AST REWRITE - // elements: right1, left + // elements: left, right1 // token labels: - // rule labels: right1, left, retval + // rule labels: retval, left, right1 // token list labels: // rule list labels: // wildcard labels: if ( state.backtracking==0 ) { retval.tree = root_0; - RewriteRuleSubtreeStream stream_right1=new RewriteRuleSubtreeStream(adaptor,"rule right1",right1!=null?right1.getTree():null); - RewriteRuleSubtreeStream stream_left=new RewriteRuleSubtreeStream(adaptor,"rule left",left!=null?left.getTree():null); RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); + RewriteRuleSubtreeStream stream_left=new RewriteRuleSubtreeStream(adaptor,"rule left",left!=null?left.getTree():null); + RewriteRuleSubtreeStream stream_right1=new RewriteRuleSubtreeStream(adaptor,"rule right1",right1!=null?right1.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 639:11: -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) + // 641:11: -> ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:639:14: ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:641:14: ^( CTF_EXPRESSION_VAL ^( CTF_LEFT $left) ^( CTF_RIGHT $right1) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(CTF_EXPRESSION_VAL, "CTF_EXPRESSION_VAL"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:640:18: ^( CTF_LEFT $left) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:642:18: ^( CTF_LEFT $left) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(CTF_LEFT, "CTF_LEFT"), root_2); @@ -8095,7 +8136,7 @@ public class CTFParser extends Parser { adaptor.addChild(root_1, root_2); } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:641:18: ^( CTF_RIGHT $right1) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:643:18: ^( CTF_RIGHT $right1) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(CTF_RIGHT, "CTF_RIGHT"), root_2); @@ -8115,37 +8156,37 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:642:9: type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:644:9: type_assignment= TYPE_ASSIGNMENT right2= typeSpecifier { - type_assignment=(Token)match(input,TYPE_ASSIGNMENT,FOLLOW_TYPE_ASSIGNMENT_in_ctfAssignmentExpression3496); if (state.failed) return retval; + type_assignment=(Token)match(input,TYPE_ASSIGNMENT,FOLLOW_TYPE_ASSIGNMENT_in_ctfAssignmentExpression3513); if (state.failed) return retval; if ( state.backtracking==0 ) stream_TYPE_ASSIGNMENT.add(type_assignment); - pushFollow(FOLLOW_typeSpecifier_in_ctfAssignmentExpression3500); + pushFollow(FOLLOW_typeSpecifier_in_ctfAssignmentExpression3517); right2=typeSpecifier(); state._fsp--; if (state.failed) return retval; if ( state.backtracking==0 ) stream_typeSpecifier.add(right2.getTree()); // AST REWRITE - // elements: left, right2 + // elements: right2, left // token labels: - // rule labels: left, right2, retval + // rule labels: retval, left, right2 // token list labels: // rule list labels: // wildcard labels: if ( state.backtracking==0 ) { retval.tree = root_0; + RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); RewriteRuleSubtreeStream stream_left=new RewriteRuleSubtreeStream(adaptor,"rule left",left!=null?left.getTree():null); RewriteRuleSubtreeStream stream_right2=new RewriteRuleSubtreeStream(adaptor,"rule right2",right2!=null?right2.getTree():null); - RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 643:11: -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) + // 645:11: -> ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:643:14: ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:645:14: ^( CTF_EXPRESSION_TYPE ^( CTF_LEFT $left) ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(CTF_EXPRESSION_TYPE, "CTF_EXPRESSION_TYPE"), root_1); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:644:18: ^( CTF_LEFT $left) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:646:18: ^( CTF_LEFT $left) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(CTF_LEFT, "CTF_LEFT"), root_2); @@ -8153,11 +8194,11 @@ public class CTFParser extends Parser { adaptor.addChild(root_1, root_2); } - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:645:18: ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:647:18: ^( CTF_RIGHT ^( TYPE_SPECIFIER_LIST $right2) ) { CommonTree root_2 = (CommonTree)adaptor.nil(); root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(CTF_RIGHT, "CTF_RIGHT"), root_2); - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:645:30: ^( TYPE_SPECIFIER_LIST $right2) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:647:30: ^( TYPE_SPECIFIER_LIST $right2) { CommonTree root_3 = (CommonTree)adaptor.nil(); root_3 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPE_SPECIFIER_LIST, "TYPE_SPECIFIER_LIST"), root_3); @@ -8185,25 +8226,25 @@ public class CTFParser extends Parser { } break; case 2 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:647:5: ( declarationSpecifiers {...}? declaratorList ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:649:5: ( declarationSpecifiers {...}? declaratorList ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:647:5: ( declarationSpecifiers {...}? declaratorList ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:647:6: declarationSpecifiers {...}? declaratorList + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:649:5: ( declarationSpecifiers {...}? declaratorList ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:649:6: declarationSpecifiers {...}? declaratorList { - pushFollow(FOLLOW_declarationSpecifiers_in_ctfAssignmentExpression3583); - declarationSpecifiers177=declarationSpecifiers(); + pushFollow(FOLLOW_declarationSpecifiers_in_ctfAssignmentExpression3600); + declarationSpecifiers178=declarationSpecifiers(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) stream_declarationSpecifiers.add(declarationSpecifiers177.getTree()); + if ( state.backtracking==0 ) stream_declarationSpecifiers.add(declarationSpecifiers178.getTree()); if ( !((inTypedef())) ) { if (state.backtracking>0) {state.failed=true; return retval;} throw new FailedPredicateException(input, "ctfAssignmentExpression", "inTypedef()"); } - pushFollow(FOLLOW_declaratorList_in_ctfAssignmentExpression3587); - declaratorList178=declaratorList(); + pushFollow(FOLLOW_declaratorList_in_ctfAssignmentExpression3604); + declaratorList179=declaratorList(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) stream_declaratorList.add(declaratorList178.getTree()); + if ( state.backtracking==0 ) stream_declaratorList.add(declaratorList179.getTree()); } // AST REWRITE @@ -8218,9 +8259,9 @@ public class CTFParser extends Parser { RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); root_0 = (CommonTree)adaptor.nil(); - // 648:7: -> ^( TYPEDEF declaratorList declarationSpecifiers ) + // 650:7: -> ^( TYPEDEF declaratorList declarationSpecifiers ) { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:648:10: ^( TYPEDEF declaratorList declarationSpecifiers ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:650:10: ^( TYPEDEF declaratorList declarationSpecifiers ) { CommonTree root_1 = (CommonTree)adaptor.nil(); root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(TYPEDEF, "TYPEDEF"), root_1); @@ -8238,16 +8279,16 @@ public class CTFParser extends Parser { } break; case 3 : - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:649:5: typealiasDecl + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:651:5: typealiasDecl { root_0 = (CommonTree)adaptor.nil(); - pushFollow(FOLLOW_typealiasDecl_in_ctfAssignmentExpression3610); - typealiasDecl179=typealiasDecl(); + pushFollow(FOLLOW_typealiasDecl_in_ctfAssignmentExpression3627); + typealiasDecl180=typealiasDecl(); state._fsp--; if (state.failed) return retval; - if ( state.backtracking==0 ) adaptor.addChild(root_0, typealiasDecl179.getTree()); + if ( state.backtracking==0 ) adaptor.addChild(root_0, typealiasDecl180.getTree()); } break; @@ -8279,10 +8320,10 @@ public class CTFParser extends Parser { // $ANTLR start synpred1_CTFParser public final void synpred1_CTFParser_fragment() throws RecognitionException { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:206:5: ( IDENTIFIER ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:206:6: IDENTIFIER + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:207:5: ( IDENTIFIER ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:207:6: IDENTIFIER { - match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred1_CTFParser553); if (state.failed) return; + match(input,IDENTIFIER,FOLLOW_IDENTIFIER_in_synpred1_CTFParser560); if (state.failed) return; } @@ -8291,10 +8332,10 @@ public class CTFParser extends Parser { // $ANTLR start synpred2_CTFParser public final void synpred2_CTFParser_fragment() throws RecognitionException { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:208:5: ( ctfKeyword ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:208:6: ctfKeyword + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:5: ( ctfKeyword ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:6: ctfKeyword { - pushFollow(FOLLOW_ctfKeyword_in_synpred2_CTFParser579); + pushFollow(FOLLOW_ctfKeyword_in_synpred2_CTFParser586); ctfKeyword(); state._fsp--; if (state.failed) return; @@ -8306,10 +8347,10 @@ public class CTFParser extends Parser { // $ANTLR start synpred3_CTFParser public final void synpred3_CTFParser_fragment() throws RecognitionException { - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:5: ( STRING_LITERAL ) - // org/eclipse/tracecompass/ctf/parser/CTFParser.g:209:6: STRING_LITERAL + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:210:5: ( STRING_LITERAL ) + // org/eclipse/tracecompass/ctf/parser/CTFParser.g:210:6: STRING_LITERAL { - match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_synpred3_CTFParser599); if (state.failed) return; + match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_synpred3_CTFParser606); if (state.failed) return; } @@ -8318,11 +8359,11 @@ public class CTFParser extends Parser { // Delegated rules - public final boolean synpred1_CTFParser() { + public final boolean synpred2_CTFParser() { state.backtracking++; int start = input.mark(); try { - synpred1_CTFParser_fragment(); // can never throw exception + synpred2_CTFParser_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } @@ -8332,11 +8373,11 @@ public class CTFParser extends Parser { state.failed=false; return success; } - public final boolean synpred3_CTFParser() { + public final boolean synpred1_CTFParser() { state.backtracking++; int start = input.mark(); try { - synpred3_CTFParser_fragment(); // can never throw exception + synpred1_CTFParser_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } @@ -8346,11 +8387,11 @@ public class CTFParser extends Parser { state.failed=false; return success; } - public final boolean synpred2_CTFParser() { + public final boolean synpred3_CTFParser() { state.backtracking++; int start = input.mark(); try { - synpred2_CTFParser_fragment(); // can never throw exception + synpred3_CTFParser_fragment(); // can never throw exception } catch (RecognitionException re) { System.err.println("impossible: "+re); } @@ -8368,13 +8409,13 @@ public class CTFParser extends Parser { static final String DFA24_eofS = "\10\uffff"; static final String DFA24_minS = - "\1\45\1\23\1\0\1\23\1\0\2\uffff\1\0"; + "\1\46\1\24\1\0\1\24\1\0\2\uffff\1\0"; static final String DFA24_maxS = - "\2\71\1\0\1\71\1\0\2\uffff\1\0"; + "\2\72\1\0\1\72\1\0\2\uffff\1\0"; static final String DFA24_acceptS = "\5\uffff\1\1\1\2\1\uffff"; static final String DFA24_specialS = - "\2\uffff\1\0\1\uffff\1\1\2\uffff\1\2}>"; + "\2\uffff\1\2\1\uffff\1\1\2\uffff\1\0}>"; static final String[] DFA24_transitionS = { "\1\2\23\uffff\1\1", "\1\3\21\uffff\1\4\23\uffff\1\1", @@ -8417,7 +8458,7 @@ public class CTFParser extends Parser { } @Override public String getDescription() { - return "371:10: ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) )"; + return "372:10: ({...}? => declaratorList -> ^( TYPEDEF declaratorList declarationSpecifiers ) | structOrVariantDeclaratorList -> ^( SV_DECLARATION declarationSpecifiers structOrVariantDeclaratorList ) )"; } @Override public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { @@ -8425,15 +8466,15 @@ public class CTFParser extends Parser { int _s = s; switch ( s ) { case 0 : - int LA24_2 = input.LA(1); + int LA24_7 = input.LA(1); - int index24_2 = input.index(); + int index24_7 = input.index(); input.rewind(); s = -1; if ( ((inTypedef())) ) {s = 5;} else if ( (true) ) {s = 6;} - input.seek(index24_2); + input.seek(index24_7); if ( s>=0 ) return s; break; @@ -8451,15 +8492,15 @@ public class CTFParser extends Parser { break; case 2 : - int LA24_7 = input.LA(1); + int LA24_2 = input.LA(1); - int index24_7 = input.index(); + int index24_2 = input.index(); input.rewind(); s = -1; if ( ((inTypedef())) ) {s = 5;} else if ( (true) ) {s = 6;} - input.seek(index24_7); + input.seek(index24_2); if ( s>=0 ) return s; break; } @@ -8471,195 +8512,196 @@ public class CTFParser extends Parser { } } - public static final BitSet FOLLOW_declaration_in_parse442 = new BitSet(new long[]{0xA0002560ED0C1500L,0x000000000000E74AL}); - public static final BitSet FOLLOW_EOF_in_parse445 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SIGN_in_numberLiteral467 = new BitSet(new long[]{0x4020000800100000L}); - public static final BitSet FOLLOW_HEX_LITERAL_in_numberLiteral478 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DECIMAL_LITERAL_in_numberLiteral499 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_OCTAL_LITERAL_in_numberLiteral520 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_primaryExpression558 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfKeyword_in_primaryExpression584 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_primaryExpression604 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_numberLiteral_in_primaryExpression629 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enumConstant_in_primaryExpression635 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHARACTER_LITERAL_in_primaryExpression641 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_OPENBRAC_in_postfixExpressionSuffix654 = new BitSet(new long[]{0xC020002828101210L,0x000000000000012AL}); - public static final BitSet FOLLOW_unaryExpression_in_postfixExpressionSuffix656 = new BitSet(new long[]{0x0000000000002000L}); - public static final BitSet FOLLOW_CLOSEBRAC_in_postfixExpressionSuffix658 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOT_in_postfixExpressionSuffix668 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_ARROW_in_postfixExpressionSuffix674 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_IDENTIFIER_in_postfixExpressionSuffix677 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOT_in_postfixCtfExpression712 = new BitSet(new long[]{0x0000000028001000L,0x0000000000000102L}); - public static final BitSet FOLLOW_ctfSpecifierHead_in_postfixCtfExpression715 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_primaryExpression_in_postfixExpression748 = new BitSet(new long[]{0x0100000000400022L}); - public static final BitSet FOLLOW_postfixExpressionSuffix_in_postfixExpression750 = new BitSet(new long[]{0x0100000000400022L}); - public static final BitSet FOLLOW_ctfSpecifierHead_in_postfixExpression759 = new BitSet(new long[]{0x0100000000400020L}); - public static final BitSet FOLLOW_postfixCtfExpression_in_postfixExpression761 = new BitSet(new long[]{0x0100000000400020L}); - public static final BitSet FOLLOW_postfixExpressionSuffix_in_postfixExpression764 = new BitSet(new long[]{0x0100000000400022L}); - public static final BitSet FOLLOW_postfixExpression_in_unaryExpression780 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_enumConstant797 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_enumConstant811 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfKeyword_in_enumConstant825 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_declarationSpecifiers_in_declaration856 = new BitSet(new long[]{0x0200002000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_declaratorList_in_declaration858 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_TERM_in_declaration861 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfSpecifier_in_declaration929 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_TERM_in_declaration931 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_storageClassSpecifier_in_declarationSpecifiers969 = new BitSet(new long[]{0xA0002560C50C0502L,0x000000000000E448L}); - public static final BitSet FOLLOW_typeQualifier_in_declarationSpecifiers979 = new BitSet(new long[]{0xA0002560C50C0502L,0x000000000000E448L}); - public static final BitSet FOLLOW_typeSpecifier_in_declarationSpecifiers989 = new BitSet(new long[]{0xA0002560C50C0502L,0x000000000000E448L}); - public static final BitSet FOLLOW_declarator_in_declaratorList1019 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_SEPARATOR_in_declaratorList1022 = new BitSet(new long[]{0x0200002000000000L}); - public static final BitSet FOLLOW_declarator_in_declaratorList1024 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_abstractDeclarator_in_abstractDeclaratorList1054 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_SEPARATOR_in_abstractDeclaratorList1057 = new BitSet(new long[]{0x0200402000000000L}); - public static final BitSet FOLLOW_abstractDeclarator_in_abstractDeclaratorList1059 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_TYPEDEFTOK_in_storageClassSpecifier1089 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FLOATTOK_in_typeSpecifier1105 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INTTOK_in_typeSpecifier1111 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LONGTOK_in_typeSpecifier1117 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SHORTTOK_in_typeSpecifier1123 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_SIGNEDTOK_in_typeSpecifier1129 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_UNSIGNEDTOK_in_typeSpecifier1135 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CHARTOK_in_typeSpecifier1141 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_DOUBLETOK_in_typeSpecifier1147 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VOIDTOK_in_typeSpecifier1153 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_BOOLTOK_in_typeSpecifier1159 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_COMPLEXTOK_in_typeSpecifier1165 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IMAGINARYTOK_in_typeSpecifier1171 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_structSpecifier_in_typeSpecifier1177 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_variantSpecifier_in_typeSpecifier1183 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enumSpecifier_in_typeSpecifier1189 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfTypeSpecifier_in_typeSpecifier1195 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_typedefName_in_typeSpecifier1205 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CONSTTOK_in_typeQualifier1218 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ALIGNTOK_in_alignAttribute1231 = new BitSet(new long[]{0x0000400000000000L}); - public static final BitSet FOLLOW_LPAREN_in_alignAttribute1233 = new BitSet(new long[]{0xC020002828101210L,0x000000000000012AL}); - public static final BitSet FOLLOW_unaryExpression_in_alignAttribute1235 = new BitSet(new long[]{0x0800000000000000L}); - public static final BitSet FOLLOW_RPAREN_in_alignAttribute1237 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LCURL_in_structBody1271 = new BitSet(new long[]{0xA4002560C50C0500L,0x000000000000E648L}); - public static final BitSet FOLLOW_structOrVariantDeclarationList_in_structBody1273 = new BitSet(new long[]{0x0400000000000000L}); - public static final BitSet FOLLOW_RCURL_in_structBody1276 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRUCTTOK_in_structSpecifier1304 = new BitSet(new long[]{0x0000082000000000L}); - public static final BitSet FOLLOW_structName_in_structSpecifier1329 = new BitSet(new long[]{0x0000080000000012L}); - public static final BitSet FOLLOW_alignAttribute_in_structSpecifier1351 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_structBody_in_structSpecifier1387 = new BitSet(new long[]{0x0000000000000012L}); - public static final BitSet FOLLOW_alignAttribute_in_structSpecifier1418 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_structBody_in_structSpecifier1534 = new BitSet(new long[]{0x0000000000000012L}); - public static final BitSet FOLLOW_alignAttribute_in_structSpecifier1552 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_structName1618 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_structOrVariantDeclaration_in_structOrVariantDeclarationList1639 = new BitSet(new long[]{0xA0002560C50C0502L,0x000000000000E648L}); - public static final BitSet FOLLOW_declarationSpecifiers_in_structOrVariantDeclaration1672 = new BitSet(new long[]{0x0200002000000000L}); - public static final BitSet FOLLOW_declaratorList_in_structOrVariantDeclaration1713 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_structOrVariantDeclaratorList_in_structOrVariantDeclaration1751 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_typealiasDecl_in_structOrVariantDeclaration1810 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_TERM_in_structOrVariantDeclaration1822 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_typeQualifier_in_specifierQualifierList1836 = new BitSet(new long[]{0xA0002560C50C0502L,0x000000000000E048L}); - public static final BitSet FOLLOW_typeSpecifier_in_specifierQualifierList1840 = new BitSet(new long[]{0xA0002560C50C0502L,0x000000000000E048L}); - public static final BitSet FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1873 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_SEPARATOR_in_structOrVariantDeclaratorList1876 = new BitSet(new long[]{0x0200002000000000L}); - public static final BitSet FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1878 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_declarator_in_structOrVariantDeclarator1917 = new BitSet(new long[]{0x0000000000004002L}); - public static final BitSet FOLLOW_COLON_in_structOrVariantDeclarator1920 = new BitSet(new long[]{0x4020000800100000L}); - public static final BitSet FOLLOW_numberLiteral_in_structOrVariantDeclarator1922 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_VARIANTTOK_in_variantSpecifier1946 = new BitSet(new long[]{0x0000882000000000L}); - public static final BitSet FOLLOW_variantName_in_variantSpecifier1964 = new BitSet(new long[]{0x0000880000000000L}); - public static final BitSet FOLLOW_variantTag_in_variantSpecifier1994 = new BitSet(new long[]{0x0000080000000002L}); - public static final BitSet FOLLOW_variantBody_in_variantSpecifier2020 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_variantBody_in_variantSpecifier2088 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_variantTag_in_variantSpecifier2109 = new BitSet(new long[]{0x0000080000000000L}); - public static final BitSet FOLLOW_variantBody_in_variantSpecifier2111 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_declaration_in_parse449 = new BitSet(new long[]{0x40004AC1DA182B00L,0x000000000001CE95L}); + public static final BitSet FOLLOW_EOF_in_parse452 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SIGN_in_numberLiteral474 = new BitSet(new long[]{0x8040001000200000L}); + public static final BitSet FOLLOW_HEX_LITERAL_in_numberLiteral485 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DECIMAL_LITERAL_in_numberLiteral506 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_OCTAL_LITERAL_in_numberLiteral527 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_primaryExpression565 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfKeyword_in_primaryExpression591 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_primaryExpression611 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_numberLiteral_in_primaryExpression636 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enumConstant_in_primaryExpression642 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHARACTER_LITERAL_in_primaryExpression648 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_OPENBRAC_in_postfixExpressionSuffix661 = new BitSet(new long[]{0x8040005050202610L,0x0000000000000255L}); + public static final BitSet FOLLOW_unaryExpression_in_postfixExpressionSuffix663 = new BitSet(new long[]{0x0000000000004000L}); + public static final BitSet FOLLOW_CLOSEBRAC_in_postfixExpressionSuffix665 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOT_in_postfixExpressionSuffix675 = new BitSet(new long[]{0x0000004000000000L}); + public static final BitSet FOLLOW_ARROW_in_postfixExpressionSuffix681 = new BitSet(new long[]{0x0000004000000000L}); + public static final BitSet FOLLOW_IDENTIFIER_in_postfixExpressionSuffix684 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOT_in_postfixCtfExpression719 = new BitSet(new long[]{0x0000000050002200L,0x0000000000000204L}); + public static final BitSet FOLLOW_ctfSpecifierHead_in_postfixCtfExpression722 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_primaryExpression_in_postfixExpression755 = new BitSet(new long[]{0x0200000000800022L}); + public static final BitSet FOLLOW_postfixExpressionSuffix_in_postfixExpression757 = new BitSet(new long[]{0x0200000000800022L}); + public static final BitSet FOLLOW_ctfSpecifierHead_in_postfixExpression766 = new BitSet(new long[]{0x0200000000800020L}); + public static final BitSet FOLLOW_postfixCtfExpression_in_postfixExpression768 = new BitSet(new long[]{0x0200000000800020L}); + public static final BitSet FOLLOW_postfixExpressionSuffix_in_postfixExpression771 = new BitSet(new long[]{0x0200000000800022L}); + public static final BitSet FOLLOW_postfixExpression_in_unaryExpression787 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_enumConstant804 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_enumConstant818 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfKeyword_in_enumConstant832 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_declarationSpecifiers_in_declaration863 = new BitSet(new long[]{0x0400004000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_declaratorList_in_declaration865 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_TERM_in_declaration868 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfSpecifier_in_declaration936 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_TERM_in_declaration938 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_storageClassSpecifier_in_declarationSpecifiers976 = new BitSet(new long[]{0x40004AC18A180902L,0x000000000001C891L}); + public static final BitSet FOLLOW_typeQualifier_in_declarationSpecifiers986 = new BitSet(new long[]{0x40004AC18A180902L,0x000000000001C891L}); + public static final BitSet FOLLOW_typeSpecifier_in_declarationSpecifiers996 = new BitSet(new long[]{0x40004AC18A180902L,0x000000000001C891L}); + public static final BitSet FOLLOW_declarator_in_declaratorList1026 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_SEPARATOR_in_declaratorList1029 = new BitSet(new long[]{0x0400004000000000L}); + public static final BitSet FOLLOW_declarator_in_declaratorList1031 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_abstractDeclarator_in_abstractDeclaratorList1061 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_SEPARATOR_in_abstractDeclaratorList1064 = new BitSet(new long[]{0x0400804000000000L}); + public static final BitSet FOLLOW_abstractDeclarator_in_abstractDeclaratorList1066 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_TYPEDEFTOK_in_storageClassSpecifier1096 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FLOATTOK_in_typeSpecifier1112 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_INTTOK_in_typeSpecifier1118 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LONGTOK_in_typeSpecifier1124 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SHORTTOK_in_typeSpecifier1130 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_SIGNEDTOK_in_typeSpecifier1136 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_UNSIGNEDTOK_in_typeSpecifier1142 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CHARTOK_in_typeSpecifier1148 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_DOUBLETOK_in_typeSpecifier1154 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VOIDTOK_in_typeSpecifier1160 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_BOOLTOK_in_typeSpecifier1166 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_COMPLEXTOK_in_typeSpecifier1172 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IMAGINARYTOK_in_typeSpecifier1178 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_structSpecifier_in_typeSpecifier1184 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_variantSpecifier_in_typeSpecifier1190 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enumSpecifier_in_typeSpecifier1196 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfTypeSpecifier_in_typeSpecifier1202 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_typedefName_in_typeSpecifier1212 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CONSTTOK_in_typeQualifier1225 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ALIGNTOK_in_alignAttribute1238 = new BitSet(new long[]{0x0000800000000000L}); + public static final BitSet FOLLOW_LPAREN_in_alignAttribute1240 = new BitSet(new long[]{0x8040005050202610L,0x0000000000000255L}); + public static final BitSet FOLLOW_unaryExpression_in_alignAttribute1242 = new BitSet(new long[]{0x1000000000000000L}); + public static final BitSet FOLLOW_RPAREN_in_alignAttribute1244 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LCURL_in_structBody1278 = new BitSet(new long[]{0x48004AC18A180900L,0x000000000001CC91L}); + public static final BitSet FOLLOW_structOrVariantDeclarationList_in_structBody1280 = new BitSet(new long[]{0x0800000000000000L}); + public static final BitSet FOLLOW_RCURL_in_structBody1283 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRUCTTOK_in_structSpecifier1311 = new BitSet(new long[]{0x0000104000000000L}); + public static final BitSet FOLLOW_structName_in_structSpecifier1336 = new BitSet(new long[]{0x0000100000000012L}); + public static final BitSet FOLLOW_alignAttribute_in_structSpecifier1358 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_structBody_in_structSpecifier1394 = new BitSet(new long[]{0x0000000000000012L}); + public static final BitSet FOLLOW_alignAttribute_in_structSpecifier1425 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_structBody_in_structSpecifier1541 = new BitSet(new long[]{0x0000000000000012L}); + public static final BitSet FOLLOW_alignAttribute_in_structSpecifier1559 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_structName1625 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_structOrVariantDeclaration_in_structOrVariantDeclarationList1646 = new BitSet(new long[]{0x40004AC18A180902L,0x000000000001CC91L}); + public static final BitSet FOLLOW_declarationSpecifiers_in_structOrVariantDeclaration1679 = new BitSet(new long[]{0x0400004000000000L}); + public static final BitSet FOLLOW_declaratorList_in_structOrVariantDeclaration1720 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_structOrVariantDeclaratorList_in_structOrVariantDeclaration1758 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_typealiasDecl_in_structOrVariantDeclaration1817 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_TERM_in_structOrVariantDeclaration1829 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_typeQualifier_in_specifierQualifierList1843 = new BitSet(new long[]{0x40004AC18A180902L,0x000000000001C091L}); + public static final BitSet FOLLOW_typeSpecifier_in_specifierQualifierList1847 = new BitSet(new long[]{0x40004AC18A180902L,0x000000000001C091L}); + public static final BitSet FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1880 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_SEPARATOR_in_structOrVariantDeclaratorList1883 = new BitSet(new long[]{0x0400004000000000L}); + public static final BitSet FOLLOW_structOrVariantDeclarator_in_structOrVariantDeclaratorList1885 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_declarator_in_structOrVariantDeclarator1924 = new BitSet(new long[]{0x0000000000008002L}); + public static final BitSet FOLLOW_COLON_in_structOrVariantDeclarator1927 = new BitSet(new long[]{0x8040001000200000L}); + public static final BitSet FOLLOW_numberLiteral_in_structOrVariantDeclarator1929 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_VARIANTTOK_in_variantSpecifier1953 = new BitSet(new long[]{0x0001104000000000L}); + public static final BitSet FOLLOW_variantName_in_variantSpecifier1971 = new BitSet(new long[]{0x0001100000000000L}); + public static final BitSet FOLLOW_variantTag_in_variantSpecifier2001 = new BitSet(new long[]{0x0000100000000002L}); + public static final BitSet FOLLOW_variantBody_in_variantSpecifier2027 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_variantBody_in_variantSpecifier2095 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_variantTag_in_variantSpecifier2116 = new BitSet(new long[]{0x0000100000000000L}); public static final BitSet FOLLOW_variantBody_in_variantSpecifier2118 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_variantName2150 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LCURL_in_variantBody2181 = new BitSet(new long[]{0xA0002560C50C0500L,0x000000000000E648L}); - public static final BitSet FOLLOW_structOrVariantDeclarationList_in_variantBody2183 = new BitSet(new long[]{0x0400000000000000L}); - public static final BitSet FOLLOW_RCURL_in_variantBody2185 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LT_in_variantTag2212 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_IDENTIFIER_in_variantTag2214 = new BitSet(new long[]{0x0000000100000000L}); - public static final BitSet FOLLOW_GT_in_variantTag2216 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ENUMTOK_in_enumSpecifier2237 = new BitSet(new long[]{0x0000082000004000L}); - public static final BitSet FOLLOW_enumName_in_enumSpecifier2276 = new BitSet(new long[]{0x0000080000004002L}); - public static final BitSet FOLLOW_enumContainerType_in_enumSpecifier2308 = new BitSet(new long[]{0x0000080000000000L}); - public static final BitSet FOLLOW_enumBody_in_enumSpecifier2310 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enumBody_in_enumSpecifier2340 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enumContainerType_in_enumSpecifier2432 = new BitSet(new long[]{0x0000080000000000L}); - public static final BitSet FOLLOW_enumBody_in_enumSpecifier2434 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enumBody_in_enumSpecifier2458 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_enumName2502 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LCURL_in_enumBody2523 = new BitSet(new long[]{0x8000002020000010L,0x0000000000000028L}); - public static final BitSet FOLLOW_enumeratorList_in_enumBody2525 = new BitSet(new long[]{0x1400000000000000L}); - public static final BitSet FOLLOW_SEPARATOR_in_enumBody2527 = new BitSet(new long[]{0x0400000000000000L}); - public static final BitSet FOLLOW_RCURL_in_enumBody2530 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_COLON_in_enumContainerType2551 = new BitSet(new long[]{0xA0002560C50C0500L,0x000000000000E448L}); - public static final BitSet FOLLOW_declarationSpecifiers_in_enumContainerType2553 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_enumerator_in_enumeratorList2574 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_SEPARATOR_in_enumeratorList2577 = new BitSet(new long[]{0x8000002020000010L,0x0000000000000028L}); - public static final BitSet FOLLOW_enumerator_in_enumeratorList2579 = new BitSet(new long[]{0x1000000000000002L}); - public static final BitSet FOLLOW_enumConstant_in_enumerator2605 = new BitSet(new long[]{0x0000000000000042L}); - public static final BitSet FOLLOW_enumeratorValue_in_enumerator2607 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ASSIGNMENT_in_enumeratorValue2621 = new BitSet(new long[]{0xC020002828101210L,0x000000000000012AL}); - public static final BitSet FOLLOW_unaryExpression_in_enumeratorValue2625 = new BitSet(new long[]{0x0000000002000002L}); - public static final BitSet FOLLOW_ELIPSES_in_enumeratorValue2664 = new BitSet(new long[]{0xC020002828101210L,0x000000000000012AL}); - public static final BitSet FOLLOW_unaryExpression_in_enumeratorValue2668 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_pointer_in_declarator2711 = new BitSet(new long[]{0x0200002000000000L}); - public static final BitSet FOLLOW_directDeclarator_in_declarator2714 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_directDeclarator2752 = new BitSet(new long[]{0x0100000000000002L}); - public static final BitSet FOLLOW_directDeclaratorSuffix_in_directDeclarator2792 = new BitSet(new long[]{0x0100000000000002L}); - public static final BitSet FOLLOW_OPENBRAC_in_directDeclaratorSuffix2806 = new BitSet(new long[]{0xC020002828101210L,0x000000000000012AL}); - public static final BitSet FOLLOW_directDeclaratorLength_in_directDeclaratorSuffix2808 = new BitSet(new long[]{0x0000000000002000L}); - public static final BitSet FOLLOW_CLOSEBRAC_in_directDeclaratorSuffix2810 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_unaryExpression_in_directDeclaratorLength2838 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_pointer_in_abstractDeclarator2851 = new BitSet(new long[]{0x0200402000000002L}); - public static final BitSet FOLLOW_directAbstractDeclarator_in_abstractDeclarator2854 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_directAbstractDeclarator_in_abstractDeclarator2879 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_directAbstractDeclarator2916 = new BitSet(new long[]{0x0100000000000002L}); - public static final BitSet FOLLOW_LPAREN_in_directAbstractDeclarator2927 = new BitSet(new long[]{0x0200402000000000L}); - public static final BitSet FOLLOW_abstractDeclarator_in_directAbstractDeclarator2929 = new BitSet(new long[]{0x0800000000000000L}); - public static final BitSet FOLLOW_RPAREN_in_directAbstractDeclarator2931 = new BitSet(new long[]{0x0100000000000002L}); - public static final BitSet FOLLOW_OPENBRAC_in_directAbstractDeclarator2946 = new BitSet(new long[]{0xC020002828103210L,0x000000000000012AL}); - public static final BitSet FOLLOW_unaryExpression_in_directAbstractDeclarator2948 = new BitSet(new long[]{0x0000000000002000L}); - public static final BitSet FOLLOW_CLOSEBRAC_in_directAbstractDeclarator2951 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_POINTER_in_pointer2969 = new BitSet(new long[]{0x0000000000080002L}); - public static final BitSet FOLLOW_typeQualifierList_in_pointer2971 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_typeQualifier_in_typeQualifierList2994 = new BitSet(new long[]{0x0000000000080002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_typedefName3010 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_declarationSpecifiers_in_typealiasTarget3027 = new BitSet(new long[]{0x0200402000000002L}); - public static final BitSet FOLLOW_abstractDeclaratorList_in_typealiasTarget3029 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_abstractDeclaratorList_in_typealiasAlias3055 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_declarationSpecifiers_in_typealiasAlias3061 = new BitSet(new long[]{0x0200402000000002L}); - public static final BitSet FOLLOW_abstractDeclaratorList_in_typealiasAlias3063 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_TYPEALIASTOK_in_typealiasDecl3077 = new BitSet(new long[]{0xA0002560C50C0500L,0x000000000000E448L}); - public static final BitSet FOLLOW_typealiasTarget_in_typealiasDecl3079 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L}); - public static final BitSet FOLLOW_TYPE_ASSIGNMENT_in_typealiasDecl3081 = new BitSet(new long[]{0xA2006560C50C0500L,0x000000000000E448L}); - public static final BitSet FOLLOW_typealiasAlias_in_typealiasDecl3083 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfSpecifierHead_in_ctfSpecifier3183 = new BitSet(new long[]{0x0000080000000000L}); - public static final BitSet FOLLOW_ctfBody_in_ctfSpecifier3185 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_typealiasDecl_in_ctfSpecifier3202 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_EVENTTOK_in_ctfSpecifierHead3223 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STREAMTOK_in_ctfSpecifierHead3233 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_TRACETOK_in_ctfSpecifierHead3243 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ENVTOK_in_ctfSpecifierHead3253 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_CLOCKTOK_in_ctfSpecifierHead3263 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_FLOATINGPOINTTOK_in_ctfTypeSpecifier3286 = new BitSet(new long[]{0x0000080000000000L}); - public static final BitSet FOLLOW_ctfBody_in_ctfTypeSpecifier3288 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_INTEGERTOK_in_ctfTypeSpecifier3303 = new BitSet(new long[]{0x0000080000000000L}); + public static final BitSet FOLLOW_variantBody_in_variantSpecifier2125 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_variantName2157 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LCURL_in_variantBody2188 = new BitSet(new long[]{0x40004AC18A180900L,0x000000000001CC91L}); + public static final BitSet FOLLOW_structOrVariantDeclarationList_in_variantBody2190 = new BitSet(new long[]{0x0800000000000000L}); + public static final BitSet FOLLOW_RCURL_in_variantBody2192 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LT_in_variantTag2219 = new BitSet(new long[]{0x0000004000000000L}); + public static final BitSet FOLLOW_IDENTIFIER_in_variantTag2221 = new BitSet(new long[]{0x0000000200000000L}); + public static final BitSet FOLLOW_GT_in_variantTag2223 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ENUMTOK_in_enumSpecifier2244 = new BitSet(new long[]{0x0000104000008000L}); + public static final BitSet FOLLOW_enumName_in_enumSpecifier2283 = new BitSet(new long[]{0x0000100000008002L}); + public static final BitSet FOLLOW_enumContainerType_in_enumSpecifier2315 = new BitSet(new long[]{0x0000100000000000L}); + public static final BitSet FOLLOW_enumBody_in_enumSpecifier2317 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enumBody_in_enumSpecifier2347 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enumContainerType_in_enumSpecifier2439 = new BitSet(new long[]{0x0000100000000000L}); + public static final BitSet FOLLOW_enumBody_in_enumSpecifier2441 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enumBody_in_enumSpecifier2465 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_enumName2509 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LCURL_in_enumBody2530 = new BitSet(new long[]{0x0000004040000010L,0x0000000000000051L}); + public static final BitSet FOLLOW_enumeratorList_in_enumBody2532 = new BitSet(new long[]{0x2800000000000000L}); + public static final BitSet FOLLOW_SEPARATOR_in_enumBody2534 = new BitSet(new long[]{0x0800000000000000L}); + public static final BitSet FOLLOW_RCURL_in_enumBody2537 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_COLON_in_enumContainerType2558 = new BitSet(new long[]{0x40004AC18A180900L,0x000000000001C891L}); + public static final BitSet FOLLOW_declarationSpecifiers_in_enumContainerType2560 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_enumerator_in_enumeratorList2581 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_SEPARATOR_in_enumeratorList2584 = new BitSet(new long[]{0x0000004040000010L,0x0000000000000051L}); + public static final BitSet FOLLOW_enumerator_in_enumeratorList2586 = new BitSet(new long[]{0x2000000000000002L}); + public static final BitSet FOLLOW_enumConstant_in_enumerator2612 = new BitSet(new long[]{0x0000000000000042L}); + public static final BitSet FOLLOW_enumeratorValue_in_enumerator2614 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ASSIGNMENT_in_enumeratorValue2628 = new BitSet(new long[]{0x8040005050202610L,0x0000000000000255L}); + public static final BitSet FOLLOW_unaryExpression_in_enumeratorValue2632 = new BitSet(new long[]{0x0000000004000002L}); + public static final BitSet FOLLOW_ELIPSES_in_enumeratorValue2671 = new BitSet(new long[]{0x8040005050202610L,0x0000000000000255L}); + public static final BitSet FOLLOW_unaryExpression_in_enumeratorValue2675 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_pointer_in_declarator2718 = new BitSet(new long[]{0x0400004000000000L}); + public static final BitSet FOLLOW_directDeclarator_in_declarator2721 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_directDeclarator2759 = new BitSet(new long[]{0x0200000000000002L}); + public static final BitSet FOLLOW_directDeclaratorSuffix_in_directDeclarator2799 = new BitSet(new long[]{0x0200000000000002L}); + public static final BitSet FOLLOW_OPENBRAC_in_directDeclaratorSuffix2813 = new BitSet(new long[]{0x8040005050202610L,0x0000000000000255L}); + public static final BitSet FOLLOW_directDeclaratorLength_in_directDeclaratorSuffix2815 = new BitSet(new long[]{0x0000000000004000L}); + public static final BitSet FOLLOW_CLOSEBRAC_in_directDeclaratorSuffix2817 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_unaryExpression_in_directDeclaratorLength2845 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_pointer_in_abstractDeclarator2858 = new BitSet(new long[]{0x0400804000000002L}); + public static final BitSet FOLLOW_directAbstractDeclarator_in_abstractDeclarator2861 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_directAbstractDeclarator_in_abstractDeclarator2886 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_directAbstractDeclarator2923 = new BitSet(new long[]{0x0200000000000002L}); + public static final BitSet FOLLOW_LPAREN_in_directAbstractDeclarator2934 = new BitSet(new long[]{0x0400804000000000L}); + public static final BitSet FOLLOW_abstractDeclarator_in_directAbstractDeclarator2936 = new BitSet(new long[]{0x1000000000000000L}); + public static final BitSet FOLLOW_RPAREN_in_directAbstractDeclarator2938 = new BitSet(new long[]{0x0200000000000002L}); + public static final BitSet FOLLOW_OPENBRAC_in_directAbstractDeclarator2953 = new BitSet(new long[]{0x8040005050206610L,0x0000000000000255L}); + public static final BitSet FOLLOW_unaryExpression_in_directAbstractDeclarator2955 = new BitSet(new long[]{0x0000000000004000L}); + public static final BitSet FOLLOW_CLOSEBRAC_in_directAbstractDeclarator2958 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_POINTER_in_pointer2976 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_typeQualifierList_in_pointer2978 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_typeQualifier_in_typeQualifierList3001 = new BitSet(new long[]{0x0000000000100002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_typedefName3017 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_declarationSpecifiers_in_typealiasTarget3034 = new BitSet(new long[]{0x0400804000000002L}); + public static final BitSet FOLLOW_abstractDeclaratorList_in_typealiasTarget3036 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_abstractDeclaratorList_in_typealiasAlias3062 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_declarationSpecifiers_in_typealiasAlias3068 = new BitSet(new long[]{0x0400804000000002L}); + public static final BitSet FOLLOW_abstractDeclaratorList_in_typealiasAlias3070 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_TYPEALIASTOK_in_typealiasDecl3084 = new BitSet(new long[]{0x40004AC18A180900L,0x000000000001C891L}); + public static final BitSet FOLLOW_typealiasTarget_in_typealiasDecl3086 = new BitSet(new long[]{0x0000000000000000L,0x0000000000001000L}); + public static final BitSet FOLLOW_TYPE_ASSIGNMENT_in_typealiasDecl3088 = new BitSet(new long[]{0x4400CAC18A180900L,0x000000000001C891L}); + public static final BitSet FOLLOW_typealiasAlias_in_typealiasDecl3090 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfSpecifierHead_in_ctfSpecifier3190 = new BitSet(new long[]{0x0000100000000000L}); + public static final BitSet FOLLOW_ctfBody_in_ctfSpecifier3192 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_typealiasDecl_in_ctfSpecifier3209 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_EVENTTOK_in_ctfSpecifierHead3230 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STREAMTOK_in_ctfSpecifierHead3240 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_TRACETOK_in_ctfSpecifierHead3250 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ENVTOK_in_ctfSpecifierHead3260 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CLOCKTOK_in_ctfSpecifierHead3270 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_CALLSITETOK_in_ctfSpecifierHead3280 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_FLOATINGPOINTTOK_in_ctfTypeSpecifier3303 = new BitSet(new long[]{0x0000100000000000L}); public static final BitSet FOLLOW_ctfBody_in_ctfTypeSpecifier3305 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRINGTOK_in_ctfTypeSpecifier3320 = new BitSet(new long[]{0x0000080000000002L}); + public static final BitSet FOLLOW_INTEGERTOK_in_ctfTypeSpecifier3320 = new BitSet(new long[]{0x0000100000000000L}); public static final BitSet FOLLOW_ctfBody_in_ctfTypeSpecifier3322 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_LCURL_in_ctfBody3355 = new BitSet(new long[]{0xE4202568ED1C1710L,0x000000000000E76AL}); - public static final BitSet FOLLOW_ctfAssignmentExpressionList_in_ctfBody3357 = new BitSet(new long[]{0x0400000000000000L}); - public static final BitSet FOLLOW_RCURL_in_ctfBody3360 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfAssignmentExpression_in_ctfAssignmentExpressionList3379 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L}); - public static final BitSet FOLLOW_TERM_in_ctfAssignmentExpressionList3381 = new BitSet(new long[]{0xE0202568ED1C1712L,0x000000000000E76AL}); - public static final BitSet FOLLOW_unaryExpression_in_ctfAssignmentExpression3404 = new BitSet(new long[]{0x0000000000000040L,0x0000000000000800L}); - public static final BitSet FOLLOW_ASSIGNMENT_in_ctfAssignmentExpression3416 = new BitSet(new long[]{0xC020002828101210L,0x000000000000012AL}); - public static final BitSet FOLLOW_unaryExpression_in_ctfAssignmentExpression3420 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_TYPE_ASSIGNMENT_in_ctfAssignmentExpression3496 = new BitSet(new long[]{0xA0002560C5040500L,0x000000000000E048L}); - public static final BitSet FOLLOW_typeSpecifier_in_ctfAssignmentExpression3500 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_declarationSpecifiers_in_ctfAssignmentExpression3583 = new BitSet(new long[]{0x0200002000000000L}); - public static final BitSet FOLLOW_declaratorList_in_ctfAssignmentExpression3587 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_typealiasDecl_in_ctfAssignmentExpression3610 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_IDENTIFIER_in_synpred1_CTFParser553 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_ctfKeyword_in_synpred2_CTFParser579 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_STRING_LITERAL_in_synpred3_CTFParser599 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRINGTOK_in_ctfTypeSpecifier3337 = new BitSet(new long[]{0x0000100000000002L}); + public static final BitSet FOLLOW_ctfBody_in_ctfTypeSpecifier3339 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_LCURL_in_ctfBody3372 = new BitSet(new long[]{0xC8404AD1DA382F10L,0x000000000001CED5L}); + public static final BitSet FOLLOW_ctfAssignmentExpressionList_in_ctfBody3374 = new BitSet(new long[]{0x0800000000000000L}); + public static final BitSet FOLLOW_RCURL_in_ctfBody3377 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfAssignmentExpression_in_ctfAssignmentExpressionList3396 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L}); + public static final BitSet FOLLOW_TERM_in_ctfAssignmentExpressionList3398 = new BitSet(new long[]{0xC0404AD1DA382F12L,0x000000000001CED5L}); + public static final BitSet FOLLOW_unaryExpression_in_ctfAssignmentExpression3421 = new BitSet(new long[]{0x0000000000000040L,0x0000000000001000L}); + public static final BitSet FOLLOW_ASSIGNMENT_in_ctfAssignmentExpression3433 = new BitSet(new long[]{0x8040005050202610L,0x0000000000000255L}); + public static final BitSet FOLLOW_unaryExpression_in_ctfAssignmentExpression3437 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_TYPE_ASSIGNMENT_in_ctfAssignmentExpression3513 = new BitSet(new long[]{0x40004AC18A080900L,0x000000000001C091L}); + public static final BitSet FOLLOW_typeSpecifier_in_ctfAssignmentExpression3517 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_declarationSpecifiers_in_ctfAssignmentExpression3600 = new BitSet(new long[]{0x0400004000000000L}); + public static final BitSet FOLLOW_declaratorList_in_ctfAssignmentExpression3604 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_typealiasDecl_in_ctfAssignmentExpression3627 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_IDENTIFIER_in_synpred1_CTFParser560 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_ctfKeyword_in_synpred2_CTFParser586 = new BitSet(new long[]{0x0000000000000002L}); + public static final BitSet FOLLOW_STRING_LITERAL_in_synpred3_CTFParser606 = new BitSet(new long[]{0x0000000000000002L}); } diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.core/META-INF/MANIFEST.MF b/ctf/org.eclipse.tracecompass.tmf.ctf.core/META-INF/MANIFEST.MF index 179db87af8..85a297a269 100644 --- a/ctf/org.eclipse.tracecompass.tmf.ctf.core/META-INF/MANIFEST.MF +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.core/META-INF/MANIFEST.MF @@ -2,7 +2,7 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: %Bundle-Name Bundle-Vendor: %Bundle-Vendor -Bundle-Version: 2.1.0.qualifier +Bundle-Version: 2.2.0.qualifier Bundle-Localization: plugin Bundle-SymbolicName: org.eclipse.tracecompass.tmf.ctf.core;singleton:=true Bundle-Activator: org.eclipse.tracecompass.internal.tmf.ctf.core.Activator @@ -19,6 +19,7 @@ Export-Package: org.eclipse.tracecompass.internal.tmf.ctf.core;x-internal:=true, org.eclipse.tracecompass.tmf.ctf.core.context, org.eclipse.tracecompass.tmf.ctf.core.event, org.eclipse.tracecompass.tmf.ctf.core.event.aspect, + org.eclipse.tracecompass.tmf.ctf.core.event.lookup, org.eclipse.tracecompass.tmf.ctf.core.trace Import-Package: com.google.common.collect, com.google.common.primitives, diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java index 596ae423d4..345463dc42 100644 --- a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/CtfTmfEvent.java @@ -35,11 +35,14 @@ import org.eclipse.tracecompass.tmf.core.event.ITmfEventField; import org.eclipse.tracecompass.tmf.core.event.ITmfEventType; import org.eclipse.tracecompass.tmf.core.event.TmfEvent; import org.eclipse.tracecompass.tmf.core.event.TmfEventField; +import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfCallsite; import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfModelLookup; +import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfSourceLookup; import org.eclipse.tracecompass.tmf.core.timestamp.ITmfTimestamp; import org.eclipse.tracecompass.tmf.core.timestamp.TmfTimestamp; import org.eclipse.tracecompass.tmf.core.trace.ITmfContext; import org.eclipse.tracecompass.tmf.ctf.core.CtfConstants; +import org.eclipse.tracecompass.tmf.ctf.core.event.lookup.CtfTmfCallsite; import org.eclipse.tracecompass.tmf.ctf.core.trace.CtfTmfTrace; /** @@ -50,7 +53,7 @@ import org.eclipse.tracecompass.tmf.ctf.core.trace.CtfTmfTrace; */ @NonNullByDefault public class CtfTmfEvent extends TmfEvent - implements ITmfModelLookup, ITmfCustomAttributes { + implements ITmfSourceLookup, ITmfModelLookup, ITmfCustomAttributes { // ------------------------------------------------------------------------ // Constants @@ -334,6 +337,36 @@ public class CtfTmfEvent extends TmfEvent return declaration.getCustomAttribute(name); } + // ------------------------------------------------------------------------ + // ITmfSourceLookup + // ------------------------------------------------------------------------ + + /** + * Get the call site for this event. + * + * @return the call site information, or null if there is none + * @since 2.1 + */ + @Override + public @Nullable ITmfCallsite getCallsite() { + CtfTmfCallsite callsite = null; + + ITmfEventField ipField = getContent().getField(CtfConstants.CONTEXT_FIELD_PREFIX + CtfConstants.IP_KEY); + if (ipField != null && ipField.getValue() instanceof Long) { + long ip = (Long) ipField.getValue(); + callsite = getTrace().getCallsite(fEventName, ip); + } + + if (callsite == null) { + callsite = getTrace().getCallsite(fEventName); + } + return callsite; + } + + // ------------------------------------------------------------------------ + // ITmfModelLookup + // ------------------------------------------------------------------------ + @Override public @Nullable String getModelUri() { return getCustomAttribute(CtfConstants.MODEL_URI_KEY); diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/lookup/CtfTmfCallsite.java b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/lookup/CtfTmfCallsite.java new file mode 100644 index 0000000000..2a4c2cfb2b --- /dev/null +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/event/lookup/CtfTmfCallsite.java @@ -0,0 +1,116 @@ +/******************************************************************************* + * Copyright (c) 2013, 2014 Ericsson + * + * 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: + * Patrick Tasse - Initial API and implementation + * Bernd Hufmann - Updated for new parent class + *******************************************************************************/ + +package org.eclipse.tracecompass.tmf.ctf.core.event.lookup; + +import java.util.Objects; + +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; +import org.eclipse.tracecompass.tmf.core.event.lookup.TmfCallsite; + +/** + * CTF TMF call site information for source code lookup. + * + * @author Patrick Tasse + * @since 2.2 + */ +public class CtfTmfCallsite extends TmfCallsite { + + // ------------------------------------------------------------------------ + // Attributes + // ------------------------------------------------------------------------ + + /** The event name. */ + private final String fEventName; + + /** The instruction pointer. */ + private final long fInstructionPointer; + + // ------------------------------------------------------------------------ + // Constructors + // ------------------------------------------------------------------------ + + /** + * Standard Constructor. + * + * @param callsite + * - a CTF call site + */ + public CtfTmfCallsite(CTFCallsite callsite) { + super(callsite.getFileName(), callsite.getLineNumber()); + fEventName = callsite.getEventName(); + fInstructionPointer = callsite.getIp(); + } + + // ------------------------------------------------------------------------ + // Accessors + // ------------------------------------------------------------------------ + + /** + * Returns the event name of the call site. + * + * @return the event name + */ + public String getEventName() { + return fEventName; + } + + /** + * Returns the instruction pointer of the call site. + * + * @return the instruction pointer + */ + public long getIntructionPointer() { + return fInstructionPointer; + } + + // ------------------------------------------------------------------------ + // Accessors + // ------------------------------------------------------------------------ + + @Override + public int hashCode() { + final int prime = 31; + int result = super.hashCode(); + result = prime * result + ((fEventName == null) ? 0 : fEventName.hashCode()); + result = prime * result + (int) (fInstructionPointer ^ (fInstructionPointer >>> 32)); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) { + return true; + } + if (!super.equals(obj)) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + CtfTmfCallsite other = (CtfTmfCallsite) obj; + if (!Objects.equals(fEventName, other.fEventName)) { + return false; + } + if (fInstructionPointer != other.fInstructionPointer) { + return false; + } + return true; + } + + @Override + public String toString() { + return getEventName() + "@0x" + Long.toHexString(fInstructionPointer) + ": " + //$NON-NLS-1$ //$NON-NLS-2$ + getFileName() + ':' + String.valueOf(getLineNo()) + ' ' + getFileName() + "()"; //$NON-NLS-1$ + } +} diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/trace/CtfTmfTrace.java b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/trace/CtfTmfTrace.java index 58495cfdfa..1823e2e894 100644 --- a/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/trace/CtfTmfTrace.java +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.core/src/org/eclipse/tracecompass/tmf/ctf/core/trace/CtfTmfTrace.java @@ -25,7 +25,10 @@ import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; +import java.util.Objects; +import java.util.Optional; import java.util.Set; +import java.util.stream.StreamSupport; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; @@ -33,7 +36,9 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.jdt.annotation.NonNull; +import org.eclipse.jdt.annotation.Nullable; import org.eclipse.tracecompass.ctf.core.CTFException; +import org.eclipse.tracecompass.ctf.core.event.CTFCallsite; import org.eclipse.tracecompass.ctf.core.event.CTFClock; import org.eclipse.tracecompass.ctf.core.event.IEventDeclaration; import org.eclipse.tracecompass.ctf.core.event.types.StructDeclaration; @@ -75,6 +80,7 @@ import org.eclipse.tracecompass.tmf.ctf.core.event.CtfTmfEventFactory; import org.eclipse.tracecompass.tmf.ctf.core.event.CtfTmfEventType; import org.eclipse.tracecompass.tmf.ctf.core.event.aspect.CtfChannelAspect; import org.eclipse.tracecompass.tmf.ctf.core.event.aspect.CtfCpuAspect; +import org.eclipse.tracecompass.tmf.ctf.core.event.lookup.CtfTmfCallsite; import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableSet; @@ -457,6 +463,51 @@ public class CtfTmfTrace extends TmfTrace return super.getHostId(); } + /** + * Get the first callsite that matches the event name + * + * @param eventName + * The event name to look for + * @return The best callsite candidate + * @since 2.1 + */ + public @Nullable CtfTmfCallsite getCallsite(String eventName) { + Optional<@NonNull CTFCallsite> callsite = StreamSupport.stream(fTrace.getStreams().spliterator(), false) + .<@NonNull IEventDeclaration> flatMap(s -> s.getEventDeclarations().stream()) + .filter(event -> Objects.equals(event.getName(), eventName)) + .flatMap(ev -> ev.getCallsites().stream()) + .findFirst(); + if (callsite.isPresent()) { + return new CtfTmfCallsite(callsite.get()); + } + return null; + } + + /** + * Get the closest matching callsite for given event name and instruction + * pointer + * + * @param eventName + * The event name + * @param ip + * The instruction pointer + * @return The closest matching callsite + * @since 2.1 + */ + public @Nullable CtfTmfCallsite getCallsite(String eventName, long ip) { + Optional<@NonNull CTFCallsite> callsite = StreamSupport.stream(fTrace.getStreams().spliterator(), false) + .<@NonNull IEventDeclaration> flatMap(s -> s.getEventDeclarations().stream()) + .filter(event -> Objects.equals(event.getName(), eventName)) + .flatMap(ev -> ev.getCallsites().stream()) + .filter(cs -> cs.getIp() > ip) + .sorted((o1, o2) -> (Long.compareUnsigned(o1.getIp(), o2.getIp()))) + .findFirst(); + if (callsite.isPresent()) { + return new CtfTmfCallsite(callsite.get()); + } + return null; + } + /** * Get the CTF environment variables defined in this CTF trace, in form. This comes from the trace's CTF metadata. diff --git a/ctf/org.eclipse.tracecompass.tmf.ctf.ui.swtbot.tests/src/org/eclipse/tracecompass/tmf/ctf/ui/swtbot/tests/TestInvalidCtfTrace.java b/ctf/org.eclipse.tracecompass.tmf.ctf.ui.swtbot.tests/src/org/eclipse/tracecompass/tmf/ctf/ui/swtbot/tests/TestInvalidCtfTrace.java index 192cda95a7..e9eef8d584 100644 --- a/ctf/org.eclipse.tracecompass.tmf.ctf.ui.swtbot.tests/src/org/eclipse/tracecompass/tmf/ctf/ui/swtbot/tests/TestInvalidCtfTrace.java +++ b/ctf/org.eclipse.tracecompass.tmf.ctf.ui.swtbot.tests/src/org/eclipse/tracecompass/tmf/ctf/ui/swtbot/tests/TestInvalidCtfTrace.java @@ -70,11 +70,11 @@ public class TestInvalidCtfTrace { private static final Map ERRORS = new HashMap<>(); static { // metadata - ERRORS.put("array-redefinition", "MismatchedTokenException(56!=71)"); + ERRORS.put("array-redefinition", "MismatchedTokenException(57!=72)"); ERRORS.put("array-size-identifier", "Is not an integer: x"); - ERRORS.put("array-size-keyword", "NoViableAltException(74@[])"); + ERRORS.put("array-size-keyword", "NoViableAltException(75@[])"); ERRORS.put("array-size-negative", "Array length is negative"); - ERRORS.put("array-size-not-present", "NoViableAltException(13@[])"); + ERRORS.put("array-size-not-present", "NoViableAltException(14@[])"); ERRORS.put("array-size-string", "Is not an integer: x"); ERRORS.put("array-size-type-field", "Is not an integer: uint32_t"); ERRORS.put("array-size-type", "Is not an integer: uint32_t"); @@ -93,7 +93,7 @@ public class TestInvalidCtfTrace { ERRORS.put("struct-align-zero", "Invalid value for alignment : 0"); ERRORS.put("struct-duplicate-field-name", "Identifier has already been defined:xxx"); ERRORS.put("struct-duplicate-struct-name", "struct a already defined."); - ERRORS.put("struct-field-name-keyword", "NoViableAltException(72@[])"); + ERRORS.put("struct-field-name-keyword", "NoViableAltException(73@[])"); // streams ERRORS.put("content-size-larger-than-packet-size", "UNKNOWN"); //FIXME ERRORS.put("cross-packet-event-alignment-empty-struct", "UNKNOWN"); //FIXME diff --git a/lttng/org.eclipse.tracecompass.lttng2.ust.core/src/org/eclipse/tracecompass/lttng2/ust/core/trace/LttngUstEvent.java b/lttng/org.eclipse.tracecompass.lttng2.ust.core/src/org/eclipse/tracecompass/lttng2/ust/core/trace/LttngUstEvent.java index 38fa890a7e..7c60ea5200 100644 --- a/lttng/org.eclipse.tracecompass.lttng2.ust.core/src/org/eclipse/tracecompass/lttng2/ust/core/trace/LttngUstEvent.java +++ b/lttng/org.eclipse.tracecompass.lttng2.ust.core/src/org/eclipse/tracecompass/lttng2/ust/core/trace/LttngUstEvent.java @@ -15,7 +15,6 @@ import org.eclipse.tracecompass.ctf.core.event.IEventDeclaration; import org.eclipse.tracecompass.ctf.core.event.IEventDefinition; import org.eclipse.tracecompass.lttng2.ust.core.analysis.debuginfo.UstDebugInfoSourceAspect; import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfCallsite; -import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfSourceLookup; import org.eclipse.tracecompass.tmf.core.timestamp.ITmfTimestamp; import org.eclipse.tracecompass.tmf.ctf.core.event.CtfTmfEvent; import org.eclipse.tracecompass.tmf.ctf.core.trace.CtfTmfTrace; @@ -27,7 +26,7 @@ import org.eclipse.tracecompass.tmf.ctf.core.trace.CtfTmfTrace; * @since 2.0 */ @NonNullByDefault -public class LttngUstEvent extends CtfTmfEvent implements ITmfSourceLookup { +public class LttngUstEvent extends CtfTmfEvent { /** * Default constructor. Only for use by extension points, should not be