#### Version:

bd1c4df

#### Overview:

​    When executing the following test case, all engines except jerryscript output `-1`. What is the reason for this? In addition, I would like to know what the argument `this` in the jerryscript exception information refers to. If it is `String.prototype`, no exception should be thrown regardless of the definition of ES5.1 or ES6. If not, what does this refer to? 

#### Testcase:

``` javascript
var foo = function(){
	var a = String.prototype.search(1);
	print(a);
};
foo();
```



#### Actual Results:

```
Script Error: TypeError: Argument 'this' is not a String or a String object.
```



#### Expected Results:

```
-1
```


A problem about String.prototype.search
This is a GitHub Issue
repo:jerryscript
owner:jerryscript-project
Title : A problem about String.prototype.search
Issue date:

--- start body ---
#### Version:

bd1c4df

#### Overview:

​    When executing the following test case, all engines except jerryscript output `-1`. What is the reason for this? In addition, I would like to know what the argument `this` in the jerryscript exception information refers to. If it is `String.prototype`, no exception should be thrown regardless of the definition of ES5.1 or ES6. If not, what does this refer to? 

#### Testcase:

``` javascript
var foo = function(){
	var a = String.prototype.search(1);
	print(a);
};
foo();
```



#### Actual Results:

```
Script Error: TypeError: Argument 'this' is not a String or a String object.
```



#### Expected Results:

```
-1
```


--- end body ---
