godot::Mesh* cant be bind to Resource to be presented in editor

Godot Version

4.2.1 windows using vsc++ 2022

Question

Also im trying to create resource with export in the Editor parameters when trying to expose mesh , this is crashing the editor :
When i remove this specific bind and add simple String binds all working .

cpp file

#include "weapons.h"


namespace fpsgame {

	void Weapons::_bind_methods()
	{
		 
		godot::ClassDB::bind_method(godot::D_METHOD("get_name"), &Weapons::get_name);
		godot::ClassDB::bind_method(godot::D_METHOD("set_name", "p_name"), &Weapons::set_name);
		godot::ClassDB::add_property("Weapons", godot::PropertyInfo(godot::Variant::STRING_NAME, "name"), "set_name", "get_name");

		godot::ClassDB::bind_method(godot::D_METHOD("get_position"), &Weapons::get_position);
		godot::ClassDB::bind_method(godot::D_METHOD("set_position", "p_position"), &Weapons::set_position);
		godot::ClassDB::add_property("Weapons", godot::PropertyInfo(godot::Variant::VECTOR3, "position"), "set_position", "get_position");

		godot::ClassDB::bind_method(godot::D_METHOD("get_rotetion"), &Weapons::get_rotetion);
		godot::ClassDB::bind_method(godot::D_METHOD("set_rotetion", "p_rotetion"), &Weapons::set_rotetion);
		godot::ClassDB::add_property("Weapons", godot::PropertyInfo(godot::Variant::VECTOR3, "rotetion"), "set_rotetion", "get_rotetion");

		godot::ClassDB::bind_method(godot::D_METHOD("get_shadow"), &Weapons::get_shadow);
		godot::ClassDB::bind_method(godot::D_METHOD("set_shadow", "p_shadow"), &Weapons::set_shadow);
		godot::ClassDB::add_property("Weapons", godot::PropertyInfo(godot::Variant::BOOL, "shadow"), "set_shadow", "get_shadow");

		 godot::ClassDB::bind_method(godot::D_METHOD("get_mesh"), &Weapons::get_mesh);
		godot::ClassDB::bind_method(godot::D_METHOD("set_mesh", "p_mesh"), &Weapons::set_mesh);
		godot::ClassDB::add_property("Weapons", godot::PropertyInfo(godot::Variant::OBJECT, "mesh"), "set_mesh", "get_mesh"); 

		 

	}

	void Weapons::set_name(const godot::StringName p_name)
	{
		this->name = p_name;
	}

	godot::StringName Weapons::get_name() const
	{
		return this->name;
	}


	void Weapons::set_position(const godot::Vector3 p_position)
	{
		this->position = p_position;
	}

	godot::Vector3 Weapons::get_position() const
	{
		return this->position;
	}

	void Weapons::set_rotetion(const godot::Vector3 p_rotetion)
	{
		this->rotation = p_rotetion;
	}

	godot::Vector3 Weapons::get_rotetion() const
	{
		return this->rotation;
	}

	void Weapons::set_mesh(godot::Mesh *p_mesh)
	{
		this->mesh = p_mesh;
	}

	godot::Mesh* Weapons::get_mesh() const
	{
		return this->mesh;
	}

	void Weapons::set_shadow(const bool p_shadow)
	{
		this->shadow = p_shadow;
	}

	bool Weapons::get_shadow() const
	{
		return this->shadow;
	}


}

h file

#ifndef WEAPONS_H_
#define WEAPONS_H_

#include <godot_cpp/classes/resource.hpp>
#include <godot_cpp/classes/mesh.hpp>

namespace fpsgame {
	
	class Weapons : public godot::Resource
	{
		GDCLASS(Weapons, godot::Resource)
	public:
		Weapons() {};
		virtual ~Weapons() {};
		void set_name(const godot::StringName p_name);
		godot::StringName get_name() const;

		void set_position(const godot::Vector3 p_position);
		godot::Vector3 get_position() const;

		void set_rotetion(const godot::Vector3 p_rotetion);
		godot::Vector3 get_rotetion() const;

		void set_mesh(godot::Mesh* p_mesh);
		godot::Mesh* get_mesh() const;

		void set_shadow(const bool p_shadow);
		bool get_shadow() const;

		 
	protected:
		static void _bind_methods();

	private:
		godot::StringName name;
		bool shadow;
		godot::Mesh *mesh;
		godot::Vector3 rotation;
		godot::Vector3 position;
	};
}



#endif

The crash im getting :