Lines 1-5
Link Here
|
1 |
/******************************************************************************* |
1 |
/******************************************************************************* |
2 |
* Copyright (c) 2000, 2010 IBM Corporation and others. |
2 |
* Copyright (c) 2000, 2011 IBM Corporation and others. |
3 |
* All rights reserved. This program and the accompanying materials |
3 |
* All rights reserved. This program and the accompanying materials |
4 |
* are made available under the terms of the Eclipse Public License v1.0 |
4 |
* are made available under the terms of the Eclipse Public License v1.0 |
5 |
* which accompanies this distribution, and is available at |
5 |
* which accompanies this distribution, and is available at |
Lines 8-15
Link Here
|
8 |
* Contributors: |
8 |
* Contributors: |
9 |
* IBM Corporation - initial API and implementation |
9 |
* IBM Corporation - initial API and implementation |
10 |
* Genady Beriozkin - added support for reporting assignment with no effect |
10 |
* Genady Beriozkin - added support for reporting assignment with no effect |
11 |
* Stephan Herrmann <stephan@cs.tu-berlin.de> - Contribution for bug 319201 - [null] no warning when unboxing SingleNameReference causes NPE |
11 |
* Stephan Herrmann <stephan@cs.tu-berlin.de> - Contributions for |
12 |
* and bug 292478 - Report potentially null across variable assignment |
12 |
* bug 319201 - [null] no warning when unboxing SingleNameReference causes NPE |
|
|
13 |
* bug 292478 - Report potentially null across variable assignment |
14 |
* bug 335093 - [compiler][null] minimal hook for future null annotation support |
13 |
*******************************************************************************/ |
15 |
*******************************************************************************/ |
14 |
package org.eclipse.jdt.internal.compiler.ast; |
16 |
package org.eclipse.jdt.internal.compiler.ast; |
15 |
|
17 |
|
Lines 52-57
Link Here
|
52 |
flowInfo = ((Reference) this.lhs) |
54 |
flowInfo = ((Reference) this.lhs) |
53 |
.analyseAssignment(currentScope, flowContext, flowInfo, this, false) |
55 |
.analyseAssignment(currentScope, flowContext, flowInfo, this, false) |
54 |
.unconditionalInits(); |
56 |
.unconditionalInits(); |
|
|
57 |
nullStatus = checkAgainstNullAnnotation(currentScope, local, nullStatus); |
55 |
if (local != null && (local.type.tagBits & TagBits.IsBaseType) == 0) { |
58 |
if (local != null && (local.type.tagBits & TagBits.IsBaseType) == 0) { |
56 |
flowInfo.markNullStatus(local, nullStatus); |
59 |
flowInfo.markNullStatus(local, nullStatus); |
57 |
if (flowContext.initsOnFinally != null) |
60 |
if (flowContext.initsOnFinally != null) |