getNextToken();
}
return statement;
+ } else if(token == TokenNameconst){
+ getNextToken();
+ if(token == TokenNameIdentifier){
+ getNextToken();
+ if(token == TokenNameEQUAL){
+ getNextToken();
+ }
+ //throwSyntaxError("'Ed i know your here");
+ }
} else if (token == TokenNamestatic) {
getNextToken();
static_var_list();
throwSyntaxError("'endif' expected.");
}
getNextToken();
- if (token != TokenNameSEMICOLON) {
+ if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
reportSyntaxError("';' expected after if-statement.");
iState.sourceEnd = scanner.getCurrentTokenStartPosition();
} else {
throwSyntaxError("'endswitch' expected.");
}
getNextToken();
- if (token != TokenNameSEMICOLON) {
+ if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
throwSyntaxError("';' expected after switch-statement.");
}
getNextToken();
throwSyntaxError("'endfor' expected.");
}
getNextToken();
- if (token != TokenNameSEMICOLON) {
+ if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
throwSyntaxError("';' expected after for-statement.");
}
getNextToken();
throwSyntaxError("'endwhile' expected.");
}
getNextToken();
- if (token != TokenNameSEMICOLON) {
+ if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
throwSyntaxError("';' expected after while-statement.");
}
getNextToken();
throwSyntaxError("'endforeach' expected.");
}
getNextToken();
- if (token != TokenNameSEMICOLON) {
+ if (token != TokenNameSEMICOLON && token != TokenNameINLINE_HTML) {
throwSyntaxError("';' expected after foreach-statement.");
}
getNextToken();
case TokenNameinclude_once:
case TokenNamerequire:
case TokenNamerequire_once:
+ case TokenNameNamespace:
+ case TokenNameconst:
internal_functions_in_yacc();
break;
// | '(' expr ')'
// T_REQUIRE_ONCE expr
checkFileName(token);
break;
+ case TokenNameNamespace:
+ // NAMESPACE expr
+ checkNameSpaceName();
+ break;
+ case TokenNameconst:
+ getNextToken();
+ expr();
+ break;
}
}
-
+
+ /**
+ * parse and check the namespace name
+ * @since 1.2.3
+ * @param namespaceToken
+ */
+ private void checkNameSpaceName(){
+ getNextToken();
+ while (true) {
+ if (token == TokenNameSEMICOLON) {
+ break;
+ }
+ getNextToken();
+ }
+
+ }
/**
* Parse and check the include file name
*
if (path == null) {
// SyntaxError: "File: << >> doesn't exist in project."
String[] args = { expression.toStringExpression(),
- project.getLocation().toString() };
+ project.getFullPath().toString() };
problemReporter.phpIncludeNotExistWarning(args,
literal.sourceStart, literal.sourceEnd,
referenceContext,
// create a package name similar to java package names
String projectPath = ProjectPrefUtil.getDocumentRoot(file.getProject())
.toString();
- String filePath = file.getRawLocation().toString();
- String ext = file.getRawLocation().getFileExtension();
- int fileExtensionLength = ext == null ? 0 : ext.length() + 1;
- ImportReference impt;
- char[][] tokens;
+ String filePath = file.getFullPath().toString();
+
+ String ext = file.getFileExtension();
+ int fileExtensionLength = ext == null ? 0 : ext.length() + 1;
+ ImportReference impt;
+ char[][] tokens;
if (filePath.startsWith(projectPath)) {
tokens = CharOperation.splitOn('/', filePath.toCharArray(),
projectPath.length() + 1, filePath.length()