test/langtools/tools/javac/lambda/deduplication/Deduplication.java
author jlahoda
Wed, 27 Nov 2019 09:00:01 +0100
changeset 59285 7799a51dbe30
parent 55306 ea43db53de91
permissions -rw-r--r--
8231826: Implement javac changes for pattern matching for instanceof Reviewed-by: mcimadamore Contributed-by: brian.goetz@oracle.com, gavin.bierman@oracle.com, maurizio.cimadamore@oracle.com, srikanth.adayapalam@oracle.com, vicente.romero@oracle.com, jan.lahoda@oracle.com
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
49429
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     1
/*
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     2
 * Copyright (c) 2018, Google LLC. All rights reserved.
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     4
 *
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     7
 * published by the Free Software Foundation.
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     8
 *
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    13
 * accompanied this code).
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    14
 *
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    18
 *
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    21
 * questions.
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    22
 */
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    23
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    24
package com.sun.tools.javac.comp;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    25
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    26
import java.util.function.BiFunction;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    27
import java.util.function.Consumer;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    28
import java.util.function.Function;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    29
import java.util.function.Supplier;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    30
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    31
public class Deduplication {
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    32
    void group(Object... xs) {}
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    33
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    34
    void test() {
49577
faf02d65df7d 8201440: javac should create unique DynamicMethodSymbols at LambdaToMethod
vromero
parents: 49541
diff changeset
    35
faf02d65df7d 8201440: javac should create unique DynamicMethodSymbols at LambdaToMethod
vromero
parents: 49541
diff changeset
    36
        group(
faf02d65df7d 8201440: javac should create unique DynamicMethodSymbols at LambdaToMethod
vromero
parents: 49541
diff changeset
    37
                (Runnable) () -> { ( (Runnable) () -> {} ).run(); },
faf02d65df7d 8201440: javac should create unique DynamicMethodSymbols at LambdaToMethod
vromero
parents: 49541
diff changeset
    38
                (Runnable) () -> { ( (Runnable) () -> {} ).run(); }
faf02d65df7d 8201440: javac should create unique DynamicMethodSymbols at LambdaToMethod
vromero
parents: 49541
diff changeset
    39
        );
faf02d65df7d 8201440: javac should create unique DynamicMethodSymbols at LambdaToMethod
vromero
parents: 49541
diff changeset
    40
49887
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    41
        group(
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    42
                (Runnable) () -> { Deduplication.class.toString(); },
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    43
                (Runnable) () -> { Deduplication.class.toString(); }
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    44
        );
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    45
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    46
        group(
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    47
                (Runnable) () -> { Integer[].class.toString(); },
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    48
                (Runnable) () -> { Integer[].class.toString(); }
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    49
        );
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    50
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    51
        group(
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    52
                (Runnable) () -> { char.class.toString(); },
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    53
                (Runnable) () -> { char.class.toString(); }
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    54
        );
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    55
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    56
        group(
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    57
                (Runnable) () -> { Void.class.toString(); },
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    58
                (Runnable) () -> { Void.class.toString(); }
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    59
        );
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    60
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    61
        group(
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    62
                (Runnable) () -> { void.class.toString(); },
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    63
                (Runnable) () -> { void.class.toString(); }
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    64
        );
39446351e625 8202141: Unique symbols for .class
bsrbnd
parents: 49577
diff changeset
    65
49429
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    66
        group((Function<String, Integer>) x -> x.hashCode());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    67
        group((Function<Object, Integer>) x -> x.hashCode());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    68
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    69
        {
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    70
            int x = 1;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    71
            group((Supplier<Integer>) () -> x + 1);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    72
        }
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    73
        {
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    74
            int x = 1;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    75
            group((Supplier<Integer>) () -> x + 1);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    76
        }
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    77
        group(
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    78
                (BiFunction<Integer, Integer, ?>) (x, y) -> x + ((y)),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    79
                (BiFunction<Integer, Integer, ?>) (x, y) -> x + (y),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    80
                (BiFunction<Integer, Integer, ?>) (x, y) -> x + y,
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    81
                (BiFunction<Integer, Integer, ?>) (x, y) -> (x) + ((y)),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    82
                (BiFunction<Integer, Integer, ?>) (x, y) -> (x) + (y),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    83
                (BiFunction<Integer, Integer, ?>) (x, y) -> (x) + y,
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    84
                (BiFunction<Integer, Integer, ?>) (x, y) -> ((x)) + ((y)),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    85
                (BiFunction<Integer, Integer, ?>) (x, y) -> ((x)) + (y),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    86
                (BiFunction<Integer, Integer, ?>) (x, y) -> ((x)) + y);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    87
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    88
        group(
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    89
                (Function<Integer, Integer>) x -> x + (1 + 2 + 3),
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    90
                (Function<Integer, Integer>) x -> x + 6);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    91
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    92
        group((Function<Integer, Integer>) x -> x + 1, (Function<Integer, Integer>) y -> y + 1);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    93
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    94
        group((Consumer<Integer>) x -> this.f(), (Consumer<Integer>) x -> this.f());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    95
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    96
        group((Consumer<Integer>) y -> this.g());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    97
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    98
        group((Consumer<Integer>) x -> f(), (Consumer<Integer>) x -> f());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
    99
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   100
        group((Consumer<Integer>) y -> g());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   101
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   102
        group((Function<Integer, Integer>) x -> this.i, (Function<Integer, Integer>) x -> this.i);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   103
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   104
        group((Function<Integer, Integer>) y -> this.j);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   105
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   106
        group((Function<Integer, Integer>) x -> i, (Function<Integer, Integer>) x -> i);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   107
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   108
        group((Function<Integer, Integer>) y -> j);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   109
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   110
        group(
49541
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   111
                (Function<Integer, Integer>)
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   112
                        y -> {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   113
                            while (true) {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   114
                                break;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   115
                            }
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   116
                            return 42;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   117
                        },
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   118
                (Function<Integer, Integer>)
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   119
                        y -> {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   120
                            while (true) {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   121
                                break;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   122
                            }
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   123
                            return 42;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   124
                        });
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   125
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   126
        group(
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   127
                (Function<Integer, Integer>)
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   128
                        x -> {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   129
                            int y = x;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   130
                            return y;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   131
                        },
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   132
                (Function<Integer, Integer>)
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   133
                        x -> {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   134
                            int y = x;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   135
                            return y;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   136
                        });
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   137
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   138
        group(
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   139
                (Function<Integer, Integer>)
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   140
                        x -> {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   141
                            int y = 0, z = x;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   142
                            return y;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   143
                        });
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   144
        group(
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   145
                (Function<Integer, Integer>)
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   146
                        x -> {
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   147
                            int y = 0, z = x;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   148
                            return z;
4f6887eade94 8201194: Handle local variable declarations in lambda deduplication
cushon
parents: 49429
diff changeset
   149
                        });
49429
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   150
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   151
        class Local {
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   152
            int i;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   153
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   154
            void f() {}
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   155
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   156
            {
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   157
                group((Function<Integer, Integer>) x -> this.i);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   158
                group((Consumer<Integer>) x -> this.f());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   159
                group((Function<Integer, Integer>) x -> Deduplication.this.i);
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   160
                group((Consumer<Integer>) x -> Deduplication.this.f());
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   161
            }
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   162
        }
55306
ea43db53de91 8223305: Compiler support for Switch Expressions
jlahoda
parents: 49887
diff changeset
   163
ea43db53de91 8223305: Compiler support for Switch Expressions
jlahoda
parents: 49887
diff changeset
   164
        group((Function<Integer, Integer>) x -> switch (x) { default: yield x; },
ea43db53de91 8223305: Compiler support for Switch Expressions
jlahoda
parents: 49887
diff changeset
   165
              (Function<Integer, Integer>) x -> switch (x) { default: yield x; });
59285
7799a51dbe30 8231826: Implement javac changes for pattern matching for instanceof
jlahoda
parents: 55306
diff changeset
   166
7799a51dbe30 8231826: Implement javac changes for pattern matching for instanceof
jlahoda
parents: 55306
diff changeset
   167
        group((Function<Object, Integer>) x -> x instanceof Integer i ? i : -1,
7799a51dbe30 8231826: Implement javac changes for pattern matching for instanceof
jlahoda
parents: 55306
diff changeset
   168
              (Function<Object, Integer>) x -> x instanceof Integer i ? i : -1);
49429
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   169
    }
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   170
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   171
    void f() {}
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   172
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   173
    void g() {}
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   174
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   175
    int i;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   176
    int j;
752ecccb0b7f 8200301: deduplicate lambda methods
cushon
parents:
diff changeset
   177
}